3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 JoinQuant(聚宽)量化交易平台中,进行期货策略开发和风险控制时,合理设置保证金比例至关重要。聚宽提供了 set_option API,允许开发者灵活地为全局期货、特定期货品种以及特定期货合约设定不同的保证金比例。
在聚宽策略中,使用 set_option('futures_margin_rate', value) 及其扩展语法来调整保证金比例。
set_option('futures_margin_rate', value)set_option('futures_margin_rate.品种代码', value)set_option('futures_margin_rate.具体合约代码', value)注意:value 为 float 类型,例如 0.1 代表 10% 的保证金比例。
可以在策略的 initialize(context) 函数中进行如下设置:
def initialize(context):
# 设定账户为期货账户
set_subportfolios([SubPortfolioConfig(cash=context.portfolio.starting_cash, type='futures')])
# 1. 设定所有期货的默认保证金比例为 10%
set_option('futures_margin_rate', 0.10)
# 2. 单独设定股指期货(IF)品种的保证金比例为 15%
set_option('futures_margin_rate.IF', 0.15)
# 3. 单独设定黄金(AU)品种所有合约的保证金比例为 9%
set_option('futures_margin_rate.AU', 0.09)
# 4. 单独设定特定合约 AU1709 的保证金比例为 8%
set_option('futures_margin_rate.AU1709', 0.08)
set_option 设置,股指期货默认保证金比例为 0.15 (15%);商品期货各品种(如 RB、AU、CU 等)按平台内置的默认比例(如 RB 为 5%,AU 为 4%)执行。在交易过程中,可以随时检查子账户的保证金是否低于预警线,以防强平风险:
# 检查子账户 0 的保证金是否低于 20%
is_warning = context.subportfolios[0].is_dangerous(0.2)
if is_warning:
log.warn("当前保证金率低于 20%,注意平仓风控!")