分类
用技术指标进行交易

外汇量化交易——高频策略

终身学习

外汇量化交易——高频策略

一、量化交易都是什么 量化交易、程序化交易、量化投资,听起来很高大上的名词。随着市场的成熟化,去散户化,量化交易慢慢成为机构投资的主要手段之一,但它真的如同印钞机一样,躺着赚钱,还是不过是把“手动亏钱”变成了“自动亏钱”,本文说说。 成熟市场,散户的占比是很少的,比如美股,不到10%的散户比例,其他都是机构,再比如外汇交易市场,就没几个散户,因为散户早就死光了。有些外汇黑平台,你只要去它哪里炒外汇,给你送100美金,各种赠送,因为它心里太清楚不过,来一个死一个,几乎不会有例外。 既然当散户,就是被收割的命,那就不要人为炒了,用计算机来搞,计算机没有情绪,严格执行指令,如果稳定盈利,岂不是日进斗金。是不是想象很美好? 量化交易在外汇市场最为流行,因为外汇是高杠杆,而且24小时交易,作为一个交易者,如果按照日常作息去炒,只怕你在睡梦中,就爆仓了。外汇市场主要的量化工具是MT4(metatrader4),在MT4,MT5平台上,量化策略几万个,如过江之鲫。什么策略都有,只有你想不到,没有策略做不到的。 量化策略有几个大的方向,趋势、网格、趋势+网格、还有目前最为流行的机器学习。最简单的策略比如MA20策略,价格在20日均线以上就买,在20日均线以下就卖,别看这么简单,已经比大多数策略都强了。 机器学习就更是一个大开脑洞的地方,什么隐马尔科夫链、卷积、循环、蒙特卡洛树搜索,因为机器学习的决策特别像人,有些模糊化随机化,给人感觉机器给的指令,那就是深不可测,啥也别说的,听机器的就对了。于是掀起了一轮新的装X高潮。 趋势策略,一般是吃大势,在震荡过程中,不断承受小的亏损,最后通过盈亏比达标,获得利润。趋势策略基于人对于股市的认知,即所谓“截断损失,让利润奔跑”(loss cut,profit run)。趋势策略没有什么数学基础,都是靠感觉。认为虽然大部分时间市场哪儿都不去,就在那儿震,但一旦形成趋势,就可以获得超常回报。这就有一个问题了,“趋势”是真的存在吗?市场的“趋势”还是“震荡”是人想象出来的,还是真有? 网格策略,跌了买,涨了卖,这个倒是有一定数学基础,也就是马丁格尔网格,俗称“翻倍加注法”,如果输了,下次赌注加倍,只要赢了一把,就能回本并盈利。条件是本金要无限多。 以上无论是什么方法,其实都是人凭借想象,对股市一种感觉,落实到策略上,最后通过回测,证明了这个方法的可靠。 二、当前量化方法的有效性数据测试的误区 现在测试量化方法的有效性,就是通过“回测”,回测是将历史数据,带入到自己的策略中,模拟过去时段策略的表现,但“回测”的作用,估计大多数都误会了,它基本上毫无用处。 然后对回测的结果,进行调整(调参),妄图达成一条稳定向上的曲线。奔着这个目标,耗尽心血,浪费了大把时间。 1、回测方法不科学,造成新手的第一大坑 经常有量化新手,学习量化没三天,跑出来的收益曲线惊天地泣鬼神,什么几倍都是小菜,什么几百倍,甚至几千万倍都有,按照这收益曲线,巴菲特直接被秒杀。可这些新手也不想想,你哪里来的自信,开几个脑洞,就赚这么多,这世界上还有人需要辛苦工作挣钱吗? 外汇量化交易——高频策略 新手犯错可能有几种: 1)程序根本就写错了,呵呵 2)未来函数,这是个比较隐秘的坑,需要好好找找原因,什么让你穿越了时间? 3)大大低估了手续费与滑点的影响,其实,在交易中,手续费(或者说所有中间费用的总合)是决定性的。我看很多人回测A股,如果是趋势交易,设置交易费用千一,滑点千三,那就是太小看滑点了。(至于滑点是什么,可自行百度) 4)无法成交的情况,比如涨跌停,你根本买卖不到,如何交易? 5)因为低估手续费,就造成低估了频繁交易手续费的影响,容易使得交易策略高频化,收益曲线看上去非常惊人。 2、回测是对历史的归纳,与未来是否有相关性?相关性大坑 这方面有几个案例,通常前几年表现好的基金,后几年就差;业绩差的基金经理,开除后业绩反而变好,这不是随口说说,有这方面研究论文。 换个市场,换个品种,换个时段,同样的策略,回测结果千差万别。 就算你避开了新手的坑,你同样可能掉进一个无穷回测的坑。 举个例子,你回测两个品种,一个回测结果好,一个回测结果差,请问你接下来打算应用该策略到哪个品种上? 如果你说肯定是用在回测结果好的品种上,否则我要回测干什么,不就是寻找好的结果吗? 恭喜你,你接下来,更大概率是会输给哪个回测结果差的。 3、调参的大坑 调参可能发生在所有策略中,特别是现在的机器学习最流行。想调个天昏地暗,又怕过拟合。 参数越多,得出的结果可能会越荒谬。这个就像你面对一个复杂系统,每多一个复杂度,系统就会更加混沌。你判断的最终结果大概率就是个错的。还不如家里的一条狗,来选股。 热衷于调参的人,都是一根筋,沉浸在虚拟的快感当中。可是结局早就注定是徒劳的。 量化圈经典的几个笑点: 1)回测吊上天,实盘不如狗 2)炒股穷三代,量化毁一生 以上,回测的意义是完全没有吗?其实是有的,比如你在程序中犯了一个低级错误,然后回测结果几万倍,你就知道,肯定是写错代码了。 回测的作用也就是这个了。 三、量化交易的根本问题 量化交易,通过建模,回测,然后通过程序化自动交易,取代了人工的买卖,效率上自然不必说,还是有进步的。 但量化交易的根本数学逻辑是什么,那就没那么明显了。 对市场价格进行数学变换,几乎所有市场,从加密货币,外汇,到美股、港股、A股,其实都一样,遵循完全相同的概率密度曲线,说个结论,比如外汇的EUR/USD,数学计算出来的结果是1.0006,随机过程是1,两者仅相差0.0006,也就是说,EUR/USD无限接近于随机过程,如果算上手续费、点差等因素,已经远低于1.0000了,你长期炒,只会通向死亡的终点。这一点也和外汇市场散户炒家近100%死亡率吻合。 当然市场有好有差,但空间都很小,手续费算进去,就没有哪个市场是很容易的,随着市场的成熟,空间会持续减少,直到变成外汇市场。外汇市场是最难的市场,是无敌的存在。 大致的市场空间排序为 加密货币>A股>美股>港股>外汇。 四、总结 量化交易,很多新手都有误解,以为就靠几个想法,就可以从市场上赚取大笔的钱,躺着赚钱是多么的令人神往。 但往往时间一长,就不再狂妄,知道市场是多么强悍。区别只在于,是被市场教训的早,还是教训的晚。 量化交易搞得比较大的平台,像Botvs,vnpy,聚宽,米宽等等,虽然掌握那么多量化的知识,积累了那么多量化的资源。最后还是靠给别人提供量化服务,教别人如何量化来赚钱了。你理解到底是为什么吗? 而你,既不是智商高达150,也不是数学天才,更是连一个IMO奥数题都做不出,就你那点脑洞,真以为市场是病猫,也是你可以随意蹂躏的? 你的所谓量化交易,其实就是些“自动亏钱机”,“云亏钱”,“碎钞机”罢了。

外汇量化交易——高频策略

icon

知乎专栏/华尔街见闻/扑克大宗/凤凰金融: Dorian君/灰岩金融科技/灰岩国际咨询 精通领域:利率衍生品/期权/期货/股票/期货/外汇/FICC 创建多家海外对冲基金,熟悉各类套利/交易策略 海外官网:ravenrock.weebly.com 宏观交易员,前投行交易员。

1 5yjpWuKh2tQFMlkFdQy-rA.jpeg

说句实话,没有一个比投资自己学习能力以及金融知识体系更好的投资。长期积累的能力以及知识你将得以应用一辈子。最终受益者也只是自己。这些知识是谁都无法偷走的。

干货方面老铁可以阅读干货前文:

而现阶段的全球algo trading 过剩,在HFT上由于巨大的预期回报,各家Firm 也纷纷鸟枪换炮。而HFT高频交易对硬件上的极高要求以及交易信号以及线路的问题,导致个人无法参与高频交易, 但中低频交易对硬件要求就会低很多。

炒过外汇FX的都知道,毛子的著名产品MT4 ~ MetaTrade4 (mt4) 交易客户端. 以及他们针对EA以及开放借口优化的MT5可供运行算法策略交易。

Mt4客户端提供一整套交易策略开发框架平台。支持MQL4语言(语法与C语言类似) ,而且提供了非常丰富的指标,扩展函数。可以很方便地开发交易策略和进行回归测试。在零售外汇领域很多个人交易者或者专业的交易者都使用MT4做自动化交易。MT4有相当活跃的社区,国外有很多论坛讨论和分享MT4 EA程序。但是令人遗憾的是 Mt4 客户端必须配合Meta Qutes服务器使用。所以Mt4 一般只限制在外汇行业使用,而这类并不包括其他的资产标的。。

开设证券账户 >开发环境搭建->数据准备 ->交易策略开发->回归测试->模拟交易-> 实盘交易

1开设证券账户

期货:商品期货开户门槛比低。股指期货要至少50万资本。期货这一块主要是CTP协议。网上都可以找到java,和python的封装。对开发者真友好。

债券:可转债, 开户资金有要求。

外汇:开户门槛比较低一般50美元起,那么这些交易的合同本身都属于差价合约CFD(contract of difference),并非spot fx contract。但需要选择信誉比较好的券商。一般这类FX broker都有A book 和B book, 很多交易都是内部对冲掉。有一些比较知名的券商比如Oanda 会有提供HTTP api 接口。如家交易者资金有比较大,可以直接到LP 提供商如果,lmax,cfh开户。LP提供会提供FIX交易接口。FIX接口非常适合程序化交易。

美股,期货,期权:IB(interactive broker)账户有提供程序化交易接口,账户最低余额需要1万美元。其它美股券商,如史考特,或者国内的老虎证券,富途对资金没有要求,但都没提供API。功能性来讲,如果交易期权options的话,盈透,thinkorswim以及charles schwab都提供比较强大的Volatility lab 以及API借口等进阶功能。

比特币:可以选选择coinbase, bitstamp. 这两个公司总部都是在美国,各方面监管比较严格,所以开户周期比较长。都提供有API.

2开发环境搭建

Python :目前应该是最普遍的个人量化技术。相关的开源框架相当丰富。比如Panda ,Scipy, numpy, Zipline (Backtest framework ) 。

R:高级算法比较方便,社区比较活跃。

Java ,C++:没有的时间序列操作框架,自己写比较麻烦。

MatLab:算法库比较成熟,但处理大量数据比较麻烦。

建议阅读量化入门书籍:

1. 打开量化投资的黑箱

这本书的作者里什·纳兰(Rishi K. Narang)是华尔街顶级数量金融专家,资深对冲基金经理,自1996年开始,他就开始从事对冲基金事业,专注于量化交易策略。目前是特勒西斯资本有限责任公司(Telesis Capital LLC)的主要合伙人。在书中他站在一个非纯粹技术的视角介绍了量化交易策略,用生动的文笔带领读者游历整个“黑箱”。

2. 量化投资策略:如何实现超额收益Alpha

本书作者Richard Tortoriello是任职于S&P 标准普尔公司的证券分析师,他的日常工作就是建立一系列的数量选股模型。书中的模型类型覆盖面广,可以说作者是在对所有能够获得超额收益的策略进行了地毯式的搜索,并且提供了超过20种常胜投资idea的详细回测情况,充分展示了经验丰富的Quant是如何通过自己的想法来改进模型的。顺便提一句,本书的译者们也都是浸淫证券市场多年的大咖,其中陈工孟更是深圳国泰君安的董事长和上海交通大学金融工程研究中心的执行主任。值得一看。

3. 解读量化投资:西蒙斯用公式打败市场的故事

4. 利用Python进行数据分析

如何利用各种Python库(包括NumPy、pandas、matplotlib以及IPython等)高效地解决各式各样的数据分析问题。由于作者Wes McKinney是Python pandas库的主要作者,所以本书也可以作为利用Python实现数据密集型应用的科学计算实践指南。本书适合刚刚接触Python的分析人员以及刚刚接触科学计算的Python程序员。

量化交易和高频交易有什么区别?

按照数学模型的理念和对计算机技术的利用方式,量化交易方式可以进一步细分为自动化交易(Automatic Trading)、数量化投资(Quantitative Investment)、程序化交易(Program Trading)、算法交易(Algorithm Trading)、以及高频交易(High Frequency Trading)。这五种量化交易方式侧重点各有不同,是量化交易技术发展到不同程度的产物。但是在实际应用中,五种量化交易方式的名词经常被交叉使用。

自动化交易

数量化投资

算法交易

程序化交易

程序化交易,是从美国七十年代的证券市场上的系统化交易发展演变而来的,是伴随着股指期货与现货市场套利交易而兴起的数量化交易方式。纽约证券交易所(NYSE)把程序化交易定义为:Program trading encompasses a wide range of portfolio-trading strategies involving the purchase or sale of a basket of at least 15 stocks with a total value of $1 million or more.即任何含有标普500指数15只股票以上,其价值100万美元以上的交易,属于程序化交易。纽约证券交易所的定义主要突出的是交易规模和集中性。程序化交易发展到今天,其含义已经远远超过了纽约证券交易所当初的定义。国泰君安证券对程序化交易给出了一个更为市场化的定义:根据一定的交易规模和规则生成买卖信号,由计算机自动执行买卖指令的交易过程。简单的说,就是利用计算机程序来控制买进卖出的事迹并自动执行。在这个定义中,突出的是交易模型、计算机程序对交易的重要性。随着量化技术的深入发展,程序化交易和算法交易的界限逐渐模糊,有些市场使用高频交易描述流行的量化交易方式。

外汇量化交易——高频策略

课程项目

教授/研究 外汇量化交易——高频策略

职业发展

校友

教学服务

终身学习

关于FISF

施东辉:高频交易,天使还是魔鬼?


速度与激情的游戏

正如一千个人眼中有一千个哈姆雷特,目前业界和监管机构对于高频交易的定义也不尽相同。不过,一般认为高频交易(High Frequency Trading)属于程序化或算法交易的一种类型,是指交易者利用硬件设备和交易程序的优势,自动获取、处理市场信息并生成和发送交易指令,在短时间内频繁买进卖出以获取利润。

完全准确界定高频交易很难,监管机构大多通过描述特征等来对高频交易给出定义。国际证监会组织(IOSCO)在征询各方意见后,给出了识别高频交易的几个特征:一是高频交易会利用复杂的技术手段,会使用从做市到套利等多种交易策略;二是高频交易是一种高级的量化策略,会在市场数据分析、选择交易策略、最小化交易成本、执行交易等整个投资过程中使用算法;三是日内交易频繁,很多时候日内头寸持有时间不超过几秒钟甚至不到一秒钟;四是隔夜头寸数量很低甚至没有隔夜头寸,以便于规避隔夜风险、降低占用的保证金;五是高频交易对交易速度要求较高,都会使用直连交易所(DMA,Direct Market Access)或机房托管服务(Co-location),以实现交易的低延时性(Low-latency)。

高频交易的善与恶

高频交易与市场闪崩


2010年5月6日下午约 14:40,道琼斯工业指数盘中自10460点开始近乎直线式下跌,仅五分钟便暴跌至9870点附近。当天指数高低点差近一千点,最大跌幅9%,近1万亿美元瞬间蒸发,这一交易日也创下美股有史以来最大单日盘中跌幅。美股闪电崩盘(Flash Crash)事件,震惊整个华尔街和全球金融市场。2015年4月21日,闪崩“疑凶”——英国37岁高频期指交易员萨劳被英国执法部门拘捕、并被指控涉嫌利用大笔高频下单交易操纵指数期货导致市场闪崩。这一事件引发了对某些激进的高频交易策略可能会导致市场脆弱性和波动性增加的普遍担忧。

如何监管高频交易


一是要求注册。 相关监管法规一般要求,在自营账户进行高频算法交易的公司和交易员需要向交易所或行业自律监管机构申请注册,取得许可,以确保这些高频交易员对任何潜在的不当行为负责。

二是限制撤单。 限制高频交易者撤单的能力,可以减少高频交易者实行不公平行为的影响。例如《欧盟金融工具市场指令》中就严格规定了撤单频率和时间的限制,交易者的限价订单的有效性必须达到0.5秒,并且在这期间不能撤单。另外,也有一些市场通过收税的方法增加高频交易者的报单撤单成本。意大利金融市场规定,当0.5秒内更改或取消的订单比例超过提交订单总数的60%时,将征收0.02%的税收。

三是加强风控。 为降低高频交易对系统稳健性以及市场稳定性造成的危险,要求高频交易商确保其交易系统能承受住压力、具备足够的容量、制定有效的应急措施,同时要求交易所建立交易阈值体系,在市场发生巨幅波动时,能及时终止交易或转换交易方式。

四是打击“ 幌骗”。 “幌骗”行为构成市场滥用,在法律上受到明确禁止。在美国,证监会和商品期货交易委员会在涉及高频交易的一系列执法行动中,利用《多德—弗兰克法案》授予的反欺诈权限,打击了“ 幌骗”行为。2015年 11月3日,美国联邦法院裁定高频交易员迈克尔·科西亚商品交易欺诈以及幌骗罪名成立,这是全球针对这种违法交易行为的首例刑事指控,具有里程碑意义。