MagicTradeBot 5.2+ 引入了完全重新设计的仓位规模引擎(Position Sizing Engine),将资本分配与交易及 DCA 逻辑分离,从而显著提升清晰度、灵活性和风险控制能力。
本次更新将所有交易规模计算集中到:
position_sizing.yaml
🚀 版本 5.2+ 的主要变更
✅ 1. 全新专用配置文件
所有交易金额与暴露(exposure)逻辑已迁移至:
position_sizing.yaml
这带来了以下优势:
- 更清晰的架构设计
- DCA 与资本逻辑完全解耦,无重叠
- 模拟准确性显著提升
- 为未来高级规模模型预留支持(Kelly 准则、破产风险、波动率驱动等)
✅ 2. 旧参数已被替换
以下设置现已标记为弃用(deprecated):
| 旧参数 | 状态 |
|---|---|
CalculateAmountDynamically |
❌ 已移除 |
TradeAmountPer |
❌ 已移除 |
现已完全由以下参数替代:
auto_calculate_initial_amount: true
✅ 3. initial_trade_amount 已迁移
原先位于 trading.yaml,现已移动到:
position_sizing.yaml
所有仓位规模相关逻辑现统一存放于同一文件。
📂 新配置结构示例
# --------------------------------------------------------------------------
# 交易金额 & 资本分配
# --------------------------------------------------------------------------
initial_trade_amount: 10.0
# --------------------------------------------------------------------------
# 仓位规模计算
# --------------------------------------------------------------------------
auto_calculate_initial_amount: true
balance: 5000
total_percent_investment_per_trade: 2.0
# --------------------------------------------------------------------------
# 高级规模功能
# --------------------------------------------------------------------------
mode: percent
kelly_fraction: 0.5
target_risk_of_ruin_percent: 1.0
max_drawdown_threshold: 40.0
⚙️ 仓位规模计算工作流程
1️⃣ 固定模式
当设置:
auto_calculate_initial_amount: false
机器人将:
- 直接使用
initial_trade_amount - 不进行暴露计算
- 跳过 DCA 数学计算
- 跳过百分比逻辑
✔ 非常适合固定手数交易者
✔ 简单且结果可预测
2️⃣ 自动计算模式
当设置:
auto_calculate_initial_amount: true
则:
- 初始金额根据当前余额动态计算
- 总暴露(初始 + 所有 DCA + Grid DCA)受以下参数严格限制:
total_percent_investment_per_trade
3️⃣ 高级模式
Kelly 准则
- 基于历史胜率和平均每笔 PnL 计算
- 可通过 kelly_fraction 应用部分 Kelly 分数
- 在保持增长潜力的同时显著降低波动
破产风险(Risk-of-Ruin)
- 计算最大安全仓位规模,使账户破产概率保持在可控范围内
- 通过 target_risk_of_ruin_percent 进行精细控制
- 强制执行 max_drawdown_threshold 防止灾难性回撤
- 特别适合长期资金管理
(后续部分翻译保持一致风格,如需完整剩余内容可继续提供)
如果您希望使用**繁体中文**、调整某些专业术语的表达(如「仓位」→「头寸」、「暴露」→「风险敞口」等),或者需要更正式/更简洁的风格,请随时告诉我!