分享一个处理多周期策略的思路和部分代码:
获取k线时根据不同周期分别储存:
len(getattr(context, f”close_{context.periods[0]}_array”)) < 241
and len(getattr(context, f”close_{context.periods[1]}_array”)) < 241
and len(getattr(context, f”close_{context.periods[2]}_array”)) < 31
and len(getattr(context, f”close_{context.periods[3]}_array”)) < 31
计算指标时根据不同周期分别储存:
# 按周期存储当前周期的信号
setattr(context, f”count_buy_sig_{period}_array”, count_buy_sig)
setattr(context, f”count_sell_sig_{period}_array”, count_sell_sig)
生成信号时遍历不同周期:
# 遍历两个交易周期
for period_name in context.trade_name:
# 提取当前周期状态
period_state = context.trade_signal[period_name]
# 获取当前周期的独立持仓
period_long_vol = period_state[“long_hold_vol”] # 多头持仓
period_short_vol = period_state[“short_hold_vol”] # 空头持仓





请登录后查看回复内容