什么是量化交易系统,目前有哪些解决方案? 【从零入门量化交易系列
一、什么是量化交易
量化交易,就是将人的投资思想规则化、变量化、模型化,形成一整套完整、可量化的操作思路,并且这个思路可以用历史数据进行分析验证,在交易阶段可以由计算机自动执行的一种投资方式。量化交易也是一种交易,那么对于交易,我们如何来进行评价呢?
1 弄清楚我们赚的是那一部分的钱
因为价格有波动,所以就为收益提供了空间。所有的收益都来自于市场不同参与方对标的价值看法的时空错位。而波动又分为三类:
1)系统性波动
2)相对性波动
3)交易性波动
系统性波动是指日线,周线,甚至月线的波动。相对性波动是指不同的品种之间存在的价格差之间的波动。交易性波动是指分钟线上面的波动。
每一种投资,都是挣的上面某一种波动的钱,量化交易策略的种类很多,包含了上面三种波动。在做的时候我们也要明白,做的这个类型的交易,赚的是哪一部分的钱。
2 弄清楚单位风险的收益率
我们讨论投资,不仅需要知道收益率怎么样,也要知道承担了多少风险,而夏普率就是描述风险收益率的一种指标。
夏普率=(收益-无风险利率)/波动率。比如说,两个理财产品,A产品有赔5%的风险,收益率10%;B产品有赔50%的风险,有赚5倍的可能。哪个好?肯定是B好。
为什么呢?同样是100W,A收益10万,可能的风险是5万。B如果只拿100万中的10万投资,其他的90万放余额宝,可能的风险还是5万,但收益是50万,而且还有90万余额宝的利息。
核心的意思是说,看策略的好坏,必须要考虑风险收益比率。
3 弄清楚胜率和赔率
胜率是指出手赚钱次数与总出手次数之比;赔率是指平均每次出手赚到的钱除以平均每次出手赔的钱,也叫做盈亏比。投资策略,有的是高胜率低赔率,有的是低胜率高赔率,两样都高的,基本是不存在的。一般来说,胜率在40%左右,盈亏比在2以上的,就算不错的策略了。
二、量化交易的玩法分类
就像金融包含:银行、证券、保险、信托、期货、基金等不同分支一样,量化交易的门类很多。大体上来说,量化投资分为:阿尔法策略、低风险套利、统计套利、程序化CTA、高频交易等。
1 阿尔法策略
首先,阿尔法策略为什么要叫阿尔法呢?因为天文学里把一个星系里面最亮的那颗星叫做阿尔法星。发明套利的人觉得这个方法最牛,所以把它叫做阿尔法套利,看起来是不是逼格瞬间爆炸?
阿尔法策略是指,不管指数是涨还是下跌,都能赚钱的一种方法,具体的操作思路是找出市场里最优秀的品种,做多这些品种,然后做空相应多的指数,这样就锁定了最优秀的品种带来的收益,而把指数带来的波动进行了平抑。
阿尔法策略阿尔法策略是一种回撤和收益都比较小的交易策略
2 程序化CTA
这是一种适合大众使用的程序化交易方法,是指将交易策略的思想设计成完整的逻辑运行体系,然后用合适的计算机语言编写成程序,有计算机进行自动交易。程序化交易的优点是,将交易模式系统化,制度化,排除人性的心理障碍,确保交易策略的执行行。挣的是趋势的钱,挣的是纪律的钱,但因为趋势不常有,所以这是一种低胜率,高赔率的方法。
CTA策略程序化交易由入场条件、出场条件,品种选择、时机选择,资金管理,一起组成。
3 统计套利
统计套利是指我们通过计算某些关联品种之间出现了价差的扩大,那就可以在品种之间进行配对交易,从而进行套利。
比如,A品种是30块,B品种是15块,AB之间有一个线性的关联,他们的价差经常就是15块,当A品种涨了4块,变成34块,B品种上涨只有1块,变成16块,他们的价格差变成了18块。那就可以卖出A品种,买入等量B品种,等待他们之间价格差回到15块,就可以把这3块钱的价格差赚到了。不管到时的价格是A品种100,B品种85,还是A品种20,B品种5块。他们之间价格差异的平抑,是统计套利的利润来源。
4 低风险套利
低风险套利是指本身这个套利风险就很低的一种套利方式,不需要考虑寻找最优品种这个事情。那什么样的套利本身风险就很低呢?
比如说,在城东的白菜4块一斤,城西的白菜6块一斤,那在城东买,然后在城西卖出相同的白菜,就能赚2块的差价,就是一种低风险套利。这是一个生活中的例子。
在投资中,ETF套利也是一种低风险套利,比如某个ETF指数基金现在的价格是2.1,而如果我们用一揽子股票来组成这个ETF指数基金,价格是2块,那么我们就可以在市场上卖出基金,买入股票,来得到这0.1的差价。这些套利比较容易执行,收入也很可观,而且风险很小。
5 高频交易
高频交易是指利用计算机处理市场微观结构层面的不均衡性,往往交易次数多,持仓时间短,可能会送大量交易指令,又快速撤单,再反向做交易获得收益,每笔交易平均利润小但稳定。
优点是总收益率极高,当日平仓降低隔夜风险,隔夜资金利息收入降低资金成本,绩效评估周期短。
6 算法交易
这是一种为了降低冲击成本的一种被动的程序化交易,通过科学的成本估算模型和交易实施算法,将一个大额的交易拆分成系列小额交易 在合理的时间点分别执行,以此来尽量减少 对市场价格造成的冲击,降低交易成本,而且还能帮助机构投资者快速增加交易量。
适合的对象包括大小非减持者,大宗交易接盘出货,“大宗交易-融券卖出”套利者,Alpha套利者,套期保值者,日以上级别程序化交易者等。
三、目前量化交易的解决方案
目前的量化交易平台可以从开发语言、技术架构、系统架构、策略方向、交易方式等多个方面进行分类。但这些分类没有从使用者出发,我根据面向的使用人群的不同,我把量化交易解决方案分为5类:
1、面向“回测帝”的线上平台。这些平台大部分都没有提供实盘功能,只是用来验证自己想法,以回测为主。
1.1聚宽
聚宽的编程语言使用的是Python,2017年的6月份,我使用过聚宽。它的特色是你不需要考虑数据的获取和整理,从行情数据到各种基本面数据,都能通过API方便的调取。这样即使没有太多编程经验的人,也能够使用简单的代码就实现一个策略。
策略实现后,可以在聚宽上模拟实盘,实盘的交易可以进行免费或者收费订阅,订阅的用户会通过微信服务号收到策略买卖的通知。但在实际使用过程中,这个通知经常会延迟,所以聚宽更多还是一个降低编程难度的回测平台。
除了回测的产品服务,聚宽还经常会承办一些量化交易比赛,或者量化交易培训,这些对于非专业选手来说是很不错的学习交流机会。
1.2优矿
优矿是通联数据旗下的量化策略回测平台。在功能上与聚宽类似,但它看起来更像是一个网页版的Python IDE。
优矿的优点,一是提供的量化因子数据比较详细,二是官方提供了很多有参考价值的模板策略,并对原理进行了详细解释;但是优矿对普通用户的计算资源比较抠门,普通用户只分配1G的内存,跑一个数据量稍微大一点的策略,就会出现内存不足,总体来说可用性比较差。
2、面向大众和小机构CTA的软件。这些软件都提供了比较简单的编程语言实现交易策略的功能,并且能接入期货实盘。一般的交易流程为:投资者的策略在本地接收市场数据后,根据策略简单计算的触发条件,进行简单的账户持仓、资金计算和管理,进而下达买卖方向、数量、价格等指令,进行自动交易。
2.1交易开拓者程序化交易软件
交易开拓者(TB)采用自主研发的TBL语言开发策略模型,对CTA策略的支持比较完善,在写好策略后,会根据行计算出买卖信号驱动交易下单,并在图表上显示买卖位置,能够满足绝大部分人的需求。
产品价格:TB的收费是手续费的25%,也就是向期货公司提交TB绑定需求后,每笔交易都会多收25%,不管你有没有使用TB交易。
2.2文华赢智程序化交易软件
相信每个做期货的人都用过文华的交易软件。对于很多人来说,文华就是期货交易软件的代名词,特别是它的手机版文华的随身行,是手机看盘的标配。
在程序化交易上,文华做得也不错,使用麦语言进行编程,高级版本还支持算法交易。对于大户来说,可以使用这个功能来降低冲击成本。
产品价格:文华程序化交易的收费是7800一年,如果需要算法交易,是13800一年。如果你一年手续费超过4万,那还是用文华比较划算。
2.3 天语CTA程序化交易软件
天语CTA是这里面唯一一个支持Python的交易软件。天语有几个比较有特色的功能,一是8888超级后验的功能,能够在回测的时候自动转换合约;二是支持自动套利交易;三是支持自定义合约。从产品功能来说,天语是非常强的。
产品价格:天语经典版是1088一年,能满足绝大部分人的自动交易需求了,可以说是便宜量又足。天语专业版是12888一年,额外增加了支持移动窗口优化,自定义合约,策略组合仓位动态配置和量邦超级后验的功能。
2.4Multicharts自动化交易软件
multichart是台湾公司收购了美国tradestation推出的自动化交易软件,使用power language开发策略模型。总体来说功能和TB类似,但易用性不如TB。在国内市场,TB的占有率远超MC。
产品价格:交易所手续费的20%,比TB便宜一些。
3、面向大机构的交易软件。这些软件能实现非常复杂的策略,可以订阅大量的行情不用担心堵塞,可以做各种标的的交易,并且可以做相应的风控。
3.1Apama
Apama采用EPL和JAVA语言开发或者定制策略模型,通过行情、资讯等驱动CEP引擎进行交易、风控等操作。
在量化模型研发方面,Apama使用第三方的行情授权,提供了各市场行情接口和各种柜台交易接口的接入,可以接入国内股票和期货多周期的时间序列历史行情数据和TICK数据;提供了丰富的金融工具包进行复杂策略开发;提供了便捷的studio开发工具,可以进行复杂策略的快速开发和定制;提供了1万倍加速测试进行策略回测,可以方便地定制测试报告。
在量化交易方面,Apama提供了150万笔/秒的交易并发处理能力,进行高频交易、算法交易。Apama高端的并发处理能力,使全市场的多品种并发套利、对冲等交易策略和实时风控策略可以高速执行。
3.2盛立SPT平台
SPT机构版是一款专门针对国内证券与期货市场而设计的程序化交易平台。平台集成了策略开发、高精度回测、统计分析、风险控制等功能。
基于C++的策略开发 API,更有效的满足客户多样化策略开发的需求。SPT还提供了一些策略模板,可以很方便地实现程序化交易、套利和对冲交易、算法交易、高频交易等。
盛立还有针对高频交易的FPGA硬件解决方案,包含60多条独立式事前风控规则,系统处理速度最快2微秒,日处理能力达到1500万单。
4、面向有一定程序开发能力的个人的开源系统。这些系统在GitHub上都能下载源码,你可以看到他每一个功能是怎么实现的,所以你不用担心它会偷你的策略。而且你可以根据自己的需要随意修改系统。
4.1 VN.PY
VN.PY是个人开发的基于Python的开源量化交易程序开发框架,起源于国内私募的自主量化交易系统。2015年初项目启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献,目前已经成长为一套全功能的交易程序开发框架。
在品种上,VN.PY支持股票、期货、期权、外汇、外盘、比特币;在交易方式上,支持CTA程序化交易、支持跨市场套利、支持境内外套利、支持算法交易。面向的人群也非常多,私募基金、券商自营和资管、期货资管和子公司、高校研究机构和专业个人投资者。
它的优势是源码开源,完全免费,可以自己随意定制和扩展,而且有专门的QQ群进行答疑和交流。
4.2 RQAlpha
RQAlpha是米筐开源的量化交易框架,从数据获取、算法交易、回测引擎,实盘模拟,实盘交易到数据分析,为程序化交易者提供了全套解决方案。并且,RQAlpha可以和VN.PY进行对接实现期货策略的实盘交易。
RQAlpha是专门的量化交易平台公司开发的,后续的迭代和支持比较有保障,而且提供了面向机构的RQPro。
5、面向没有策略开发能力大众的程序化交易平台。在这些平台,你可以付费购买策略,然后关联自己的账号,就可以开始程序化交易了。比多数人自己主观交易要靠谱的多。
5.1微量网
微量网提供了大量程序化交易策略,部分策略还是蛮优质的。用户可以购买这些策略并绑定自己的期货账户,绑定好交易账户后,无需任何件,策略7*24小时自动运行,自动跟单。
产品价格:策略价格在每月300-1000之间,有不少的策略年回报率在50%以上。
经过这篇文章的介绍,相信大家对量化交易的概念以及解决方案,有一个一个比较全面的认识。
我本人是技术开发出身,所以更偏向于第4类的方案。后面的7篇文章,会带大家从零搭建出一个能跑实盘的CTA交易系统,敬请期待。