创建价差合约
查询合约
在创建价差合约前,用户可以通过【查询合约】功能,寻找可以组成价差的合约(不支持交易所套利合约):
在VN Trader菜单栏中点击【帮助】-> 【查询合约】按钮,弹出合约查询界面,如下图所示:
在界面中找到可用于组成价差交易的合约;
本文档以豆油期货的跨期套利来展示,即交易y2205.DCE(豆油期货22年5月到期合约)和y2209.DCE(豆油期货22年9月到期合约)。
构建价差合约
在价差交易的界面左侧,点击【价差创建】按钮,弹出创建价差界面,如下图所示:
价差交易模块支持灵活的价差计算公式(例如A/B、A-B*C等),同时允许引入不参与交易的定价腿,满足复杂境内外套利价差需要考虑汇率和税率等因素的需求。在创建价差合约时,需要配置相关参数,各参数要求如下:
价差名称
用户定义的价差合约名称;
价差名称不能重名;
主动腿代码
价差盘口价格满足条件时,先发出的那条腿的本地代码。
格式为vt_symbol(合约代码 + 交易所名称);
必须是下面的腿选项中的一项;
最小交易量
- 最小交易手数;
价格公式
价差合约的计算公式;
支持任何Python内置数学函数;
注意其中的变量只能是A、B、C、D、E(不需要都用);
【A、B、C、D、E】
包含构建价差合约的主动腿与被动腿,也可以引入不参与交易的定价腿,由合约代码、交易方向、交易乘数组成:
合约代码为公式中的变量所对应的合约本地代码(vt_symbol);
一般来说,价差交易原则上是主动腿完成交易后,立刻用被动腿进行对冲,故主动腿一般选择较为不活跃的合约,价格乘数和交易乘数均为正;被动腿一般选择较为活跃的合约,价格乘数和交易乘数均为负;
不用的变量留空即可;
设置好价差合约的参数后,点击下方的【创建价差】按钮,即可成功创建价差合约。
在豆油期货跨期套利示例中,其价格乘数和交易乘数均为1:1,即价差 = y2205 - y2209;买入1手价差等于买入1手y2205,同时卖出1手y2209完成对冲。
请注意,在多条腿并且期货合约规模不等时,构建价差合约会相对困难一些,如构建虚拟钢厂套利所用到的价差合约时,计算公式如下:
螺纹钢生产技艺是16吨铁矿石加上5吨焦炭练成10吨螺纹钢。
基于价格乘数的价差spread = 1* RB - 1.6*I - 0.5*O。
但是由于螺纹是10吨/手,铁矿石和焦炭都是100吨/手,所以他们交易乘数是1:10:10;
故基于最大公约数规则,其实际交易手数关系是每买入100手螺纹钢(1000吨),需要卖出16手铁矿石(1600吨)和5手焦炭(500吨)完成对冲。
监控价差合约
价差合约创建完毕,监控界面中的【日志】栏会输出“价差创建成功”;【价差】栏也会展示价差合约的实时行情,如下图所示:
在豆油期货价差交易示例中,【价差】组件的各字段含义如下所示:
买价
- y2205买一价 - y2209卖一价
买量
min(y2205买一量, y2209卖一量)
取最小值用于保证各合约能均能成交
卖价
- y2205卖一价 - y2209买一价
卖量
- min(y2205卖一量, y2209买一量)
移除价差合约
在价差交易的界面左侧,点击【移除价差】按钮,弹出移除价差界面,如下图所示:
选择好要移除的价差合约之后,点击【移除】按钮,即可成功移除价差合约。【日志】组件输出“价差移除成功”,如下图所示: