文章目录

  • 写在前面
  • SpreadTrading模块介绍
    • 创建价差
    • 价差策略
  • 总结和展望
写在前面

期待很久的vn.py 2.0.7版本上线已经有一段时间了,这次更新最大的变化就是增加了python3版本的SpreadTrading模块,这样就使得交易的方式不再只是单向交易,一些基于价差的策略如配对交易或者统计套利的策略的实现成为可能。因为我对价差交易方面很感兴趣,所以也有经常打听vn.py的SpreadTrading什么时候上线,后来也是听陈晓优大佬说过九月中下旬会上线,所以在这个模块上线后就打算对SpreadTrading模块进行整理了,因为时间的缘故所以一直拖到现在。vn.py的官方目前也有对SpreadingTrading进行了简单介绍,下面就以官方的教程为例进行对这个模块进行学习和使用。

SpreadTrading模块介绍

这次先不分析源码,还是以VN Station图像化界面的操作为例,进行SpreadTrading模块的使用。
首先还是需要启动VN Station,在VN Trader的启动栏中将SpreadTrading模块进行勾选,然后连接CTP,进入SpreadTrading的界面。
进行价差交易之前,需要进行两步操作,一是创建价差,也就是要进行编辑交易品种、交易数量、价格的乘数等信息;二是创建价差策略,也就是对上面创建的价差进行以某种策略进行交易。下面就是这两个部分:

创建价差

点击创建价差即可以进行价差的创建,下面的例子是以螺纹钢rb2001和rb2002为例进行创建价差,从而可以实现一个简单跨期套利。
需要注意的是:
1、主动腿以及其他腿的代码需要按照vn.py中规定的格式进行编辑。
2、主动腿指的是当价差满足条件时,率先发出的合约,主动腿需要在下面的腿1-5内。
3、价格乘数也就是构成价差公式的对应合约价格的系数,图中的价差即 spread = 1 × rb2001 - 1 × rb2002。
4、交易乘数也就是执行交易时的手数,正数意味着多头,负数意味着空头。

关于上面的“腿”的说法没有接触过价差套利的人可能会比较陌生,因为在做一些价差套利时,通常需要在相关的合约上进行两个方向的多空交易,此时就可以理解为一个人的两条腿,缺少了哪一条都无法正常行走,所以在价差交易中多空部分分别被称为腿(或者“边“)。有时候,套利的对象可能会有多个,如大豆、豆粕和豆油三者,这时候就会有多条腿,这也是vnpy在创建价差时设置了下面的腿1-5。

在创建了价差之后,界面就对刚刚创建的价差进行了更新:

价差策略

在创建价差后,就可以创建针对这些价差的策略了。通过点击添加策略,可以将vnpy自带的基础价差策略BasicSpreadStrategy进行添加。


在创建策略的时候,需要注意的是:
1、策略名称可以根据价差交易的对象进行设置,但是spread_name需要和上面创建的价差保持一致。
2、buy、sell、cover、short价格分别是对价差进行相应操作的触发价位。
3、max_pos指的是价差合约的最大持仓量。
4、payup是下单时的超价。
5、interval指的是下单到撤单可以等待的时间,单位是秒。

在创建策略后,界面就更新出类似CTA策略一样的启动栏,需要做的同样是初始化和启动的操作:

总结和展望

由于SpreadTrading模块只是刚刚上线,所以功能上并不是很完善,像现在自带的价差策略只是一个简单的到价撮合成交的策略,开平仓的价格也是需要自己手动去设置,并不能随着行情的改变而进行自适应的调整,所以,想必后期的价差策略也会在此方面进行改进吧。

另一方面,手动设置多空品种的价格乘数或者交易乘数也为交易者提供了一些便利,这样,我们就可以根据自己分析得到的一些规律,如协整系数或者回归系数等来设置相应的数值。

除此之外,对比与CTA策略,SpreadTrading模块还缺少对应的价差策略回测模块,所以这也将是后期更新的一部分。

总而言之,SpreadTrading模块的加入,为vnpy增色不少,后面也会继续对其源码进行分析,同时也希望vnpy后续增添更多亮点,为交易者提供更多便利。

【vn.py】SpreadTrading价差交易相关推荐

  1. vn.py开源量化交易程序开发框架

    http://www.vnpy.org/ vn.py 是基于 Python 的开源量化交易程序开发框架,起源于国内私募的自主量化交易系统,目前已经成长为一套全功能的交易程序开发框架. vn.py项目起 ...

  2. VN.PY量化框架创始人教你做量化交易

    特邀讲师:"用Python的交易员" 陈晓优 网名"用Python的交易员",伦敦卡斯商学院数理金融硕士,曾在数家大型量化私募基金担任量化交易员和期权投资经理. ...

  3. vn.py 2.0.2 发布,全功能交易程序开发框架

    开发四年只会写业务代码,分布式高并发都不会还做程序员?   vn.py 2.0.2 正式版发布了,vn.py 是基于 Python 的开源量化交易程序开发框架,起源于国内私募的自主量化交易系统,目前已 ...

  4. vn.py 2.0.1 发布,全功能交易程序开发框架

    百度智能云 云生态狂欢季 热门云产品1折起>>>   vn.py 2.0.1 正式版发布了,vn.py 是基于 Python 的开源量化交易程序开发框架,起源于国内私募的自主量化交易 ...

  5. python项目计划_2017年vn.py项目计划

    去年初写2016年项目计划的情景还历历在目,眨眼就一年过去了,vn.py项目在2016年的成长速度远远超出了我的预期.截止写这篇文章的2017年1月7日,vn.py项目在Github上收获了2244个 ...

  6. 【vn.py学习笔记(六)】vn.py constant源码阅读、委托生命周期

    [vn.py学习笔记(六)]vn.py constant源码阅读.委托生命周期 写在前面 1 constant 1.1 Direction 1.2 Offset 1.3 Status 1.4 Prod ...

  7. VNPY价差交易模块

    目录: 一.数据定义stBase.py 二.价差引擎stEngine.py 三.价差算法stAlgo.py 四.界面定义uiStWidget.py 五.实盘配置ST_setting.json 六.价差 ...

  8. 【vn.py】CTP首次登陆修改密码 之 接口调用法

    背景 最近一直在玩vn.py,上一篇文章vn.py开发环境搭建(windows)介绍了如何搭建二次开发环境,解决了一些搭建环境过程中遇到的坑.那么接下来这篇文章将解决运行期间的第一个问题. 开始vn. ...

  9. 【vn.py】期货穿透式CTP API接入

    文章目录 写在前面 一.申请穿透式接入 二.填表提交AppID 三.拿到AuthCode 四.仿真测试 五.期货公司校验 六.实盘接入 其他 REF 写在前面 由于6月14日当天,所有期货公司的柜台系 ...

  10. 【vn.py】源码解析之双均线(Double Moving Average)策略以及策略底层实现

    文章目录 双均线策略(Double MA) DoubeMA源码分析 1.策略类初始化 2.策略初始化 3.策略启动 4.接收Tick数据 5.处理Bar数据 6.订单以及交易的回调 7.策略结束 流程 ...

最新文章

  1. 收藏 | 服务器和存储技术知识
  2. R语言为dataframe添加新的数据列(add new columns):使用R原生方法、data.table、dplyr等方案
  3. 哪种脚本语言最适合你!
  4. goaccess-nginx日志分析工具简介
  5. Android项目的目录结构
  6. 何樱c语言,C语言程序设计-电子教案-连卫民(442页)-原创力文档
  7. oracle诊断,Oracle 诊断事件列表
  8. 全球最大的LoRaWAN智能路灯项目刚刚启动
  9. 有用的Copy-On-write,写时复制
  10. logstash的output插件
  11. 个人量化策略整理_较好
  12. eclipse-阶段五- 在[vo.BookMessageData]类型bean中找不到任何有关属性[Total]的信息
  13. 2022:中国存储的生死时速
  14. 【极限精简888M,老机专用】星岚技术 Win7 x64 深度精简版 V2020.10
  15. html5 省份热点图,javascript html5 canvas实现可拖动省份的中国地图
  16. 《现代汉语》北大公开课
  17. 白杨SEO:必应搜索引擎的特点,必应SEO优化怎么做?
  18. intouch报表数据的获取
  19. php搭建markdown云笔记_Typora+坚果云:支持markdown的云笔记搭建
  20. IT行业技术知识分享说明

热门文章

  1. Https Tomcat CSR生成 以及相关操作
  2. 机器人心灵感应:允许人类远程操作和训练机器人手
  3. errors potentially fixable with the `--fix` option报错的解决
  4. clob informix java_informix如何插入clob
  5. 《刘擎西方现代思想讲义》读书笔记
  6. 程序员跳槽时,如何正确做好职业规划?
  7. 白领失眠危害大 如何拯救上班族?
  8. 详解函数的三种传递方式
  9. 【网络安全】信息收集 CDN绕过方法
  10. .net接入微信二维码支付(模式二)