专业正规安全的配资公司炒股平台门户网
关键词不能为空

期货配资

导航

「高频交易怎么获利高」如何做高频交易

未知
admin

高频交易怎么获利高:如何做高频交易

韭庄代码量化交易

高频交易怎么获利高:手工高频交易都是怎么做的

根据短线行情或指标在短时间内进行大量交易,需要丰富的盘感经验,不追求单笔交易的大额盈利,靠高的成功率获得收益。 一般在交易成本非常低,且短线成功率非常高的情况下才能有较好的收益,对盘感要求很高,不建议初入市场者采用。

高频交易怎么获利高:什么是高频交易

快进快出,根据一分钟趋势频道操作,一般适合做高杠杆的外汇或黄金,因为随便一波动就盈利,可以快速卖出。有时候就是几十秒的事儿。当然,真正的高频交易是用软件的,只有在国外可以,国内没有,只能手动。而且,所做品种必须是T+0的,就是当天买入当天可以卖出。

高频交易怎么获利高:高频交易员是做什么的

高频交易是指从那些人们无法利用的极为短暂的市场变化中寻求获利的计算机化交易,比如,某种证券买入价和卖出价差价的微小变化,或者某只股票在不同交易所之间的微小价差。这种交易的速度如此之快,以至于有些交易机构将自己的“服务器群组”(server farms)安置到了离交易所的计算机很近的地方,以缩短交易指令通过光缆以光速旅行的距离。

高频交易怎么获利高:在金融市场高频交易中有这样一个问题:每笔交易胜率51%,问每天要做多少笔交易当天盈利的概率是99.99%?

交易中除了胜率,还有盈亏比。如果每次盈亏都是相等的,每次胜率51%,每天要99.99%是赚钱的,盈利就是赚钱的次数至少大于亏钱次数的1次。如果交易100次,应该是赚51次,亏49次。应该是盈利的。当然交易次数越多,盈利可能性越接近100%。当然这是理想化的,实战中很难找到胜率大于50%,并且很稳定的,可以量化的。希望采纳。

高频交易怎么获利高:高频交易软硬件是怎么架构的

首先,高频交易不一定是套利算法。事实上HFT做的最多的业务是做市(market making),可以是把商品从一个交易所倒卖到另一个交易所,也可以是在同一个交易所内部提供某种商品的流动性。这两种方式的共同点都是让人们可以特定地点买到本来买不到的商品,所以本身就是有价值的,收服务费就可以盈利。 二,延迟和流量是不同的概念。低延迟不等于高数据量,事实上大部分时间交易数据流量并不大,一个market一天最多也就几个GB。但HFT系统需要在流量高峰时也能快速响应,所以更看重延迟。这也是HFT系统和互联网系统最大的区别所在,HFT系统的精髓在于把单机的软硬件系统的性能发挥到极致,而不是像互联网那样强调高负载和延展性,动辄用几千台机器搭集群的做法在这里是不适用的。用互联网系统的性能指标来认知HFT系统也是没有意义的,像淘宝这样的应用需要保证交易的正确和一致性,包括从终端用户的浏览器到淘宝后台到银行接口之间一系列复杂的事务性数据操作,这个场景和HFT直接对接交易所走高速线路收发交易指令有天壤之别,不能用同样的思维去理解。 三,一个HFT业务包括从主机到交易所的整条通信线路,在这条线路上有很多段不同的延迟,是需要分开讨论的。如果是做跨交易所的交易,首先需要考虑的是两个交易所之间的网络延迟。当数据通过网络到达主机的时候,有一个最基本的tick-to-trade延迟,是指主机接收到数据到做出响应所需的时间。但这个东西的测量很有技术含量,根据不同的测量方式,它可能包括或不包括网卡及网络栈的处理时间。所以拿到一个HFT系统的延迟数据时,首先要搞清楚它指的是什么,然后再来讨论。 题主提到从一个直连计算节点的router的角度来观测,这是一个理论上看起来可行但实际仍然很模糊的概念,因为一般router本身是不做存储和处理的,一个router会收发大量不同的数据,要理解一个接收到的包是对之前发出去的某个包的“回应”,是需要相当的处理逻辑的,一般很难这样测。比较合理的测试仍然是在主机端做记录,测试从收到市场数据(tick)的TCP/UDP包到发送交易指令(trade)包的时差。目前(2014)的情况是,这个延迟如果平均控制在个位数字微秒级就是顶级了。因为网络传输才是延迟的大头,如果网络上的平均延迟是1毫秒(1000微秒)以上,你的单机延迟是2微秒还是20微秒其实是没有区别的。一般单机比网络低一个数量级就可以了,比如网络上需要100微秒(很现实的数字),单机控制在10微秒足以保证速度上没有劣势。至于公众报道,有时是为搏人眼球,难免有夸大的成分,不必太当真。

高频交易怎么获利高:高频交易能做吗?高频交易是什么?

甲销售某商品10000一个。乙购买此商品10008元一个。 丙看到了商机,从甲处购买后,再卖给乙。 花10000元 只挣了8块钱。 利润是不是很低? 如果卖10000个呢? 是不是变8w了? 也还不错奥。 只是要交易10000次而已。 高频不? 所以高频交易是 量变到质变。 只赚几个点的就走。 利用更低廉的单笔交易手续费和多方位的机会寻找能力来获得盈利。 比较常见于 期货。

高频交易怎么获利高:外汇高频交易能盈利么

高频交易应该是用EA小仓位跑的,这种方式用EA跑是可以赚钱的,风险也可以得到很好的控制。

高频交易怎么获利高:期货人工高频交易具体怎么操作的?

程序化交易的可以

高频交易怎么获利高:期货中说的高频交易 高频对冲是怎么样的

就是日内频繁来回操作 频率很高 一般来说,一天超过50个来回,就可以说得上高频交易 这也不容易,对操盘者的要求比较高 盘面感觉要不错,动作也要快 往往就是两三个点就平 当然交易费用也必须足够,螺纹这样也可以一手3块6毛多

高频交易怎么获利高:我是如何通过机器学习和高频交易赚到500K美元的

翻译一篇外文博客,觉得里面的一些东西现在仍有参考意义,分享一下。

整个系统一个人做的真的挺累的,刚开始是被标题吸引了,看到后面越来越觉得觉得工作量真的好大,而且是2009-2010年的时候。

作者的P&L看着相当耀眼啊,当然,有人怀疑~。

好玩的是,下面有人讨论作者用的只是优化算话和程序化交易,并不是ML,作者还在解释,哈哈~~。

还有就是做数字货币亏了的一个哥们说对自己帮助很大,哈哈。

水平不足,译的不太好,只能凑合看,英文阅读无障碍者可以点击下面链接看原文。

https://jspauld.com/post/35126549635/how-i-made-500k-with-machine-learning-and-hft

这篇博客详细记录了我在2009-2010是如何通过高频交易赚到500万美元的。因为是完全独立的交易者而且此程序将不会再用,所以我很乐意毫无保留的进行分享。我的交易主要是Russel2000和DAX期货合约。


我坚信我成功的关键不在于复杂的金融公式而是在于算法的系统设计。这一设计将诸多简单的要素结合在了一起,并利用机器学习来优化,从而达到利润最大化。在此,你并不需要理解复杂的技术,因为我是完全凭直觉来设计程序的。(Andrew Ng’的神奇的机器学习课程已经不可以访问了,但你如果点击此链接的化,会看到我目前的主页——Course Talk,MOOC的概览)。


首先,我要表明我的成功并不是简单的幸运。我的程序每天交易1000-4000次(其中,一半是做多,一半是做空),而且从未涉足多次合约的仓位。这意味着,对于任意一个交易来说,随机幸运会根本靠不住。但事实是,我1天的的亏损从未超过2000美元,从未出现过亏损的月份。

我的交易背景

在建立我的自动交易程序之前,我是一个拥有2年手动交易经验的交易者。这可追溯到2001年,也就是电子交易的早期阶段,当时黄牛党有大量的获利机会。我觉得自己当时所在的事情就像是在特定边界内玩游戏或赌博一样。要成功意味着要快,要有纪律,有良好的模式识别的直觉。我大概赚了25万美元,还清我的助学贷款还有剩余。Win!


在接下来的5年里,我创立了2家公司,并顺便学习了编程。直到2008年底,我才重新开始交易。因为我的第一家公司出售获得的现金流动性不足,而交易有希望获得快钱,所以我开始了下一步行动。


交易API

在2008年,我使用名为T4的软件“手动”进行交易期货。我一直想要一些自定义的快捷键,所以发现T4有API后,我开始学习C语言并建立了自己的快捷键。


当用API试水后,很快我就有了更大的野心:我想教电脑来为我交易。API提供了市场数据流,并能够方便地将订单信息发给交易所。而我所做的仅仅是在这两者之间建立起一种关联的逻辑。


算法的设计

从一开始,我的目标就是要建立一个在实盘交易之前有理由相信能够赚钱的系统。为了完成这一目标,我需要建立一个能够尽可能准确模拟实盘交易的交易模拟框架。


在实盘模式时,需要通过API来更新市场信息,所以模拟盘需要读取市场更新的数据文件。为了完成数据收集,我建立了我的第一个简单的模拟系统,它能够API相联,并根据时间戳记录数据。最终,我用4周近期市场数据来训练和测试我的系统。


有了前面的基础工作后,剩下的任务就是如何建立一个可盈利的交易系统。最后我觉得我的算法应该分为2部分:

  1. 预测价格趋势
  2. 进行盈利操作

预测价格趋势

也许任何交易系统的重要组成部分之一便是预测价格趋势。我的也不例外。我将当前价格定义为inside bed和inside offered 均值,并将预测的价格限定在10秒中内。在整个交易日,我的算法需要时时刻刻地进行计算预测。


建立和优化指标

我创建了几个能够预测短期价格趋势的指标。每一个指标会返回正或负。如果大多数时候,指标返回值为正与市场上涨相对应,指标返回值为负和市场下跌相对应,则认为指标有效。


系统能够使我快速判断指标的预测能力,所以我能够尝试不同的指标进而找到有效的。许多指标是由多个变量生成的,所以我能够通过对结果不断比较来找到这些变量的最佳值。


相对简单和基于市场近期事件及相关证券的的指标是最有效的。


精确的价格趋势预测


用指标来预测价格趋势的上升或下降远远不够。我需要精确地知道上升或下降的力度由多大。我需要一个公式将指标值转化为价格的预测。


为了完成这一目标,我追踪了50个buckets中的预测价格变动,这取决于指标的下跌范围。对于每个bucket都有一个唯一的预测值,我在下面的excel表格中进行了展示。从图可以看出随着指标值的增大,价格变化的期望也在变大。


基于这样的图,我可以用一个公式来拟合曲线。刚开始时,我是手动来拟合曲线的,但我很快下了一个程序来自动完成。


注意并非所有的指标曲线的形状是一样的。还要注意,为了均匀的分布数据点,bockets是以对数方式分布的。最后要注意,负指标值(及与之相应的价格下行预测)需要反转并与正值相结合(我的算法上下完全相同)。


单个预测和指标相结合

需要考虑的一个重要事情是每个指标并非完全独立。不能将每个指标的预测简单进行加和。关键是要找出每个指标对已知预测值的额外价值。实施起来这并不难,但意味着曲线拟合多个变量的时候应该当心,因为一个指标的改变将会影响另一个指标的预测。


为了同时用所有指标进行“曲线拟合”,我设置优化器每次更新时尽向新预测曲线走30%,在几次更新后曲线趋于稳定。(这个地方没懂,个人感觉是窗口)??


现在每个指标都为价格预测贡献了自己的力量,我只需要将他们的预测进行简单的加和进而预测10秒钟内的价格趋势。


为什么仅价格预测还不够?


你可能认为凭借这种市场优势,我可大获全胜。但是,需要记住的是市场由出价和报价组成——它不仅仅是单边价格。高频交易的成功得益于获得美丽的价格,但这并不那么容易。


下面的因素将会使建立一个盈利的系统变得很难:

  • 每次交易我都要向交易所和经纪人支付佣金
  • 差价(最高出价和最低报价之间的差价)意味着如果我只是随意买入和卖出,我将会亏死
  • 大多数史称交易量是其他机器人,如果他们认为他们有统计套利优势的话他们才会和我交易
  • 看到一个报价并不保证我能买到它。当我的买单请求发送给交易所的时候很可能卖单已经取消了。
  • 作为一个小的市场参与者,我在交易速度上处于劣势。



建立一个完整的交易模拟系统

所以,虽然有了能够用来回测和优化指标的框架,但这远远不够,更需要一个能够让我优化和回测完整的交易模拟系统的框架,它可以让我发送交易指令并达成交易。所以,在接下来的例子中我优化了总的P&L(profit&Loss的简写),并在某种程度上均化了每个交易的P&L。


这将比较棘手,而且在在某种程度上来说无法做到精确建模,但我会尽力而为。 下面是我所做的一些必要改进:

  • 在模拟市场环境下,当订单发送后,我会模拟延迟时间。事实是当我的系统检测到一个卖单时并不意味着我能立刻买到它。在系统发送买单约20毫秒后,如果卖单尚未被其他买家买走,则可认为是一个可执行交易。这并不准确,因为实际的延迟时间是不连续的并且无法得到延迟报告。
  • 当我挂买单或卖单时,我必须查看交易执行流(可通过API获取),使用它们来估算何时会执行我的订单。 为此,我必须跟踪订单在队列中的位置。这是先进先出系统。)同样,我无法完美地做到这一点,但我做出我能做到的最好估计。

了为进一步优化我的交易模拟系统,我通过API获取了实盘交易日志,并和同一时期内我的模拟交易日志进行对比。使我的模拟交易系统达到了足够的精确度,对于无法精确的部分,至少使其统计分析结果是一致(in the metrics I thought important)。



进行盈利交易

有了订单模拟模型后,我现在可以在模拟模式下发送订单并查看模拟的损益表。 但是系统如何知道何时何地买卖?


价格走势的预测仅仅是万里长征第一步。我后续做的还有给5个level出价和报价做了一个评分系统,其中包括内部出价之上的一个级别(用于买单)和内部出价之下的一个级别(用于卖单)。


如果在特定价格水平下的评分高于某个阈值,意味着应该积极买入,低于阈值的话,则应该撤销买单。


基于此,我的系统在市场上出现一个出价然后立即将其取消的情况并不少见。


价格水平评分是基于以下因子计算的:

  • 价格趋势的预测
  • 存疑的价格水平(Inner levels meant greater price move predictions were required)
  • 在我的挂单前的合约数量(越少越好)
  • 在我的挂单后的合约数量(越多越好)

从本质上讲,这些因素有助于确定“安全”的竞标/报价位置。 单靠价格变动的预测是不够的,因为它不能说明以下事实:在下标时不会自动撮合成功-只有在有人卖给我的情况下,才能撮合成功进而成交。 事实上,当有人以一定价格卖给我时就改变了交易的统计赔率。


此步骤中使用的变量均经过了。除了额外对策略参考标准的损益进行优化外,其他优化方式与价格变动指标变量的优化方式完全相同。


我的程序所忽略的内容

当人进行交易时,由于受偏见和情绪的影响,很容易导致决策失误。当然,我想再次一一列举这些偏见。下面是我的系统所忽略的一些因素:

  • 持仓价格-在交易中,经常听到有人谈论多头或空头的价格的,好像这会影响他们未来的决策一样。尽管这作为降低风险策略的一部分具有一定的有效性,但实际上与市场事件的未来进程无关。 因此,我的程序完全忽略了此信息。 这与忽略沉没成本的概念相同。
  • 卖空与退出多头-通常,交易者将用不同的标准来确定卖出多头和卖空的位置。但是,从算法角度来看,没有理由进行区分。 如果我的算法预期价格向下,卖空是个好主意,无论当前是多头,空头还是持平。
  • “加倍”策略-这是一种常见策略,交易者会在原始交易不利于他们的情况下购买更多股票。 这样一来,平均购买价格就会降低,这意味着当股票价格掉头向上的时候就会立刻赚钱(如果有向上的时刻的话)。 在我看来,除非您是沃伦·巴菲特(Warren Buffet),否则这实际上是一个可怕的策略。你会自欺欺人的认为自己做的挺好,毕竟大部分的持仓能赚钱。 问题是,如果股票价格没反弹的话,你亏的会更多。 另一个影响是,这使得很难判断是策略优势或只是幸运。 能够检测并确认我的程序确实具有优势也是重要目标之一。


风险控制

不管是从什么时候开始交易,不管当前是空头还是多头,我的算法都是用相同的方式做出决策,所以除了一些大的盈利,偶尔会有一些大的亏损。但是,你不要认为没有任何风险管理。

为了管理风险,我一次强制执行2个合约的最大头寸规模,偶尔在交易量旺盛的时候增加。为了防止市场背景发生较大变化或软件中的bug,我还设置了每日最大损失限额。这些限制条件加在了我的程序中,同时也在后端也通过我的经纪人来把关。不过碰巧的是,我从未遇到任何重大问题。


跑算法

从我开始编写程序的那一刻起,我花了大约6个月的时间才使它成功运行并盈利。实际上,大多数时间都是在学习一门新的编程语言。在改进程序的过程中,我发现接下来四个月的每个月都有增加的利润。


每周,我都会根据前4周的数据对模型进行重新训练。在捕获最近的市场行为趋势与确保算法有足够的数据来建立有意义的模型之间达成了较好的平衡。随着训练越来越耗时,我将其拆分并用Amazon EC2的8个虚拟机运行。然后将结果合并到我的本地计算机上。


我的交易成绩最好的时候是2009年10月,当时我赚了近10万。此后,尽管每个月的利润都减少了,但我仍继续在接下来的四个月中努力改进我的程序。不幸的是,到现在为止,我已黔驴技穷,因为我尝试过的任何努力似乎都无济于事。


由于无法进行改进和缺乏成长感,我开始思考新的方向。我给6家不同的高频交易公司发送了电子邮件,以查看他们是否有兴趣购买我的软件并雇用我为他们工作。没有人回答。我有一些新的创业想法想做,所以不再跟进。


更新-我将此内容发布在了《黑客新闻》上,引起了很多关注。 我只想说,我现在不主张任何人试图做这样的事情。您将需要一个拥有很多经验的非常聪明的团队,才能有获胜的希望。即使我这样做,我也相信个人很少能取得成功(尽管我听说过其他人。)


页面顶部有一条评论提到“操纵统计数据”,并将我称为“零售投资者”,量化指标将“高兴地摘下来”。 这是一个很不幸的评论,根本不是基于事实的。 除了这些,还有一些有趣的评论:http://news.ycombinator.com/item?id=4748624


作者还发布了后续常见问题解答,回答了有关此帖子的一些问题。

高频交易怎么获利高:高频交易犯法吗?

首先我想说,这至少是一篇不合格的新闻报道,概念混淆之多简直不忍直视。
伊世顿账户组通过高频程序化交易软件自动批量下单、快速下单,申报价格明显偏离市场最新价格,实现包括自买自卖(成交量达8110手、113亿元人民币)在内的大量交易,利用保证金杠杆比例等交易规则,以较小的资金投入反复开仓、平仓,使盈利在短期内快速放大,非法获利高达20多亿元人民币。

“通过高频程序化交易软件自动批量下单、快速下单”,单从字面上看,不知道这个行为本身哪一点犯法,然后在一段“定罪”的文字里,用这句话开篇,真是诛的一手好心。

"申报价格明显偏离市场最新价格",这段话初读十分匪夷所思,所谓申报价格,大概是指报限价单,是一种不保证成交的委托单,人家觉得市场价格不合理,报单偏离市场价格又有什么问题呢?往下看,才明白:

该公司账户组……成交价格与市场行情的偏离度显著高于其他程序化交易者

如果说的并不是“申报价格”,而是“成交价格”,那显然是很有问题的。但是逻辑上,下一个疑点就是:为什么能在偏离市场行情的价格上成交?要知道“市场行情”本身指的就是成交价格,你总不能说市场行情偏离了市场行情吧?

看到这真的很为文章作者理解能力和文笔捉急。那我们就脑补一下,这个“违法行为”到底在哪里可能出问题。

首先我们要知道一个背景知识,即中国期货市场上的“市场行情”,一般而言指的是交易所每500毫秒一次发送的市场快照及上次成交情况。这个“行情”数据本身就是一个阉割过的产物,有大量的委托单(Order Book)变化情况,以及成交信息是被过滤掉的,除交易所自身外,大家都收不到这些信息。文中所指的“市场行情”,实际上应该就是指这每500毫秒一次的“上次成交”价格。但是因为500毫秒内实际上发生的成交往往多于一次,那么那些被交易所人为过滤掉,没有发出来的成交,它们的价格确实很有可能偏离被作为“市场行情”的“500毫秒中最后一次成交的价格”。

好了,有了这个背景知识,我们来看问题可能出在哪里。“成交价格与市场行情的偏离度显著高于其他程序化交易者”,这段话显然是在说,这家公司的成交价格的确和一般的程序化交易者有所不同,为什么会出现这种情况,以及为什么它们要这么做呢?沿着原文往下看:

今年6月初至7月初,证券期货市场大幅波动,伊世顿公司在交易沪深300、中证500、上证50等股指期货合约过程中,卖出开仓、买入开仓量在全市场中位居前列,该公司账户组平均下单速度达每0.03秒一笔,一秒内最多下单31笔,且成交价格与市场行情的偏离度显著高于其他程序化交易者。以6月26日的中证500主力合约为例,该公司账户组的卖开量占市场总卖出量30%以上的次数达400余次;以秒为单位计算,伊世顿账户组的卖开成交量在全市场中位列第一的次数为1200余次;其卖开成交价格与市场行情的偏离度为当日程序化交易者前5名平均值的2倍多。

从这段可以看出,这家公司的交易量非同一般,这一点的确非常可疑。再结合之前所说的“实现包括自买自卖(成交量达8110手、113亿元人民币)在内的大量交易”,我大概可以猜测,这个“成交价格与市场行情的偏离度显著高于其他程序化交易者”,实际上很可能是通过大量的自成交实现的。

我们知道,大家手里都只有500毫秒更新一次的市场数据,那么事实上500毫秒内的市场是什么情况,完全是一个黑盒,但这段时间内,市场上又的的确确在发生着一些事情。你在500毫秒内开出一张买单,理论上没有人会在下一次数据更新前看到这张单,所以当然不会存在“因为看到了一张买单而主动愿意成交”的对手盘,在这种情况下,这张单会不会被成交,完全是一个随机事件。这实际上就是目前国内大部分交易者所面临的困境:市场行情数据太不给力了!

但是,如果考虑到自成交的应用,这种情况事实上又是可以操作的。市场上的确不存在“因为看到了一张买单而主动愿意成交”的对手盘,但是还确实就有一个人可以做“因为知道一张买单的存在而主动愿意成交”的对手盘,那个人就是你自己!

这样想,整个逻辑就比较清晰了。该策略通过高频挂单,“该公司账户组平均下单速度达每0.03秒一笔,一秒内最多下单31笔”,再加上自成交,那么实际上就是通过大量自买自卖行为,人为的在500毫秒内制造出比官方“市场行情”更多的成交数据。

更多成交数据的价值在哪里?就在于有了具体的成交,你就可以知道市场的深度(Order Book Depth),比别人多知道这一点信息,自然就有办法设计更好的交易策略。

----------

最后来回答这个问题,这种交易行为“犯法”吗?我并不是法律从业者,不能判定“犯法”与否,但是可以肯定的是,自成交肯定是违反交易所规定的恶劣行为。通过自成交来制作盈利的交易策略,至少我们可以说是一种作弊行为。

再加上其他人所说的,通过绕过期货公司柜台系统取得直连交易所的通道,开多个交易账户规避自成交审查等,都是明白无误的违规行为。

----------

最后一点思考,在国内市场上,仅仅通过这一点技术作弊手段,竟然可以在短时间内创造如此的暴利,这到底说明了什么,值得大家深思。

如果没有更有力的证据证明伊士顿的“操纵市场”行为,那么这个暴利策略只能解读为国内的市场博弈程度确实太弱了,弱到两个老外进来做纯技术的高频交易都能翻天覆地。如果这就是事实,那我们是不是更应该重视自身技术水平的提高?量化、高频交易不同于主观类型的交易,一切都可以用数据和计算说话,如果我们的市场上有更优质的数据,更详细的交易记录披露,又何至于留下如此巨大的投机空间?

高精度交易数据,高速下单系统,这些在成熟市场上都是早就普及的技术,并不是什么神奇魔法(数据:如果有所有投资者的所有股票委托、交易、持股数据,都有哪些有意思的测算内容? - 袁浩瀚的回答,速度:高频交易软硬件是怎么架构的?)。无论从任何角度看,技术发展一定会带领市场发展到这个程度,就像以前人们出门只能靠腿,现在却有了飞机高铁一样。真正导致不公平的,恰恰是在技术成熟时通过政策限制不向普通人开放这些优质服务,那才会导致因为种种机缘获得这些服务的人取得压倒性的优势。

希望有一天我们的国内量化选手能不再只是在这收到种种限制的市场中挣扎求生,而是可以练出神功,成为国际市场上真正的高手。那时也不用再炒作这种“外资神秘黑科技在中国市场呼风唤雨”的新闻。我们也能在镜子里看到没有受过欺负的脸,不好么?

高频交易怎么获利高:高频交易都有哪些著名的算法?

高频交易的算法非常依赖于所处市场的具体交易细则和交易所的IT架构,所以想要一招吃遍天下肯定是不行的。但其实高频交易对应的数学比较简单,更多的是一个速度的比拼。

首先一个高频交易算法必须要对市场微结构有非常细致的认识。
交易所向所有的交易所成员发送的市场数据有很多类型,但大体上分成两类:
@董可人 介绍的冰山算法里所用的订单簿模型,属于价位订单簿(level-based order book),也就是说,你从市场订单里,可以看到每个价位总的订单量,但看不到具体有多少个订单。这样做的交易所有不少,其中最有名的是芝加哥商品交易所(CME)。

借用董哥一张图。

这样的市场数据里,你不知道每个价位上究竟有多少订单,只知道总体的订单量。

另外一种市场数据是显示订单的订单簿(order-based order book,实在不知道怎么翻译了)
这种市场数据里,每个交易成员都能看到每个价位上有多少订单,每个订单的大小是多少。
同时很重要的一点,通过配对交易所回执里的ID和市场数据里的ID,也能在市场数据里看到自己下的订单。最大的作用就是做成交预测:当你看到市场数据里自己的订单消失了,即使还没收到交易所的成交回执,你也知道这个订单成交了,并且可以第一时间干该干的事情。要知道,几十毫秒(甚至微秒)的差别就能决定一次交易的盈利。

大前提说完了。下面开始介绍具体的策略。

在08年之后,合法的高频交易其实大部分只是两类策略:
  • 做市:在单一品种上(比如个股)提供流动性,赚取买卖价差
  • 套利:在多个品种上寻找短期的定价偏离


------------------------------------------------------------------------------

没想到大家这么热情,两天时间就过百赞了。那我就继续更新了,哈哈。
评论里明显有同行,对交易所的数据协议研究很深,毕竟对于高频交易程序来说这是最重要的数据源。答主我也只是略懂一二,有不准确之处还请指教。

在这里我会给大家做一个基本的介绍,但想真正拿这些方法赚钱,那估计你会发现实操里的坑不要太多。这也是这一行竞争逐渐激烈,并且竞争演变成军备竞赛的原因。你在刘易斯的《闪电小子》这本书里看到的大部分已经不符合现实,但是其中『为了几微妙缩短延迟,铺设笔直的光纤』这种事情仍然在发生,而且现在连横跨大洋的微波网络都已经普及,FPGA也是业内公开的秘密,大家都在为了节约那几个微秒甚至纳秒不惜代价。

首先是做市。做市是个历史悠久的策略,其实在高频交易尚未出现,甚至在交易所还是这样的时候就已经出现了。


做市商的工作就是提供流动性:具体来说,做市商同时挂买单和卖单,赚取其中的差价。
为什么需要有做市商呢?因为有人想买,有人想卖,但是他们不一定同时出现,也不一定愿意等自然的对手方出现,所以他们愿意支付一定的钱和做市商做对手方,做市商就赚这么一点差价。

先来看最单纯的个股做市:
假设某股票现在的order book是这样的:

那么现在的价格是9.7/10.1。一个图森破的做市商(不考虑其他风险)会在尽可能靠里面的价位挂单:
于是最好的买价和最好的卖价都被这个做市商占领了。
这样如果有人想立刻买(下市价单,或者下限价单,限价在卖一),做市商的单子是第一个成交的,成交之后做市商就有了仓位。如果股价维持不变,迟早会有人想卖,于是做市商挂在买一的单子也会成交,平仓之后净赚1块钱,扣除手续费清算费各种费之后之后怎么也能剩个5毛吧。

没错,和那种一下子就豪掷千万的对冲基金不一样,做市商就是一小本生意,每次赚点小钱。
估计你也发现了,这里的大前提就是『如果股价在做市商持仓期间维持不变』,还有很多小前提(手续费够低,做市竞争不激烈,没庄家操纵股价)。

然而这很明显不是现实的情况。很多时候在你的第一个订单成交,有了仓位还没平仓的时候,市场就急转直下,朝着对你不利的方向走去,这时候大部分做市商会平仓止损,亏一点小钱。这样的做市策略最喜欢的平稳的市场,活跃但价格稳定(活跃怎么价格稳定呢?),最讨厌的就是一个大单一下子吃掉几个价位(甚至几十个价位),仓位全砸在手里了。一般市场消息发布的时候这种策略都会关掉或者调成保守,但有时候市场突发重大消息,或者外汇又出什么事情了,某个推特又大嘴了,导致价格异动,那十有八九是会亏的,而且赚一亏十。

做市商的盈利,大部分是来自于规模化,一个策略可以在几千个个股上跑,每支股票一天赚几百块,以及自动化的风控和止损策略,还有很重要的一点就是交易所提供的返佣和报价补贴(毕竟交易所也希望自己的品种流动性更好)。

衍生品的做市就是完全不同的逻辑了,因为仓位是可以被部分对冲或者完美对冲的,因此可以锁定利润,所以这就包括在我们接下来要介绍的『套利』策略。

套利,其实字典里已经给了完美的解释:
the simultaneous buying and selling of securities, currency, or commodities in different markets or in derivative forms in order to take advantage of differing prices for the same asset.
同时买卖高度相关的品种,并且从『理论上价格应该一样,但是现在市场上价格不一样』的品种里获利。一般来说,在两种品种之间套利,两种品种的价格遵循简单的线性关系,其理论价差可能来源于手续费/基差/利率等一些因素。当现实的价差偏离理论价差,你就可以买卖价差(同时买卖两种品种)建仓了。

这里也分两种情况:
  • 相关品种的套利 (Correlated Assets Arbitrage)
  • 可替代的品种的套利 (Fungible Assets Arbitrage)
相关品种套利:比如期货的不同交割月的合约之间的套利,上海金和伦敦金的套利,等等。但最重要的是,两种品种并不是同一个东西,并不能简单抵消彼此,所以其实本质上相当于量化里的统计套利,并不能保证盈利,可能会积累巨大的价差头寸。

可替代品种套利:比如个股和其存托凭证之间,股指期货大合约和小合约之间,ETF和其成分股/成分资产之间。这样的两个品种之间是可以相互转化的,比如存托凭证可以让发行的银行转化成普通股,不同交易所发行的股票可以转移股票位置(depot switch),ETF可以让发行机构申赎成其成分,或者按净值赎回现金,期货可以在『交割价交易』市场上以交割价买入卖出,等等。这样就可以在发现套利机会的时候就锁定利润,因为在两种品种上积累的头寸可以互相抵消。

越高频的策略,其本质上就越简单,就越需要低延迟的下单和市场数据,越需要巨量的IT投资,其盈利模式也更多的偏向规模化,这就是为什么高频交易公司总是赢家通吃,很多小公司最后做不下去就关了,或者是转向量化交易了。

期权做市则是另外一个市场了,因为期权的非线性特征和做市商主导的市场,对于速度的要求可能没有其他品种那么高,更多的需要数学知识和复杂策略等,同样的品种还有流动性很差的ETF(比如其成分不在公开市场上交易),和『在交易时间时,其成分不在交易时间』的衍生品,比如港股在美国的ETF。还有一些场外衍生品或者语音报价的OTC产品,其盈利模式又不一样了。

答主也并非这个领域的专家,请大家多多指教。

【观点|荐文】论高频交易的风险和防范——以伊士顿案为切入点

相关阅读

钢铁期货App