首页 > 编程语言 >005 - 订单执行算法

005 - 订单执行算法

时间:2023-02-21 21:55:40浏览次数:40  
标签:交易者 进取 订单 算法 005 执行 卖出价

005 - 订单执行算法

现在量化交易的流程和以前人为执行交易的年代并没有什么显著不同。一些交易者喜欢主动地参与执行自己的订单,而另一些则把执行订单的工作外包给经纪商去做。一些公司会把执行订单外包给提供订单执行服务的第三方公司,第三方公司会站在交易者的立场上与经纪商交涉。

现在,还有些公司继续雇用人力进行人工交易,但大部分量化交易公司通过算法来执行订单。正如上文所提及的,有些公司具有自己研发的订单执行算法,另一些公司则使用经纪商或其他服务供应商所提供的算法。

总体来说,执行算法的主要目的以及绝大部分执行方法的主要功能就是新建和消除头寸时最小化交易成本。

订单执行算法的主要目的是,以尽可能低的价格,尽可能完整地完成想要交易的订单。每一个目标都是同等重要和有趣的。由于最优投资组合是通过投资组合构建模型筛选出来的,如果交易不能被完全执行,相当于持有一个和计划完全不同的投资组合,因此完整性很重要。

市场冲击和滑点的一个驱动力被称为印迹(footprint),是指可探测到的市场参与者的行为模式。

第一个概念是中间市场价格(mid-market),反映的是对某一产品最佳买入价和最佳卖出价的均值(根据定义是指这两个指标的平均数)。这是判断交易价格是否公平最为标准的方法。

第二个术语是交易量加权平均价格(volume-weighted average price,VWAP)。VWAP是最为标准的基准指标,用以衡量(一个或几个交易日中)进行多笔交易时执行算法的质量。

订单执行算法主要从以下几个方面进行考虑:是否要采用进取订单或被动订单;采用何种类型的订单;如何决定最佳订单规模以及将订单发送到何处。

进取订单和被动订单

执行订单有两种基本方法:进取型和被动型。

进取订单(大多数市场订单是进取型的)投放进入市场,一般无附加条件。当执行订单时(在合理范围内,只要订单簿上存在买入或卖出订单,就可以和对应方交易),进取订单可以被拆分也可以整体成交,价格则是执行订单时最优惠的市场价格。

相反地,被动订单(一种限价订单)允许交易者控制其意愿进行交易的最坏价格,但交易者必须承担这样的后果:他提交的订单可能根本不会被执行或只有一部分会被执行。

在绝大部分交易所,如果两个交易者报价相同,明订单交易者比暗订单交易者的优先级要高。

进取或被动代表了交易者希望进行交易的急切程度。市价订单都是进取订单,因为交易者告知市场希望其订单立刻被撮合成功,成交价格就是当前的市场价格。当市价订单为买入订单时,至少要支付当时的卖出价;当市价订单为卖单时,成交价格至多为当前的最高买入价。如果订单规模超过当前的买入价(卖出价)所能提供的量,交易会以多个买入价或卖出价依次执行。如果交易者确实想立即交易,付出这样的交易成本是值得的。

动量型的阿尔法策略会和进取型的执行策略配对使用,因为如果不使用进取型策略,市场形势可能很快就会发生变化。而均值回复策略倾向于使用更加被动的执行策略,因为该策略的风险在于当前的市场趋势仍将继续,采用被动策略至少可以得到更好的执行价格,从而减缓逆势而为的下行风险。

一个常见的折中做法是将限价订单的价格设定在介于最佳买入价和最佳卖出价之间的某个价位(只有最佳买入价和卖出价之间的价差大于最小报价单位时,该方法才具有可行性)。这样,交易者的订单可以跳到等待执行的订单序列的最前面。

其他订单类型

暗订单(hidden orders)是指以牺牲与相同价位的明订单的优先权为代价,让市场其他参与者看不到自身订单信息的交易方式。暗订单的主要目的是,向其他市场参与者隐藏交易者的交易意图同时仍可以进行交易。

发出暗订单并不会向市场提供任何信息,有助于降低市场对不均衡性的感知。但同时,暗订单也降低了订单在等待序列中的优先权,导致被执行的概率降低。

此外,还有另外一些种类的市场和限价订单,如收盘市价订单(market-on-close orders)、停止限价订单(stop-limit orders)等。收盘市价订单是通知经纪商在交易日的收盘竞价阶段发布的市价订单。停止限价订单要求经纪人必须严格按照订单价格成交或在更好价格水平上成交,否则就要等到订单价格或更好价格重新出现时再执行。

在订单执行过程中,宽客必须决定在各种情况下所使用的订单类型。策略的执行强度越高,宽客对于当前订单类型以及各个交易所规则运作情况的了解程度显得越重要。

大订单和小订单

与小订单相比,大订单的交易成本会不成比例地快速上涨,因为随着流动性需求的增加,流动性的供给价格会越来越高。

但一般来说,人们普遍认为分散出单是降低交易成本的有效途径,这也是执行算法极为常见的特征。拆分后的订单规模取决于根据交易成本模型估计出的所关注的金融产品各种规模订单的交易成本。每个订单规模的大小取决于对订单进取程度的判断。此外,具有较强吸引力的订单执行起来也会更快一些。

标签:交易者,进取,订单,算法,005,执行,卖出价
From: https://www.cnblogs.com/nomornings/p/17142609.html

相关文章

  • Jwt 算法的封装
    详细原理可参考以下文章:http://www.cnblogs.com/ldybyz/p/6943827.htmlhttp://www.jianshu.com/p/576dbf44b2aehttp://www.jianshu.com/p/180a870a308apublicclas......
  • 基于EM算法的参数辨识和分类识别算法matlab仿真
    1.算法描述EM(Expectation-Maximum)算法也称期望最大化算法,曾入选“数据挖掘十大算法”中,可见EM算法在机器学习、数据挖掘中的影响力。EM算法是最常见的隐变量估计方法,在机器......
  • 基于matlab的AES加解密算法仿真
    1.算法描述AES算法在对明文加密的时候,并不是把整个明文一股脑的加密成一整段密文,而是把明文拆分成一个个独立的明文块,每一个明文块长度128bit。这些明文块经过AES加密器复......
  • 代码随想录算法训练营Day21 二叉树
    代码随想录算法训练营代码随想录算法训练营Day21二叉树|530.二叉搜索树的最小绝对差501.二叉搜索树中的众数236.二叉树的最近公共祖先530.二叉搜索树的最小绝对差......
  • 基于matlab的AES加解密算法仿真
    1.算法描述        AES算法在对明文加密的时候,并不是把整个明文一股脑的加密成一整段密文,而是把明文拆分成一个个独立的明文块,每一个明文块长度128bit。这些明文......
  • 基于EM算法的参数辨识和分类识别算法matlab仿真
    1.算法描述       EM(Expectation-Maximum)算法也称期望最大化算法,曾入选“数据挖掘十大算法”中,可见EM算法在机器学习、数据挖掘中的影响力。EM算法是最常见的隐变......
  • 【算法训练营day53】LeetCode1143. 最长公共子序列 LeetCode1035. 不相交的线 LeetCod
    LeetCode1143.最长公共子序列题目链接:1143.最长公共子序列独上高楼,望尽天涯路和之前那道题思路又不太一样了,第一次接触还是挺难想出来的。慕然回首,灯火阑珊处首先是......
  • 代码随想录算法训练营第十六天 lc104.二叉树的最大深度 | lc111.二叉树的最小深度 | l
    lc104二叉树的最大深度首先需要知道深度与高度的区别,对于一个二叉树中的节点深度:根节点到该节点的距离高度:该节点到最底层叶节点的距离而求最大深度无异于求根节点......
  • Kroger EDI 855 采购订单确认报文详解
    本文着重讲述KrogerEDI项目中,供应商发给Kroger的X12855EDI规范报文(采购订单确认)解读。在此前的文章如何读懂X12报文中,我们对X12已经做了详细的介绍,大家可以以此为基础......
  • 瞎聊机器学习——K-均值聚类(K-means)算法
    本文中我们将会聊到一种常用的无监督学习算法——K-means。1、K-means算法的原理K-means算法是一种迭代型的聚类算法,在算法中我们首先要随机确定K个初始点作为质心,然后去计......