数据订阅——东方财富掘金量化速成学习(python)
目录
1.subscribe-行情订阅
函数原型:
subscribe(symbols, frequency='1d', count=1, wait_group=False, wait_group_timeout='10s', unsubscribe_previous=False)
symbols:订阅标的代码, 字串格式,如有多个代码, 中间用 , (英文逗号) 隔开, 也支持 ['symbol1', 'symbol2'] 列表格式
frequency:频率,支持 'tick', '60s', '300s', '900s' 等, 默认'1d'
count:数据滑窗的大小
wait_group:是否需要等待全部代码的数据到齐再触发事件, 默认False不到齐。设置为True则等待订阅标的eob相同的bar全部到齐再被调用。该参数只对Bar数据有效。
wait_group_timeout:超时时间设定, 支持s结尾表示单位秒, 默认10s
unsubscribe_previous:是否取消过去订阅的symbols, 默认False不取消, 输入True则取消所有原来的订阅。
fields:指定返回对象字段, 如有多个字段, 中间用, (英文逗号)隔开, 默认所有, 具体字段见:tick 对象 和 bar 对象 ,在 subscribe 函数中指定的字段越少,context.data查询速度越快
format:数据返回格式,默认"df", "df": 数据框格式,返回dataframe(默认),"row": 原始行式组织格式,返回list[dict](当对性能有要求时, 推荐使用此格式), "col": 列式组织格式,返回dict 。
示例代码:
def init(context):
# 同时订阅600519的tick数据和分钟数据
subscribe(symbols='SHSE.600519', frequency='tick', count=2)
subscribe(symbols='SHSE.600519', frequency='60s', count=2)
def on_tick(context,tick):
print('收到tick行情---', tick)
def on_bar(context,bars):
print('收到bar行情---', bars)
data = context.data(symbol='SHSE.600519', frequency='60s', count=2)
print('bar数据滑窗---', data)
2.unsubscribe取消订阅
取消行情订阅, 默认取消所有已订阅行情
函数原型:unsubscribe(symbols='*', frequency='60s')
示例代码:
unsubscribe(symbols='SHSE.600000,SHSE.600004', frequency='60s')
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)