策略 4: rev_1d — 1d 价格反转¶
文档更新时间: 2026-03-08 策略定位: 单频日级反转 目标口径: 与
strategy_2.md保持一致,仅将信号改为1d反转
策略思想¶
这是 strategy_2.md 的单频版本,只使用 1d 价格收益做时序标准化后反向交易。
核心直觉是: 当某个 symbol 在最近 1 个自然日内涨得更多时,次日更倾向于回落;
当最近 1 个自然日跌得更多时,次日更倾向于反弹。因此对 ret_1d 做
时序 z-score 后取负号,得到反转信号。
信号构造¶
1. 对每个 symbol, 每个交易日:
ret_1d = close(EOD) / close(EOD - 1d) - 1
2. 时序 z-score 标准化 + 取负号:
z1d = -zscore(ret_1d, window=30) // 涨多了 → 负信号 → 做空; 跌多了 → 正信号 → 做多
3. 信号:
signal = z1d
下单逻辑¶
每日 23:59 UTC:
1. 对所有 symbols 计算 signal
2. 排序: signal 最大的 30 只做多, 最小的 30 只做空
3. 每只等权 ±1.67% (总多头 50%, 总空头 50%)
4. 市价单执行, 扣除 10bps 换手费
完整时间线 (单次交易日)¶
T = 某个交易日 (例如 2024-06-15)
T-1 23:59 UTC ← EOD - 1d: 取上一交易日 EOD close 作为 close(EOD-1d)
T 23:59 UTC ← EOD: 取当前交易日 EOD close 作为 close(EOD)
ret_1d = close(T 23:59) / close(T-1 23:59) - 1
计算 zscore, 生成 signal
排序, 确定目标仓位
执行换仓 (市价单, ~1分钟内完成)
T+1 00:00 UTC ← 新仓位开始持有, 赚取 T+1 的日收益
T+1 23:59 UTC ← 再次计算信号, 再次换仓
为什么仍然使用 same_day¶
same_day:
T 23:59 计算 signal → T+1 00:00 开始持有 → T+1 23:59 PnL 结算
使用的是截至 T 23:59 的最新 1d 收益信息
prev_day:
T-1 23:59 计算 signal → T 00:00 开始持有 → T 23:59 PnL 结算
会额外引入约 24h 延迟, 与当前定义的 ret_1d 口径不一致