楼主: 邢不行
60593 545

[交易策略] 【量化小讲堂 - Python、Pandas系列】数据告诉你:惊人的海龟交易法则   [推广有奖]

学科带头人

59%

还不是VIP/贵宾

-

威望
1
论坛币
40785 个
学术水平
457 点
热心指数
472 点
信用等级
433 点
经验
40515 点
帖子
362
精华
26
在线时间
735 小时
注册时间
2010-4-30
最后登录
2017-12-14

邢不行 在职认证  发表于 2015-7-11 18:38:34 |显示全部楼层
本帖最后由 邢不行 于 2017-5-27 12:01 编辑

引言:

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

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

【所有系列文章汇总】:http://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)




支持楼主:购买VIP购买贵宾 购买后,论坛将奖励 10 元论坛资金给楼主,以表示您对TA发好贴的支持
 
载入中......

海龟交易法则.zip

35.57 MB

程序

海龟交易法则.zip

1.42 KB

回帖推荐

faruto 发表于20楼  查看完整内容

做得不错。顶一下。 海龟是很好 很完整的一套策略,鲁棒性 普适性好。
已有 6 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
乐美 + 5 + 2 + 2 + 2 精彩帖子
DIbaocb + 5 精彩帖子
henry_l + 40 + 40 精彩帖子
FlyUFalcon + 2 观点有启发
fantuanxiaot + 100 + 100 精彩帖子
lasgpope + 60 + 60 + 3 + 3 + 3 精彩帖子

总评分: 经验 + 200  论坛币 + 212  学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

本帖被以下文库推荐

不管去哪里 只要在路上
stata SPSS
macdowell027 发表于 2015-7-11 20:12:07 |显示全部楼层
支持楼主,学习下。
回复

使用道具 举报

lasgpope 学生认证  发表于 2015-7-11 20:14:47 |显示全部楼层
好文,支持一下。
回复

使用道具 举报

youlingnash 发表于 2015-7-11 20:38:08 |显示全部楼层
初次学习,谢谢指教~
回复

使用道具 举报

ydb8848 发表于 2015-7-11 20:39:08 |显示全部楼层
回复

使用道具 举报

Crsky7 发表于 2015-7-11 20:42:09 |显示全部楼层
虽然现在都失效了,但还是很经典的,TB里面有现成的代码。
回复

使用道具 举报

飞行员 发表于 2015-7-11 21:19:32 |显示全部楼层
有点意思
回复

使用道具 举报

zhangibt 发表于 2015-7-11 21:25:55 |显示全部楼层
赞!  强大的楼主,收录了~
回复

使用道具 举报

tl93x 发表于 2015-7-11 21:34:04 |显示全部楼层
不错。
回复

使用道具 举报

atlantisadam 发表于 2015-7-11 21:44:09 |显示全部楼层
用的什么编辑器啊,感觉很不错~~~!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

GMT+8, 2017-12-16 00:05