基于恐惧贪婪指数的低频仓位再平衡系统 — 从三层信号到纯 F&G,从硬编码到配置化
加密货币市场极度情绪化——恐惧时无人敢买,贪婪时无人愿卖。传统的技术分析(MA 金叉/死叉/RSI)在趋势市中有效,但在极端行情中完全失效。
核心假设:恐惧贪婪指数(Fear & Greed Index)是一个被低估的反向指标——当 F&G ≤ 25(极度恐惧)时,往往是历史最佳买入点;当 F&G ≥ 85(极度贪婪)时,是系统性卖出信号。用代码执行这个简单的规则,可以克服人性的情绪偏差。
重要约束:Bot 只输出信号,不自动下单。最终交易决策始终在人——工具解决纪律问题,不解决判断问题。
最初设计了三层过滤:
Layer 1: 周线 MA50/200 金叉/死叉 → 牛市/熊市判定 Layer 2: F&G 恐惧贪婪指数 → 仓位倍数 (0x / 0.5x / 1x / 1.5x / 2.5x) Layer 3: F&G ≥ 85 持续 → 极端卖出
回测 2017-2026(457周):FG-Trend +5.4% vs HODL +1810% vs DCA +347%。根因:MA200 需要 200 周数据 → 2021 年前无买入信号,完美错过了整个牛市。Death cross 在 BTC 39K→24K 后才触发,卖出过晚。
结论:MA 趋势过滤在 BTC 上是反优化——它阻止了恐惧底部的买入。
去掉 MA 过滤层,改为日线级别纯 F&G 驱动的仓位目标:
F&G ≤ 25 → target = base × 2.5 (极度恐惧, 全力买入) 26 ≤ F&G ≤ 44 → target = base × 1.5 (恐惧, 积极加仓) 45 ≤ F&G ≤ 74 → target = base × 1.0 (中性, 保持) 75 ≤ F&G ≤ 84 → target = base × 0.5 (贪婪, 减半) F&G ≥ 85 → target = 0 (极度贪婪, 暂停) F&G ≥ 85 连续 5 天 → 额外减仓 20%
回测结果(日线,2018-2026):
| 策略 | CAGR | Sharpe | MaxDD |
|---|---|---|---|
| HODL (持有不动) | — | — | — |
| 纯 F&G 仓位目标 | 16.8% | 0.52 | — |
| F&G + MA 过滤 | 10.4% | 0.39 | — |
| F&G + 死叉清仓 | 5.4% | 0.10 | 75.2% |
F&G 指数:alternative.me(主力)→ 失败时自动 fallback → CoinMarketCap(备用)。价格数据:Binance API 日线 OHLCV。因子模块:CoinGecko BTC 主导率 + 自算 RSI-14 + 成交量趋势。
F&G → multiplier → target_allocation。多币种支持:BTC(base=85%)、ETH(base=75%)、SOL(base=60%)——高波动币种基准仓位更低。所有参数在 config.yaml 集中管理。
综合评分 0-100:F&G(40%)+ RSI(25%)+ BTC 主导率(15%)+ 成交量趋势(20%)。权重可配置。评分仅作参考,不干预 F&G 仓位目标的主逻辑。
Qwen3.5-9B (QLoRA) 训练 96 条金融研判样本。输入:BTC 价格 + F&G + RSI + BTC.D + 成交量 → 输出:判断(恐惧/贪婪/中性)+ 建议 + 理由。LLM 替代手工因子加权,提供多因子综合研判。
每天 00:00 自动运行信号计算,仅当 F&G 区间变化 ≥ 15 或极端信号(极度恐惧/极度贪婪)时推送通知到 QQ。策略纪律 ≥ 频繁交易。
方法:不是收集真实交易数据,而是基于 12 条手工构造的金融研判模板,在规则边界内随机扰动指标数值。
原始 12 条模板(5 个 F&G 区间 × 不同 RSI/量/BTC.D 组合)
↓ 规则变换(同区间内随机扰动)
96 条变体(极端恐惧 24 + 恐惧 24 + 中性 16 + 贪婪 16 + 极贪 16)
本质:教模型"读盘规则"——F&G=28 恐惧 → 该买——而不是背"BTC $77K 该买"这个具体数字。每条变体保留判断逻辑一致但指标数据不同。
signal_bot.py — 主信号引擎。--assets BTC,ETH,SOL/ALL,双数据源 fallback,config.yaml 驱动factors.py — 因子模块。BTC Dominance / RSI-14 / 成交量趋势 / CMC F&G 冗余backtest.py — 日线/周线回测。--asset BTC/ETH/SOL,三策略对比config.yaml — 统一参数管理。F&G 阈值/仓位倍数/因子权重/币种配置data_augment.py — 金融研判数据扩充(12→96条),Qwen QLoRA 训练用expanded_finllm_data.json — 96 条扩充训练数据