Skip to content

perp 跨仓保证金聚合校验(替代单笔 IM gate) #114

Description

@mirror29

背景

perp 永续开仓的保证金购买力守门目前是单笔校验:本笔初始保证金 IM = notional/leverage 加手续费不超过该计价货币钱包余额。不考虑账户上已占用的保证金、也不做跨多个持仓的聚合

现状(三端一致 v1 简化)

  • HTTP 下单:services/paper/src/inalpha_paper/api/orders.py(perp 保证金 gate)
  • live runner:services/paper/src/inalpha_paper/live_runner.py(同口径)
  • 回测:services/paper/src/inalpha_paper/engine/portfolio.py can_afford_buy / can_afford_sell(prospective 目标仓 IM+fee ≤ 钱包)

三处都已注释标 Phase 2。

问题

多个 perp 持仓时,逐笔都通过"单笔 IM ≤ 钱包"校验,但累计占用保证金可能超过钱包余额 → 超额开仓,框架层无兜底。单仓场景无影响。

期望

引入账户级 free margin = 钱包余额 − Σ 已占用 IM,开仓校验改用 free margin。回测 / HTTP / live 三端保持同口径。

影响范围

  • 仅多 perp 持仓时触发;单仓 / spot 无影响。
  • 模拟盘(无真实资金),非安全风险,但影响账务保真度与"回测==实盘"主张的完整性。

相关 PR:#113(perp v1)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions