贵金属逻辑
1 基本定义
嗯,就和股票期货一样,黄金准确的来说应该是贵金属交易,有专门的市场以及代码。
1.1 合约代码
贵金属合约代码一共有13个。
根据交易方式不同, 交易所挂盘合约分为现货实盘合约(又称现货即期合约)、现货即期合约、现货延期交收合约及其他经中国人民银行批准的合约。
现货即期合约: Au50g、 Au100g、 Au99.99、 Au99.95、 Au99.5、Pt99.95、iAu100g、iAu99.99、iAu99.5;
现货即期合约包括:Ag99.9 和 Ag99.99;
现货延期合约:Au(T+D) 、Au(T+N1) 、Au(T+N2) 、mAu(T+D) 、Ag(T+D) 。
其中:Pt99.95、Ag99.9 和 Ag99.99合约已暂停。
根据交割地点的不同,交易所挂盘合约分为主板合约和国际板合约。
主板合约包括 Au50g、Au100g、Au99.99、Au99.95、Au99.5、Pt99.95、Ag99.9、Ag99.99、Au(T+D) 、Au(T+N1) 、Au(T+N2) 、mAu(T+D)和 Ag(T+D) ;
国际板合约包括 iAu100g、iAu99.99 和 iAu99.5。
新增合约的挂盘根据交易所的公告执行。
1.2 交易时间
早上:09:00-11:30
下午:13:30-15:30
夜盘:19:50-02:30
1.3 相关计算数据公式整理
最小下单量:1
合约价值=最新价*委托量
保证金=最新价*委托量*保证金率
保证金比例=占用保证金/动态权益
总资产=冻结金额+占用保证金+可用金额
冻结金额=冻结保证金+冻结手续费
贵金属的保证金与期货的不同,没有单边保证金的概念。
贵金属的持仓不区分今昨,是T+0交易。
开仓和平仓都会产生冻结手续费,开仓会产生冻结保证金。
类似期货交易,相应的交易操作如下:
开多:开仓、买入 平多:平仓、卖出
开空:开仓、卖出 平空:平仓、买入
黄金没有品种代码的概念
1.4 实际交易
这里就不多说了
对于展期交易基本类似期货,买卖和开平决定交易方向。
对于现货交易基本类似股票,买入卖出。
开发中遇到的部分问题整理
对接柜台:飞鼠,以下情况皆为处理飞鼠柜台一些讯投逻辑整理
环境柜台的一些基本要求:
- 类似期货的实现方式,飞鼠柜台是依赖orderRef区分不同委托的,与股票依赖委托号不同。
- 上游的OrderRef必须是纯数字类型,并且不能重复,飞鼠的定义是最长13位纯数字,不重复由调用者保证。并且就算下单未成功也不能重复。
- 登陆的时候会返回当前最大orderRef.但是目前讯投系统没有相关orderRef排重保证。当然仅从讯投系统内部下单时可以保证不重的。
- 在calcConfigEnv.lua里面有个配置gold平台,配置上自己的黄金平台号才会保证orderRef是纯数字。
- 针对撤单,准确的说是废单的委托,在飞鼠交易终端中是有显示的,但是因为委托没有入库,所以讯投在调用接口的时候查询不到,所以讯投系统目前不支持飞鼠那边的废单。
- 值得一提的是,在飞鼠柜台委托和撤单回调的数据中,返回的请求编号和我们这边送的请求编号实际上是对应不上的。所以在委托和撤单的回调用使用的是orderRef进行请求和返回数据对应的,所以这里也需要上游保证orderRef不重复。
- 飞鼠柜台是贵金属账号是和期货账号绑定的,一对一的关系。但是实际上讯投贵金属并用不到期货相关的东西,也没有关联,所以目前查询数据的时候会过滤一些期货相关的数据。