揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

2024-07-03 15:00:54 - 发鹏期权说

老做交易的朋友都遇到过,当打出一个比较大的市价单后,对手价会主动往后缩一截,这其实是做市商铺单逻辑上做的小动作。最近回看历史,发现了自己2015年受邀写了这么一篇原理很初级,但逻辑也算可借鉴的做市商方案,特发上来让兴趣朋友一观。

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

可以从动力煤历史成交量观察,交易所在2015年的做市商引入计划,的确让该品种的成交量在2016年开始逐步抬升。

一、做市方案前言

本案内容为郑州商品交易所特别邀请,专项针对旨在提高动力煤期货(TC)交易活性的做市商方案,故文中所有推导及示例均以动力煤期货(TC)数据为基础。因时间及篇幅所限,本文只就期限结构平滑法单一做市商策略进行动力煤期货(TC)尝试性做市探讨,方案实行前还需进一步改进与补充。

二、期限结构平滑做市策略简述

1.期限结构平滑做市策略理论阐述

期货作为金融衍生品,存在的意义在于其对远期价格独到的发现能力;故在不同供需结构背景下,期货近远期合约价格关系(即期限结构)往往呈现不同结构形态。从过往经验来看,在供需结构成空转多背景下,期货期限结构总呈远月升水形态;在供需结构多转空背景下,期货期限结构则总呈远月贴水形态;在供需结构多空不明背景下,期货期限结构则基本呈平水形态(忽略资金成本、仓储成本等额外因素)。

从市场有效性的假设出发,流动性高的期货合约价格因其巨量的交易活性更接近理论合理价格(至少价格认可度高),相反流动性低的合约价格往往因参与人数有限容易偏离合理价格(价格认可度有限)。所以,对于做市商来说,在为非活跃期货合约提供流动性之前,为该合约定价属第一要务。

综合前述两段内容可以得出,在不违反做市期货合约供需结构背景的前提下,做市商可以根据当前活跃期货合约价格对非活跃期货合约进行“合理”定价。期限结构平滑做市策略即以此为依据,利用现有多个活跃期货合约价格,建立该期货所有合约的期限结构曲线(如下图),进而为非活跃合约定价进行做市报价的策略。

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

对于郑州商品交易所动力煤期货(TC)合约,在其所有的1~12月合约中,始终存在1个活跃合约、1个中等活跃合约以及1个报价较连续次级活跃合约,且各相对活跃合约中间均存在3个不活跃合约。显然,依据前文所述可以较容易依据相对活跃合约建立一条动力煤期货(TC)期限结构曲线以对不活跃合约进行基准价定价。

在经过定价后,通过统计可发现非活跃合约与活跃合约价格之间存在如下软约束关系:

a.  K1

b.  升水期限结构下:

P(K2)≈(K3-K2)*P(K1)/(K3-K1)+(1-K3-K2)*P(K3)/(k3-k1)

c.  贴水期限结构下:

P(K2)≈(K3-K2)*P(K3)/(K3-K1)+(1-K3-K2)*P(K1)/(k3-k1)

式中,K1、K2、K3指期货合约对应月份(此处默认最小月份合约为1,其他月份类推),P(K1)、P(K2)、P(K3)指各月份期货合约价格。

由关系可发现,当K2与K1、K3的距离相等时,升水期限结构与贴水期限结构下三合约的关系不变,即基本上满足:

P(K2)≈P(K1)/2+P(K3)/2

 2.期限结构平滑做市策略组合报价方法简述

1).期限结构平滑做市策略组合报价方法

在动力煤期货(TC)各非活跃合约中,因交易所要求与可控性,本案选择对3、7、11三组与目前相对活跃时间距离较对称的非活跃合约进行做市。并利用前述合约价格关系,建立期限结构平滑组合报价,即以往我们较为熟悉的蝶式套利关系(做空差价组合:买入1倍左端活跃合约、卖出2倍中间非活跃合约、买入1倍右端活跃合约;做多差价组合:卖出1倍左端活跃合约,买入2倍中间非活跃合约、卖出1倍右端活跃合约)。

因活跃合约的价格因其流动性会不断更新,固可据此报出非活跃合约符合市场的即时合理价格;根据采集的活跃合约Bid价格,可以报出非活跃中间合约合理Ask价格;根据采集的活跃合约Ask价格,可以报出非活跃中间合约合理Bid价格。

2).期限结构平滑做市策略执行步骤简述

本节以利用动力煤期货2015年1月、5月合约为基准,对目前零交易量的动力煤2015年3月合约进行参考做市实际执行步骤做叙述。

步骤1:提取1月合约即时买一报价Pbid1、卖一报价Pask1;5月合约即时买一报价Pbid5、卖一报价Pask5;

步骤2:根据公式P(k2)≈P(k1)/2+P(k3)/2(详细解释如前文),由1月合约即时买一报价Pbid1、5月合约即时买一报价Pbid5计算出即时3月合约合理卖一报价Pask3;同理,根据Pask1、Pask5计算即时3月合约买一报价Pbid3;

步骤3:根据步骤2中得出的3月合约合理价格,发出2倍数量Pbid3以及Pask3限价单报价(2倍数量源于本方案期限结构做市基本组合中非活跃合约数量等于两个活跃合约数量之和),并等待成交;

步骤4:若在限价单未成交之前,1月合约或5月合约即时报价有变,则立即撤单对应限价单,并重新计算合理报价后重新发出限价单(如其他价格不变,Pbid1变化为Ptbid1,则立即撤下Pask3报单,在重新计算出Ptask3价格后再发出限价单);

步骤5:若限价单实现成交,则立即以对应方向对应报价发出基本组合中需补足的1月、5月持仓(如Pbid3成交需立即以Pask1、Pask5建仓1月与5月多仓),实现成交后返回步骤1重新循环;

步骤6:在有限价单成交,做市基本组合持仓条件下,相反方向做市限价单报价由之前的开新仓报价撤单转换为平仓报价方式,实现后回归步骤1重新循环。

特别备注:

a.因动力煤期货最小变动价位为0.2元,但在步骤2中,根据1月及5月合约即时价格计算出的3月报价可能存在不被0.2整除的可能,此时本文以忽略余数方法取最近整除报价;

b.在步骤5中,因做市基本组合含2倍数量非活跃合约,很有可能存在非活跃合约报价数量不完全成交的情况,此时需增加“处理插件”(如,在升水结构中若Pbid3部分成交,则先补足基本组合中5月合约多仓,并在下一笔Pbid3成交中先默认补齐1月多仓,由此递推)。因时间及精力所限,本文中未对该部分做详细处理,默认全部成交;

c.因考虑到充分提供非活跃合约流动性,故本方案未考虑对单边做市基本组合持仓数量做限制,但实际运行中,我们不得不考虑在极端单边情况下,做市资金承载能力,可通过拉长历史测试期寻找极端样本(后文会做小时间段测试),或在接受一定程度流动性断层条件下,对单边做市基本组合数量做限制;

d.本方案实际执行步骤中,亦未考虑做市基本组合持仓中期货合约流动性锐减以及交割问题,此问题的处理方法在后文交易所建议中会有提及。

三、动力煤期货3月合约做市拟合测试

1.动力煤期货3月拟合做市报价序列

本文选取2015年10月8日至2015年10月20日时间段内动力煤期货1月及5月Tick数据做样本进行拟合。因1月与5月合约活跃度异同,时间段内1月存在8万组以上Bid、Ask历史Tick价格对,5月合约只有约3万组Bid、Ask价格对;故在拟合第一步首先根据各价格对时间戳将5月合约与1月合约进行价格对齐,并在5月合约缺失价格对的时间序列中采取维持前报价不变以补足缺口的方法进一步对应。

对应完成后,根据期限结构软约束公式,我们很容易得到该时间段内,动力煤期货3月合约的合理Bid、Ask报价对序列,具体如下图:

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

由图可发现,拟合动力煤期货3月合约Bid、Ask价格对非常连续,经过对拟合Tick价格对的计算,该合约Bid、Ask报价平均差价仅为0.27,即不到最小变动价位的1.5倍,若能实现将大大提高3月合约的价格合理性并引导流动性介入。

2.动力煤期货3月拟合做市存货观察

本案做市测试中,忽略实际运行情况中可能存在做市报价不成交的情况,默认只要当前报价较前报价更优即代表当前限价报价已经成交(当前买一报价Bidt若小于前买一报价Bid0,有可能因Bid0被卖方主动成交,同理Askt大于Ask0有可能因Ask0被买方主动成交);虽然有失偏颇,但有利于观察极端做市存货积压情况。

按照每次报价均为1组做市基本组合报价、不排斥隔夜组合存货风险的条件下,在2015年10月8日至20日时间段内,本策略基本做市组合存货量变化如下(正值代表做多基本做市组合,负值代表做空基本做市组合):  

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

由图可见,在测试时间段内,按照测试条件,本做市方案做市基本组合存货基本维持在-15~50之间,即单边存货0~50;其中最大存货出现在2015年10月13日,为51组做多基本做市组合存货。

此外,通过叠加TC1503拟合Tick数据与做市基本组合存货数量图后(如下图)可发现,做市基本组合存货数量的积累与非回调(或极小回调)单边行情的延续时间高度相关。所以,从做市商的实际头寸管控角度出发,本策略首要管控当在对单边极度延续行情下存货数量的管控。

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

当前,我们仅测试区间内极端存货数量51来衡量,如前文所述,单一组合中存在2个活跃合约各1手、非活跃做市合约2手共4手;在不考虑套利组合保证金减收的情况下,动力煤期货合约200吨/手、520元/吨、5%交易所期货保证金条件下,该存货需要1,060,800元保证金。

3.动力煤期货3月拟合做市流动性供应与盈利能力观察

1).做市流动性供应与盈利能力观察

在按照前述条件的测试中,默认每次3月合约成交量均为2,此外测试中存在做市过程中对存货进行平仓的情况,本例盈利能力观察中,为了便于计算,默认采取先进后出的平仓顺序,在不考虑交易手续费与滑点的情况下,得到的做市策略流动性供应与盈利曲线如下:

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

显然,本做市方案流动性供应能力一流,仅报价单位基本组合便可提供成交量达12000手,具有非常明显的带动作用;但同时可以看到,因为动力煤期货3月合约基本为0的交易量基础,本方案单边面持续提供流动性是以损失活跃基准合约有利价格为成本进行的,故在不断提供流动性的同时,损失亦攀升,本案测试期间损失动力煤期货基准点数为629.8点,即125,960元。

 2).做市商流动性补偿方案推导

根据发达市场做市商制度经验,为市场提供流动性的做市商每笔做市合约的交易往往能够从交易所拿到1/4~1/2最小变动差价的流动性补偿,具体补偿比例根据做市合约实际情况拟定。对于本测试案例,我们在按照0.06点(对比动力煤期货最小变动价0.2,为3/10)的TC1503流动性补偿方案之下,整体做市策略的盈利曲线如下:

揭开做市商的秘密——老文分享之2015年动力煤期货做市方案

经过流动性补偿后,期限结构做市策略盈利能力相对稳定,截止测试期末最终盈利82.52个动力煤期货点,即16,540元。所以,按照前述条件仅从测试区间内观察,在最大存货保证金不超过本金1,500,000元计算,盈利率为1.1%,若每月按22个交易日计算,月盈利率2.69%。

四、期限结构做市策略测试结果思考

尽管从前述假设条件中,得到的本做市策略似乎有效应较大,但不可否认的是其中存在诸多假设,测试与现实存在异同可疑点如下:

a.测试中假设做市的成交量在一定时间内将远远大于实际运作后的做市成交量;

b.忽略交易手续费;

c.忽略交易滑点;

d.未考虑可能面临的合约活性大幅衰减以及交割情况;

e.做市合约部分成交,及后续处理方案的可变风险情况;

f.交易所流动性补偿比例。

毫无疑问,在仍有诸多不确定因素存在的情况下,我们很难说方案测试中月盈利2.69%可以覆盖所有风险,固或仍需对各可变因素进一步探讨。

在以上6个可变因素中,其中b因素(可以通过交易所做市商资格豁免)、d因素(可以通过交易所为做市商打通特定交割对冲通道)、f因素(可以通过交易所做市商特批)均可能通过政策实现规避。

其他因素则难以完全规避,其中a因素最难以把控,或只能通过交易所拟定的其他风险补偿方案补偿;c因素亦较难把控,但在交易所IT支持下大幅提高交易速度将解决大部分风险;e因素同样困难非常,或可通过交易所与做市商共享活跃多档行情订单簿为做市商增加风险敞口策略多样性实现部分解决。

此外,为了提高做市商参与热情,交易所亦可以考虑降低保证金比例或实行更优惠的双向大边保证金政策增加做市策略盈利能力。

五、交易所做市商政策提议及实现配套要求

在文中,我们已经以期限结构平滑做市策略为案例以及较充分讨论了郑州商品交易所动力煤期货做市业务的可行性与需配套的现实支持,总结如下:

a.交易所需对做市商豁免交易手续费;

b.交易所需为做市商打通特定交割对冲通道以防止做市组合存货大量压货;

c.交易所需对做市商做一定流动性补偿(动力煤期货经过测试需0.06点/手);

d.交易所需为做市商提供包括多档行情订单簿等优势数据,提高做市策略对冲流动能力;

e.交易所需放开对做市商做市报单的报价、成交及撤单数量限制;

f.交易所需为做市商提供具有优势的IT支持,具体如下:

a).极速行情:要求从交易所发布行情后用最小的延迟接收到行情,行情传输最好提供TCP以及UDP方式选择;

b).极速交易反馈:需要从下单到交易所反馈下单成功以及撤单到交易所反馈撤单成功的时间间隔尽可能小;

c).更大的交易接口容量:主要是针对期货公司会员交易系统的前置以及交易所前置单位时间内能够同时接纳的交易指令数量,越大越好;

d).托管主机服务:为满足极速行情及交易反馈,需要提供托管主机服务,托管主机与期货公司会员交易系统前置之间局域网连接,期货公司会员交易系统与交易所前置光纤或者局域网互联;

e).API提供:方便我们自己开发做市系统。如果能够提供类似于CTP的开发接口最好。

今日热搜