|
在用 subscribe()接口订阅标的后,后台会返回 tick 数据或 bar 数据。每产生一个或一组数据,就会自动触发 on_tick()或 on_bar()里面的内容执行。比如以下范例代码片段,订阅浦发银行频率为 1 天和 60s 的 bar 数据,每产生一次 bar,就会自动触发 on_bar()调用,打印获取的 bar 信息: # coding=utf-8from __future__ import print_function, absolute_importfrom gm.api import *def init(context): # 订阅浦发银行, bar频率为一天和一分钟 # 订阅订阅多个频率的数据,可多次调用subscribe subscribe(symbols='SHSE.600000', frequency='1d') subscribe(symbols='SHSE.600000', frequency='60s')def on_bar(context, bars): # 打印bar数据 print(bars)if __name__ == '__main__': ''' strategy_id策略ID, 由系统生成 filename文件名, 请与本文件名保持一致 mode运行模式, 实时模式:MODE_LIVE回测模式:MODE_BACKTEST token绑定计算机的ID, 可在系统设置-密钥管理中生成 backtest_start_time回测开始时间 backtest_end_time回测结束时间 backtest_adjust股票复权方式, 不复权:ADJUST_NONE前复权:ADJUST_PREV后复权:ADJUST_POST backtest_initial_cash回测初始资金 backtest_commission_ratio回测佣金比例 backtest_slippage_ratio回测滑点比例 ''' run(strategy_id='strategy_id', filename='main.py', mode=MODE_BACKTEST, token='token_id', backtest_start_time='2020-11-01 08:00:00', backtest_end_time='2020-11-10 16:00:00', backtest_adjust=ADJUST_PREV, backtest_initial_cash=10000000, backtest_commission_ratio=0.0001,
|