博客
关于我
Python 量化投资实战教程(7) — 孕线真的有用吗?
阅读量:369 次
发布时间:2019-03-05

本文共 1385 字,大约阅读时间需要 4 分钟。

如上图就是所谓的孕线(harami)形态,也叫作子线跟随母线。两线长度差异越大,信号越强烈。

从技术指标层面来讲,在综合了其他指标(如20日均线、macd等)的情况下,孕线是比较可靠的反转信号。

从上图可以知道,孕线看涨信号主要由以下指标组成:

1.前一根K线的实体完全覆盖第二根K线

2.价格处于底部位置

今天我们就来试试用上述指标回测603186这只股票,看看效果如何。

为了简化问题,卖出信号由买入股票后涨10%或跌10%决定。

本文全部代码,请在Python实用宝典后台回复:量化投资7 进行下载。或到Github获取:

https://github.com/Ckend/pythondict-quant

1.基础版

该策略最大的难点在于如何判断价格处于底部位置。

我们第一版策略可以根据前三天的股价来判断是否处于底部位置。

如果股价连续三天下跌,第四天出现孕线上涨信号,则视为可买入信号。

对此股票使用该策略进行回测,时间是2010年1月1日至2020年8月15日,效果如下:

部分代码如下:

盈利9次,亏损10次,平均收益率1.3%,效果比较一般。

从中的买入点可以看到,该策略并没有准确地找到价格底部位置,许多买入点都在高点买入了。

2.优化版

为了解决高点买入的问题,我们需要合理的判断价格是否处于底部。

【连续多日下跌】这样的指标是无法判断价格所处的位置的。

相比之下,X日价格平均线却有一定的参考意义,如果价格低于20日平均线,可以认为该股票正处于近期的价格低谷中,此时出现的孕线才有价值。

因此,我们将【连续三日下跌】的指标更换为【价格低于20日均线】,重新进行回测

效果如下:

上述部分代码修改为:

平均收益率4.7%,盈利8次,亏损6次。不错,相比于基础版已经有非常大的改进。

但是,从图像上看还是有可以改进的地方。

3.加强版

事实上,第二版中有些孕线的当日最高价或当日最低价已经超过了前一日的K线实体,最标准的孕线应该是整根K线都在前一日的K线的实体内。

因此harami的计算方法依然需要改进,但是,这种孕线一整根都在前一日的K线实体内的情况,在这只股票10年的发展里只出现过4次,当然,这4次里3次都盈利了:

部分代码如下:

平均收益率6.5%,但这种最标准的孕线出现次数实在太少了,其实并不具备参考价值。

因此整体来看,孕线是一个不可强求的指标。

如果你是一个传统的投资者,可能很久很久才能在你的股票池里遇到一次标准的孕线。

如果你是一个量化投资者,即便你通过回测的方法找到了今天A股中所有符合孕线标准的股票,由于历史数据较少,并不足以构成投资参考价值,毕竟抛五次硬币,四次朝上的可能性挺大的。

总的而言,不推荐将孕线作为投资参考指标。不过,本文的研究仅仅局限于一只股票,下篇量化投资实战文章,我们将围绕整个A股,对孕线的可用性进行探讨。

类似于孕线这样的传统投资技术,在《日本蜡烛图技术》这本书中介绍了很多,这是一本用于了解传统投资技术的优秀书籍。

有任何问题,可以在公众号后台回复:加群,回答相应验证信息,进入互助群询问。

原创不易,希望你能在下面点个赞和在看支持我继续创作,谢谢!

点击下方阅读原文可获得更好的阅读体验

Python实用宝典 (pythondict.com)

不只是一个宝典
欢迎关注公众号:Python实用宝典

转载地址:http://oedg.baihongyu.com/

你可能感兴趣的文章
MySQL、Redis高频面试题汇总
查看>>
MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
查看>>
mysql一个字段为空时使用另一个字段排序
查看>>
MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
查看>>
MYSQL一直显示正在启动
查看>>
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>
Mysql下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>
MySQL中auto_increment有什么作用?(IT枫斗者)
查看>>
MySQL中B+Tree索引原理
查看>>