算法详解
本系统采用三层架构:LLM 生成经济剧本(定义阶段与事件),确定性算法按剧本执行生成 K 线,最后由 AI 生成专业分析报告。 核心设计目标是确保叙事合理性与数值可控性的统一。
历史数据
世界银行 1994-2024 人均 GDP
剧本生成
LLM 生成经济阶段 + 事件
剧本执行
算法按剧本生成 30 年 K 线
AI 分析
专业经济分析报告生成
数据处理流程
gdp-history.jsonNull 插值OHLC 生成K线数据
OHLC 生成公式
Open
Open = prevClose
当年开盘价 = 上一年收盘价
Close
Close = GDP_value
当年收盘价 = 该年实际 GDP 值
波动率
volatility = clamp(|ΔRate| × 0.5, 3%, 15%)
基于年度变化率计算,限制在 3%-15%
High / Low
High = max × (1 + vol × rand)
使用确定性种子随机数生成影线
确定性种子机制
typescript
// 使用年份作为种子,确保同一年每次生成相同结果
function seededRandom(seed: number): number {
const x = Math.sin(seed) * 10000;
return x - Math.floor(x); // 返回 [0, 1) 范围
}
// 种子生成
const seed1 = year * 1000 + 1; // 用于 High
const seed2 = year * 1000 + 2; // 用于 Low设计目的:相同年份的 K 线每次生成都完全一致,便于对比和调试。
核心设计要点
剧本驱动
LLM 编写经济剧本,算法按剧本确定性执行
叙事合理性
5 种经济阶段 + 关键事件构成连贯的经济故事
数值可控性
剧本定义趋势范围,算法在范围内确定性生成
确定性执行
年份固定种子确保同一剧本每次生成完全相同
可解释性
每年附带评分和注释,用户可理解经济逻辑
三层职责
剧本生成 → 算法执行 → 分析报告,各司其职