合约代码 | 一手保证金 (程序粗略计算) | 商品名称 | 备注 |
---|---|---|---|
c1805 | 884.5 | 玉米1805 | |
cs1805 | 1033 | 玉米淀粉1805 | |
RM805 | 1170.5 | 菜粕5月 | |
TA805 | 1351.5 | PTA5月 | |
m1805 | 1418 | 豆粕1805 | |
FG805 | 1481 | 玻璃5月 | |
b1805 | 1653 | 豆二1805 | |
v1805 | 1686.25 | 聚氯乙烯1805 | |
SF805 | 1793.5 | 硅铁5月 | |
a1805 | 1807.5 | 黄大豆1号1805 | |
SM805 | 1918 | 锰硅5月 | |
MA805 | 2060.1000000000004 | 甲醇5月 | |
bu1805 | 2072 | bu1805 | 沥青 |
rb1805 | 2302.2 | rb1805 | 螺纹钢 |
hc1805 | 2319 | hc1805 | 卷轧板 |
WH805 | 2605 | 强麦5月 | |
p1805 | 2666 | 棕榈油1805 | |
pp1805 | 2749.5 | 聚丙烯1805 | |
l1805 | 2866.5 | 聚乙烯1805 | |
y1805 | 2951 | 豆油1805 | |
SR805 | 3034.5 | 白砂糖805 | |
ZC805 | 3048 | 煤5月 | |
jd1805 | 3049.6 | 鸡蛋1805 | |
LR805 | 3087 | 晚籼5月 | |
OI805 | 3343 | 菜油5月 | |
i1805 | 3489.5000000000005 | 铁矿石1805 | |
al1805 | 3620 | al1805 | 铝 |
CF805 | 3773.75 | 棉花5月 | |
jm1805 | 3858 | 焦煤1805 | 焦煤 |
ag1805 | 4447.2 | ag1805 | 银 |
pb1805 | 4762.5 | pb1805 | 铅 |
sn1805 | 6960 | sn1805 | 锡 |
ni1805 | 7172 | ni1805 | 镍 |
zn1805 | 7494 | zn1805 | 锌 |
j1805 | 10405 | 冶金焦炭1805 | |
ru1805 | 11368 | ru1805 | 橡胶 |
cu1805 | 21044 | cu1805 | 铜 |
网上摘录:
报价方式:“套利代码” + “A合约 &B合约” 套利指令价格= A合约价格 – B合约价格(A合约价格小于B合约时为负bai数) 大商所用 “SP”表示跨期套利交易,若指令买进“SP m1809&m1901”即代表买进“m1809”合约同时卖出“m1901”合约,买卖数量相等;若卖出“SP m1809&m1901”即代表卖出“m1809”合约同时买进“m1901”合约,买卖数量相等。 用“SPC”表示跨品种套利交易,若指令买进“SPC y1809&p1809”即代表买进“y1809”合约同时卖出“p1809”合约,买卖数量相等;若卖出“SPC y1809&p1809”即代表卖出“y1809”合约同时买进“p1809”合约,买卖数量相等。 例如,交易者申报指令为“买进2手SP m1809&m1901,限价-100元”,意味着前一合约价必须低于后一合约价100元时才能成交。下列最终成交回报都符合要求:前一合约买进成交2手,成交价3715元,后一合约卖出成交2手,成交价3815元,差价为-100元。 同理,郑商所用“SPD”表示跨期套利交易,若指令买进“SPD CF809&CF901”即代表买进“CF809”合约同时卖出“CF901”合约,买卖数量相等;若卖出“SPD CF809&CF901”即代表卖出“CF809”合约同时买进“CF901”合约,买卖数量相等。 用“IPS”表示跨品种套利交易,若指令买进“IPS SF809&SM809”即代表买进“SF809”合约同时卖出“SM809”合约,买卖数量相等;若卖出“IPS SF809&SM809”即代表卖出“SF809”合约同时买进“SM809”合约,买卖数量相等。
其它只知道 产品名字的,可以用以下代码查询,例如 红枣,不知道他的代码是多少,但是知道叫“红枣”这个名字。
function main(){
var productsForFind = null
while(true){
if(exchange.IO("status")){
LogStatus(_D(), "已经连接CTP !")
exchange.IO("products").forEach(function(product) {
Log(product)
if (product.ProductName == "红枣") { // 这里设置 要查的 名字。
Log(product, "#FF0000")
productsForFind = product
}
})
break
} else {
LogStatus(_D(), "未连接CTP !")
}
Sleep(1000)
}
Log(productsForFind, "##FF0000")
}
查询结果:
{
"ProductClass": 49,
"VolumeMultiple": 5,
"PriceTick": 5,
"MaxLimitOrderVolume": 1000,
"MaxMarketOrderVolume": 200,
"MinLimitOrderVolume": 1,
"CloseDealType": 49,
"MinMarketOrderVolume": 1,
"ExchangeProductID": "",
"UnderlyingMultiple": 1,
"PositionDateType": 50,
"TradeCurrencyID": "CNY",
"MortgageFundUseRange": 48,
"ProductID": "CJ",
"ProductName": "红枣",
"ExchangeID": "CZCE",
"PositionType": 50
}
ProductID 属性值就是合约代码。
function main(){
var productsForFind = null
while(true){
if(exchange.IO("status")){
LogStatus(_D(), "已经连接CTP !")
var ret = exchange.IO("instruments")
ret.forEach(function(product) {
// Log(product)
// 这里设置要查的名字,i铁矿石合约,或者IO合约
if (product.InstrumentName.indexOf("i") != -1 && (product.InstrumentName.indexOf("P") != -1 || product.InstrumentName.indexOf("C") != -1)) {
Log(product, "#FF0000")
productsForFind = product
}
})
break
} else {
LogStatus(_D(), "未连接CTP !")
}
Sleep(1000)
}
Log(productsForFind, "#FF0000")
}
lwc87 我是从文华转来用FMZ的,但是没找到FMZ标准套利的代码,想麻烦问下FMZ支持标准套利吗?代码怎么查询呢?
小小梦 回测不支持套利合约,或者看下是不是时间范围选的不匹配。
lwc87 我在开盘时间通过IO函数取得了合约列表了,但是在回测时输入合约代码却显示订阅合约失败,比如合约SPD TA104&TA110,这个是什么原因呢?
小小梦 是的,这些函数接口回测不支持,因为这些数据是要实盘交易所给的,所以只能实盘的时候获取,并且只能开盘时间才能连得上期货公司服务器。常用的合约ID都在上面。
lwc87 老师,看文档要求说这个函数要在实盘中才行,这里没理解,是在开盘时间吗?还是必须在机器人里才行?我用回测想看下合约输出不了呢
小小梦 指的是套利合约么? 所有合约都可以查询出来 ``` exchange.IO("instruments"); ``` https://www.fmz.com/api#io%E5%87%BD%E6%95%B0%EF%BC%88%E5%95%86%E5%93%81%E6%9C%9F%E8%B4%A7%E6%89%A9%E5%B1%95%EF%BC%89