ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Momentum动量因子逻辑的探索

Momentum动量因子逻辑的探索 动量因子(Momentum Factor)描述资产价格延续过去趋势的倾向。其源于动量效应(Momentum Effect)过去表现好的资产未来一段时间内倾向于继续表现好过去表现差的资产倾向于继续表现差。这里探索动量因子逻辑以及其计算方法比如ret_1m、ret_3m、ret_6m、ret_12m、ret_1m_skip_1m。1 基本定义经典动量因子构建方法由Jegadeesh和Titman(1993)提出。按过去6-12个月的总回报率对股票排序买入赢家组合、卖出输家组合持有3-12个月可获得超额收益。该因子通常被称为UMD(Up Minus Down)。动量因子利用了时间序列的自相关性资产价格未来的涨跌与其过去的涨跌存在统计关联。2 收益来源动量因子能够产生持续超额收益根源在于风险溢价补偿与行为偏差导致的错误定价共同作用。2.1 风险溢价补偿资产价格受到某些持续因素如基本面趋势、行业景气度等长期作用推动其持续上涨或下跌。动量策略本质上是在捕捉这些持续性因素的暴露并为此承担相应的风险以获取补偿。研究表明一年期动量的收益部分来源于风险补偿且该风险主要是业绩基本面风险。2.2 行为偏差行为金融学为动量效应提供了更丰富的解释。1保守性偏差投资者面对新信息时更新信念过慢导致价格对新信息的反应不足。价格逐步消化信息的过程形成了动量。2证实偏差投资者倾向于寻找支持自己已有判断的信息强化了既有趋势。3处置效应投资者倾向于卖出赢家、持有输家这种行为在一定程度上抑制了动量效应的持续时间。4异质信念投资者之间对信息的解读存在分歧异质信念的加剧会延长动量效应的持续时间。另外分析师评级调整滞后以及资金流对趋势的强化赢家吸引资金流入进一步推高价格也是重要的结构性因素。短期动量如一个月的收益主要来自行为偏差造成的错误定价而非风险补偿。3 关键因素动量因子的表现并非一成不变其效果强弱受多种因素调节。3.1 投资者结构当价格变动主要由机构投资者主导时动量特征更明显而当价格变动主要由散户投资者主导时反转效应更强烈。这是因为机构投资者相对理性交易行为更多基于基本面信息的逐步释放而散户交易中噪声成分更高容易导致过度反应后的价格反转。3.2 股票特征动量特征更明显的股票池特征高机构覆盖、大市值、低波动、高价值的股票。反转效应更显著的股票池特征低覆盖、小市值、高波动、低流动性、低价值的股票。3.3 市场状态动量类因子倾向于释放更多动量特征的环境特征如下1市场处于下跌、低波动时期2风格处于大盘占优、成长占优时期动量类因子倾向于释放更多反转特征的环境1市场处于上涨、高波动时期2风格处于小盘占优、价值占优时期散户较多A股市场震荡市下动量因子ICIR可达0.45正向而牛市中则为-0.36反向。随着A股机构化程度持续提升动量特征会越来越明显反转效果将逐步削弱。4 动量计算动量逻辑判断特定时刻交易投资者占比更偏向机构还是个人并将该判断以权重序列形式表达。动量因子开发的核心在于设计合理的权重序列即对不同时期的历史收益赋予不同的权重。因此动量因子的构建可以抽象为历史收益率序列向量与权重序列向量的内积比如对各类行情持续时间的统计计算。4.1 1个月收益率过去 20个交易日涨幅越大预期继续涨即动量效应。通常用ret_1m表示1个月收益率ret price(t) / price(t-20) - 1短期动量效应较弱甚至为负则说明是反转效应主导。示例代码如下shift(1)避免未来函数用 t 日因子预测 t1→t20 收益def factor_return_1m(prices: pd.DataFrame, **kwargs) - pd.DataFrame: 1-month (20 trading day) past return — momentum factor. return prices.pct_change(20, fill_methodNone).shift(1)4.2 3个月收益率3个月收益率计算的是中期动量目的是过滤短期噪音。通常用ret_3m表示3 个月收益率ret price(t) / price(t-60) - 1ret_3m反映的是典型持仓周期即20天调仓。示例代码如下def factor_return_3m(prices: pd.DataFrame, **kwargs) - pd.DataFrame: 3-month (60 trading day) past return. return prices.pct_change(60, fill_methodNone).shift(1)4.3 6个月收益率6 个月收益率表示的是半年度动量。通常用ret_6m表示6 个月收益率。ret price(t) / price(t-120) - 1计算代码示例如下def factor_return_6m(prices: pd.DataFrame, **kwargs) - pd.DataFrame: 6-month (120 trading day) past return. return prices.pct_change(120, fill_methodNone).shift(1)4.4 12个月收益率表示年度动量即美股经典的12-1 momentum。通常用ret_12m表示12个月收益率。ret price(t) / price(t-250) - 1示例代码如下def factor_return_12m(prices: pd.DataFrame, **kwargs) - pd.DataFrame: 12-month (250 trading day) past return. return prices.pct_change(250, fill_methodNone).shift(1)4.5 长期反转因子长期反转因子的目的是排除最近 1 个月的短期反转噪音捕捉中长期反转信号。通常用ret_1m_skip_1m表示长期反转因子即跳过近 1 月。ret ret_12m - ret_1m [price(t) / price(t-252) - 1] - [price(t) / price(t-21) - 1]那为什么跳过 1 月。比如A 股短期(1个月)反转强烈中长期(6个月)可能回归动量跳过近期可分离两种效应。示例代码如下def factor_return_1m_skip_1m(prices: pd.DataFrame, **kwargs) - pd.DataFrame: Reversal factor: return from t-252 to t-21 (skip last month). Captures long-term reversal / momentum without short-term noise. ret_12m prices.pct_change(252, fill_methodNone).shift(1) ret_1m prices.pct_change(21, fill_methodNone).shift(1) return ret_12m - ret_1m5 动量风险动量因子虽然长期有效但具有明显的尾部风险1趋势反转风险在市场转折点如政策冲击、市场修正后动量策略可能遭遇剧烈回撤。2动量崩溃在快速反弹的市场环境中如2020年3-6月的疫情复苏期动量策略表现尤为糟糕。3与价值因子的负相关动量和价值因子历史上呈负相关当价值股强势反弹时动量策略往往承压。动量因子通常不单独使用而是与价值、质量、低波动等因子组合降低单一因子的回撤风险。reference---股指期货三因子预测模型https://htfc.com/wz_upload/png_upload/20180928/1538115038893c5ef9a.pdf#1#1量化多因子系列(6)关于动量 你所希望了解的那些事https://stock.finance.sina.com.cn/stock/view/paper.php?reportid707819075972
返回列表