DataWhale—量化金融(task3:移动平均线策略)

目录

  1. 移动平均线策略理论
  2. 三种市场状态可视化
  3. [兆易创新 MA5/MA20 双均线策略](#兆易创新 MA5/MA20 双均线策略)
  4. [兆易创新 MA10/MA30 双均线策略](#兆易创新 MA10/MA30 双均线策略)
  5. 双策略对比分析
  6. 作业问题解答

一、移动平均线策略理论

1.1 什么是移动平均线?

移动平均线(Moving Average, MA)是最古老、最广泛使用的技术分析工具之一。它通过计算过去N个交易日的收盘价的平均值,来平滑价格波动,揭示价格背后的趋势方向。

简单移动平均线(SMA)公式

M A ( N ) t = P t + P t − 1 + . . . + P t − N + 1 N MA(N)t = \frac{P_t + P{t-1} + ... + P_{t-N+1}}{N} MA(N)t=NPt+Pt−1+...+Pt−N+1

其中 P t P_t Pt 为第t日的收盘价,N为周期。

1.2 三种市场状态

在量化分析中,我们通常将市场划分为三种状态:

状态 特征描述
上涨趋势 价格持续创新高,MA均线呈多头排列,短期MA > 长期MA,斜率为正
下跌趋势 价格持续创新低,MA均线呈空头排列,短期MA < 长期MA,斜率为负
震荡/噪声 价格在区间内波动,MA均线纠缠不清,短期MA与长期MA频繁交叉

1.3 双均线策略(Dual Moving Average Crossover)

信号 定义 操作
金叉(Golden Cross) 短期MA上穿长期MA 买入 ▲
死叉(Death Cross) 短期MA下穿长期MA 卖出 ▼

策略逻辑

  • 短期MA反映近期市场情绪,更灵敏
  • 长期MA反映中长期趋势,更稳定
  • 当短期MA突破长期MA时,意味着短期动能超过长期趋势

常用参数组合

  • MA5/MA20:短线交易,信号频繁
  • MA10/MA30:中线交易,信号适中
  • MA20/MA60:长线交易,信号稀疏

二、三种市场状态可视化

理论分析

上涨趋势(上图)

  • MA5(橙色)始终在MA20(紫色)上方
  • 绿色填充区域表示多头排列
  • 均线斜率为正,趋势明确
  • 价格沿着短期均线稳步上升

下跌趋势(中图)

  • MA5始终在MA20下方
  • 红色填充区域表示空头排列
  • 均线斜率为负,趋势明确
  • 价格沿着短期均线稳步下降

震荡/噪声(下图)

  • MA5与MA20频繁交叉,共18次交叉(9次金叉,9次死叉)
  • 金叉▲和死叉▼标记显示信号密集
  • 价格围绕均值上下波动,无明显方向
  • 关键洞察:在震荡市场中,双均线策略会产生大量假信号,导致频繁亏损

三、兆易创新 MA5/MA20 双均线策略

3.1 数据概况

指标 数值
数据范围 2026-04-15 至 2026-07-17
总交易日 64 天
最新收盘价 ¥463.15
52周最高价 ¥846.66 (2026-06-29)
52周最低价 ¥113.65

3.2 策略信号

信号类型 日期 价格 MA5 MA20
金叉▲ 买入 2026-05-15 ¥375.34 ¥362.44 ¥321.83
死叉▼ 卖出 2026-07-09 ¥663.49 ¥643.74 ¥657.62

3.3 策略回测结果

指标 数值
买入价格 ¥375.34
卖出价格 ¥663.49
单笔收益率 +76.77%
盈利金额 ¥288.15
持仓天数 约39个交易日

可视化分析

  • 绿色填充区域:MA5 > MA20,多头排列,持仓区间
  • 红色填充区域:MA5 < MA20,空头排列,空仓区间
  • 底部持仓条:绿色表示持仓中,灰色表示空仓
  • 成交量图:金叉/死叉位置成交量放大,验证信号有效性

四、兆易创新 MA10/MA30 双均线策略

4.1 策略信号

信号类型 日期 价格 MA10 MA30
金叉▲ 买入 2026-05-29 ¥467.01 ¥465.62 ¥369.76
死叉▼ 卖出 2026-07-16 ¥514.61 ¥605.19 ¥615.27

4.2 策略回测结果

指标 数值
买入价格 ¥467.01
卖出价格 ¥514.61
单笔收益率 +10.19%
盈利金额 ¥47.60
持仓天数 约33个交易日

五、双策略对比分析

5.1 核心对比数据

指标 MA5/MA20 MA10/MA30
金叉次数(买入) 1 1
死叉次数(卖出) 1 1
总交易次数 2 2
买入价格 ¥375.34 ¥467.01
卖出价格 ¥663.49 ¥514.61
策略收益率 +76.77% +10.19%
买入滞后 基准 滞后92元
卖出滞后 基准 少赚148元

5.2 可视化角度分析

上图:价格+均线+买卖点对比

  • MA5/MA20(虚线)更贴近价格,反应更灵敏
  • MA10/MA30(实线)更平滑,滞后但过滤噪声
  • MA5/MA20金叉更早(5月15日 vs 5月29日)
  • MA5/MA20死叉更早(7月9日 vs 7月16日),成功逃顶

下图:均线差值图

  • 正值区域(绿色填充)= 多头排列
  • 负值区域(红色填充)= 空头排列
  • 零轴交叉点 = 金叉/死叉位置
  • MA5-MA20差值波动更大,MA10-MA30差值更稳定

5.3 理论解释

特性 MA5/MA20 MA10/MA30
灵敏度 高,快速响应价格变化 低,滞后但稳定
假信号率 较高 较低
适用市场 趋势明确的市场 波动较大的市场
交易成本 可能更高(信号更频繁) 相对较低
收益潜力 更高(更早入场/离场) 更稳健(过滤噪声)

本案例特殊情况:兆易创新在观测期内呈现非常明确的单边上涨趋势,因此灵敏度更高的MA5/MA20策略获得了显著更高的收益。但在震荡市场中,MA10/MA30的过滤效果可能更优。


六、作业问题解答

作业1:MA10/MA30 vs MA5/MA20,买卖次数变多了还是变少了?

答案:买卖次数不变(都是1次金叉+1次死叉),但信号时点不同。

对比维度 MA5/MA20 MA10/MA30
金叉日期 2026-05-15 2026-05-29
死叉日期 2026-07-09 2026-07-16
时间差 基准 滞后14天买入,滞后7天卖出

理论解释

  • MA10/MA30的均线周期更长,计算时包含更多历史数据
  • 这使得均线对价格变化的反应更慢(滞后性)
  • 在快速上涨的趋势中,滞后意味着错过早期涨幅和晚期逃顶机会
  • 但在震荡市场中,这种滞后性可以过滤掉短期噪声,减少假信号

一般规律

  • 在趋势明确的市场:短周期均线(MA5/MA20)更优
  • 在震荡波动的市场:长周期均线(MA10/MA30)更优
  • 理论上,MA10/MA30的信号频率通常低于MA5/MA20,但本案例由于趋势极强,两者都只产生了1次信号

作业2:金叉一定赚钱吗?一定要做回测吗?

答案:金叉不一定赚钱,一定要做回测!

(1)金叉不一定赚钱的证据

震荡市场假信号

  • 在第五部分的模拟中,震荡市场产生了18次交叉(9金叉+9死叉)
  • 每次金叉后价格并未持续上涨,而是很快反向
  • 如果按每次金叉买入、死叉卖出操作,将产生多次亏损

本案例的特殊性

  • 兆易创新在观测期内处于极强的上涨趋势(AI算力需求驱动)
  • 这种单边上涨行情在历史上并不常见
  • 如果在2026年6月29日(¥846.66)追高买入,到7月17日(¥463.15)将亏损45%

金叉失效的典型场景

场景 结果
震荡市场 频繁假信号,反复亏损
趋势末端金叉 "多头陷阱",买入即被套
黑天鹅事件 均线滞后,无法预测突发暴跌
流动性危机 技术指标失效,价格跳空
(2)为什么一定要做回测?

回测(Backtesting)的定义

用历史数据验证交易策略在过去的表现,评估其有效性和稳健性。

回测的必要性

理由 说明
验证策略有效性 一个策略在单一股票、单一时间段的成功可能是偶然
评估风险指标 最大回撤、夏普比率、胜率等关键指标只能回测获得
避免过拟合 防止策略只适应特定历史数据,未来失效
参数优化 确定最优的均线周期组合
心理建设 了解策略在历史最坏情况下的表现,增强持仓信心

不做回测的风险

"如果不做回测,你只是在用真金白银做实验。" ------ 量化交易格言

正确的回测流程

  1. 样本内测试:用历史数据训练策略参数
  2. 样本外测试:用未参与训练的数据验证策略
  3. 交叉验证:在不同时间段、不同股票上重复测试
  4. 模拟盘验证:实盘前先用模拟资金运行
  5. 小资金实盘:确认策略有效后再加大投入
相关推荐
hqyjzsb20 小时前
非计算机专业学生怎么进入AI相关方向
人工智能·职场和发展·金融·数据挖掘·数据分析·aigc·业界资讯
龙虾PRO20 小时前
金融 AI 分析系统:人工智能驱动的金融行情分析系统落地方案
人工智能·金融
longxibo1 天前
第 14 章 金融行业私有化AI落地案例
人工智能·金融·aigc
2401_891409262 天前
CMES金融数据下载中心:期货、期权行情数据全解析
金融
极客先躯2 天前
高级java每日一道面试题-2026年04月18日-实战篇[Docker]-如何处理金融行业的时序数据容器化?
java·运维·docker·容器·金融·时序数据·高级面试
方向研究3 天前
金融游戏的训练价值
人工智能·游戏·金融
半兽先生5 天前
大模型实现金融文本分类
人工智能·python·金融
念雨思6 天前
信用卡权益对比:基于HarmonyOS + ArkTS的AI智能金融助手开发实践
人工智能·学习·华为·金融·harmonyos·鸿蒙
2401_873479406 天前
金融合规新规下IP查询怎么做?用IP离线库实现数据不出域
网络协议·tcp/ip·金融·ip