Twelve Data — Financial World-Model Dataset
收藏Twelve Data 金融世界模型数据集概述
数据集简介
该数据集由 Twelve Data 构建,是一个多模态金融时间序列数据集,专为 LLM 微调、时间序列基础模型 以及 世界模型/预测动力学训练 而设计。数据集托管于 Hugging Face:https://huggingface.co/datasets/twelvedata/financial-world-model
数据集构成
覆盖 51 只美国大盘股 × 3 个时间粒度(1day、1h、1min)× 3 种并行视图,所有数据均源自相同的源 K 线数据与基于时间的切分:
| 配置项 | 格式 | 说明 |
|---|---|---|
bars_{tf} |
Parquet | 包含 OHLCV + 因果技术指标 + 宏观上下文(33+ 列) |
text_{tf} |
JSONL | 指令微调提示,严格避免提示与标签之间的数据泄露 |
trajectories_{tf} |
Parquet | 滚动时间窗口,包含 states 和 next_states,用于世界模型 / 强化学习训练 |
数据切分
基于时间切分,规则如下:
- 训练集:≤ 2023-12-31
- 验证集:2024 年
- 测试集:2025 年及以后
跨越切分边界的轨迹数据会被丢弃,确保训练集与验证集不重叠。
宏观上下文
每条股票数据按日期关联的宏观上下文包含:SPY、VIX、TLT(20 年期国债)、DXY(以 UUP 为代理)以及与对应行业匹配的 SPDR ETF。
数据加载示例
python from datasets import load_dataset
bars = load_dataset("twelvedata/financial-world-model", "bars_1day") text = load_dataset("twelvedata/financial-world-model", "text_1h") traj = load_dataset("twelvedata/financial-world-model", "trajectories_1day")
或使用 DuckDB 直接查询 Parquet 文件:
sql SELECT symbol, datetime, close, rsi_14 FROM bars_1day/test.parquet WHERE symbol = AAPL ORDER BY datetime DESC LIMIT 10;
设计原则
- 完全因果性:指标从左到右计算,无中心化或双向窗口,确保无未来数据泄露。
- 提示与标签分离:文本化行中
prompt字段绝不包含未来信息,下一根 K 线收益率仅存在于label字段。 - 同时提供复权与原始数据:默认使用复权价格(
close_adj),同时保留原始close列。 - 重述处理:每次运行均重新获取前一个交易日的数据;当出现新的拆股/股息时,自动触发单只股票的重新回填。
- 分区存储:Parquet 按
timeframe/symbol/year分区,每日追加仅影响一个符号-年文件。 - 流式发布构建:逐符号写入磁盘,峰值内存仅对应一只股票。
- 流式 HF 上传:直接使用
HfApi.upload_file,多 GB 的 Parquet 文件无需完全加载到内存。 - 无默认奖励函数:世界模型仅预测下一状态,强化学习奖励(如
log_return、vol_adj_return或drawdown_penalty)需用户后处理自行选择。
每日更新机制
通过 GitHub Actions 工作流(https://github.com/twelvedata/twelvedata-world-model-dataset/blob/main/.github/workflows/daily-update.yml)定时运行更新脚本。更新器具有 幂等性和间隙感知 特性:每次运行请求 最后已知日期 - 2 天 → 今天,一次运行即可自动补回所有缺失天数,并始终重新获取前一个交易日以捕获延迟发布及公司行动重述。
许可与数据分发
- 代码采用 MIT 许可证。
- 数据来源于 Twelve Data,在公开发布前请确认数据再分发条款。默认配置(https://github.com/twelvedata/twelvedata-world-model-dataset/blob/main/config/hf.yaml)中数据集设为
private: true。




