最具影响力的数字化技术在线社区

168大数据

 找回密码
 立即注册

QQ登录

只需一步,快速开始

1 2 3 4 5
打印 上一主题 下一主题
开启左侧

2015数据分析师峰会之 张丹:R语言量化模型

[复制链接]
跳转到指定楼层
楼主
发表于 2015-9-13 14:58:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
张丹

况客科技有限公司CTO

        谢谢大家!大家好我是张丹,今天非常荣幸能够参加集管之家论坛,跟大家分享R语言量化投资里边的应用。开始之前我想做一个统计,在座有多少人炒过股?三分之一,炒股这些人有没有用过追涨杀跌模型?人数还是比较少,本来以为参加金融会场人绝大多数炒过股,并且都在金融市场赚过钱。
        我们接下来看一下这个模型是什么?简单说一下我背景,我有十年IT程序开发经验,从程序员到架构师,从IT转向金融,现在做创业做IT和金融结合的创业,我选择R,我当初入行用过很多工具,最后选择R工具,为什么选择R?R在写代码上有哪些优势?
       接下来我主题分成三个部分介绍:第一部分追涨杀跌;第二R语言构建模型;第三简单的优化。
       一、追涨杀跌
        其实是股市重要的技巧,理念股票上涨买入,股票下跌卖出,这个跟我们摸底相反的。下面图是平安银行2005年到2015年走势图,不是一天走到头,有可能持续几天或者持续几个月,甚至06、07年持续一年多才涨到头,我们思路涨的过程中买进。然后买入后期待它涨的更多,以更高价格卖出进行获利。
        价格下跌的时候我卖出进行止损,以避免更大的损失。这是追涨杀跌原来。一种短线追涨,当天涨了五个点追进去,还有中线追涨,股价持续上涨一段时间,这个时候进入。对于中线和短线追涨,关键在于上涨股票很强,我们追强势股买入。风险也很大?我们不知道他涨什么时候涨到头,也需要有些技巧。对于杀跌也是有技巧,不能准确导致硬性的亏损。杀跌善于观察、善于思考、善于质变,利好消息出尽之前退出。
        对于追涨杀跌有一些操作技巧:第一观大势,看清市场优势在哪一方,处于强势的交易格局,选择明显上涨的个股进行上涨。对于技术纸币判断,另外一个点可以找到市场上鲜明可持续上涨的热点或者上涨板块,追涨领头羊的企业。
        所有设定你的止损位,减少交易的频率,过于频繁的操作,一旦失误磨多严重影响失误状态。有些人对追涨理解就是追新股开盘或者追次新股,对于2015年上半年有很多新IPO进入,尤其爆发科技连涨30个交易日开盘了,我们看到这一块一路上涨过来,这个时候很多人大胆追进去,从这个点到最高点其实能翻一倍,这个点股价160,最高点320多,还能翻一倍,这个时候进去其实赚头很大的。
        刚才介绍追涨杀跌原理,还是再次强调不要盲目追涨,安全第一,仅仅技术指标入手,投机性很重,很容易被专家玩死。另外追涨之前设计止损位,不要只憧憬获利。
       二、如何实现追涨杀跌?
        在实现之前需要把对追涨杀跌定义变成可量化的模型,可量化模型是因人而异,我定义我认为的模型,当股价上涨最近20人最高价格买入,当股价向下突破最近10个不日本最低价格卖出。我们就可以用数据证明这个概念,基本公式非常简单,比如取20日最高价,从T1日到T20日选最高,T1日到T10日选最低,就可以拼成时间碎片点。这个时候我会用R语言,因为R语言提供丰富的金融数据处理包,可以不借助某个公司开发出来。比如对时间序列有XXTS,数据处理PVL包,简单把几个包拼凑在一起就可以完成模型。
        本次使用的数据直接从创客导出的,我们会可以让大家免费下载。本次使用数据A股K线是连续的,要不然价格前一天100今天变成50,因为他开股了。数据日期2014年7月到2015年8月,以CV格式保证稳定,开盘价、最高价、最低价、收盘价、日期等。接下来可以通过R语言加载股票数据,生成事项。底下写操作的函数,第一个对CSV加载数据,每条记录实际是时间序列,非常简单几行可以把我们数据按照时间序列整理起来。
        建模类型增进对市场的了解,从2015年1月,股票选择乐视网,在7月份首次被纳入沪深300指数里边。我们看右边代码定义抬头,抬头是股票代码参数,把参数输入到数据集里,设定开始日期和结束日期,计算收盘价和交易量,通过R可以看到记录的前六行和后六行,非常直观帮助我们建模。接下来要实现量化的标准,我们把乐视网的数据,用可视化方式输注出来,这个图出现三条线:黑色线表示乐视网从2015年1月到8月收盘价,蓝色线表示20日最高价,蓝色和黑色重合部分代表那天收盘价突破20日最高点,所以它们是重合,红色是十日最低价。通过几行命令,就把我们要做的东西展示了,接下来找到买入信号点,我们看蓝色在图上划出来,一共出现很多点,接下来我们再计算卖出信号点。
        卖出信号点就是刚才模型所定义的,向下突破十日最低价位的点,从图上很直观看到,如果红色位置买,紫色位置卖,我们策略应该是赚钱。接下来用量化方法计算,到底我们赚了多少钱。计算之前设置模拟交易的规则,比如本金10万,每次出现买入信号的时候,我们以收盘价钱买入,每次买入价值1万股票,如果连续出现买入信号一直买,当现金余额不足1万就跳出,当卖出信号出现我们以收盘价卖出,假设交易手续费为零。这时候我们看到,通过程序计算发现一共发生34笔交易,其中30笔是买入,4笔是卖出,最后资金剩余11万多,收益率11%。数字比较粗糙。
        通过我们想法按照这个方法操作,15年1月到6月赚了11%,这个模型好不好?比如沪深300是标的,如果沪深300比它跑的更高证明我们模型不好,如果更高的话可以拿钱去配资。
        接下来我们看一下程序。加载包就不跑了,数据加载过了,现在我们看一下读到Data,每个索引对应所有股票代码,这里一共2771个股票,其中第一支股票0001,前六条数据索引是日期,包括开盘价、收盘价、交易量。接下来我们输入乐视网股票代码,设定日期、并且取收盘价,这个数据14年10月8号开始,结束是到15年8月21日,接下来构建划图格式,接下来计算20日最高价和10日最低价构建一个函数,这个函数就三四行,我们继续画图,我们画出收盘价、最高价、最低价,接下来构建买入信号函数,把买入信号画图上,再构建卖出信号,接下来我们做模拟交易。
        用R语言没有借用任何库,直接用开源库通过几行代码就可以做出来。这个好不好?我觉得刚才卖出点不是很好?因为我选择突破十日最低价卖出,那个点是不是更优化,或者早一点卖出?我优化思路当股价低于前一个价卖出,接下来我们测试这个调整是否对我们策略进行改进呢?这个思路让我们策略对波动显着更敏感,这个好处快速出发止损条件。基于我们优化思路再做一张图,红色点依然买出点,紫色是卖出点,比刚才看起来好一些,卖出点价位对我们更合适,从这张图我们也是赚钱,具体赚多少钱需要再算。这次一共发生37笔交易,比刚才多3笔卖出,最后赚37000多,收益率达到37%,就一点点思路就能赚的更多。
        所以这种想法每个人都有,你可以通过R语言或者其他语言找到工具,都通过量化手段做出来,真正指导我们投资。接下来我会把三个点画在一起,红色是买入点、蓝色卖出点、紫色点是止损点,直观看到卖出点比紫色点高一些那我们收益会更大。


        我们用追涨杀跌信号,所有都是股市上涨、下跌的阶段,会让我们在牛市中赚取更大的利润,对2015年上半年行情使用好会大量赚钱,对于下半年换另外一种策略做这件事。我们再看一下程序,再优化一下,重新计算卖出的信号,然后把买入信号和卖出信号合成,最后进行模拟交易,然后我们算出整个交易清单,底下有赚钱的交易和不赚钱的交易都会列出来,这些构建都可以按照自己指标、条件构建,对于R语言非常简单的。
        最后总结一下,本文是从追涨杀跌思路开始,到市场特征的检验,再到数学公式,R语言建模,再到根据回测,通过R语言,很简单地实现了一个我们脑子中的投资想法。这种投资想法谁都有,如果我们IT人出发,充分利用IT优势,把技术和实际交易结合起来,让你真正技术做一个价值转变。结束之前,大家心里有没有自己想到股票或者真正买的股票?我们可以跑一下,我们跑一下这支股票对追涨下跌怎么样?
   
        观众:600606
   
        张丹:这应该是沪深,这支股票表现很不错,最后赚到34000多,如果牛市上买这支股票。
        最后再介绍一下我自己,我是况客创始人兼CEO,最近刚刚上线,开放一些功能不是很完善,希望大家有机会可以到我们网站看一看,另外我写了R语言两本书,如果感兴趣可以在展位区有我的书。谢谢大家!




楼主热帖
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 赞 踩

168大数据 - 论坛版权1.本主题所有言论和图片纯属网友个人见解,与本站立场无关
2.本站所有主题由网友自行投稿发布。若为首发或独家,该帖子作者与168大数据享有帖子相关版权。
3.其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和168大数据的同意,并添加本文出处。
4.本站所收集的部分公开资料来源于网络,转载目的在于传递价值及用于交流学习,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
5.任何通过此网页连接而得到的资讯、产品及服务,本站概不负责,亦不负任何法律责任。
6.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏而侵犯到任何版权问题,请尽快告知,本站将及时删除。
7.168大数据管理员和版主有权不事先通知发贴者而删除本文。

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

关于我们|小黑屋|Archiver|168大数据 ( 京ICP备14035423号|申请友情链接

GMT+8, 2024-5-8 07:44

Powered by BI168大数据社区

© 2012-2014 168大数据

快速回复 返回顶部 返回列表