3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 PTrade 量化交易平台中,tick_data 函数是专门用于处理 tick 级别高频策略的核心回调函数。关于它的执行时间和频率,官方文档有明确的规定:
tick_data 函数每隔 3 秒执行一次。tick_data 函数中,只能使用 order_tick 接口进行对应的下单操作,不能使用常规的 order 系列函数。tick_data 函数中的 data 参数与 handle_data 中的 data 结构完全不同。它是一个嵌套字典,包含了 order(逐笔委托)、tick(当前tick快照数据)和 transcation(逐笔成交)三项内容。data 中包含的逐笔委托(order)和逐笔成交(transcation)数据,必须开通 Level2 行情才会有数据推送,否则对应字段会返回 None。def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
def tick_data(context, data):
security = g.security
# 获取买一价
current_price = eval(data[security]['tick']['bid_grp'][0])[1][0]
log.info("当前买一价: %s" % current_price)
# 简单的触发逻辑:如果买一价大于指定价格,则按买一档价格下单
if current_price > 38.19:
order_tick(security, 100, 1)
def handle_data(context, data):
pass
总结来说,如果您需要编写对时间极其敏感、依赖盘口档位或逐笔数据的策略,tick_data 是您的首选,但务必注意其 3 秒的执行间隔以及对 Level2 行情的依赖。