程序员的量化交易之路(1)----规划开篇
其实,一直对量化交易有一定的理解和情节。早在中大读研究生的时候实验室师兄,已经去了中国平安核心投资团队,做高频交易研究的国源师兄的影响,就开始对金融世界产生了浓厚的兴趣。看了丁磊编著的《量化投资--策略与技术》和艾琳.奥尔德里奇的《高频交易》,反复的看,但是都入不了味,现在回过头来想,一个连股都不炒的人怎么可能入味呢。对一些金融的基本概念都不懂。
2013年7月出社会工作后,在10月份确立目标。需要炒股,而且需要一个深入的理解金融的世界。所以确定去考一个证券从业考试,选了证券基础和证券分析两门。2013年10月26号我进行了我人生的第一笔交易,在接下来的两个多月里面,我10笔交易有7笔都是获利的,有些还获利不少。但是,在接下来的交易中,我发现,几次亏损就把我十几次的盈利给吃进去了。还好,那时候钱不多,特别少。
2014年3月22号,我参加了证券从业资格考试。29号公布成绩。两门一次性过了,虽然成绩不高。但我知足。因为这次考试,我在11月到3月的这端时间里面,我把那两本教材看了三遍,把题库做了一遍。我把那些基本的概念都混了个挺熟,推演了那些供需模型,资产组合最优化等。当然,我现在又忘的,但,只要我把整个知识架构曾经过了一遍,我就知道怎么回事。就像我学了7年计算机,就算我现在不懂数据库怎么操作,我也很快能够知道。因为底子在那里。
在互联网公司工作的有点就是,你能够学到互联网技术里面特别干货的知识。比如一些并发编程的设计、基于epoll的事件机制、内存池的设计、以读者写着衍生出的多线程架构、线程池等各种架构。这个从顺序编程到并发编程,这是我在工作中最大的收获。
我的第一年,都是用C来度过的。我写一个缓存模块,然后写了一些边角料的东西。然后剖析了公司最核心的架构。感触良多。这一年,C的收获很大。
我的第二年是开始做APP的一年,我学习Android开发,我从参与动漫App的开发。到主导一个创业项目App的开发,到独自承担一个视频直播即拍App的实现(Android端),这个直播App,包含音视频采集然后用rtmp发送到nginx+rmtp服务器,然后App也带有播放功能,我选取了vitamio播放器。它支持rtmp和hls。这个App除了视频方面,还有一个简单的弹幕,它是一个简单的及时通信功能。
2014年的12月,我开始写一本书。也快上市了。收获了很多。真的是路遥知马力!这是写这本书的最大收获。有些事情,真的是点滴汇集,给自己定计划。然后每次要偏离了就拉自己一把。我也懂得了如何合作。因为我是第一作者,我要协调和激励第二第三作者卖力的帮忙。
关于这本书,大概会在下一个月上市,到时候再说吧。
回归正题。我接下来要做什么。。】
我有想过,写一个关于维修方面的APP,而且为此我还去专门学习了Axure Pro,我不仅买书了,我还花了200元去买在线教育的视频。然后,我自我觉得,我对原型设计的基本任务还是可以胜任的。不信,你来http://www.threesoft.net,当然,很抱歉,它不是用Axure Pro设计的。它早于我学习Axure Pro。
但,我总觉得APP死的太快。太多了,自然死的太快,这种没有技术门槛的东西,很容易被人吃掉。
所以,我一直在寻找自己的下一个突破口。我的突破口在哪里? 我不断的问自己。。。。
我对金融很感兴趣。我是一个计算机学科的学生,但我的书架上有着不下于30本经济金融相关的书籍。我的书籍大多都是经典教材,而不是心灵鸡汤。那种叫你怎么理财之类的垃圾书我没有。关于股票,也都是上股市操盘手那个系列,有十几本书吧,整套。。。。货币金融学、宏观经济学。这些虽然没有完整看完,但都看了个不少。所以,我觉得自己的只是结构还是完整的。。。
我开始重新考虑“量化交易”这个话题。。。对啊,现在的我,对于股票的基础知识烂熟于心。对经济学和金融学基础也有不错的基础。所以,是时候出击了。。。于是,我花了很长一段时间去了解这个领域。去看人家如何去入门。http://www.quantstart.com/,,并读开源的源码。比如zipline,它是https://www.quantopian.com/的回测平台的引擎,它是基于python的。我觉得quantopian和quantconnect的概念是非常好的。就是你只需要在这里写策略,不需要考虑数据/交易的细节。让你专心写策略。。。而且你可以fork别人的代码。。。太好了。。所以,我找到了自己的目标。就是做中国的quantopian平台。。。
在我读zipline的代码后,我失望了。它只是一个回测平台 backtesting!!!!!!!!!!!而非一个live trading 平台。或许,读者并不知道二者的区别,其实区别很大。最大的区别在于,回测平台的数据是可知的,回测测试可以在一个线程内一次性执行完毕。。。但live trading呢? 不行。 加入你定义个策略,如果Apple的股价低于130美金,就买入,而高于140美金就卖出。那么这个策略是不是得一直跑着,而且苹果的股价每秒钟,甚至每一笔数据都会从远端推送过来(比如moningstart),然后你判断其价格,然后进行交易。对你还得向远端发送交易订单,并从远端接收交易情况。。。。。好,每个策略都要一直监听着,一直跑着。。。而你是一个云平台,你可以允许几千万用户,提交任意数量的策略来跟中其live trading。你想想,这个系统该怎么设计? 而且股票有好几千只。。。。就是,亿一级别的策略需要一直跑着,万一级的股票数据源源不断的进来,然后促发策略里面的条件执行,。。。。。。。。复杂不? 和回测平台已经是本质区别了。。。。
方法总比问题多。这个过程,我最终找到了CEP complex event processing,复合事件处理。。。。我进一步选取了esper作为学习目标。。。。
就这样,我一步一步的对量化交易更加全面了。。。。
接下来,我想把自己所学,记录下来。。一个程序员的量化交易之路。。侧重在实操,而非金融理论。它的角度是程序员。。。
分为两个部分:
1)一个基于cep引擎的量化交易平台的构建。
1.1)回测平台
1.2)实时交易平台构建
2)策略篇。
根据不同策略种类,各个击破。
晚安。深圳。南山。
程序员的量化交易之路(1)----规划开篇相关推荐
- 程序员的量化交易之路(35)--Lean之DataFeed数据槽3
转载需注明出处:http://blog.csdn.net/minimicall,http://cloudtrade.top/ Lean引擎的模块划分非常的规范.其中DataFeed是数据槽,就是供应数 ...
- 程序员的量化交易之路(25)--Cointrader之MarketData市场数据实体(12)
转载需注明出处:http://blog.csdn.net/minimicall,http://cloudtrade.top/ 前面一节我们说到了远端事件.其中,市场数据就属于远端事件.市场数据有什么? ...
- 程序员的量化交易之路(17)--Cointrader之Temporal实体(5)
转载需要注明:http://blog.csdn.net/minimicall,http://cloudtrader.top/ 这一小节说明一个时间实体Temporal实体,它的代码很简单. packa ...
- 程序员的量化交易之路(26)--Cointrader之Listing挂牌实体(13)
转载须注明出处:http://blog.csdn.net/minimicall?viewmode=contents,http://cloudtrade.top Listing:挂牌.比如某只股票在某证 ...
- 程序员转行量化交易可行吗?
程序员转量化交易,其实是一件挺顺理成章的事,有一位网友他想向我佐证一下,职业量化交易这一条路,他可以做下去吗,以及其它一些细枝末节的问题. 他以前是某日系合资企业的程序工程师,程序背景是C++与pyt ...
- 热议:程序员转行量化交易可行吗?
程序员转量化交易,其实是一件挺顺理成章的事,就在上周,有一位网友来我的店里拜访我,其实他来的目的也特别简单,他想向我佐证一下,职业量化交易这一条路,他可以做下去吗,以及其它一些细枝末节的问题. 他以前 ...
- 程序员的量化交易(34)--QuantConnect_Lean如何定义Indicator指标2
转载需注明出处:http://blog.csdn.net/minimicall,http://cloudtrade.top/ 指标(Indicator)由三大关键组件组成: 1. 实现你指标的类 2. ...
- 剖析Android移动开发程序员的职业发展之路
剖析Android移动开发程序员的职业发展之路 做Android移动开发已经有三年时间,其中甘苦自知,对Android开发和对Android程序员的职业发展有一些自己的感悟,在这里愿与大家分享和讨论. ...
- 程序员的财务自由之路(二)- 给自己树立一个目标
文章目录 一.前言 二.如何制定目标 1.目标蓝图 2.技术栈 3.反向激励 三.C++ 入门 1.C++ 是世界上最好的语言 2.编码能力 3.算法 4.小试牛刀 1)标准输入输出 2)ASCII ...
最新文章
- ConnectivityManager详解
- OpenMP 编程实例(蒙特卡罗算法)
- 速来围观!leetcode java实现汇总
- PowerDesigner导入SQL脚本
- 无法使用tomcat6.exe启动服务
- Linux平台上SQLite数据库教程(一)——终端使用篇
- 现身说法,给职场新人的投资理财建议
- bzoj 4950: [Wf2017]Mission Improbable(二分匹配)
- bzoj 2281: [Sdoi2011]黑白棋 bzoj 4550: 小奇的博弈(Nimk博弈+DP)
- 排序之快速排序(递归)
- 可配置语法分析器开发纪事(二)——构造符号表
- Three.js – Building a Cube with different mater...
- java程序员学习路线图 java程序员进阶路线
- 电机学重读(一)基础知识
- window常用设置和命令
- 国际刑警组织来取经,阿里已成中国打假名片
- 江苏计算机二级msoffice高级应用,计算机二级考试MSOffice高级应用
- centos 缩减逻辑卷
- linux设置搜狗输入法,Ubuntu系统安装和使用搜狗输入法
- docker容器获取宿主ip地址
热门文章
- html游戏键盘控制,键盘控制方块移动.html
- Arduino软件开发环境搭建
- 无引脚表贴元器件焊接
- python分几种_python有几种类型?
- python json解析列表显示_求教一下 python 读取 json 以后,输出的问题(unicode 和中文显示)...
- fileoutputstream路径 android,Android编程中FileOutputStream与openFileOutput()的区别分析
- python概念股_python 股票 监控,安防监控概念股,新的安防监控概念股有哪些?
- 苹果7支持快充吗_支持苹果20W+华为22.5W快充,倍思发布迷你数显快充移动电源...
- vue 定位所在地_vue系列教程之微商城项目|商品购买
- php 删除子字符串函数,PHP删除字符串中的任何字符函数