Tech
[投资] 先定义数据契约,再谈策略
很多量化项目的第一行代码是:
pd.read_csv("bars.csv")
问题通常也从这里开始。
这份数据属于哪个市场?时间戳是 bar 的开始还是结束?是否经过复权处理?最新一根是否已经收盘? volume=0 是无成交、停牌、休市,还是采集失败?这些问题如果在数据进入研究层之前没有答案,后面再精细的因子、参数搜索和 Walk-Forward ,都会建立在不稳定的输入上。
写清楚一份数据契约非常重要。
区分 DataFrame 与数据契约
DataFrame 是一个容器,不能回答“这行数据从哪里来”,也不能回答“当时策略究竟看到了什么”。数据契约则是行情接入层与研究层之间的一份明确约定:字段有什么含义、时间如何解释、哪些记录可以计算信号,以及出问题时如何追溯。
我会为每一根标准化 K 线至少保留以下字段。
字段
含义
为什么要保留
symbol
供应商定义的标的代码
防止自定义 ticker 与真实数据代码混用。
bar_timestamp_utc
原始时间戳转换后...
Read the full discussion on V2EX
This article was aggregated from V2EX. Click to join the conversation.
View on V2EX