全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版) 量化投资
150561 745
2015-07-11
引言:

本系列帖子“量化小讲堂”,通过实际案例教初学者使用python、pandas进行金融数据处理,希望能对大家有帮助。

【必读文章】:
《10年400倍策略分享-附视频逐行讲解代码》

【所有系列文章汇总】:https://bbs.pinggu.org/thread-3950124-1-1.html

【python量化课程】想要快速、系统的学习量化知识,可以参与我与论坛合作开设的课程:
《python量化投资入门》,我会亲自授课,随问随答。参与课程还可以免费加入我的小密圈,我每天会在圈中分享量化的所见所思,圈子介绍点击此处

微信:xbx_laoshi,量化交流Q群(快满):438143420,有问题欢迎交流。

文中用到的A股数据可在www.yucezhe.com下载,这里可以下载到所有股票、从上市日起的交易数据、财务数据、分钟数据、分笔数据、逐笔数据等。




【量化小讲堂 - Python、Pandas系列】数据告诉你:惊人的海龟交易法则

海龟交易法则,起源并流行于八十年代的美国,是一套简单有效的交易法则。这个法则以及使用这个法则的人的故事被写成了一本书——《海龟交易法则》。这是一本很好的量化投资入门书(也是我当年的入门书)。在附件中我免费放上了这本书的电子版本,回复可见。

本篇文章使用Python和Pandas实现海龟交易法则,看看在中国市场效果怎么样。并希望通过这个案例,让大家学到pandas的如下功能:
  • 导入导出数据
  • rolling_max() 和 expanding_max()的区别
  • 空值处理函数fillna()的使用方法
  • 资金指数的计算方法
  • resample()的使用方法

海龟交易的具体规则是:
  • 当今天的收盘价,大于过去20个交易日中的最高价时,以收盘价买入;
  • 买入后,当收盘价小于过去10个交易日中的最低价时,以收盘价卖出。

对规则的一些说明:
  • 规则基本上就是这么简单,还有一些具体的止损以及仓位控制规则,这几就不介绍了,具体可以看书。
  • 这套交易规则主要是运用于期货市场,所以还可以有卖空,比如当今天的收盘价小于过去20个交易日中的最低价时,以收盘价开空单,以此类推。
  • 上述规则针对日线,实际使用中更多的是使用分钟K线,比如5分钟K线的收盘价大于过去20根5分钟线的最高价时买入,以此类推。

在这篇文章中,我以上证指数作为案例,假设可以买卖上证指数,来试验海龟交易法则,看看效果具体如何。

下面开始具体正文:

【python量化课程】想要快速、系统的学习量化知识,可以参与我与论坛合作开设的课程:《python量化投资入门》,我会亲自授课,随问随答。参与课程还可以免费加入我的小密圈,我每天会在圈中分享量化的所见所思,圈子介绍点击此处。)

要在上证指数上实验海龟交易法则,首先需要上证指数的数据。在这里可以下载到上证指数从1990年至今的数据,如下图所示,每一行是每一天的数据:
QQ20150711-1.png

这个日线数据有以下的字段:
【index_code】指数的代码
【date】 交易日期
【open】 开盘价
【high】 最高价
【low】 最低价
【close】 收盘价
【volume】 成交量
【money】 成交额
【change】 涨跌幅

有了原始数据之后就是代码。我本以为用pandas实现这个策略还是稍微有点复杂,结果发现非常的简单,再次赞叹下pandas的方便。下面是代码的截图,里面有详细的注释,有问题可以留言。附件中附上了程序的源码,回复即可免费下载。
1.png
2.png
3.png

把数据下载下来,运行代码,就可以看到输出的结果了。下面这张图展示了从1993年1月1日开始,使用海龟交易法则交易上涨指数的资金曲线与原指数的对比,由图中可见,指数从800多点涨到了现在的400点,而海龟交易法则的资金曲线,从同样的800多点,涨到了14000点。
QQ20150711-2.png

下面这张图展示了每年上证指数和海龟交易法则资金曲线的收益,左边是上证指数的收益,可以自行把玩:
QQ20150711-3.png

思考题:

【python量化课程】想要快速、系统的学习量化知识,可以参与我与论坛合作开设的课程:《python量化投资入门》,我会亲自授课,随问随答。参与课程还可以免费加入我的小密圈,我每天会在圈中分享量化的所见所思,圈子介绍点击此处。)

海龟交易法则的默认参数是20,10,可以试试看其他的参数,看看会不会有更好的效果。感兴趣的,可以查看完整版本的海龟交易法则(包含atr止损),并实现它。



之后会讲的内容:

现在想到的之后几期会讲的内容:
【量化小讲堂 - python、pandas技巧系列】使用逐笔数据计算资金流入流出数据

关于《量化小讲堂》之后想看的内容,或者相关问题,可以加我微信xbx_laoshi、Q群(快满):438143420沟通。



附件中是Python程序文件,以及海龟交易法则书的pdf,免费,回复可见,觉得文章内容有帮助的话,顶贴是最好的鼓励!


本帖隐藏的内容

海龟交易法则.zip
大小:(172.9 KB)

 马上下载




附件列表

海龟交易法则.zip

大小:35.57 MB

 马上下载

程序

本附件包括:

  • 海龟交易法则.pdf

海龟交易法则.zip

大小:1.42 KB

 马上下载

本附件包括:

  • 海龟交易法则.py

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-7-11 20:12:07
支持楼主,学习下。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-7-11 20:14:47
好文,支持一下。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-7-11 20:38:08
初次学习,谢谢指教~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-7-11 20:39:08
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-7-11 20:42:09
虽然现在都失效了,但还是很经典的,TB里面有现成的代码。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群