在过去的十年中,外汇行业迎来了翻天覆地的发展,但是也注意到现在国内外汇的交易员还是主要在采用主观、手工的交易方式,或者相对比较简单的MT4/MT5上的EA交易,我今天给大家介绍在国际市场上比较主流的量化交易的情况。
外汇市场的策略大体分为三类,分别是量化宏观、CTA、高频交易三类。
量化宏观对应的是超长期或者长期、CTA对应的中期或者短期,高频交易对应的短期或者超短期。
第一种类型就是量化宏观,如果大家对对冲基金行业有所了解,会知道基金业有一种大类的策略叫做全球宏观(Global Macro),这种策略主要是通过对全球经济宏观面的预测,从上至下的方式来筛选并进行外汇、期货、股票等标的的交易实现该策略的交易目标。
比较知名的全球宏观策略使用者包括索罗斯、保罗·都铎·琼斯,这两位就是主流的主观的全球宏观策略基金的领头人。
全球宏观这种策略是对某一个国家或者某一个领域的未来一段时间的预测,除了人的主观判断之外,还可以用量化的模型把基本面的数据、价格面数据、历史数据、分析师预测加在一起来产生一种信号比较强的中长期的预测。
比较有代表性的公司的包括SLJ Macro Partners,过去几年的表现非常好,已经成长成了全球范围上著名的以外汇为主要投资资产的一个量化宏观策略对冲基金。
除此以外还有对冲基金——FX Concept,历史30多年,当年跟桥水不分上下。但是因为2008年后全球央行因为次贷危机不断干预市场,量化宽松,导致他们原来的量化宏观策略不适应新的市场环境了。
1.外汇量化宏观策略:
外呼量化宏观策略可以分为定向交易和相对价值交易策略。
定向交易:
简单来说就是做方向,比如认为美国经济会好,那么买一些美元或者美元指数;
相对价值交易策略:
比如认为美元强、欧元弱,那么我们进行一些欧美货币对的配比,还有类似货币对、原油、货币对黄金这样的一些价差对比。
量化宏观领域的模型更多是涉及经济与基本面的数据,当然也会结合市场的行情数据,全球市场上的价格本质上是基本面的经济数据驱动的,尽管会有一些情绪、资金流、技术面造成的市场噪音与波动,但是长期而言是向着基本面给出的方向去走的,所以量化宏观的策略给出的信号非常的强。
这些模型的信号周期比较长,预测一年内的信号都算短的,长达三四年的预测都是常见的。在这个策略的交易过程中,可能交易的重点都不在于信号本身了,而是在于基于信号方向建立交易持仓量的控制,市场交易中对于自己不利价格的风险控制,此刻就要一些水平比较高的对冲策略与短线交易了,比如进行一些外汇期权交易、价差交易。
2.第二类策略是外汇CTA策略:
这一类的代表是Winton,以及Man AHL,这两家公司有很深的渊源,20年前Winton的创始人之前是Man AHL公司的CTA部门的负责人,20年之后这两家公司都已经成为了世界上顶尖的CTA类的基金。
CTA策略比较偏中期或者中短期,基于技术信号、市场特征进行一些中短期的投机。因为这个CTA策略是基于价格的,所以所有有价格的资产都是可以使用这个策略的,包括外汇期货、股指期货、股票等标的CTA基金都有可能去做,覆盖面比较广。
CTA的策略一般持仓周期比较短,有一些策略甚至是日内平仓的(Day Trade),对于交易的价差(Bid Ask)比较敏感,所以这两家CTA对冲基金都和最大的经纪商(Tier 1)或者银行进行交易,比如高盛、JP Morgan,路透,LMAX,EBS等等。
补充一个量化宏观策略的细节,量化宏观策略的信号强、频率低,一年内出现的交易机会是比较少的,所以宏观量化策略的交易者对于交易成本不是很敏感,电话交易下单比较常见,对于经纪商的价差不是很在意,更在意的交易的量(流动性能有多少),但是CTA对于执行时间与成本的要求就高了。
3.最后一类就是国内传的神乎其神的高频量化交易。
国际上高频量化交易确实有一定的技术上的要求,但是原理上也没有那么复杂。最具有代表性的就是花旗银行、德意志银行的外汇量化部门了。
投行的代表有Morgan Stanly、高盛、BNP、法兴银行等等,自营交易商的代表是Citadel,KCG等等;Citadel城堡基金分成两个部门,一个是自营、做市部门Citadel Security,一个是资产管理部门 Citadel AssetManagement,这两个部门是完全不同的。外汇做市的部门是Citadel Security,Citadel Asset Management会采用一些宏观量化、CTA的策略来进行外汇交易。
高频交易这类的外汇交易策略主要是高频做市,基于时间序列模型和市场微观结构的量化交易策略。其实就是基于时间序列模型和市场微观结构的历史数据进行统计,解析市场价格在未来数秒内的走势,加一个价差并且提供报价,赚取点差。
客户与高频做市商交易,做市商赚到点差,如果市场变动慢那么做市商的敞口风险也比较低。市场变动比较快的时候,高频做市商可能会选择在银行间市场把自己的敞口对冲出去,赚取银行间市场与下游市场之间点差的差值利润。
所以高频交易就要求低延时的交易系统,最少到微秒级甚至纳秒级的交易速度。所以大家平时听到有些高频交易公司跨州、跨洋拉光纤,甚至买军方退役的微波塔,一般都是用来进行外汇方面的高频交易的。
主要原因是因为外汇领域的跨市场的机会很多,所以外汇高频交易就是要速度快。
还有高频交易做市商是报两个价格(Bid Ask),大家平时看到的欧美货币对的点差归根朔源就是来自于当时银行间某一个做市商的做市报价。
讲完了策略,
来讲一下和我们比较接近些的量化交易平台。
国内对于这方面的接触不是很多,最常见的就是MT4/MT5,还有一些交易商提供一种新型的平台Ctrader/也叫作cAlgo,这家交易平台做的也很不错。
还有一个我稍后会介绍的Multi Charts,这是一个美国的老牌、有很多客户基础的量化交易软件,不仅仅适用于外汇,还能交易股票、期货、期权等等,有很多的机构用户与对冲基金在使用这个平台。
后面还会介绍两个机构级别的平台,一个是Algo Trader,一个是VN.PY,门槛比较高,对于用户的编程能力与交易能力都有一定的要求,我们还是先从简单的平台开始介绍:
首先是最常见的MT4/5。
早期的外汇经纪商平台都是自己研发的,后来的几年里俄罗斯的MT4/5击败了这些成为了行业的一种标准化的解决方案。
在量化方面的开发环境是MQL4/MQL5,在这两个环境里开发量化策略只能实现基于Tick与Bar的驱动策略;Tick是指交易商的每一次报价,Bar是K线的运行。
但是无论是挂了一个单,现在成交了;或者之前挂了一个委托,发了挂单撤销,撤销成功等这一类的信号,在MQL环境中都是没有办法监测的,只有在下一个Tick/Bar发来的时候去请求查询自己的委托、成交情况。
这就造成了MT4/5是不可能实现高级的交易策略的,无论是CTA策略还是高频策略都是无法实现的,这是架构上的问题。MT4/5的定位是对于入门、爱好者的适用软件。
第二个平台是cAlgo。
也是一个免费的平台,提供的编程环境是基于C Sharp(C#)的,是微软开发的,在业内编程语言功能最强大的开发环境之一。
在架构上,cAlgo是允许Tick驱动、Bar驱动,除此之外还有成交驱动,比如你下了一个交易委托,委托的结果会马上被监测到,可以让你的策略被再次调用,所以cAlgo是可以用来实现一些低延时的CTA类的交易策略的。CAlgo的定位是一个常规的量化适用环境,可以实现业界一些比较常见的策略与交易。
第三个就是有十年历史的Multi Charts。
Multi Charts前身是Trade Station的开发团队(将近30年历史),这一个老牌、经典的软件是1500美金的终生使用价格,但是每年会有更新,每次更新还有升级的费用。
Multi Charts的开发语言有两个,一个是Easy Language,一个是C#。而Easy Language被誉为量化交易业内的奇迹,可以让开发者用近似于英语的语言来描述自己的交易逻辑。
所以这个语言是非常的容易,兼顾了扩展性与复杂应用可能性;同时支持Tick驱动,Bar驱动,支持成交驱动,还多了一个委托状态变化的驱动,这就使得一些复杂架构的订单,比如FAK、FOK,还有一些特殊的算法订单,符合一些成熟的量化交易者去使用,而且因为语言非常友善,极易上手。
Multi Chats在全球范围内都有机构客户、基金公司客户在使用,整体而言这家软件很好用。
提到机构用户,我要提到之前在网上看到,一些外汇交易商推广的时候说自己的MT4/5很多对冲基金都在用、银行间都有使用,这基本是胡说八道,的确银行的外汇零售部门提供MT4/5给自己的客户使用,但是机构与银行的内部的自营部门(Prop Trading Department)是肯定不会用的,这个是产品架构造成的缺陷。
现在来介绍两个适合大型量化外汇机构使用的量化交易平台,一个是AlgoTrader,一个是vn.py。
和之前三个平台不同的是,之前三个平台虽然能做,但是还是停留在支持基于价格变动、单交易品种的策略,不能支持复杂数据结构。对于大型量化交易机构,几个亿、几十个亿的策略产品需要不是仅仅简单基于价格的平台。
首先AlgoTrader,是一个瑞士的公司开发的一套量化交易系统,曾经是一个开源项目,因为非常成功所以成立了一家公司提供量化对冲基金业界对于产品有高性能、高要求的客户。基础价格是2000美金一个月,而且根据需求提供不同的插件和模块(另外付费),全套产品要几万美金一个月的价格。
AlgoTrader的编程语言是Java,同时AlgoTrader内置了一个复杂事件处理引擎CEP,通过这个技术(开源的叫做Aspera),在商业化开发之后(商业收费版叫做Aspera Advanced)可以达到纳秒级内进行复杂事件的处理。
该平台更适合专业的交易机构交易员,可以实现复杂的量化交易策略,比如跨货币对期权的波动率交易策略,我们也成为离差交易(Dispersion Trading),这是一种可以支持大资金量去进行交易的一种策略。
第二个VN.PY是开源的,源代码可以在GITHUB上下载和开发,这是一个基于近两年比较火热的Python语言的产品。VN.PY没有使用这些成熟的商业化事件处理引擎,而是设计了一个轻量级的事件引擎。
同时VN.PY相比起AlgoTrader把所有的引擎包含在自己的框架里面不同的是,采用了模块化的设计,比如独立的风控引擎、CTA策略引擎、外汇交易引擎、期权交易引擎、套利引擎等等,把这些引擎以扩展模块的方式插入到主程序去使用,更适合一些定制化的策略,比如期权的做市,期权与货币对波动率相关的交易等等。
VP.PY也有比较高的入门门槛,首先需要熟悉Python语言的编程,也需要明确知道自己的交易系统具体是怎么实现的,现在VN.PY的用户都是资深量化交易用户,目前都是国内的私募、券商自营、海外的采用复杂策略的对冲基金在使用。
量化软件平台讲完了,但是只有量化软件平台没有经纪商还是没法做交易,所以我们接下来讲一讲哪些经纪商适合去做量化交易。
第一家是盈透证券(Interactive Brokers)
支持美股、外汇、期权、期货、甚至一些OTC市场的债券都可以通过一个账户交易,平台的TWS是非常强大的交易软件之一,比高盛、大摩提供的软件强大的多,虽然这些银行可以交易更多的品种,但是大多数是要通过电话交易的,但是盈透把这些交易都兼容在了自己的平台里面。
同时盈透的API接口(IB API)也是全球、业界用户最多的之一,外汇市场的部分,盈透建立了一个ECN平台,其实是采用了交易所的模式,是一种叫做MTF的模式,但是盈透因为没有交易所牌照只是叫自己ECN。
简单而言就是银行在市场上进行了报价,如果有客户想要在你报出的价格成交,即使银行的价格已经发生了变动,但是在这个市场上变动还没有发生,银行是不能拒绝以原来的价格跟客户成交交易的。
但是对于很多的外汇市场ECN平台,比如FXALL、CurrenX都是在ECN平台上报出一个意向价格,成交请求递交给后,银行有权拒绝在该价格成交交易(Last Look机制),此时ECN平台只能把客户的单子再提交给第二好价格的其它银行,这就可能导致客户的单子在市场之间游荡但是得不到执行。
最后的成交价格可能与你的下单价格偏离很远了(滑点),这是普通的纯ECN的平台的缺点,但是盈透证券的IB PRO平台采用的MTF平台就能保证客户的下单价格的成交。在欧美很多体量小于一亿美金的基金都会选择与盈透进行交易,节约了自己开发清算系统的成本。当然体量大的基金公司还是会选择与大银行比如高盛、花旗去做交易的。
IB自身是没有提供量化交易平台的,TWS(Trade Work Station)本身很强大,IB API也是通过TWS实现的,但是并没有自动化量化交易策略的支持。很多公司开发了特别的接口去支持IB的API接口,比如上述提到的Algo Trader,VN.PY等等。
第二家是LMAX。
LAMX持有英国正规的MTF牌照。全球持有MTF牌照的只有5家公司,4家是顶级报价银行,1家是LMAX。
也就是说LMAX是唯一一家在外汇平台里面持有MTF牌照的。LMAX跟盈透证券的IB Pro一样用的是MTF模式,所以受到了很多对冲基金的青睐。
LMAX可以说是技术驱动上最强的公司之一,如果写过JAVA、关注前沿技术的朋友们应该听说过Lock-Free Queue(快速无锁队列),LMAX发明了Java上的非常强大的功能,在GitHub上的得分非常高,高频交易机构的应用非常多。同时还发明了一个Distributor模型,这是一个把交易订单以路由的方式发送,实现一旦数据流出现问题,可以用固定算法把整个交易状态重现的一个非常好的核心交易系统,LMAX的把这两个组建都开源了。
LMAX坚定限价单流动性,无“最后观望”的拒单,严格的价格/时间优先订单匹配,其完整的交易匿名和透明的执行,只需将买家与卖家匹配就可以了,订单匹配平均速度是3-4ms。庞大的吞吐量,每秒大于100,000个的讯息,每秒可持续处理10万个订单。链接方式有交叉连接 (Equinix LD4/5、TY3、NY4 及 SG1)、PoP协定连结 (Interxion),API (Java & .Net), FIX 4.4, 网页版平台 GUI, MT4/5 桥接。LMAX是银行间外汇交易,基金公司,专业高频量化的选择之一。
关键一点LMAX没有做市的成分,通过MTF撮合器把客户订单和银行订单在LMAX撮合器上直接撮合完成,成交速度和质量都很好,在专门的外汇平台里面目前没有第二家比LMAX的交易环境更好的。
第三家是Oanda。
从加拿大起家的公司后面把总部搬到了美国,在业内很特别,其实是一家外汇服务商,业务分为三条线,第一个部分是现汇兑换(Deliverable FX )业务,一个比银行的成本低的兑汇业务;第二个部分是为跨国企业提供外汇对冲的咨询服务,提供定价策略等等;最后一个部分才是OANDA的外汇交易部分,外汇衍生品交易业务。
Oanda也是一个业内技术革新比较积极的公司,提供了自己的Web Rest API,基于HTTP协议的,几乎所有的支持HTTP发起的编程语言都支持他们的API,但是性能上有待提高。
另一方面他们有自己性能比较好的JAVA接口,还有FIX接口,这是大型金融机构的解决方案。OANDA是纯做市商模式。
在国际上有很多跨国公司是使用Oanda的兑汇服务的,比如Airbnb,在Airbnb的不同国家的显示的房价外汇价格与换汇价格的服务提供方都是Oanda。同样Oanda也没有提供任何的量化交易平台,提供API的服务。
第四家是Dukascopy。
Dukascopy提供了一个自己开发的量化交易平台叫做JForex,还有一个自主的外汇量化交易环境,提供量化策略历史回测等功能,还有一个比较鸡肋的可视化外汇策略编辑器。
听起来很神奇,但更多是一个玩具,这种可视化策略开发的功能是一个期货领域的顶尖的公司TT/X_Trader的开发商(Trading Technologies)集合了几百个工程师花了几年的时间开发出来的,但是Dukascopy的产品就简单很多了。
看过Dukascopy的FIX API文档,其FIX协议设计是超过FIX普通协议的,对于机构客户有不错的吸引力,他们也是ECN的平台,业界的声誉(欧美外汇交易圈子)也不错。
© 版权声明
本文转自网络,版权归原作者所有。我在此仅提供该文章的转载服务,不对其内容和观点承担任何责任。若涉及版权问题,请与我们取得联系及时删除。
相关文章
暂无评论...