3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 JoinQuant(聚宽)平台中,获取某个期货品种当前所有可交易的合约代码,可以使用 get_future_contracts 函数。
get_future_contracts(security, date=None)
以下代码展示了如何在研究环境或回测中获取“螺纹钢”(RB)和“沪深300股指期货”(IF)的所有可交易合约。
# -*- coding: utf-8 -*-
from jqdata import *
def initialize(context):
# 示例:获取螺纹钢(RB)当前日期的所有可交易合约
rb_contracts = get_future_contracts('RB')
print("螺纹钢当前可交易合约:")
print(rb_contracts)
# 示例:获取沪深300股指期货(IF)在指定日期(2023-01-05)的可交易合约
if_contracts = get_future_contracts('IF', date='2023-01-05')
print("2023-01-05 沪深300股指期货可交易合约:")
print(if_contracts)
# 如果是在研究环境中直接运行,可以使用以下代码:
# contracts = get_future_contracts('RB')
# print(contracts)
security 传入的是品种代码(如 'AG', 'AU', 'RB', 'IF'),而不是具体的合约代码。['RB2310.XSGE', 'RB2401.XSGE', ...]。get_dominant_future(security, date) 函数。Q: 如何获取某个期货品种的主力合约代码?
A: 使用 get_dominant_future(underlying_symbol, date=None) 函数。例如 get_dominant_future('RB') 会返回当前日期的螺纹钢主力合约代码。
Q: get_future_contracts 返回的列表中包含已经过期的合约吗?
A: 不包含。它只返回在 date 指定的日期当天仍然上市可交易的合约。
Q: 如果我想获取全市场所有期货品种的列表怎么办?
A: 可以使用 get_all_securities(types=['futures']) 来获取所有期货合约的详细信息列表,然后从中提取品种代码。