请问用哪个api可以获取指定期货合约的乘数,即size?
问题描述
解决方案
在 JoinQuant(聚宽)平台上,要获取指定期货合约的乘数(即合约规模 Size),您可以使用 get_security_info API。
调用该 API 会返回一个标的信息对象,该对象包含一个 multiplier 属性,代表该标的的合约乘数(对于股票和基金,该值通常为 1;对于期货,该值即为对应的合约乘数)。
API 语法
info = get_security_info(code)
multiplier = info.multiplier
代码示例
以下是一个在策略中获取并打印特定期货合约乘数的完整示例:
def initialize(context):
# 获取沪深300股指期货主力合约的标的信息
# 假设当前主力合约为 IF1909.CCFX
future_code = 'IF1909.CCFX'
# 调用 get_security_info 获取标的信息对象
security_info = get_security_info(future_code)
# 提取合约乘数 (size)
contract_multiplier = security_info.multiplier
# 打印输出
log.info(f"期货合约 {future_code} 的名称为: {security_info.display_name}")
log.info(f"期货合约 {future_code} 的合约乘数(Size)为: {contract_multiplier}")
补充说明
- 合约价值计算:在期货交易中,合约的实际价值计算公式为
标的价值 = 最新价 * 手数 * 保证金率 * 乘数 (multiplier)。聚宽的底层引擎在处理order_value等按价值下单的 API 时,也会自动读取该乘数进行换算。 - 适用范围:
get_security_info不仅适用于期货,也适用于股票、基金、指数等。对于非期货品种,其multiplier属性默认返回 1。