获取期货合约信息

市场简称代码

市场市场代码迅投市场代码
上期所SHFESF
大商所DCEDF
郑商所CZCEZF
中金所CFFEXIF
能源中心INEINE
广期所GFEXGF

获取期货交易日历

获取期货交易日历

from xtquant import xtdata
xtdata.get_trading_dates(market, start_time='', end_time='', count=-1)

参数

参数名称数据类型描述
marketstring市场代码
start_timestring起始时间(格式:%Y%m%d)
end_timestring结束时间(格式:%Y%m%d)
countint数据个数 (-1代表获取所有日历)

返回值

  • list 时间戳列表,[ date1, date2, ... ]

示例:

from xtquant import xtdata
date_list = xtdata.get_trading_dates('SF', start_time='', end_time='', count=30)
print(date_list)

获取当前所有期货代码

提示

需要先下载板块分类信息

from xtquant import xtdata
xtdata.get_stock_list_in_sector(sector_name)

参数

参数名称数据类型描述
sector_namestring市场代码

返回值

list 成分股列表,[ code1, code2, ... ]

示例

from xtquant import xtdata
# 获取上海期货交易所所有标的的代码
SF_list = xtdata.get_stock_list_in_sector("SF")
# 显示列表返回值的前十个代码
print(SF_list[:10])

获取合约基础信息

from xtquant import xtdata
xtdata.get_instrument_detail(stock_code)

参数

参数名称数据类型描述
stock_codestring合约代码

返回值

dict 数据字典,{ field1 : value1, field2 : value2, ... },找不到指定合约时返回None

参数名称数据类型描述
ExchangeIDstring合约市场代码
InstrumentIDstring合约代码
InstrumentNamestring合约名称
ProductIDstring合约的品种ID(期货)
ProductNamestring合约的品种名称(期货)
CreateDatestr上市日期(期货)
OpenDatestrIPO日期(股票)
ExpireDateint退市日或者到期日
PreClosefloat前收盘价格
SettlementPricefloat前结算价格
UpStopPricefloat当日涨停价
DownStopPricefloat当日跌停价
FloatVolumefloat流通股本
TotalVolumefloat总股本
LongMarginRatiofloat多头保证金率
ShortMarginRatiofloat空头保证金率
PriceTickfloat最小价格变动单位
VolumeMultipleint合约乘数(对期货以外的品种,默认是1)
MainContractint主力合约标记,1、2、3分别表示第一主力合约,第二主力合约,第三主力合约
LastVolumeint昨日持仓量
InstrumentStatusint合约已停牌日期(停牌第一天值为0,第二天为1,以此类推。注意,正常交易的股票该值也是0)
IsTradingbool合约是否可交易
IsRecentbool是否是近月合约

示例

from xtquant import xtdata
print(xtdata.get_instrument_detail("rb2401.SF"))

获取当前主力合约

xtdata.get_main_contract(code)
参数名称数据类型描述
codestr品种代码如rb00.SF(螺纹钢连续合约)

返回值

  • str,主力合约代码

示例

from xtquant import xtdata
main_symbol = xtdata.get_main_contract('rb00.SF')
print(main_symbol)

获取历史主力合约

内置python

提示

  1. 该函数支持实盘/回测两种模式
  2. 若要使用该函数获取历史主力合约,必须要先下载历史主力合约数据
  3. 历史主力合约数据目前通过界面端数据管理 - 过期合约数据 - 历史主力合约下载

原型

ContextInfo.get_main_contract(codemarket)
ContextInfo.get_main_contract(codemarket,date="")
ContextInfo.get_main_contract(codemarket,startDate="",endDate="")

释义

获取当前期货主力合约

参数

字段名数据类型解释
codemarketstring合约和市场,合约格式为品种名加00,如IF00.IF,zn00.SF
startDatestring开始日期(可以不写),如20180608
endDatestring结束日期(可以不写),如20190608

返回值

str,合约代码

示例

# coding:gbk
def init(C):
	pass
	
def handlebar(C):
	symbol1 = C.get_main_contract('IF00.IF')# 获取当前主力合约

	symbol2 = C.get_main_contract('IF00.IF',"20190101")# 获取指定日期主力合约

	symbol3 = C.get_main_contract('IF00.IF',"20181101","20190101") # 获取时间段内全部主力合约

	print(symbol1, symbol2)
	print("="*10)
	print(symbol3)

原生python

提示

  1. 获取该数据前,需要通过download_history_data接口下载数据,下载时period参数需指定为historymaincontract
  2. 该数据通过get_market_data_ex函数进行获取
  3. 该数据为VIP数据在新窗口打开
period = "historymaincontract" # 通过指定period参数 从gmd_ex接口获取历史主力合约信息
symbol = "IF00.IF" # 示例合约
xtdata.get_market_data_ex([], [symbol], period=period, start_time='', end_time='', count=-1,dividend_type='none', fill_data=False)

参数

  • period参数需填写为"historymaincontract"
  • stock_list里的合约需为主力连续合约,如IF00.IF

其余参数与get_market_data_ex一致

返回值

dict类型数据,其中:

  • key为symbol
  • values为pandas.DataFrame
    • values.index为自增行,columns为[time,合约在交易所的代码]

示例

from xtquant import xtdata


symbol = 'IF00.IF' # 合约需要是主连合约
period = "historymaincontract" # period需指定为 "historymaincontract"
# 下载历史主力合约
xtdata.download_history_data(symbol, period, '', '') # 获取之前需要先下载到本地

his_main_contract = xtdata.get_market_data_ex([],[symbol],period) # 获取数据查看

print(his_main_contract)

获取期货行情数据

获取行情数据

提示

使用该接口时,需要先订阅实时行情(subscribe_quote)或下载过历史行情(download_history_data)

from xtquant import xtdata

xtdata.get_market_data_ex(field_list=[], stock_list=[], period='1d', start_time='', end_time='', count=-1, dividend_type='none', fill_data=True)

参数

名称类型描述
fieldlist数据字段,详情见下方field字段表
stock_listlist合约代码列表
periodstr数据周期——1m、5m、1d、tick
start_timestr数据起始时间,格式为 %Y%m%d 或 %Y%m%d%H%M%S,填""为获取历史最早一天
end_timestr数据结束时间,格式为 %Y%m%d 或 %Y%m%d%H%M%S ,填""为截止到最新一天
countint数据个数
dividend_typestr除权方式
fill_databool是否填充数据
  • field字段可选:
field数据类型含义
timeint时间
openfloat开盘价
highfloat最高价
lowfloat最低价
closefloat收盘价
volumefloat成交量
amountfloat成交额
settlefloat今结算
openInterestfloat持仓量
preClosefloat前收盘价
suspendFlagint停牌 1停牌,0 不停牌
  • period周期为tick时,field字段可选:
字段名数据类型含义
timeint时间戳
stimestring时间戳字符串形式
lastPricefloat最新价
openfloat开盘价
highfloat最高价
lowfloat最低价
lastClosefloat前收盘价
amountfloat成交总额
volumeint成交总量(手)
pvolumeint原始成交总量(未经过股手转换的成交总量)【不推荐使用】
stockStatusint证券状态
openInterestint若是股票,则openInt含义为股票状态,非股票则是持仓量openInt字段说明
transactionNumfloat成交笔数(期货没有,单独计算)
lastSettlementPricefloat前结算(股票为0)
settlementPricefloat今结算(股票为0)
askPricelist[float]多档委卖价
askVollist[int]多档委卖量
bidPricelist[float]多档委买价
bidVollist[int]多档委买量

返回值

  • period为1m 5m 1dK线周期时
    • 返回dict { field1 : value1, field2 : value2, ... }
    • value1, value2, ... :pd.DataFrame 数据集,index为stock_list,columns为time_list
    • 各字段对应的DataFrame维度相同、索引相同
  • period为tick分笔周期时
    • 返回dict { stock1 : value1, stock2 : value2, ... }
    • stock1, stock2, ... :合约代码
    • value1, value2, ... :np.ndarray 数据集,按数据时间戳time增序排列

获取日线行情数据

示例

from xtquant import xtdata
xtdata.get_market_data_ex([],['rb2401.SF'],period='1d')

获取tick行情

示例

from xtquant import xtdata
xtdata.get_market_data_ex([],['rb2401.SF'],period='tick')

获取5档盘口行情

提示

  1. 该数据为VIP数据在新窗口打开
from xtquant import xtdata
import time

symbol_list = ["rb2405.SF","ec2404.INE"] # 五档行情支持上期所,上期能源

period = "l2quote" # 获取5档盘口tick

for symbol in symbol_list:
    xtdata.subscribe_quote(symbol,period = period,count=-1)
time.sleep(1)

data = xtdata.get_market_data_ex(["askPrice","bidPrice"],symbol_list,period = period,count=-1)

print(data)

期货结算价与持仓量

字段数据类型含义
settelementPricefloat结算价
openInterestfloat持仓量
示例
from xtquant import xtdata
xtdata.get_market_data_ex(['settelementPrice','openInterest'],['rb2401.SF'],period='1d')

期货仓单

提示

1.该数据通过get_market_dataget_market_data_ex接口获取
2.获取数据前需要先用download_history_data下载历史数据
3.VIP 权限数据在新窗口打开

参数

  • period 参数传入 warehousereceipt

返回值

  • 返回dict { field1 : value1, field2 : value2, ... }
  • value1, value2, ... :pd.DataFrame 数据集,index为stock_list,columns为time_list

示例

from xtquant import xtdata
# 下载期货仓单
xtdata.download_history_data('','warehousereceipt','','')
#查询螺纹钢仓单数据
xtdata.get_market_data_ex([],['rb.SF'],period='warehousereceipt')

期货席位

提示

1.该数据通过get_market_dataget_market_data_ex接口获取
2.获取数据前需要先用download_history_data下载历史数据
3.VIP 权限数据在新窗口打开

参数

  • period 参数传入 futureholderrank

返回值

  • 返回dict { field1 : value1, field2 : value2, ... }
  • value1, value2, ... :pd.DataFrame 数据集,index为stock_list,columns为time_list

示例

from xtquant import xtdata
# 下载期货席位
xtdata.download_history_data('','futureholderrank','','')
#查询螺纹钢席位数据,period参数填写'futureholderrank'
print(xtdata.get_market_data_ex([],['rb2401.SF'],period='futureholderrank')['rb2401.SF'])

现货数据

提示

1.该数据通过get_market_dataget_market_data_ex接口获取
2.获取数据前需要先用download_history_data下载历史数据
3.VIP 权限数据在新窗口打开

返回值

  • 返回dict { field1 : value1, field2 : value2, ... }
  • value1, value2, ... :pd.DataFrame 数据集,index为stock_list,columns为time_list

示例

from xtquant import xtdata
# 获取现货市场代码
spot_list = xtdata.get_stock_list_in_sector('现货市场指数')
print(spot_list)
# 获取现货数据
spot_data = xtdata.get_market_data_ex(field_list=[], 
                                  stock_list=['S0010020001.spot'],
                                  period='1d',
                                  fill_data=False)
print(spot_data)

期货列表

金融期货列表

提供当前时间段内有效的金融期货合约数据(如行情数据等),

支持的金融期货种类

沪深 300 指数期货合约表

信息内容
合约标的沪深 300 指数
合约乘数每点 300 元
报价单位指数点
最小变动价位0.2 点
合约月份当月、下月及随后两个季月
交易时间上午:9:30-11:30,下午:13:00-15:00
每日价格最大波动限制上一个交易日结算价的±10%
最低交易保证金合约价值的 8%
最后交易日合约到期月份的第三个周五,遇国家法定假日顺延
交割日期同最后交易日
交割方式现金交割
交易代码IF
上市交易所中国金融期货交易所

上证 50 股指期货合约表

信息内容
合约标的上证 50 指数
合约乘数每点 300 元
报价单位指数点
最小变动价位0.2 点
合约月份当月、下月及随后两个季月
交易时间上午: 9:30-11:30,下午:13:00-15:00
每日价格最大波动限制上一个交易日结算价的±10%
最低交易保证金合约价值的 8%
最后交易日合约到期月份的第三个周五,遇国家法定假日顺延
交割日期同最后交易日
交割方式现金交割
交易代码IH
上市交易所中国金融期货交易所

中证 500 股指期货合约表

信息内容
合约标的中证 500 指数
合约乘数每点 200 元
报价单位指数点
最小变动价位0.2 点
合约月份当月、下月及随后两个季月
交易时间上午: 9:30-11:30, 下午:13:00-15:00
每日价格最大波动限制上一个交易日结算价的±10%
最低交易保证金合约价值的 8%
最后交易日合约到期月份的第三个周五,遇国家法定假日顺延
交割日期同最后交易日
交割方式现金交割
交易代码IC
上市交易所中国金融期货交易所

中证 1000 股指期货合约表

信息内容
合约标的中证 1000 指数
合约乘数每点 200 元
报价单位指数点
最小变动价位0.2 点
合约月份当月、下月及随后两个季月
交易时间上午: 9:30-11:30, 下午:13:00-15:00
每日价格最大波动限制上一个交易日结算价的±10%
最低交易保证金合约价值的 8%
最后交易日合约到期月份的第三个周五,遇国家法定假日顺延
交割日期同最后交易日
交割方式现金交割
交易代码IM
上市交易所中国金融期货交易所

2 年期国债期货合约表

信息内容
合约标的面值为 200 万元人民币、票面利率为 3%的名义中短期国债
可交割国债发行期限不高于 5 年,合约到期月份首日剩余期限为 1.5-2.25 年的记账式附息国债
报价方式百元净价报价
最小变动价位0.005 元
合约月份最近的三个季月(3 月、6 月、9 月、12 月中的最近三个月循环)
交易时间9:15 - 11:30, 13:00 - 15:15
最后交易日交易时间9:15 - 11:30
每日价格最大波动限制上一交易日结算价的±0.5%
最低交易保证金合约价值的 0.5%
最后交易日合约到期月份的第二个星期五
最后交割日最后交易日后的第三个交易日
交割方式实物交割
交易代码TS
上市交易所中国金融期货交易所

5 年期国债期货合约表

信息内容
合约标的面值为 100 万元人民币、票面利率为 3%的名义中期国债
可交割国债合约到期月份首日剩余期限为 4-5.25 年的记账式附息国债
报价方式百元净价报价
最小变动价位0.005 元
合约月份最近的三个季月(3 月、6 月、9 月、12 月中的最近三个月循环)
交易时间09:15—11:30, 13:00—15:15
最后交易日交易时间09:15—11:30
每日价格最大波动限制上一交易日结算价的±1.2%
最低交易保证金合约价值的 1%
最后交易日合约到期月份的第二个星期五
最后交割日最后交易日后的第三个交易日
交割方式实物交割
交易代码TF
上市交易所中国金融期货交易所

10 年期国债期货合约表

信息内容
合约标的面值为 100 万元人民币、票面利率为 3%的名义长期国债
可交割国债合约到期月份首日剩余期限为 6.5-10.25 年的记账式附息国债
报价方式百元净价报价
最小变动价位0.005 元
合约月份最近的三个季月(3 月、6 月、9 月、12 月中的最近三个月循环)
交易时间9:15 - 11:30,13:00 - 15:15
最后交易日交易时间9:15 - 11:30
每日价格最大波动限制上一交易日结算价的±2%
最低交易保证金合约价值的 2%
最后交易日合约到期月份的第二个星期五
最后交割日最后交易日后的第三个交易日
交割方式实物交割
交易代码T
上市交易所中国金融期货交易所

商品期货列表

主力连续合约及加权

主力合约生成规则

每个品种只有一个主连合约。主连合约于下一个交易日进行指向切换,切换前主连合约不变。当日成交量和持仓量都为最大的合约,确定为下一日主连合约,若当日成交量和持仓量都为最大的合约有多个,取其中的近月合约确定为下一日主连合约,若无当日成交量和持仓量同时最大的合约,取成交量最大的合约确定为下一日主连合约。

加权品种的价格规则

由当前品种全部可交易合约以实时持仓量为权重加权平均计算得到。 具体的计算方式是将该品种下所有交易合约价格和持仓量的乘积相加,得到的结果再除以这些合约持仓量的总和。

月份连续合约生成规则

月份连续合约是指将所有的相同月份合约连续拼接起来,生成的连续合约;

AP01.ZF为例:ap01的合成规则是将AP401.ZF,AP301.ZF,AP201.ZF,AP101.ZF.....等苹果一月份合约拼接起来的连续合约

中金所

名称主力连续代码加权合约代码开始时间退市时间备注
沪深 300 合约IF00.IFIFJQ00.IF2010-04-16
5 年期国债合约TF00.IFTFJQ00.IF2013-09-06
10 年期国债合约T00.IFTJQ00.IF2015-03-20
中证 500 合约IC00.IFICJQ00.IF2015-04-16
上证 50 合约IH00.IFIHJQ00.IF2015-04-16
2 年期国债合约TS00.IFTSJQ00.IF2018-08-17
中证 1000 合约IM00.IFIMJQ00.IF2022-07-22
30 年期国债合约TL00.IFTLJQ00.IF2023-04-21

大商所

名称主力合约代码加权合约代码开始时间退市时间备注
豆一合约a00.DFaJQ00.DF2005-01-03
豆二合约b00.DFbJQ00.DF2005-01-03
豆粕合约m00.DFmJQ00.DF2005-01-03
玉米合约c00.DFcJQ00.DF2005-01-03
豆油合约y00.DFyJQ00.DF2006-01-09
聚乙烯合约l00.DFlJQ00.DF2007-07-31
棕榈油合约p00.DFpJQ00.DF2007-10-29
聚氯乙烯合约v00.DFvJQ00.DF2009-05-25
焦炭合约j00.DFjJQ00.DF2011-04-15
焦煤合约jm00.DFjmJQ00.DF2013-03-22
铁矿石合约i00.DFiJQ00.DF2013-10-18
鸡蛋合约jd00.DFjdJQ00.DF2013-11-08
胶合板合约bb00.DFbbJQ00.DF2013-12-06
纤维板合约fb00.DFfbJQ00.DF2013-12-06
聚丙烯合约pp00.DFppJQ00.DF2014-02-28
玉米淀粉合约cs00.DFcsJQ00.DF2014-12-19
乙二醇合约eg00.DFegJQ00.DF2018-12-10
粳米合约rr00.DFrrJQ00.DF2019-08-16
苯乙烯合约eb00.DFebJQ00.DF2019-09-26
液化石油气合约pg00.DFpgJQ00.DF2020-03-30
生猪合约lh00.DFlhJQ00.DF2021-01-08

上海国际能源交易中心

名称主力合约代码加权合约代码开始时间退市时间备注
原油合约sc00.INEscJQ00.INE2018-03-27
20 号胶合约nr00.INEnrJQ00.INE2019-08-12
低硫燃料油合约lu00.INEluJQ00.INE2020-06-22
阴极铜合约bc00.INEbcJQ00.INE2020-11-19
集运指数(欧线)合约ec00.INEecJQ00.INE2023-08-18

广期所

名称主力合约代码加权合约代码开始时间退市时间备注
碳酸锂lc00.GFlcJQ00.GF2023-07-21
工业硅si00.GFsiJQ00.GF2022-12-22

上期所

名称主力合约代码加权合约代码开始时间退市时间备注
铝合约al00.SFalJQ00.SF2005-01-03
天然橡胶合约ru00.SFruJQ00.SF2005-01-03
燃料油合约fu00.SFfuJQ00.SF2005-01-03
铜合约cu00.SFcuJQ00.SF2005-01-03
锌合约zn00.SFznJQ00.SF2007-03-26
黄金合约au00.SFauJQ00.SF2008-01-09
线材合约wr00.SFwrJQ00.SF2009-03-27
螺纹钢合约rb00.SFrbJQ00.SF2009-03-27
铅合约pb00.SFpbJQ00.SF2011-03-24
白银合约ag00.SFagJQ00.SF2012-05-10
石油沥青合约bu00.SFbuJQ00.SF2013-10-09
热轧卷板合约hc00.SFhcJQ00.SF2014-03-21
锡合约sn00.SFsnJQ00.SF2015-03-27
镍合约ni00.SFniJQ00.SF2015-03-27
纸浆合约sp00.SFspJQ00.SF2018-11-27
不锈钢合约ss00.SFssJQ00.SF2019-09-25
氧化铝合约ao00.SFaoJQ00.SF2023-06-19
丁二烯橡胶合约br00.SFbrJQ00.SF2023-07-28

郑商所

名称主力合约代码加权合约代码开始时间退市时间备注
硬白小麦合约WT00.ZFWTJQ00.ZF2005-01-032012-11-22
强麦合约WS00.ZFWSJQ00.ZF2005-01-032013-05-23WS为旧的强麦合约代码,自WS 1305 停止执行
绿豆合约GN00.ZFGNJQ00.ZF2005-01-032010-03-23
棉花合约CF00.ZFCFJQ00.ZF2005-01-03
白糖合约SR00.ZFSRJQ00.ZF2006-01-06
PTA合约TA00.ZFTAJQ00.ZF2006-12-18
菜籽油合约RO00.ZFROJQ00.ZF2007-06-082013-05-15RO为旧的菜籽油合约, 自RO 1305 停止执行
早籼稻合约ER00.ZFERJQ00.ZF2009-04-202013-05-23ER为旧的早籼稻合约, 自ER 1305 停止执行
甲醇合约ME00.ZFMEJQ00.ZF2011-10-282015-05-15ME为旧的甲醇合约代码,自ME 1505 停止执行
普麦合约PM00.ZFPMJQ00.ZF2012-01-17
菜籽油合约OI00.ZFOIJQ00.ZF2012-07-16OI为新的菜籽油合约, 自OI 1307 开始执行
强麦合约WH00.ZFWHJQ00.ZF2012-07-24WH为新的强麦合约代码,自WH 1307 开始执行
早籼稻合约RI00.ZFRIJQ00.ZF2012-07-24RI为新的早籼稻合约, 自RI 1307 开始执行
玻璃合约FG00.ZFFGJQ00.ZF2012-12-03
菜籽粕合约RM00.ZFRMJQ00.ZF2012-12-28
油菜籽合约RS00.ZFRSJQ00.ZF2012-12-28
动力煤合约TC00.ZFTCJQ00.ZF2013-09-262016-04-08TC为旧的动力煤合约,自TC 1605 停止执行
粳稻谷合约JR00.ZFJRJQ00.ZF2013-11-18
甲醇合约MA00.ZFMAJQ00.ZF2014-06-17MA为新的甲醇合约代码,自MA 1506 开始执行
晚籼稻合约LR00.ZFLRJQ00.ZF2014-07-08
硅铁合约SF00.ZFSFJQ00.ZF2014-08-08
锰硅合约SM00.ZFSMJQ00.ZF2014-08-08
动力煤合约ZC00.ZFZCJQ00.ZF2015-05-18ZC为新的动力煤合约,自ZC 1605 开始执行
棉纱合约CY00.ZFCYJQ00.ZF2017-08-18
苹果合约AP00.ZFAPJQ00.ZF2017-12-22
红枣合约CJ00.ZFCJJQ00.ZF2019-04-30
尿素合约UR00.ZFURJQ00.ZF2019-08-09
纯碱合约SA00.ZFSAJQ00.ZF2019-12-06
短纤合约PF00.ZFPFJQ00.ZF2020-10-12
花生合约PK00.ZFPKJQ00.ZF2021-02-01
烧碱合约SH00.ZFSHJQ00.ZF2023-09-15
对二甲苯合约PX00.ZFPXJQ00.ZF2023-09-15
上次更新:
邀请注册送VIP优惠券
分享下方的内容给好友、QQ群、微信群,好友注册您即可获得VIP优惠券
玩转qmt,上迅投qmt知识库