🚀 AI 一键生成 joinquant 策略代码

JoinQuant 平台 margincash_margin_rate 设置 0.1 是 10 倍杠杆吗?

joinquant | 发布时间: 2026/5/22
以下内容由 EasyQuant 生成。

问题描述

请问下margincash_margin_rate的设置问题

请问下这个问题,margincash_margin_rate和marginsec_margin_rate用得有点迷,设置0.1难道不是可以10倍杠杆的意思吗?谢谢

解决方案

您的理解是完全正确的!在 JoinQuant(聚宽)平台中,将 margincash_margin_ratemarginsec_margin_rate 设置为 0.1,确实意味着您开启了 10倍杠杆

下面为您详细解释这两个参数的含义以及杠杆的计算方式:

1. 参数含义解析

  • margincash_margin_rate融资保证金比率。指您向券商借钱买入股票(融资买入)时,需要提供的自有资金比例。系统默认值为 1.0(即 100%)。
  • marginsec_margin_rate融券保证金比率。指您向券商借股票卖出(融券卖出)时,需要提供的自有资金比例。系统默认值为 1.0(即 100%)。

2. 杠杆倍数计算公式

杠杆倍数与保证金比率呈倒数关系:

杠杆倍数 = 1 / 保证金比率

  • 如果您设置比率为 1.0(默认),杠杆倍数 = 1 / 1.0 = 1 倍(即没有额外杠杆,借多少钱需要多少本金)。
  • 如果您设置比率为 0.5,杠杆倍数 = 1 / 0.5 = 2 倍。
  • 如果您设置比率为 0.1,杠杆倍数 = 1 / 0.1 = 10 倍

3. 代码设置示例

在策略的 initialize 函数中,您可以通过 set_option 来修改这些比率:

def initialize(context):
    # 设置融资保证金比率为 10% (即 10 倍杠杆)
    set_option('margincash_margin_rate', 0.1)
    
    # 设置融券保证金比率为 10% (即 10 倍杠杆)
    set_option('marginsec_margin_rate', 0.1)
    
    # 别忘了,如果要进行融资融券交易,需要将子账户类型设置为 'stock_margin'
    init_cash = context.portfolio.starting_cash 
    set_subportfolios([SubPortfolioConfig(cash=init_cash, type='stock_margin')])

⚠️ 温馨提示与实盘差异

虽然在 JoinQuant 的回测和模拟环境中,您可以自由地将保证金比率设置为 0.1 来体验 10 倍杠杆的威力,但在真实的 A 股市场中,融资融券是有严格监管限制的:

  1. 实际业务限制:目前国内券商的融资保证金比例通常不得低于 100%(即 1.0),融券保证金比例通常不得低于 50%(近期政策有收紧趋势,具体以券商规定为准)。这意味着在实盘中,您很难获得超过 1 倍的融资杠杆(即自有资金 100 万,最多再借 100 万,总资产 200 万)。
  2. 维持担保比例:除了开仓时的保证金比率,融资融券账户还有“维持担保比例”的考核(通常警戒线为 130%,平仓线为 115%)。如果使用极高的杠杆(如 10 倍),标的稍微波动 10% 就会导致爆仓(强平)。

总结:在回测中设置 0.1 确实是 10 倍杠杆,可以用于测试极端策略或放大收益曲线,但如果您的策略最终目标是实盘,建议将参数保持在默认值 1.0 附近,以贴近真实市场环境。