那么本文就从实践出发,带领你从0基础进入商品期货程序化交易的大门。
交易所、期货公司
我们先来说说什么是商品期货。商品期货交易简单说就是大宗商品入库注册形成仓单,然后在商品期货交易所挂牌交易,交易的是标准化的合约。一手合约对应了一定数量的实物,例如一手rb螺纹钢合约对应10吨螺纹钢。
交易所主要有: - 上期所:贵金属等 - 大商所:农产品等 - 郑商所:化工等 - 中金所:金融衍生品等
交互、报单过程
首先,要在交易所交易这些商品期货合约,你需要一个账户,所以便有了期货公司。你在期货公司开设账户,入金交易。不论是手动交易,例如使用一些软件(文华财经等),向期货公司打电话报单(现在很少了),还是使用一些程序化交易软件发送请求到期货公司前置机去交易,下的交易单都会由期货公司发送到交易所去。这个过程需要了解。
用户下单(软件、策略程序等)->期货公司(前置机服务器)->交易所(系统)
协议
即使是手动交易,也要借助于软件。那么这些软件或者我们写的交易策略程序是如何和期货公司前置机通信的呢?通常用这两种:CTP协议,易盛协议。在某个期货公司开户后,通常是默认开通CTP协议的,CTP协议也是使用的最多的。
期货公司
期货公司国内有很多,根据大小规模分级别,通常在A类期货公司开户,大的期货公司设备投入之类的比较多一些,更加易用、稳定。推荐使用宏源期货,A类期货公司,手续费可以优惠至交易所标准加1分钱。期货公司通常在交易所手续费、保证金基础上增加一部分手续费、保证金,每家期货公司各不相同。
看穿式认证
行业要求,期货公司目前需要看穿式认证过的软件程序才给接入前置机。目前FMZ上在配置期货公司账户信息时,输入期货公司名称时,可以输入“看穿式”来筛选出目前已经看穿式认证过的期货公司。
合约
以上提到的交易所对于合约代码定义并不是完全统一定义的。我们以FMZ量化交易平台上对于合约代码的命名标准为例,在API文档上可以查看具体命名规则。
实际使用时配置交易所的问题
首先我们来学习如何在FMZ上配置一个商品期货交易所对象(简单说就是配置一个商品期货账号到FMZ上,用于让策略自动化操作这个账户从而交易)。如果资金账号、密码设置错误了,在使用时会发生报错。如果使用的期货公司是FMZ没有支持看穿式认证的期货公司,也会无法通过期货公司前置机认证,导致报错。如果错误登录次数过多,例如用错误密码一直尝试登录,期货公司系统会禁止登录。
实践一下
可以配置一下自己的期货公司账户到FMZ平台,然后使用本篇中展示所有合约品种的策略代码,运行起来一个实盘。配置完账户后,在FMZ控制中心页面,点击策略库,跳转到策略库页面,再点击新建策略按钮,跳转至新建策略页面。然后到控制中心页面,点击实盘,跳转到实盘页面,再点击创建实盘按钮,跳转到实盘创建页面。
一个实盘策略就创建好了,这个策略会以表格形式显示所有的期货交易品种。我们在实盘页面添加的账户对应的就是代码里的交易所对象。