alpha
(-1 * rank(((sum(open, 5) * sum(returns, 5)) - delay((sum(open, 5) * sum(returns, 5)),
这里我们操作符都明白,现在来看金融意义
金融意义
里层是这个
(sum(open, 5) * sum(returns, 5)) - delay((sum(open, 5) * sum(returns, 5)), 10
这里是两个相减。sum*sum然后减去delay延时的天数
-
sum(open, 5)
表示对过去 5 天的开盘价进行求和。在这个例子中,sum(open, 5)=100 + 102 + 105 + 106 + 110 = 523
。它代表了这 5 天开盘价的总和,从一定程度上反映了这段时间股票价格的总体水平或趋势。如果这个值持续上升,说明股票在这几天的开盘价格整体呈上升趋势。 -
sum(returns, 5)
表示对过去 5 天的收益率进行求和。在上述例子中,sum(returns, 5)=0.02 + 0.03 + 0.01 + 0.04 + 0.02 = 0.12
。收益率反映了股票每天的盈利或亏损情况,这个总和表示这 5 天的总收益率,能让投资者了解到在这一段时间内投资该股票的总体收益情况。 -
(sum(open, 5) * sum(returns, 5))
则是将这两个总和相乘。在金融意义上,它可能是一种综合考虑了股票价格水平和收益情况的指标。比如,它可以用来衡量在一定价格水平基础上,一段时间内的总收益情况与价格水平的某种关系。在这个例子中,(sum(open, 5) * sum(returns, 5)) = 523 * 0.12 = 62.76
。这个结果可以作为一个参考指标,帮助投资者分析股票在一段时间内的表现,结合其他指标来评估投资的效果和风险等。
那么delay((sum(open, 5) * sum(returns, 5)), 10))
总这个的话我们是当前的10天之前的两个相乘
(sum(open, 5) * sum(returns, 5)) - delay((sum(open, 5) * sum(returns, 5)), 10这两个相减的话
这个差值的金融意义在于它反映了在过去 10 天中,基于过去 5 天的开盘价和收益率的综合指标的变化情况。如果这个差值为正,说明近期的综合收益指标相比 10 天前有所上升,可能意味着股票在这段时间内的表现相对较好,或者是价格水平和收益率的组合情况有所改善;如果差值为负,则表示综合收益指标出现了下降,可能暗示股票的表现不如之前,投资者需要进一步分析是价格因素、收益率因素还是两者共同作用导致了这种变化,以便更好地评估投资风险和收益趋势。
引入rank后
引入了排序(Rank)操作,其核心作用是将上述差值指标转化为相对排名,以便在多资产或多周期比较中使用。以下结合表格和文字详细解释:
1. 基础计算回顾
假设我们有多个股票的数据,每个股票都有 (sum(open, 5) * sum(returns, 5)) - delay(..., 10)
的计算结果(即10 天前后的综合收益变化值):
横向比较(多资产)
- 选股策略:排名越高,说明该股票在近 10 天内的综合收益改善幅度越大。例如,GOOG 排名第 1,表明其近期表现优于其他股票,可能是更好的投资选择。
- 相对强弱指标:排名可用于构建相对强弱策略(如买入排名前 20% 的股票,卖出排名后 20% 的股票)。
b. 纵向比较(单资产多周期)
- 趋势判断:若某股票的排名持续上升,说明其综合收益改善能力在增强,可能处于上升趋势。
- 拐点信号:当排名突然大幅下降时,可能预示股票表现转弱,需警惕潜在风险。
4. 实际应用场景
a. 多因子模型
将该排名作为一个因子纳入选股模型,与其他因子(如动量、估值、波动率)结合使用,提高选股准确性。
b. 行业轮动
比较不同行业的排名变化,判断资金流向。例如,若科技股的排名集体上升,可能预示行业轮动机会。
c. 风险控制
避免持有排名持续靠后的股票,降低组合风险。
5. 注意事项
- 排名方式:需明确是升序还是降序,多数金融场景使用降序(数值越大排名越高)。
- 时间窗口:
delay(..., 10)
中的 10 天可调整为其他周期(如 20 天、60 天),取决于分析周期。- 异常值影响:若某股票的综合收益变化值异常大(如重组、并购),可能扭曲排名结果,需进行标准化处理。
总结
rank()
的加入将原本的绝对差值转化为相对排名,更适合用于横向对比多资产或纵向跟踪单资产变化趋势,是构建量化策略的重要工具
- 将 “增强信号” 转为 “减弱信号”,或反之:
若原差值用于衡量 “近期走强”,取反后则专门衡量 “近期走弱”,适用于需要以 “弱势程度” 作为信号的策略(如做空信号)。 - 调整指标方向:
例如,在排序(Rank)或回归模型中,希望高值代表 “走弱”、低值代表 “走强”,通过取反实现指标方向的反转。
- 取反后正值越大:短期走弱越明显,适合作为做空或减仓信号;
- 取反后负值越大:短期走强越明显,适合作为做多或加仓信号。
总结
该表达式通过 反向计算 “短期开盘价 × 收益能力” 的变化,将 “增强信号” 转化为 “减弱信号”,核心用于:
- 捕捉短期趋势反转(走强→走弱,或反之);
- 构建反向策略因子(适用于看空逻辑或风险预警);
- 调整指标方向以适配特定策略需求(如排序时希望高值代表弱势)。
实际应用中需结合多维度指标验证,并根据交易周期优化时间窗口。