# get_option_info 得到期权最新的特征值
get_option_info(order_book_id, type)
得到期权最新的特征值(仅对期权品种有效).
注意:该函数仅返回最新值,无历史值。部分计算参数在 在分析菜单->期权定价计算 中设置。
参数
| 参数 | 类型 | 说明 |
|---|---|---|
| order_book_id | str | 合约代码,必填项 |
| type | int | 数据项编号,必填项。同PEL |
返回值
计算的当前期权特征值最新结果
范例
#判断该品种期权方向,0-认购期权,1-认沽期权
get_option_info('10001211', 4)
1
2
2
# option_strike 期权行权委托
用于对指定期权合约提交行权委托。
函数原型
option_strike(
order_book_id:
str , # 期权合约代码
volume:
int , # 行权数量
account:
str , # 指定交易账户 ) ->
int # 返回订单ID 参数
| 参数 | 类型 | 缺省 | 必填 | 说明 |
|---|---|---|---|---|
| order_book_id | str | - | Y | 期权合约代码 |
| volume | int | - | Y | 行权数量 |
| account | str | 默认登录账户 | N | 指定交易账户,若不填写则使用当前默认登录账户 |
返回值
| 状态 | 返回值 | 返回类型 | 说明 |
|---|---|---|---|
| 委托成功 | order_id | int | 返回生成的订单 ID |
| 委托失败 | -1 | int | 下单失败,具体原因需查看日志 |
| 系统异常 | None | None | 系统异常或接口调用失败 |
范例
# 对期权合约 QQ10002895 行权 1 张
option_strike("QQ10002895", 1, "1000")
1
2
3
2
3
# cancelstrike 行权撤销操作
cancelstrike(order_book_id, account)
参数
| 参数 | 类型 | 说明 |
|---|---|---|
| order_book_id | str | 合约代码,必填项 |
| account | str | 指定具体的交易帐号,若不指定帐号,则取默认登录帐号 |
cancelstrike("QQ10002895","1000")
1
# volatility 历史波动率
volatility(data, size)
参数
| 参数 | 类型 | 说明 |
|---|---|---|
| data | list of float 或 ndarray of float | 需统计的数据 |
| size | int | 统计数据个数 |
返回值
float 历史波动率结果
范例
bar_close=history_bars('510050',100,'1d','CLOSE')
f =volatility(close,100)
print(f)
1
2
3
2
3
# impliedvolatility 隐含波动率
根据当前期权价格与标的价格,使用 B-S 模型反推期权的隐含波动率(Implied Volatility)。
函数原型
impliedvolatility(
order_book_id:
str , # 期权合约代码
srcprice:
float , # 当前标的价格
volatility:
float , # 标的历史波动率
days:
int , # 距离期权到期天数
nowprice:
float , # 当前期权价格
R:
float , # 无风险利率 ) ->
float # 返回隐含波动率 参数
| 参数 | 类型 | 缺省 | 必填 | 说明 |
|---|---|---|---|---|
| order_book_id | str | - | Y | 期权合约代码 |
| srcprice | float | - | Y | 当前标的物价格 |
| volatility | float | - | Y | 标的物历史波动率,可参考 volatility 方法 |
| days | int | - | Y | 期权期限(距离期权到期的天数) |
| nowprice | float | - | Y | 当前期权市场价格 |
| R | float | 默认系统设置 | N | 无风险利率,若不填写则使用系统默认利率(在 分析菜单 → 期权定价计算器 中设置) |
返回值
| 状态 | 返回值 | 返回类型 | 说明 |
|---|---|---|---|
| 计算成功 | float | float | 返回计算得到的隐含波动率 |
| 计算失败 | None | None | 计算失败时返回 None |
范例
# 计算该期权的隐含波动率
iv = impliedvolatility("QQ10002895", 3.95, 0.52, 7, 0.0628, 0.044)
print(iv)
1
2
3
4
2
3
4
# optiongreekvalue 统计期权合约的特征值
计算指定期权合约的 Greek 特征值(Delta、Gamma、Theta、Vega、Rho)。
函数原型
optiongreekvalue(
order_book_id:
str , # 期权合约代码
srcprice:
float , # 当前标的价格
volatility:
float , # 标的历史波动率
days:
int , # 距离期权到期天数
type:
int , # 期权特征值类型
R:
float , # 无风险利率 ) ->
float # 返回期权 Greek 特征值 参数
| 参数 | 类型 | 缺省 | 必填 | 说明 |
|---|---|---|---|---|
| order_book_id | str | - | Y | 期权合约代码 |
| srcprice | float | - | Y | 当前标的物价格 |
| volatility | float | - | Y | 标的物历史波动率,可参考 volatility 方法 |
| days | int | - | Y | 期权期限(距离期权到期的天数) |
| type | int | - | Y | 期权特征值类型: 1 表示 Delta 2 表示 Gamma 3 表示 Theta 4 表示 Vega 5 表示 Rho |
| R | float | 默认系统设置 | N | 无风险利率,若不填写则使用系统默认利率(在 分析菜单 → 期权定价计算 中设置) |
返回值
| 状态 | 返回值 | 返回类型 | 说明 |
|---|---|---|---|
| 计算成功 | float | float | 返回指定期权 Greek 特征值 |
| 计算失败 | None | None | 计算失败时返回 None |
范例
# 计算该期权的 Delta 值
delta = optiongreekvalue("QQ10002895", 3.95, 0.52, 7, 1, 0.044)
print(delta)
1
2
3
4
2
3
4
# optionbsprice 用B-S模型计算一个欧式期权的理论价格
用 B-S(Black-Scholes)模型计算一个欧式期权的理论价格。股票期权和股指期权的计算中均不考虑股息影响。
函数原型
optionbsprice(
order_book_id:
str , # 期权合约代码
srcprice:
float , # 当前标的价格
volatility:
float , # 标的物历史波动率
days:
int , # 距离期权到期的天数
R:
float , # 无风险利率 ) ->
float # 返回期权理论价格 参数
| 参数 | 类型 | 缺省 | 必填 | 说明 |
|---|---|---|---|---|
| order_book_id | str | - | Y | 期权合约代码 |
| srcprice | float | - | Y | 当前标的物价格 |
| volatility | float | - | Y | 标的物历史波动率,可参考 volatility 方法 |
| days | int | - | Y | 期权期限(距离期权到期的天数) |
| R | float | 默认系统设置 | N | 无风险利率,若不填写则使用系统默认利率(在 分析菜单 → 期权定价计算 中设置) |
返回值
| 状态 | 返回值 | 返回类型 | 说明 |
|---|---|---|---|
| 计算成功 | float | float | 返回计算得到的期权理论价格 |
| 计算失败 | None | None | 计算失败时返回 None |
范例
# 使用 B-S 模型计算欧式期权理论价格
price = optionbsprice("QQ10002895", 3.95, 0.52, 7, 0.044)
print(price)
1
2
3
4
2
3
4
# optionlabel_book 取指定标的指定月份的期权合约
取指定标的在指定月份的期权合约列表。
函数原型
optionlabel_book(
code:
str , # 标的品种代码
market:
str , # 期权市场代码
month:
str , # 合约月份
type:
int , # 合约类型 ) ->
list # 返回期权合约列表 参数
| 参数 | 类型 | 缺省 | 必填 | 说明 |
|---|---|---|---|---|
| code | str | - | Y | 标的品种代码(商品期权请填写完整标的合约代码),例如 "510050" |
| market | str | - | Y | 期权品种市场,例如 "QQ" 表示股票期权市场 |
| month | str | - | Y | 指定的合约月份(仅对股票期权有效,商品期权该参数无效,置空字符串即可),例如 "2609" 表示 2026 年 9 月合约 |
| type | int | - | Y | 指定获取的合约类型: 0 表示全部期权 1 表示认购期权 2 表示认沽期权 |
返回值
| 状态 | 返回值 | 返回类型 | 说明 |
|---|---|---|---|
| 查询成功 | ['code1', 'code2', ...] | list | 返回符合条件的期权合约代码列表 |
| 未找到 | [] | list | 返回空列表 |
范例
# 返回 2026 年 1 月份的所有认购期权合约
contracts = optionlabel_book("510050", "QQ", "2601", 1)
print(contracts)
1
2
3
2
3
# opobyprirce 通过行权价获取相关期权合约
通过行权价获取相关期权合约,可以通过该方法函数方便地对标的合约的行权价相关期权合约进行快速定位。
函数原型
opobyprirce(
code:
str , # 标的品种代码
market:
str , # 期权市场代码
price:
float , # 行权价
direct:
int , # 行权方向
monthtype:
int , # 交割月份类型
check:
int =
1, # 是否进行价格检查 ) ->
str # 返回期权合约代码 参数
| 参数 | 类型 | 缺省 | 必填 | 说明 |
|---|---|---|---|---|
| code | str | - | Y | 标的品种代码(商品期权请填写完整标的合约代码),例如 "510050" |
| market | str | - | Y | 期权品种市场,例如 "QQ" 表示股票期权市场 |
| price | float | - | Y | 欲查找的期权合约行权价 |
| direct | int | - | Y | 行权方向:0 表示认购,1 表示认沽 |
| monthtype | int | - | Y | 交割月份类型选择: 0 表示系统自动选择对应行权价的合约 1 表示选择最接近当前交割月份的合约 |
| check | int | 1 | N | 价格检查: 1 表示检查行权价范围(若 price 不在标的行权价范围内则返回无效) 0 表示不进行价格检查 |
返回值
| 状态 | 返回值 | 返回类型 | 说明 |
|---|---|---|---|
| 查找成功 | "order_book_id" | str | 返回对应的期权合约代码 |
| 未找到 | "" | str | 返回空字符串 |
范例
# 返回行权价为 4.0 的认购期权合约
contract = opobyprirce("510050", "QQ", 4.0, 0, 0, 1)
print(contract)
1
2
3
2
3