主要用于为策略引擎提供模拟行情功能,测试策略函数逻辑是否正确,包括如下的需求:
- 支持提供多个市场的模拟行情,例如A股市场,期货市场和数字货币市场等。
- 支持输出多个市场,且一个市场多个标的模拟行情。
- 单次模拟只支持一种行情类别,即支持同时输出tick和1分钟K线行情。
2.体系结构
2.2 功能模块设计
模拟行情子系统由两个模块组成:
- 模拟行情管理模块
- 模拟行情发送模块
3 模拟行情管理模块
- 从模拟行情文件中读取各市场标的的行情数据,并进行解析。
- 管理各市场标的的行情数据,提供获取逐个Tick行情数据。
3.2 结构图
3.3流程设计
无
说明重要的接口。格式如下:
(1)接口名称:get _hq_tick_data
说明:获取下一个行情tick数据
参数:无
返回值:market_type-市场类别
symbol_code-标的代码
char * -tick行情数据
(2) 接口名称:move_next, move_first, move_last, move_previous, move_to
(3) 接口名称:is_last_tick
4 模拟行情发送模块
逐个获取Tick行情数据,根据市场类型,转换成符合行情前置服务器格式的行情标准包,并控制回放速率
4.2 结构图
5 模拟文件格式定义
采用在NAS存储的历史行情文件格式,根据历史行情文件酌情修改。
6 模拟行情配
如果程序参数中传入,优先采用这个配置参数,作为模拟行情回放的参数。
如果程序参数中没有传入配置参数,则采用配置文件中的参数。
6.1 程序传入参数格式
市场类型,标的代码,行情类型,回放速率,模拟行情文件名称
6.2 配置文件
mock_hq_type -1:tick,2:1m ,3:2m等
mock_hq_playback_rate -模拟行情回放速率,0:全速回放
mock_hq_underlying_number-模拟行情标的数目
mock_hq_underlying_1 -市场类型,标的代码,模拟行情文件名称
mock_hq_underlying_2 -市场类型,标的代码,模拟行情文件名称
mock_hq_underlying_3 -市场类型,标的代码,模拟行情文件名称