3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 ptrade 量化平台中,一个策略里可以多次设定 run_daily 函数,以实现多个定时任务。官方 API 文档并没有对 run_daily 的具体数量设定硬性上限,您可以根据策略的实际需求配置多个不同的定时触发任务。
根据 ptrade API 文档中关于 run_daily 的接口说明:
该函数可以多次设定,以实现多个定时任务。
您可以在 initialize 函数中多次调用 run_daily,为不同的自定义函数指定不同的运行时间:
def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
# 设定第一个定时任务:每天 9:31 执行获取财务数据
run_daily(context, get_finance, time='9:31')
# 设定第二个定时任务:每天 14:50 执行尾盘平仓逻辑
run_daily(context, close_position, time='14:50')
# 设定第三个定时任务:每天 10:00 执行特定监控
run_daily(context, monitor_market, time='10:00')
def get_finance(context):
log.info("执行早盘财务数据获取")
def close_position(context):
log.info("执行尾盘平仓逻辑")
def monitor_market(context):
log.info("执行盘中监控")
def handle_data(context, data):
pass
虽然可以设置多个 run_daily,但在使用时需要注意以下几点:
run_daily 函数只能在初始化阶段的 initialize 函数中调用。time 的取值必须指定在 09:31~11:30 与 13:00~15:00 之间;当回测周期为日线时,无论设定值是多少,都只会在 15:00 执行。00:00~23:59。