Mannigfaltigkeit

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

【量化课堂】双均线策略

https://www.joinquant.com/view/community/detail/7f93868fc490a937122366a0ec9aa388

 

【量化课堂】双均线策略

导语: 双均线策略,通过建立m天移动平均线,n天移动平均线,则两条均线必有交点。若m>n,n天平均线“上穿越”m天均线则为买入点,反之为卖出点。该策略基于不同天数均线的交叉点,抓住股票的强势和弱势时刻,进行交易。

规范源码已更新!请大家克隆研究。
本文由JoinQuant量化课堂推出 。难度标签为进阶上,理解深度标签:level-0

作者: 导数君
编辑: 宏观经济算命师

 

均线嘛,都是均线

对于每一个交易日,都可以计算出前N天的移动平均值,然后把这些移动平均值连起来,成为一条线,就叫做N日移动平均线。

比如前5个交易日的收盘价分别为10,9,9,10,11元,那么,5日的移动平均股价为9.8元。同理,如果下一个交易日的收盘价为12,那么在下一次计算移动平均值的时候,需要计算9,9,10,11,12元的平均值,也就是10.2元。

将这平均值连起来,就是均线。

如下图所示,收盘价是蓝线,橙色的线表示5日的移动平均线。

1.png

可以看到股票价格的波动比5天均线的波动要大,这是因为5天均线取的是前5个交易日的均值,相当于做了一个平滑。

 

双均线

顾名思义就是两条天数不同的移动平均线,比如说,一条是5天的移动平均线,另一条是10天的移动平均线。如图,蓝色的是5天均线,黄色的是10天均线。

2.png

 

金叉和死叉

由时间短的均线(如上图蓝色的线)在下方向上穿越时间长一点的均线(如上图黄色的线),为“金叉”,反之为“死叉”。
好了,现在可以构建一个简单的策略:我们认为,双均线金叉的时候,表明股票很强势,反之很弱势,我们就在强势的时候买一个好了,弱势的时候卖掉好了。

说了这么多,下面我们开始实战!

首先,我们可以看一下API中的策略示例里面的双均线策略(详见https://www.joinquant.com/api#双均线策略 )直接复制粘贴就能运行,是不是很简单呢?

老师,可以了嘛?

当然不行,有时候我们也许会根据自己的需要对一些现有的策略进行改造,比如说,我想对均线进行加权呢?我想改造一个指数均线呢?

那我们得自己实现一下均线函数。方法不难,获得前N天的收盘价,然后计算一个算术平均数就可以了,各位读者可以先自己进行尝试,也可以参考回测代码块5(里面有代码和注释)

接下来,如果你想挑战更高难度,可以试一下计算指数移动平均的函数。

指数移动平均和算术平均或者加权平均的主要区别在于指数移动平均需要进行一个迭代,因此这可能是个有点挑战的地方:

3.png

其中pi表示前一天的收盘价,且

α=N1N+1
α=N1N+1α=N−1N+1
 

 

写出来没?如果没写出来的话可以参考回测代码块3和4(里面有代码和注释)

怎么样?是不是有点挑战性?如果写出这样的子函数,那么在主程序里面只要改一下函数输入参数,就可以轻松的在不同的参数之间来回切换,比较收益。

 

多股票

除了改为指数移动平均线以外,小编还加入多股票实现方法。

在交易日前,同时对多个股票进行判断,哪只金叉了就买入,死叉了就卖出,按日进行判断和交易。最大可以同时持有N只股票,用于实现这个策略的主函数可以参考回测代码块1和2。

好啦,看看小编选了5个股票的回测结果吧。从2005开始回测至今,你会发现在大部分时间里面,策略的收益比基准收益高,是不是很棒?各位读者可以自己尝试修改参数,看看参数应该如何选取。在这里,小编提供一个同时持有股票书N的选择的小tips,如果风险承受能力强的话可以少选一点,如果想分散风险,可以多选一些股票,但是,分到每个股票的资金最好不要少于两万,因为手续费是有最低限制的。

5.png

小结

我们这里是量化课堂的第三部分,主要给大家提供几个大范围的量化思路。本篇为第一讲,举了一个技术指标的例子。比较简单。有关技术指标的文章,百度上一搜一大把,我们平台里也有很多相关的帖子,python公开库ta-lib里也收录了很多指标,大家想进一步研究可以实现一下。也可以结合其他选股策略,或者根据需要制订资金等分的份数或者控制仓位等方法提高策略的收益。

好了,今天对双均线多股票选股策略的介绍就到这里了。

双均线策略_函数说明.png

本文由JoinQuant量化课堂推出,版权归JoinQuant所有,商业转载请联系我们获得授权,非商业转载请注明出处。

文章更迭记录:
v2.02016-07-16,更新为规范源码,添加“函数说明书”
v1.12016-07-04,添加“导语”
v1.02016-05-21,文章上线
择时
策略
头像
JoinQuant量化课堂
166 文章
 
8558 关注
关注
讨论区
 

??????@选项未来导数

发布于 13天前回复

学习学习

发布于 2个月前回复

学习了!

发布于 3个月前回复

请问回测代码板块在哪里看呀

发布于 3个月前回复
头像

笨小猪猪 : 

@辽北水库浪子 你说的是如何看到策略吗?点击文中的克隆策略就可以了

 

发布于 19天前回复
 
添加新回复

简单用MA,暂没有用EMA,发现结果不乐观。选股很重要。

发布于 3个月前回复
头像

蝠王 : 

@wangww 还可以了

 

发布于 3个月前回复
 
添加新回复

简单用MA,暂没有用EMA,发现结果不乐观。选股很重要。

发布于 3个月前回复

学习了~~~

发布于 3个月前回复

感谢分享

发布于 4个月前回复

求大神解惑:不知是不是我没看懂,感觉这个EMA方法不是很对,只取了前面的MA做为基数,正确的不应该从第一天作为基准EMA,然后再按权重累加吗?

发布于 4个月前回复

准备学习

发布于 4个月前回复

可以呀

发布于 4个月前回复

不能贴代码也太难受了
感谢大家回复下

发布于 4个月前回复
头像

Dustin的机械狗 : 

@Dustin的机械狗 1

 

发布于 4个月前回复
 
添加新回复

源码简单 供参考

发布于 4个月前回复

junx均线

发布于 5个月前回复

从最简单的部分开始学起,不管自己是多大的年纪

发布于 5个月前回复

入门好用

发布于 5个月前回复

好像近两年的表现不太强。

发布于 5个月前回复

多股票移动双均线策略学习

发布于 5个月前回复

5日与60日均线学习

发布于 5个月前回复

入门标配

posted on   Mannigfaltigkeit  阅读(1023)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示