v3.0 剧本驱动

算法详解

本系统采用三层架构: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 种经济阶段 + 关键事件构成连贯的经济故事

数值可控性

剧本定义趋势范围,算法在范围内确定性生成

确定性执行

年份固定种子确保同一剧本每次生成完全相同

可解释性

每年附带评分和注释,用户可理解经济逻辑

三层职责

剧本生成 → 算法执行 → 分析报告,各司其职