拆单式交易方法及装置与流程

文档序号:15560038发布日期:2018-09-29 02:02阅读:686来源:国知局

本发明实施例涉及现货交易技术领域,具体而言,涉及一种拆单式交易方法及装置。



背景技术:

vwap(volumeweightedaverageprice,成交量加权平均价格)算法是指在指定的时间间隔内,综合考虑市场交易的多方面信息,以完成交易和降低交易成本为目的,提供一个贴近市场按成交量加权均价的拆单式交易过程。现有的vwap算法主要以历史成交量为拆单参考,并加入实时行情的辅助信息,一定程度上降低了交易成本,但由于参照的数据过于简单和片面,拆单过程有迹可循,并没有达到最大化降低交易成本的目的。



技术实现要素:

本发明实施例的目的在于提供一种拆单式交易方法及装置,用以实现按时完成交易且最大化降低交易成本的目的。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种拆单式交易方法,所述方法包括:获取历史量化数据;获取交易剩余时间,依据所述交易剩余时间和所述历史量化数据,计算子单的参考发单间隔;基于母单生命周期的vwap量化参数模型,依据所述参考发单间隔计算出发单量;获取当前交易的实际执行速度,将所述实际执行速度与所述vwap量化参数模型进行对比,计算出当前子单的发单价格。

第二方面,本发明实施例还提供了一种拆单式交易装置,所述装置包括数据获取模块、发单间隔计算模块、发单量计算模块及发单价格计算模块。其中,数据获取模块用于获取历史量化数据;发单间隔计算模块用于获取交易剩余时间,依据所述交易剩余时间和所述历史量化数据,计算子单的参考发单间隔;发单量计算模块用于基于母单生命周期的vwap量化参数模型,依据所述发单间隔计算出发单量;发单价格计算模块用于获取当前交易的实际执行速度,将所述实际执行速度与所述vwap量化参数模型进行对比,计算出当前子单的发单价格。

相对现有技术,本发明实施例提供的一种拆单式交易方法及装置,首先以历史量化数据和交易剩余时间为基础,计算子单的参考发单间隔;然后结合参考发单间隔和母单生命周期的vwap量化参数模型,计算出发单量;再将当前交易的实际执行速度与vwap量化参数模型进行对比,计算出当前子单的发单价格。与现有技术相比,本发明实施例以历史量化数据和交易剩余时间为基础,以当前交易的实际执行速度和母单生命周期的vwap量化参数模型为依据,拆单过程可以根据市场实际情况进行调整,从而实现按时完成交易且最大化降低交易成本的目的。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例提供的电子设备的方框示意图。

图2示出了本发明实施例提供的拆单式交易方法流程图。

图3示出了本发明实施例提供的基于母单生命周期的vwap量化参数模型示意图。

图4示出了本发明实施例提供的拆单式交易装置的方框示意图。

图标:100-电子设备;101-存储器;102-存储控制器;103-处理器;200-拆单式交易装置;201-数据获取模块;202-发单间隔计算模块;203-发单量计算模块;204-发单价格计算模块;205-检测模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参照图1,图1示出了本发明实施例提供的电子设备100的方框示意图。电子设备100可以是,但不限于商业银行工作人员的台式机、笔记本电脑、智能手机、平板电脑等等。所述电子设备100包括拆单式交易装置200、存储器101、存储控制器102及处理器103。

所述存储器101、存储控制器102及处理器103各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述拆单式交易装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述电子设备100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器103用于执行存储器101中存储的可执行模块,例如所述拆单式交易装置200包括的软件功能模块或计算机程序。

其中,存储器101可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器101用于存储程序,所述处理器103在接收到执行指令后,执行所述程序。

处理器103可以是一种集成电路芯片,具有信号处理能力。上述的处理器103可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)、语音处理器以及视频处理器等;还可以是数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器103也可以是任何常规的处理器等。

第一实施例

请参照图2,图2示出了本发明实施例提供的拆单式交易方法流程图。拆单式交易方法包括以下步骤:

步骤s101,获取历史量化数据。

在本发明实施例中,历史量化数据可以是过去预设数目个(例如,24个)交易日的历史成交行情数据,按照预设时间间隔(例如,5分钟)统计出了价格波动平均值、盘口交易成本平均值、己方一档与对方一档的平均比值等等。

步骤s102,获取交易剩余时间,依据交易剩余时间和历史量化数据,计算子单的参考发单间隔。

在本发明实施例中,获取历史量化数据之后,基于交易剩余时间和历史量化数据,计算出子单的参考发单间隔、发单个数、和理想的发单数量。这里可以使用历史量化数据中的历史成交均量的大小和当前单子的大小,并依据计算出来的结果进行一定的浮动控制。

步骤s103,基于母单生命周期的vwap量化参数模型,依据发单间隔计算出发单量。

在本发明实施例中,母单生命周期可以是从母单开始到结束的时间阶段,基于母单生命周期的vwap量化参数模型如图3所示,vwap量化参数模型包括upperband、targetband以及lowerband模型,对应某个时间点的upperband、targetband、lowerband指的是从母单生命周期开始时间到该时间点对应的历史成交量和母单整个生命周期的历史成交量的比值。

在本发明实施例中,基于母单生命周期的vwap量化参数模型,依据发单间隔计算出发单量的方法可以包括:

首先,基于母单生命周期的vwap量化参数模型,依据参考发单间隔,获取子单数量的目标数值、上限数值和下限数值。基于母单生命周期的vwap量化参数模型根据步骤s102计算出的参考发单间隔,结合当前时间计算出前一次发单时间和下一次发单时间,并从历史量化数据中获取当前时间、前一次发单时间、下一次发单时间这三个时间的band值,分别记录为子单数量的目标数值、上限数值和下限数值。

然后,依据子单总量及当前发出的子单量,计算出母单的当前发单进度。基于母单生命周期的vwap量化参数模型中,targetband为历史量化数据中最接近市场发单进度的曲线,实际母单的当前发单进度可以根据公式进行计算,其中,sendrate为母单的当前发单进度,sendqty为当前发出的子单量,totalqty为需发送的子单总量。

最后,根据当前发单进度、以及子单数量的目标数值、上限数值和下限数值,计算出发单量。由于母单的当前发单进度sendrate是基于当天实时行情进行计算得到的,子单数量的目标数值targetband是基于历史量化数据计算的,因此为了使得量比计算更加符合当天的市场行情,也为了进一步提升发单量的随机性,需要对子单数量的目标数值、上限数值和下限数值进行修正,修正的方法主要有:

1、正常情况下利用量化因子对子单数量的目标数值、上限数值和下限数值进行调节,可以利用公式(*band)=(*band)*α+β实现,其中,*band为子单数量的目标数值、上限数值和下限数值,α和β为量化因子,可以根据实际交易情况灵活设置,在此不作限定。

2、母单的当前发单进度sendrate过快的情况下,对子单数量的上限数值upperband和下限数值lowerband进行变窄操作,可以利用以下公式:

upperband=targetband+(upperband-targetband)*upperbandadjustbyapv

lowerband=targetband+(lowerband-targetband)*lowerbandadjustbyapv

其中,upperbandadjustbyapv和lowerbandadjustbyapv均为变窄因子,可以根据实际交易情况灵活设置,在此不作限定。

3、针对不同的交易风格,对子单数量的上限数值upperband和下限数值lowerband进行调节,交易风格可以包括passive、normal、aggressive等等,可以利用以下公式进行调节:

upperband=targetband+(upperband-targetband)*upperbandscalefactor

lowerband=targetband+(lowerband-targetband)*lowerbandscalefactor

其中,upperbandscalefactor和lowerbandscalefactor均为调节因子,可以根据实际交易情况灵活设置,在此不作限定。

在本发明实施例中,利用母单的当前发单进度sendrate和子单数量的目标数值、上限数值和下限数值*band计算应发量的百分比时有以下几种情况:

1、若sendrate>upperband,则不发单以控制发单进度;

2、若sendrate>targetband,则尽可能多挂单,此时分为两种情况进行考虑:若公式sendrate>targetband+(upperband-targetband)*upperbandfactor成立,则不发单,若不成立则发单比例为percenttosend=upperband-sendreate,市场允许的情况下,将发单比例按一定比例去追赶upperband曲线,这样会进一步提升交易过程中挂单成交的数据,也就进一步降低了整体交易成本。

3、若sendrate<targetband,则需要加快交易的执行进度,则发单比例为percenttosend=upperband-sendreate。

在本发明实施例中,计算出发单比例进而计算出发单量之后,需要再次对发单量进行多方面的处理调整,主要有以下几个方面:

1、判断发单量是否超过了单笔最大发单量,若是,则将发单量改为最大发单量;

2、判断发单量与当前市场量的比值是否超过了最大市场占比,若是,则将发单量改为比值为最大市场占比对应的发单量;

3、根据盘口厚度判断发单量是否超过预设几档量之和的最大百分比限制,若是,则调节发单量以免打穿对方多个档位;

4、判断发单量是否小于最小发单量,若是,则直接拒绝最终的发单。

步骤s104,获取当前交易的实际执行速度,将实际执行速度与vwap量化参数模型进行对比,计算出当前子单的发单价格。

在本发明实施例中,计算当前子单的发单价格时,同样基于母单生命周期的vwap量化参数模型,同时引入当前标的盘口成本曲线和标的价格波动,并在计算时考虑当前标的波动性的情况,当前标的可以是想买的股票。

在本发明实施例中,首先将发单价格基本类型分为neartouch、mid、best,分别为己方一档价格、盘口平均值有利己方取值、对方一档价格。同时,提供了基于这几种类型之上的offset值,用于针对当前情况,在上述基本类型的基础上进行offset*ticksize或者offset*spread。这里参考执行时间周期,将价格的生命周期量化为0-2995,并在期间增加多个中间节点,每个中间节点对应不同的价格基本类型和offset,而且值越大,对应量化出的价格越激进,后续将根据当前时间交易的发单价格激进程度所在的中间节点范围来计算当前子单发单价格。具体来说,计算当前子单的发单价格的方法可以包括:

首先,依据实际执行进度和母单生命周期的vwap量化参数模型,计算出当前子单的发单价格激进程度,具体从以下几个方面进行计算:

1、若实际执行进度满足第一预设条件,则发单价格激进程度为0,其中,第一预设条件为实际执行进度大于当前目标数值,即execrate>targetband,其中,execrate为实际执行进度。

2、若实际执行进度满足第二预设条件(targetband-execrate)>(targetband-lowerband)*lowerbandfactor,则发单价格激进程度为1,其中,targetband为当前目标数值,execrate为实际执行进度,lowerband为当前下限数值,lowerbandfactor为预设调节量化系数,不同交易风格的调节量化系数不同,例如,在aggressive风格下lowerbandfactor为0.0,即当执行进度小于目标进度时则进行打单操作,此适用于激进的交易操作者。

3、若实际执行进度均不满足第一预设条件和第二预设条件,则依据公式orderage=(targetband-execrate)/(targetband-lowerband)*lowerbandfactor计算发单价格激进程度。

然后,依据当前标的的盘口成本曲线和标的价格波动,对发单价格激进程度进行数值调整,确定出当前子单的发单价格,具体过程包括:

第一、依据当前标的的盘口成本曲线,确定当前实时行情的目标盘口成本、上限盘口成本和下限盘口成本,可以利用公式spread*band=histavgspread+histspreadsd*spreadweightfororderageadjust来计算,其中,spread*band为当前实时行情的目标盘口成本、上限盘口成本和下限盘口成本,histavgspread为历史量化数据中的历史平均盘口价差,histspreadsd为历史平均盘口价差的方差,spreadweightfororderageadjust为量化比例。

第二、根据目标盘口成本、上限盘口成本和下限盘口成本,对发单价格激进程度进行数值调整。目标盘口成本为当前实时行情的盘口成本,若目标盘口成本大于上限盘口成本,即spread>spreadupperband,则依据公式orderage=orderage*orderagedownweightbyspread对发单价格激进程度进行数值调整,其中,orderage为发单价格激进程度,orderagedownweightbyspread为第一量化调整参数;若目标盘口成本小于下限盘口成本,即则依据公式orderage=orderage*orderageupweightbyspread对所述发单价格激进程度进行数值调整,其中,orderage为发单价格激进程度,orderageupweightbyspread为第二量化调整参数。

第三、利用公式计算出标的价格波动,其中,realvolatility为标的价格波动,askprice为对方盘口价格,avgexecprice为当前母单的平均执行价格。

第四、依据标的价格波动和历史统计波动,对发单价格激进程度进行数值调整。若标的价格波动大于历史统计波动,即realvolatility>histvolatility,则依据公式orderage=orderage*orderagedownweightbyprice对所述发单价格激进程度进行数值调整,其中,orderage为发单价格激进程度,orderagedownweightbyprice为第三量化调整参数,这里以买方为例,该值用于去降低发单价格激进程度,减小计算的发单价格,进一步提高挂单的可能性和挂单成交的几率;若标的价格波动小于历史统计波动,即realvolatility<histvolatility,则依据公式orderage=orderage*orderageupweightbyprice对发单价格激进程度进行数值调整,其中,orderageupweightbyprice为第四量化调整参数,这里同样以买方为例,该值用于去提高发单价格激进程度,增加计算的发单价格,进一步提高该单发出去的成交几率。

本发明实施例中还需要对尾盘时间进行特殊处理,尾盘指的是接近该交易结束时间的时间段,同时需要结合当前交易的完成情况和有没有零股等进行特殊处理,例如,在尾盘时间则不再考虑盘口厚度情况,不再进行最小发单间隔的控制,不再进行挂单操作直接进行打单等,当前如果有零股则随最后一笔发单全部发出。

步骤s105,根据监管条件,对子单发出前的风控指标进行检测。

在本发明实施例中,还需要根据监管条件完成子单发出前的风控相关指标的检测,这里的检测主要是根据监管条件,针对当前撤单率是否符合要求、发单量是否符合要求、价格是否符合要求等,具体来说有以下几点:

1、当前撤销子单的个数和总体撤单率是否满足要求;

2、如是金额单,则判断价格是否超限的控制;

3、单子价格需要满足涨跌停价发单的控制,如在涨跌停价格发单需要满足要求;

4、是否满足用户发单成交率的控制,特别是挂单后出现了更加优异的价格时进行改单时需要充分考虑该控制;

5、检查当前打单子单是否有多笔未成交,用于检测子单是否可以有效发出;

6、增加最小子单发单间隔控制;

7、判断当前发单是否存在相反方向的母单等。

在本发明实施例中,执行完上述步骤之后,则完成了拆单,将拆除的子单发到上游交易系统,并完成与外部的各种信息交互。

本发明实施例提供的拆单式交易方法,以用户输入的交易起始时间、结束时间、最大市场占比、交易风格选择、限价有无等参数为基础,以历史量化数据统计的波动性、盘口成本比值、分时成交量为依据,以按时完成交易和最大化降低交易成本为目的,结合静态数据和实时行情信息,提供了一个最大限度贴近市场按成交量加权均价的拆单式交易算法,可以按时完成交易且最大化降低交易成本。

第二实施例

请参照图4,图4示出了本发明实施例提供的拆单式交易装置200的方框示意图。拆单式交易装置200包括数据获取模块201、发单间隔计算模块202、发单量计算模块203、发单价格计算模块204及检测模块205。

数据获取模块201,用于获取历史量化数据。

发单间隔计算模块202,用于获取交易剩余时间,依据交易剩余时间和历史量化数据,计算子单的参考发单间隔。

发单量计算模块203,用于基于母单生命周期的vwap量化参数模型,依据发单间隔计算出发单量。

发单价格计算模块204,用于获取当前交易的实际执行速度,将实际执行速度与vwap量化参数模型进行对比,计算出当前子单的发单价格。

检测模块205,用于根据监管条件,对子单发出前的风控指标进行检测。

综上所述,本发明实施例提供的一种拆单式交易方法及装置,所述方法包括:获取历史量化数据;获取交易剩余时间,依据交易剩余时间和历史量化数据,计算子单的参考发单间隔;基于母单生命周期的vwap量化参数模型,依据参考发单间隔计算出发单量;获取当前交易的实际执行速度,将实际执行速度与vwap量化参数模型进行对比,计算出当前子单的发单价格。与现有技术相比,本发明实施例以历史量化数据和交易剩余时间为基础,以当前交易的实际执行速度和母单生命周期的vwap量化参数模型为依据,拆单过程可以根据市场实际情况进行调整,从而实现按时完成交易且最大化降低交易成本的目的。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1