在自建私有量化平台中,数据系统不是辅助模块,而是整个系统的地基。
策略可以迭代、模型可以替换,但一旦数据系统设计失误,所有上层能力都会被限制。
尤其在“私有化量化平台”的场景下,数据系统的核心目标是:
数据完全可控、口径统一、历史可复现,且不依赖第三方运行环境。
一、数据系统在私有化量化平台中的定位
数据系统在量化平台中的职责可以概括为四点:
统一数据入口
所有行情、财务、交易数据必须从统一入口进入系统保证数据口径一致
回测、模拟、实盘使用同一套数据规则支撑历史复现能力
任意时点的策略决策都可以被完整还原保障数据与策略私有化
数据不出网、不依赖第三方在线平台
一句话总结:
数据系统决定量化平台的可信度上限。
二、数据类型与分层设计
1. 基础行情数据(核心)
包括:
日线 / 分钟线 / Tick 数据
开盘价、收盘价、最高价、最低价
成交量、成交额
设计要点:
时间序列严格对齐
支持多周期派生
保留原始数据,不直接覆盖
2. 公司与品种基础信息
包括:
股票基本信息
合约信息
上市 / 退市时间
交易状态(停牌、复牌)
这是避免幸存者偏差的关键数据。
3. 财务与因子数据
包括:
财报原始数据
财务指标
因子计算结果
设计原则:
原始财务数据与计算结果分表存储
因子计算逻辑版本化
4. 交易与账户数据(私有核心)
包括:
下单记录
成交记录
资金与持仓变化
这部分数据必须完全私有化,禁止外部访问。
三、数据获取与私有化策略
1. 数据获取方式
常见方式:
定期批量拉取(行情 / 财务)
实时订阅(行情 / 盘口)
手动导入(历史数据补齐)
私有化平台应遵循原则:
数据获取与数据使用解耦。
2. 私有化关键点
数据获取程序运行在独立环境
数据落地后,与外部接口断开
策略运行只访问本地数据
这样即使外部数据源变更,也不影响历史回测与策略复现。
四、数据存储设计
1. 原始数据与加工数据分离
建议分为三层:
原始数据层(Raw)
不做任何修改
可回溯、可审计
清洗数据层(Clean)
复权、补全、异常处理
派生数据层(Feature)
技术指标
因子数据
任何策略只能使用 Clean / Feature 层。
2. 数据库选型建议
日线 / 财务:MySQL / PostgreSQL
分钟线:ClickHouse / TimescaleDB
高频或缓存:Redis
小规模实验:SQLite
选型原则:
稳定性优先
性能匹配策略频率
运维成本可控
五、数据一致性与时间视角控制
这是新手最容易忽略、但最致命的问题。
1. 时间视角(Point-in-Time)
必须保证:
策略在某一时点只能看到当时已公开的数据
财务数据按披露时间生效
否则回测结果毫无意义。
2. 交易日与自然日对齐
所有行情基于交易日历
明确节假日、停牌处理逻辑
六、数据质量控制体系
1. 自动校验机制
缺失值检测
异常波动检测
成交量 / 价格异常标记
2. 数据版本管理
每次数据更新都有版本号
回测绑定数据版本
策略结果可复现
七、数据服务化设计(平台级)
数据系统不应直接暴露数据库,而应提供:
统一数据访问接口
缓存机制
权限控制
这样可以:
防止策略误操作数据库
提升系统安全性
支撑多策略并发访问
八、私有化安全与隔离设计
1. 网络隔离
数据库不暴露公网
内网访问 + 白名单
2. 权限隔离
只读 / 写入权限分离
策略无权修改原始数据
3. 日志与审计
数据访问日志
数据修改日志
九、数据系统的演进路线
推荐演进顺序:
日线行情 + 基础回测
分钟线支持
财务数据 + 因子库
实时行情接入
多市场、多品种扩展
先稳,再快;先准,再全。
十、结语
在自建私有化量化平台中,
数据系统不是“存数据的地方”,而是决定整个系统可信度的核心基础设施。
如果数据不可控、不可复现,那么再好的策略也只是“事后解释”。
评论区