精华帖子

策略分享-时间序列分析风格判断

由bqtnziby创建,最终由bqtnziby 被浏览 12 用户

《韩非子 · 五蠹》有言:“世异则事异,事异则备变”。

我们过去的策略对市场风格进行判断时,除了一些绝对化标准的方法,还介绍过用机器学习算法来学习市场风格变化的模式。但是,如果将这种风格判断应用在一些中短期策略上,可能会带来以下的问题:

(1)A 股短期波动中,突发消息(如政策微调、资金异动、情绪恐慌)的影响远大于 “可预测规律”。

(2)机器学习依赖 “特征工程”(如成交量、资金流向、行业涨跌幅等),但中短期维度下,这些特征与指数收益率的相关性极不稳定。

(3)A股各种指标特征的特点变化极大,用过去一年两年的数据进行数据很可能会匹配不上现在的行情。

那么对于中短期的市场风格切换,我们可以直接用时间序列分析(Time-Series Analysis)的方法。

1.时间序列分析

时间序列分析是对按照时间顺序收集排列的数据进行分析和预测。它承认事物发展的延续性,应用过去数据,就能推测事物的发展趋势;并且考虑到事物发展的随机性,任何事物发展都可能受偶然因素影响,为此要利用统计分析方法对历史数据进行处理。而金融时间序列分析是和我们投资者最相关的,股价的变化就是天然的时间序列。

1.1简单移动平均模型(MA)

MA(Moving Average)的本质是通过 “算术平均” 平滑短期波动,提取市场核心趋势,其底层假设是 “A 股短期市场风格具有延续性”—— 若最近一段时间指数持续上涨 / 下跌,未来数日内大概率延续该趋势,不会突然反转。

(1)窗口长度:策略中采用 “20 日窗口简单移动平均”,并且对最近 20 个交易日的收益率赋予同等权重( each weight = 1/20 ),意味着模型认为 “近期 20 个交易日的趋势对未来 20日的影响同等重要”。这种设计能避免过度放大某一日的异常波动,进一步强化预测的稳定性。

(2)计算方式:ma_forecast = 最近20日收益率均值 × 20

1.2指数移动平均模型(EMA)

EMA 的底层逻辑是 “越近的交易日,其收益率对未来20日的影响越大”—— 这与 MA 的 “同等权重” 形成本质区别。在 A 股市场中,短期事件(如政策出台、资金突发流入)的影响往往集中在最近 3-5 日,EMA 通过权重设计,能放大这种 “边际效应”,避免 MA 的滞后性。

(1)窗口长度:与 MA 保持一致,核心目的是 “预测周期对齐”—— 避免因窗口差异导致三大模型的预测逻辑冲突,同时确保 EMA 的灵敏性不沦为 “过度敏感”(如 5 日窗口易受单日噪声干扰)

(2)指数权重:策略通过np.exp(np.linspace(-1, 0, 10))生成权重,核心是 “指数衰减” 而非线性衰减:

  • 权重计算过程:生成 20 个从 - 1 到 0 的指数值,通过指数函数转换后,得到 “最近 1 日权重最高(约 0.18)、最远 20 日权重最低(约 0.08)” 的递减序列;

  • 权重归一化:将衰减后的权重求和并归一化(权重总和 = 1),确保预测结果的量级与 MA、ARIMA 一致,便于后续融合计算;
  • 边际效应:最近 5日的权重累计占比超过 55%,意味着模型将 60% 以上的注意力放在近期数据上,能快速响应短期风格变化。

(3)计算方式:ema_forecast = [(最近20日收益率 × 归一化指数权重)]的求和 × 20

1.3ARIMA 模型

ARIMA( p , d , q )是中短期预测的核心,其优势在于能量化 “历史收益率对未来的动态影响”。

1.3.1参数意义

p(自回归阶数):表示 “过去第 p 个交易日的收益率,对未来 20 日收益率仍有显著影响”,直接量化市场风格的 “延续性强度”。

d(差分阶数):表示 “使收益率序列达到平稳所需的差分次数”,平稳序列的核心特征是 “均值、方差不随时间变化”,这是时间序列预测的前提。

q(移动平均阶数):表示 “过去第 q 个交易日的预测误差(实际收益率 - 预测收益率),对未来 20日预测仍有修正作用”,量化市场风格的 “噪声持续时间”。

1.3.2模型逻辑

p值根据偏自相关系数(PACF)确定,q值根据自相关系数(ACF)确定,d值根据平稳性检验的差分次数决定(A股市场大概率是0),如果这三个参数在ARIMA模型中拟合失败,自动fallback至ARIMA(0 , 0 , 1 ),即MA(q)模型。

计算方式:通过 ARIMA 模型拟合历史收益率序列,直接预测未来 20 日的每日收益率,求和后得到 20 日累计收益率(arima_forecast);

容错设置:若 ARIMA 拟合失败(如数据异常、自相关规律突变),自动用 MA 预测值替代,避免单一模型失效导致策略崩溃。

三个模型按照不同的权重进行市场风格的判断:MA(0.4)+EMA(0.3)+ARIMA(0.3)

  • 稳定性:MA(权重 0.4)兜底,避免极端预测偏差;
  • 精准性:ARIMA(权重 0.3)捕捉自相关规律,优化趋势判断精度;
  • 灵敏性:EMA(权重 0.3)响应中短期变化,提前捕捉风格切换。

2.策略逻辑

2.1核心目的

(1)市场风格判断

市场风格的核心是 “中短期趋势的延续性与强度”,我们采用MA、ARIMA、EMA 三大时间序列模型融合预测,用量化方法替代主观判断,核心逻辑如下:

  • 模型适配性:时间序列模型天生聚焦 “收益率随时间的变化规律”,能精准捕捉短期市场的趋势延续性(MA)、自相关性(ARIMA)与边际变化(EMA);
  • 预测目标:以沪深 300 指数未来 20 日累计收益率为核心标的,通过多模型加权融合输出预测值;
  • 风格界定:设定 5%(0.05)为预测阈值,预测收益率≥5% 判定为进攻风格,<5% 判定为 防守风格,实现风格的清晰量化区分。

(2)策略本质

  • 进攻风格:小市值+高动量
  • 防守风格:低换手率波动

2.2策略流程

STEP1:数据准备

指数数据:提取沪深 300 指数(000300.SH)的日期、收盘价、日收益率数据,时间范围覆盖 “回测开始日前 150 天” 至 “回测结束日”,用于模型训练与预测。

个股数据:提取沪深 300、中证 500、中证 1000 成分股的流通市值、5 日动量、换手率、换手率 20 日波动率等因子数据,筛选条件包括 “非 ST、非停牌、上市满 365 天”,确保标的安全性与流动性。

STEP2:时间序列模型构建与预测

STEP3:构建股票池

STEP4:风格判断及调仓:

  • 每日匹配最新预测的风格信号,每 20 个交易日触发一次调仓
  • 采用等权分配策略,单只个股权重 = 1 / 选股数量(固定 10 只,单只权重 10%)
  • 卖出不在目标股票池中的持仓标的,买入目标池内标的,实现全额换仓,确保组合与当前市场风格高度贴合

2.3策略局限性

该策略更适合长期的股市参与者

(1)A股市场噪声(比如突发政策、资金短期炒作、情绪波动、偶发事件)影响极大,会极大冲击当前使用的时间序列模型的短期预测准确性。

(2)噪声具有随机性,多轮调仓后,正面噪声(如突发利好)和负面噪声(如突发利空)的影响会相互对冲,策略的核心逻辑(捕捉风格切换、趋势累积)会凸显。

3.回测结果

回测时间段为2023年1月1日-2025年10月31日

4.改进方向

(1)大量的实证和回测结果表明,小市值和高动量策略并不是在股市“变好”的情况下会跑得很好,而是在股市“好得绝对”的时候才跑得很好。所以时间序列分析预测判断的标准可以增加绝对标准。

(2)不同风格的市场环境下不同的策略略显简单,可以增加其它因子进行综合判断。

(3)加入宏观因子判断市场走向,可以有更多的基本面判断和分行业降低风险的措施。

(4)把时间序列的窗口适当拉长,提高准确性。

(5)用更高级的时间序列模型去预测,当前我们所用的模型本质上都是线性的,对A股市场的噪声过滤和处理是不够的。(用Transformer、LSTM深度学习模型进行处理)


策略代码:https://bigquant.com/square/ai/c3b69a84-7084-6f8a-eca6-ef1cdb1c622c

标签

A股市场机器学习
{link}