## 原型

```python
ContextInfo.get_instrument_detail(stockcode,iscomplete = Fasle)
```

## 释义

ContextInfo.get_instrument_detail 是 QMT 内置 Python 中用于根据代码获取合约详细信息的接口。

研究：官方目录未明确；回测：官方目录未明确；模拟：官方目录未明确；实盘：官方目录未明确。

## 参数

| 参数 | 是否必填 | 官方原始定义 |
|---|---:|---|
| `stockcode` | 是 | stockcode |
| `iscomplete` | 否 | iscomplete=Fasle |

## 返回值

根据stockcode返回一个dict。该字典数据key值有：

名称 | 类型 | 描述
ExchangeID | string | 合约市场代码
InstrumentID | string | 合约代码
InstrumentName | string | 合约名称
ProductID | string | 合约的品种ID(期货)
ProductName | string | 合约的品种名称(期货)
ProductType | int | 合约的类型, 默认-1,枚举值可参考下方说明
ExchangeCode | string | 交易所代码
UniCode | string | 统一规则代码
CreateDate | str | 创建日期
OpenDate | str | 上市日期（特殊值情况见表末）
ExpireDate | int | 退市日或者到期日（特殊值情况见表末）
PreClose | float | 前收盘价格
SettlementPrice | float | 前结算价格
UpStopPrice | float | 当日涨停价
DownStopPrice | float | 当日跌停价
FloatVolume | float | 流通股本（注意，部分低等级客户端中此字段为FloatVolumn）
TotalVolume | float | 总股本（注意，部分低等级客户端中此字段为FloatVolumn）
LongMarginRatio | float | 多头保证金率
ShortMarginRatio | float | 空头保证金率
PriceTick | float | 最小价格变动单位
VolumeMultiple | int | 合约乘数(对期货以外的品种，默认是1)
MainContract | int | 主力合约标记，1、2、3分别表示第一主力合约，第二主力合约，第三主力合约
LastVolume | int | 昨日持仓量
InstrumentStatus | int | 合约停牌状态(&lt;=0:正常交易（-1:复牌）;&gt;=1停牌天数;)
IsTrading | bool | 合约是否可交易
IsRecent | bool | 是否是近月合约

## 示例

```python
示例返回值

# coding:gbk

def init(C):

pass

def handlebar(C):

data = C.get_instrumentdetail("000001.SZ")

print(data)
```

## 详细说明

### 使用提示

旧版本客户端中，函数名为ContextInfo.get_instrumentdetail；不支持iscomplete参数

### 功能说明

根据代码获取合约详细信息

### 参数详细说明

| 字段名 | 数据类型 | 解释 |
| --- | --- | --- |
| stockcode | string | 标的名称，必须是 'stock.market' 形式 |
| iscomplete | bool | 是否获取全部字段，默认为False |

### 返回值

根据stockcode返回一个dict。该字典数据key值有：

| 名称 | 类型 | 描述 |
| --- | --- | --- |
| ExchangeID | string | 合约市场代码 |
| InstrumentID | string | 合约代码 |
| InstrumentName | string | 合约名称 |
| ProductID | string | 合约的品种ID(期货) |
| ProductName | string | 合约的品种名称(期货) |
| ProductType | int | 合约的类型, 默认-1,枚举值可参考下方说明 |
| ExchangeCode | string | 交易所代码 |
| UniCode | string | 统一规则代码 |
| CreateDate | str | 创建日期 |
| OpenDate | str | 上市日期（特殊值情况见表末） |
| ExpireDate | int | 退市日或者到期日（特殊值情况见表末） |
| PreClose | float | 前收盘价格 |
| SettlementPrice | float | 前结算价格 |
| UpStopPrice | float | 当日涨停价 |
| DownStopPrice | float | 当日跌停价 |
| FloatVolume | float | 流通股本（注意，部分低等级客户端中此字段为FloatVolumn） |
| TotalVolume | float | 总股本（注意，部分低等级客户端中此字段为FloatVolumn） |
| LongMarginRatio | float | 多头保证金率 |
| ShortMarginRatio | float | 空头保证金率 |
| PriceTick | float | 最小价格变动单位 |
| VolumeMultiple | int | 合约乘数(对期货以外的品种，默认是1) |
| MainContract | int | 主力合约标记，1、2、3分别表示第一主力合约，第二主力合约，第三主力合约 |
| LastVolume | int | 昨日持仓量 |
| InstrumentStatus | int | 合约停牌状态(&lt;=0:正常交易（-1:复牌）;&gt;=1停牌天数;) |
| IsTrading | bool | 合约是否可交易 |
| IsRecent | bool | 是否是近月合约 |
| ChargeType | int | 期货和期权手续费方式 |
| ChargeOpen | float | 开仓手续费(率) |
| ChargeClose | float | 平仓手续费(率) |
| ChargeTodayOpen | float | 开今仓(日内开仓)手续费(率) |
| ChargeTodayClose | float | 平今仓(日内平仓)手续费(率) |
| OptionType | int | 期权类型 |
| OpenInterestMultiple | int | 交割月持仓倍数 |

### 使用提示

字段OpenDate有以下几种特殊值： 19700101=新股, 19700102=老股东增发, 19700103=新债, 19700104=可转债, 19700105=配股， 19700106=配号 字段ExpireDate为0 或 99999999 时，表示该标的暂无退市日或到期日

字段ProductType 对于股票以外的品种，有以下几种值

国内期货市场： 1-期货 2-期权(DF SF ZF INE GF) 3-组合套利 4-即期 5-期转现 6-期权(IF) 7-结算价交易(tas)

**沪深股票期权市场：**0-认购 1-认沽

外盘： 1-100：期货， 101-200：现货, 201-300:股票相关 1：股指期货 2：能源期货 3：农业期货 4：金属期货 5：利率期货 6：汇率期货 7：数字货币期货 99：自定义合约期货 107：数字货币现货 201：股票 202：GDR 203：ETF 204：ETN 300：其他
