# 仓位配置方案 UPDATED: 2026-03-28 ## 当前方案: Kelly公式型 ### 配置详情 | 信号等级 | 置信度范围 | 保证金比例 | $1000账户示例 | 5x杠杆仓位 | 10x杠杆仓位 | |---------|----------|----------|-------------|-----------|------------| | **A级** | ≥90分 | **10%** | $100 | $500 | $1,000 | | **B级** | 70-89分 | **6%** | $60 | $300 | $600 | | **C级** | <70分 | **2%** | $20 | $100 | $200 | ### 特点 - ✅ **最大化资金利用率**: A级信号用10%仓位,充分利用高质量机会 - ✅ **分级明确**: 不同信号等级差异明显(10% / 6% / 2%) - ✅ **适合小资金**: $1000账户也能开有意义仓位($500-$1000) - ⚠️ **高风险**: 单笔最大亏损可能较大,需严格止损 ### 理论基础: Kelly公式 Kelly公式用于计算最优仓位大小: ``` f* = (p × b - q) / b 其中: f* = 最优仓位比例 p = 胜率 q = 败率 (1 - p) b = 盈亏比 (平均盈利/平均亏损) ``` **假设参数**: - A级信号胜率: 65%, 盈亏比 2.0 → Kelly建议 ~22% (我们用10%更保守) - B级信号胜率: 55%, 盈亏比 1.5 → Kelly建议 ~10% (我们用6%) - C级信号胜率: 50%, 盈亏比 1.2 → Kelly建议 ~3% (我们用2%) ## 实际案例 ### 案例 1: Bitget BTC, $1074账户, A级信号 ``` 信号置信度: 92% (A级) 账户余额: $1,074 可用余额: $1,074 Step 1: 基础保证金 = $1,074 × 10% = $107.40 Step 2: 最小保证金限制 (BTC) = $85 → 不调整 Step 3: 最大保证金限制 = $1,074 × 10% = $107.40 → 不调整 Step 4: 杠杆限制 (5x) → 不调整 最终保证金: $107.40 杠杆: 5x 持仓价值: $537 BTC数量: 0.00631 BTC 合约张数: 0 张 ❌ 问题: 0.00631 BTC / 0.01 BTC/张 = 0.631张 → 不足1张 解决: 调整保证金到 $170 → 0.01 BTC = 1张 ✅ ``` ### 案例 2: Hyperliquid ETH, $1000账户, B级信号 ``` 信号置信度: 78% (B级) 账户余额: $1,000 可用余额: $1,000 Step 1: 基础保证金 = $1,000 × 6% = $60 Step 2: 最小保证金限制 = $50 → 不调整 Step 3: 最大保证金限制 = $1,000 × 10% = $100 → 不调整 最终保证金: $60 杠杆: 5x 持仓价值: $300 ETH数量: 0.0857 ETH ✅ (Hyperliquid支持任意大小) ``` ### 案例 3: PaperTrading SOL, $10000账户, C级信号 ``` 信号置信度: 65% (C级) 账户余额: $10,000 可用余额: $10,000 Step 1: 基础保证金 = $10,000 × 2% = $200 Step 2: 无最小限制 (模拟盘) Step 3: 最大保证金限制 = $10,000 × 5% = $500 → 不调整 最终保证金: $200 杠杆: 5x 持仓价值: $1,000 SOL数量: 7.14 SOL ✅ ``` ## 风险管理 ### 单笔最大亏损计算 假设止损设置为-3%: | 信号等级 | 保证金 | 杠杆 | 持仓价值 | -3%亏损 | 占总资金% | |---------|--------|-----|---------|---------|----------| | **A级** | $100 | 5x | $500 | -$15 | -1.5% | | **A级** | $100 | 10x | $1,000 | -$30 | -3.0% | | **B级** | $60 | 5x | $300 | -$9 | -0.9% | | **C级** | $20 | 5x | $100 | -$3 | -0.3% | ### 最大持仓限制 除了保证金比例,还有其他限制: 1. **平台最大保证金**: 单笔不超过余额的10% (Bitget/Hyperliquid) 2. **杠杆限制**: 总杠杆不超过10x 3. **最小保证金**: - Bitget BTC: $85 (10x) / $170 (5x) - Hyperliquid: $50 (任意杠杆) 4. **合约规格** (Bitget): - 必须是整数张 - BTC: 0.01 BTC/张 - ETH: 0.1 ETH/张 - SOL: 1 SOL/张 ## 与其他方案对比 ### 方案对比表 | 方案 | A级 | B级 | C级 | $1000账户A级仓位(5x) | 特点 | |------|-----|-----|-----|---------------------|------| | **保守型** | 3% | 2% | 1% | $150 | 风险低,收益慢 | | **平衡型** | 5% | 3% | 1% | $250 | 风险收益平衡 | | **激进型** | 8% | 5% | 2% | $400 | 高收益,高风险 | | **Kelly型** (当前) | 10% | 6% | 2% | $500 | 最大化资金效率 | ### 资金曲线对比 假设10次A级信号,胜率60%,平均盈利4%,平均亏损3%: ``` 保守型 (3%): - 盈利: 6次 × $150 × 4% = $36 - 亏损: 4次 × $150 × 3% = -$18 - 净收益: +$18 (1.8%) Kelly型 (10%): - 盈利: 6次 × $500 × 4% = $120 - 亏损: 4次 × $500 × 3% = -$60 - 净收益: +$60 (6.0%) ``` **Kelly型收益是保守型的3.3倍**,但最大回撤也会更大。 ## 调整建议 ### 何时调整 1. **降低仓位** (回到平衡型): - 连续亏损 > 5次 - 账户回撤 > 15% - 市场极度波动 (VIX > 40) 2. **提高杠杆** (保持10%保证金): - 使用10x杠杆替代5x - A级信号仓位: $500 → $1,000 - 适合高置信度信号 (≥95%) ### 动态调整策略 ```python def get_dynamic_position_size(confidence, account, recent_performance): """根据近期表现动态调整仓位""" # 基础比例 (Kelly型) if confidence >= 90: base_pct = 0.10 elif confidence >= 70: base_pct = 0.06 else: base_pct = 0.02 # 根据近期表现调整 win_rate = recent_performance.get('win_rate_7d', 0.5) if win_rate < 0.4: # 近期表现差,降低仓位 base_pct *= 0.7 elif win_rate > 0.7: # 近期表现好,提高仓位 base_pct *= 1.2 return account['available'] * base_pct ``` ## 实施检查清单 - [x] 修改 `crypto_agent.py` 中的 `_calculate_position_size()` 方法 - [x] 更新文档说明新比例 - [x] 测试A级信号仓位计算 - [x] 测试B级信号仓位计算 - [x] 测试C级信号仓位计算 - [x] 验证Bitget合约张数计算 - [x] 验证Hyperliquid任意大小支持 - [ ] 实盘测试并监控 - [ ] 根据实盘表现微调 ## 相关配置文件 ```python # crypto_agent.py # Kelly公式型配置 if confidence >= 90: base_margin_pct = 0.10 # A级: 10% elif confidence >= 70: base_margin_pct = 0.06 # B级: 6% else: base_margin_pct = 0.02 # C级: 2% # 平台限制 PLATFORM_RULES = { 'Bitget': { 'max_margin_pct': 0.10, # 单笔最大10% 'min_margin': { 'BTC': 85, # 10x杠杆 'ETH': 35, 'SOL': 14 } }, 'Hyperliquid': { 'max_margin_pct': 0.10, 'min_margin': 50 # 通用最小$50 } } ``` ## 相关文档 - [仓位计算逻辑](./POSITION_SIZE_LOGIC.md) - [执行器优化总结](./EXECUTOR_OPTIMIZATION_SUMMARY.md) - [移动止损功能](./MOVE_STOP_LOSS_FEATURE.md)