主题:1-3初级技术分析的验证-双均线vs单均线 -- 牛义缂
小牛喜欢用编程的方式,使用历史数据验证各种技术方法的效率。今天我们来比较两种均线交叉方法(单均线方法和双均线方法)。
双均线方法描述:
1.买入策略:
当小均线向上交叉大均线时(金叉),第二天开盘买入。
2.卖出策略:
当小均线向下交叉大均线时(死叉),第二天开盘卖出。
双均线方法很简单,只有两个参数。常见的三种参数组合是:5日&10日;20日&60日;60日&120日
单均线方法描述:
1.买入策略:
如果收盘线向上穿越均线(金叉),则第二天(或延迟几天)开盘买入。如果延迟的几天里又出现死叉,则不买入。如果计划买入的那一天的开盘价低于均线,则延缓一天买入。
2.卖出策略:
如果收盘线向下穿越均线(死叉),则第二天(或延迟几天)开盘卖出。如果延迟的几天里又出现金叉,则不卖出。如果计划卖出的那一天的开盘价高于均线,则延缓一天卖出。
单均线方法稍复杂,有三个参数:均线日数、延迟买入的天数、延迟卖出的天数。
双均线方法实际是单均线方法的一种特殊情况,见下图。很明显,图上最早出现的是“收盘线金叉20日均线”,然后出现“收盘线金叉60日均线”,最后才出现“20日均线金叉60日均线”。所以,我们可以把“20日均线金叉60日均线”看作是“收盘线金叉60日均线”的一种延迟买入的情况(延迟买入的日数不是固定的)。死叉也是一样的。
那么哪一种方法的效率更高呢?我们先用程序验证20&60双均线方法在上证指数(把上证指数看作一支股票)上的滚动总收益。
数据样本:上证指数日线
时间段:1997年12月2日到2010年7月2日
技术指标:20&60日双均线
总手续费/卖出价:0.8%
股票只有卖出才计算收益:是
得到的滚动总收益是:2.86倍,总交易次数是:25次(一买一卖算一次)
交易记录如下:
交易日期 正买负卖 单次交易收益
1998-1-6 1223.73
1998-3-20 -1188.59 0.963514239
1998-4-8 1303.401
1998-7-9 -1341.351 1.020883206
1998-10-12 1239.561
1998-12-16 -1194.941 0.956291358
1999-3-29 1160.5699
1999-5-10 -1107.36 0.946518706
1999-6-3 1280.469
1999-10-15 -1515.899 1.174391421
2000-1-27 1490.439
2000-9-20 -1902.91 1.26653068
2000-11-15 2087.27
2001-2-12 -1958.651 0.930872284
2001-3-29 2107.2219
2001-7-23 -2183.74 1.028021814
2001-12-12 1724.88
2002-1-8 -1594.87 0.917229628
2002-3-19 1624.3199
2002-5-23 -1571.0699 0.959479312
2002-7-5 1709.84
2002-9-5 -1662.89 0.96476096
2003-2-10 1499.17
2003-6-30 -1493.6899 0.988373821
2003-12-9 1435.101
2004-4-30 -1579.97 1.092139327
2004-10-11 1424.22
2004-11-2 -1303.88 0.90818059
2005-3-9 1321.21
2005-3-30 -1192.45 0.895323529
2005-8-11 1165.441
2005-10-24 -1141.3311 0.971478137
2005-12-28 1155.1219
2006-8-10 -1578.349 1.355460586
2006-9-15 1689.599
2007-7-17 -3809.5601 2.236674867
2007-8-2 4316.5698
2007-11-23 -4946.2598 1.136710386
2008-1-18 5141.3711
2008-1-29 -4426.271 0.854025268
2008-12-11 2072.582
2009-1-21 -1965.941 0.940958414
2009-2-3 2011.771
2009-9-1 -2649.1709 1.306300535
2009-11-4 3119.311
2010-1-15 -3217.1909 1.023127663
2010-1-20 3252.041
2010-1-26 -3094.8521 0.944051223
2010-4-9 3118.9309
2010-5-5 -2804.51 0.891996011
那我们再看看对应的60日线单均线方法的收益。
数据样本:上证指数日线
时间段:1997年12月2日到2010年7月2日
技术指标:60日单均线
金叉后第几日买入:第2-11日,步进1(变量)
死叉后第几日卖出:第2-11日,步进1(变量)
总手续费/卖出价:0.8%
股票只有卖出才计算收益:是
运行后得到的数据绘制成下图后,小牛很吃惊。60日单均线的任何一种延迟买卖组合得到的总收益都大于20&60双均线方法!?
埋头继续测试,小牛很快就发现了一支有截然相反的测试结果的股票:深物业A(000011)1997/12/2-2010/7/2:
20&60日双均线的总收益是1.99倍
60日单均线收益见下图。几乎各种延迟买卖组合的收益都小于20&60双均线方法。
注:对多数测试的股票,双均线方法的收益都在对应单均线方法的收益极值之间。
小牛共对10多只股票进行了测试。结果似乎是,60日单均线的各种延迟总体上略微优于20&60双均线,10日单均线总体上略微优于5&10双均线,120日单均线总体上略微逊于60&120双均线。这种小差异也许会在更多的测试中趋向于零,也许不会。
另抽样测试(横向比较)常用的双均线5&10 / 20&60 / 60&120在不同股票的1997/12/2-2010/7/2区间中(按0.8%总手续费)的总收益的测试结果如下:
股票 MA1 MA2 总收益 交易次数
上证指数 5 10 1.1238 152
上证指数 20 60 2.8601 25
上证指数 60 120 3.9955 14
000001 5 10 0.1866 166
000001 20 60 3.7071 25
000001 60 120 5.7506 11
000002 5 10 0.4352 163
000002 20 60 4.7905 25
000002 60 120 1.8075 14
000005 5 10 0.339 163
000005 20 60 3.4888 23
000005 60 120 3.6111 11
000006 5 10 0.389 158
000006 20 60 1.0829 26
000006 60 120 4.605 10
000009 5 10 0.2406 168
000009 20 60 2.4768 26
000009 60 120 6.0774 10
000010 5 10 0.7357 154
000010 20 60 3.277 25
000010 60 120 3.2147 14
000011 5 10 0.7852 156
000011 20 60 1.9902 24
000011 60 120 2.5915 14
000012 5 10 0.5435 169
000012 20 60 8.0036 25
000012 60 120 5.0416 13
000014 5 10 0.2532 166
000014 20 60 1.7951 27
000014 60 120 0.964 13
000709 5 10 0.729 153
000709 20 60 1.3011 25
000709 60 120 1.6058 13
600649 5 10 0.1751 165
600649 20 60 2.3762 25
600649 60 120 2.1178 13
这个比较很有意义,可以看到,5&10日双均线的表现都非常差,60&120日双均线似乎在整体上略优于20&60日双均线。
小牛也用循环的方式测试了各种(步差为5的)双均线组合,对上证指数1997/12/2-2010/7/2,手续费0.8%的测试数据(总收益>5倍部分)贴在下面。55&90日组合拔了头筹。
MA1 MA2 总收益 交易次数
55 90 6.0511 15
50 90 5.7796 17
5 75 5.7097 30
55 95 5.4022 15
5 80 5.3837 29
10 85 5.2126 23
50 95 5.196 17
40 75 5.1794 17
10 80 5.1687 22
5 55 5.1566 34
50 100 5.1395 14
5 70 5.1373 29
10 65 5.1128 25
50 80 5.1049 17
5 85 5.0373 30
5 60 5.0224 31
5 105 5.0027 23
但对更多股票的测试结果也显示出,(和单均线一样)每个股票都有不同的最优双均线组合,每个股票的不同时期都有不同的最优双均线组合,小牛暂时还没有找出规律。
结论:双均线方法是对应的单均线方法的一种特例,在单个股票上看可能有很大的收益差距,但好像在多数股票上比较两种方法的收益整体相差不大。
从测试数据看,常用的5&10日双均线的长期收益远远比不上常用的20&60日和60&120日双均线。另外,不同股票在不同的时期都有不同的最优双均线组合。
小牛写的代码会持续发表在这个帖下: http://www.talkcc.com/article/3078483
---------------------------------------------------------------------------------------
最近听见有人说,看了小牛的分析后决定股票开户了。您可千万千万别因为小牛的文章来股市!!!
股市就好比战场,任何一种技术方法就好比不完美的盔甲。虽然穿上盔甲总比没穿强,但再好的盔甲也没办法保你在战场上不死不伤。小牛的文章是写给小股民看着玩的,对于还没来战场的,您还是在家优哉的好。
有句描述小股民的话小牛认为很贴切,“赚了的都别想走,想走的把钱留下”。
本帖一共被 1 帖 引用 (帖内工具实现)
是我等懒惰的低手的不二选择。
问一下,一共几篇啊?
另:我可以帮忙测试,看看怎么发源码方便些,还有怎么获取数据?
技术分析方法,还没想好写多少篇,看时间和心情吧。
大家有什么好主意都可以提!
60分钟周期的ma5和ma55
其实好稀饭牛哥的概念帖。
根据你的结论,
反过来看,均线系统是不是不值得相信的啊?
股票是小牛的游戏,可以当消遣啊。
稳定理想的技术方法是不存在的(这一点以后谈)。
不过对于没有技术方法瞎炒的小股民,均线可是最简单的救命稻草。
问一下您更相信哪种方法?只要能量化的,小牛可以写成程序测试一下。
预告一下:下一篇谈均线的本质和改进,再下一篇MACD
均线,MACD,SAR等属于趋势系统
这适合对于一个趋势的形成观测与认证。
但当趋势改变成平衡或者波动状态则需要切换成摆动类,例如KD,OSC,CCI等
我以为在一个上涨趋势确立后,一旦开始在一定区域反复波动后趋势系统钝化,则可以用摆动类来测试。
因此对于均线系统的认知以应用当以趋势验证为主。
均线参数的大小以资金多寡来测试,小资金可以延续小参数当然风险率可能会增高。
其次长期均线与短期均线系统的距离可以研究其乖离率,一般超过一定的乖离后会受到吸引而引发反方向运动。
虽然不是那啥,但如果你把历年股市缩小后看。。。
其实股市一直在上涨,不信你拿任何一个10年期的走势看看
所以理论上股市永远上涨
均线是一个系统,在它是一个趋势系统
在。。。作为技术分析来说,其实谁经验分析的部分,本质上确实不可靠,所以才有金融学的随机漫步理论,因为一切不可控。
但你不好说技术分析不成立,但要说其成立则在严谨数学上又不可靠。
所以总归是一种经验教学。。。就是极其的不可靠
没什么意义,理论是理论,实践是实践,股市里没有百分之百的可靠理论。
这么机械的理解均线就走入歧途了。
表象和内涵中,均线只是表象。
有个笑话:
古希腊,有个市民问一位理论家:什么样的动物是人?
理论家回答:有两条腿的动物。
市民:那么鸡是吗?
理论家补充:两条腿又没有羽毛的动物。
市民:那么拔了毛的鸡就是对吗?
理论家:!@##¥%……%##……
股市里很多股民把拔了毛,有两条腿的鸡当成人。。