← 全部 Cases · 今日流程

Market Case · 2026-09-14

Day 51

Day 51
9/9 Steps

Regime · Hypothesis

R0 Regime
AI Expansion (82.0%)
Hypothesis
AI Chip Selloff dominates today despite macro tailwinds?
ID
H-2026-09-14-001

Labels · Attribution

真正 Driver
AI Chip Selloff
Hypothesis 结果
部分对
Scenario 预测
A
Scenario 实际
C
Scenario 命中
✗
AI 贡献
53%
Bond
21%

Surprise · Lesson

Surprise:No major surprises vs typical driver mix

Lesson:AI Expansion Regime 下,单日 SMH/NVDA 抛售可压过 Macro 利好,指数分化(Dow+ / QQQ-)比「大盘涨跌」更有信息量

Evidence / Counter

Evidence

  • VIX=17.5 (low fear)
  • Breadth 71% (broad participation)

Counter

  • VIX↑ 10.5% (risk-off pressure)
  • 10Y=4.95% (elevated rates)
  • DXY↑ 0.38% (dollar strength headwind)

Step 快捷入口

原始 JSON
{
  "date": "2026-09-14",
  "features": {
    "dgs10": 4.95,
    "dgs2": null,
    "vix": 17.5,
    "vix_chg": 10.48,
    "qqq_chg": 0.1,
    "smh_chg": -3.3,
    "nvda_chg": -3.49,
    "spy_chg": 0.0,
    "oil_chg": 0.0,
    "dxy_chg": 0.38,
    "breadth_proxy": 0.7142857142857143,
    "qqq_gap": -0.7,
    "news_headline_count": 29,
    "news_bearish_ratio": 0.0,
    "news_ai_mentions": 39,
    "news_macro_mentions": 12,
    "news_oil_mentions": 2,
    "news_risk_mentions": 2
  },
  "regime": {
    "label": "AI Expansion",
    "confidence": 0.82
  },
  "hypothesis": {
    "id": "H-2026-09-14-001",
    "statement": "AI Chip Selloff dominates today despite macro tailwinds?",
    "evidence": [
      "VIX=17.5 (low fear)",
      "Breadth 71% (broad participation)"
    ],
    "counter_evidence": [
      "VIX↑ 10.5% (risk-off pressure)",
      "10Y=4.95% (elevated rates)",
      "DXY↑ 0.38% (dollar strength headwind)"
    ],
    "confidence": 0.51,
    "status": "待验证"
  },
  "morning": {
    "bias": "Strong Bear",
    "total": -5,
    "driver_type": "Fed",
    "daily_driver": "Fed Headlines",
    "best_opportunity": {
      "direction": "NO TRADE",
      "symbol": "—",
      "instrument": "—",
      "horizon": "—",
      "confidence": 45,
      "entry": "—",
      "stop": "—",
      "target": "—",
      "targets": [],
      "duration": "—",
      "why": [
        "今日无任何标的达到交易阈值"
      ],
      "why_chain": "今日无任何标的达到交易阈值",
      "avoid": [],
      "one_liner": "今日无任何标的达到交易阈值",
      "p16_gate": "No Trade",
      "threshold_message": "今日无任何标的达到交易阈值",
      "advisory": true
    },
    "best_trades": {
      "primary": null,
      "secondary": null,
      "watchlist": null,
      "index_trade": "NO TRADE",
      "p16_gate": "No Trade",
      "threshold_message": "今日无任何标的达到交易阈值",
      "stock_trades": [],
      "top_trades": [
        {
          "rank": 1,
          "symbol": "MU",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 80,
          "confidence_stars": "★★★★☆",
          "expected_move": "+2.38%",
          "expected_return_pct": 2.38,
          "win_prob": 80.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 20.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": 6.0
              }
            ],
            "total": 80.0,
            "raw_total": 80.0,
            "was_clamped": false
          },
          "risk_reward": 1.41,
          "final_score": 0.7,
          "trade_action": "Pass",
          "relative_strength": -5.21,
          "entry": "Below 925.9 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 925.76,
          "entry_zone": {
            "low": 925.6,
            "high": 925.92,
            "mid": 925.76,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 925.92
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 925.6
              }
            ],
            "display": "Entry Zone 925.60–925.92",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "941.4 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 941.44,
          "target": "903.8 (预期收盘)",
          "target_source": "expected_close",
          "target_price": 903.75,
          "targets": [
            "903.8 (预期收盘)"
          ],
          "level_anchors": {
            "vwap": 925.92,
            "orb_high": 941.44,
            "orb_low": 925.6,
            "prev_high": 977.41,
            "prev_low": 977.41,
            "prior_close": 977.41,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -5.21%",
            "RS弱于SMH -2.76%",
            "Volume 信号",
            "VIX 走高",
            "期望R 0.03 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -5.21% · RS弱于SMH -2.76% · Volume 信号 · VIX 走高",
          "why_vs_runner_up": "MU RS -5.2% vs ARM -2.7%;ER 1.7% vs 0.7%;higher beta (8.6 vs 4.9);relative weakness play",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -5.21,
            "relative_strength_vs_smh": -2.76,
            "relative_weakness_score": 6.87,
            "gap_pct": -4.57,
            "beta_proxy": 8.55,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 10.48,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(80%) × ER(1.7%) × rr_weight(0.5) / 100",
          "expected_high": 975.26,
          "expected_low": 903.75,
          "expected_close": 903.75,
          "current_price": 919.74,
          "upside_pct": 1.74,
          "downside_risk_pct": 6.04,
          "why_factors": [
            "RS弱于QQQ -5.21%",
            "RS弱于SMH -2.76%",
            "Volume 信号",
            "VIX 走高",
            "期望R 0.03 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -5.21% · RS弱于SMH -2.76% · Volume 信号 · VIX 走高",
          "gap_pct": -4.57,
          "rr_display": {
            "reward_risk_ratio": 1.4,
            "risk_reward_ratio": 0.71,
            "reward_per_share": 22.01,
            "risk_per_share": 15.68,
            "label_reward_risk": "Reward/Risk 1.40",
            "label_risk_reward": "Risk:Reward 1:0.71",
            "display": "Reward/Risk 1.40 · Risk:Reward 1:0.71",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Fed Headlines · Oil Selloff",
          "invalidation": "Close above stop $941.44",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 925.76,
              "source": "vwap",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 925.6,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 925.92,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "stop": {
              "price": 941.44,
              "source": "orb_high",
              "confidence": 77,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 941.44,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "target": {
              "price": 903.75,
              "source": "expected_close",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_close",
                  "label": "Expected Close",
                  "price": 903.75,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(925.76-903.75)/925.76=2.38%",
          "heuristic_expected_return_pct": 1.74,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 MU:在 925.76 附近入场,目标 903.75,预期 +2.38%",
          "expected_r": 0.928,
          "rr_below_hard_min": true,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 55.5,
            "shares": 6,
            "contracts": 0,
            "max_loss_usd": 94.08,
            "win_usd": 132.06,
            "loss_usd": 94.08,
            "expected_value_usd": 86.83,
            "risk_per_share": 15.68,
            "reward_per_share": 22.01,
            "rr_display": {
              "reward_risk_ratio": 1.4,
              "risk_reward_ratio": 0.71,
              "reward_per_share": 22.01,
              "risk_per_share": 15.68,
              "label_reward_risk": "Reward/Risk 1.40",
              "label_risk_reward": "Risk:Reward 1:0.71",
              "display": "Reward/Risk 1.40 · Risk:Reward 1:0.71",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$132 / Loss -$94"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 55.5,
            "contracts": 0,
            "shares": 6,
            "max_loss_usd": 94.08,
            "size_label": "None",
            "display": "Risk 1.0% → Position 55.5% → 6 unit(s) → Max Loss $94.08"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "relative_strength",
              "label": "Highest Relative Strength",
              "primary_value": -5.21,
              "runner_up_value": 4.33,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "ARM",
              "rank": 2,
              "reasons": [
                "Win% 80 vs 81",
                "ER 2.4% vs 0.7%",
                "Score 0.7 vs 0.26",
                "RS -5.2% vs -2.7%",
                "R:R 1.41 vs 0.1"
              ],
              "summary": "Why MU over ARM: Win% 80 vs 81 · ER 2.4% vs 0.7% · Score 0.7 vs 0.26 · RS -5.2% vs -2.7% · R:R 1.41 vs 0.1"
            },
            {
              "symbol": "AVGO",
              "rank": 3,
              "reasons": [
                "Win% 80 vs 72",
                "ER 2.4% vs 0.7%",
                "Score 0.7 vs 0.25",
                "RS -5.2% vs -2.5%",
                "R:R 1.41 vs 0.22"
              ],
              "summary": "Why MU over AVGO: Win% 80 vs 72 · ER 2.4% vs 0.7% · Score 0.7 vs 0.25 · RS -5.2% vs -2.5% · R:R 1.41 vs 0.22"
            },
            {
              "symbol": "AMD",
              "rank": 4,
              "reasons": [
                "Win% 80 vs 72",
                "ER 2.4% vs 0.7%",
                "Score 0.7 vs 0.23",
                "RS -5.2% vs -2.5%",
                "R:R 1.41 vs 0.14"
              ],
              "summary": "Why MU over AMD: Win% 80 vs 72 · ER 2.4% vs 0.7% · Score 0.7 vs 0.23 · RS -5.2% vs -2.5% · R:R 1.41 vs 0.14"
            },
            {
              "symbol": "SMH",
              "rank": 5,
              "reasons": [
                "Win% 80 vs 72",
                "ER 2.4% vs 0.6%",
                "Score 0.7 vs 0.22",
                "RS -5.2% vs -2.5%",
                "R:R 1.41 vs 0.17"
              ],
              "summary": "Why MU over SMH: Win% 80 vs 72 · ER 2.4% vs 0.6% · Score 0.7 vs 0.22 · RS -5.2% vs -2.5% · R:R 1.41 vs 0.17"
            },
            {
              "symbol": "TQQQ",
              "rank": 6,
              "reasons": [
                "Win% 80 vs 72",
                "ER 2.4% vs 0.5%",
                "Score 0.7 vs 0.18",
                "RS -5.2% vs -1.5%",
                "R:R 1.41 vs 0.16"
              ],
              "summary": "Why MU over TQQQ: Win% 80 vs 72 · ER 2.4% vs 0.5% · Score 0.7 vs 0.18 · RS -5.2% vs -1.5% · R:R 1.41 vs 0.16"
            }
          ],
          "rank_summary": "MU ranked #1 because weakest RS",
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 80.0,
            "sample_size": 0,
            "confidence_interval": null,
            "source": "rules_fallback",
            "match_quality": "insufficient",
            "win_prob_source": "rules",
            "disclaimer": "No historical matches; using rules breakdown"
          },
          "ev_distribution": {
            "expected_value_usd": 86.83,
            "win_scenario_usd": 132.06,
            "loss_scenario_usd": 94.08,
            "win_prob_pct": 80.0,
            "display": "EV $+87 (win +$132 @ 80.0% · loss -$94)"
          },
          "entry_status": {
            "current_price": 919.74,
            "ideal_entry": 925.76,
            "distance_pct": 0.65,
            "remaining_er_pct": 1.74,
            "live_expected_return_pct": 1.74,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 925.6,
            "zone_high": 925.92,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 2,
          "symbol": "ARM",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 81,
          "confidence_stars": "★★★★☆",
          "expected_move": "+1.34%",
          "expected_return_pct": 1.34,
          "win_prob": 81.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 16.0
              },
              {
                "factor": "Gap",
                "key": "gap",
                "points": 5.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": 6.0
              }
            ],
            "total": 81.0,
            "raw_total": 81.0,
            "was_clamped": false
          },
          "risk_reward": 0.38,
          "final_score": 0.26,
          "trade_action": "Pass",
          "relative_strength": -2.68,
          "entry": "Below 247.3 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 247.33,
          "entry_zone": {
            "low": 246.59,
            "high": 248.07,
            "mid": 247.33,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 247.33
              }
            ],
            "display": "Entry Zone 247–248",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "255.9 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 255.95,
          "target": "244.0 (预期收盘)",
          "target_source": "expected_close",
          "target_price": 244.01,
          "targets": [
            "244.0 (预期收盘)"
          ],
          "level_anchors": {
            "vwap": 247.33,
            "orb_high": 255.95,
            "orb_low": 245.5,
            "prev_high": 254.18,
            "prev_low": 254.18,
            "prior_close": 254.18,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -2.68%",
            "Gap 未过度延伸",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.11 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -2.68% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -2.68,
            "relative_strength_vs_smh": -0.23,
            "relative_weakness_score": 2.82,
            "gap_pct": -1.11,
            "beta_proxy": 4.88,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 10.48,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(81%) × ER(0.7%) × rr_weight(0.5) / 100",
          "expected_high": 264.79,
          "expected_low": 243.65,
          "expected_close": 244.01,
          "current_price": 245.61,
          "upside_pct": 0.8,
          "downside_risk_pct": 7.81,
          "why_factors": [
            "RS弱于QQQ -2.68%",
            "Gap 未过度延伸",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.11 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -2.68% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
          "gap_pct": -1.11,
          "rr_display": {
            "reward_risk_ratio": 0.39,
            "risk_reward_ratio": 2.56,
            "reward_per_share": 3.32,
            "risk_per_share": 8.62,
            "label_reward_risk": "Reward/Risk 0.39",
            "label_risk_reward": "Risk:Reward 1:2.56",
            "display": "Reward/Risk 0.39 · Risk:Reward 1:2.56",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Fed Headlines · Oil Selloff",
          "invalidation": "Close above stop $255.95",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 247.33,
              "source": "vwap",
              "confidence": 77,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 247.33,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "stop": {
              "price": 255.95,
              "source": "orb_high",
              "confidence": 77,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 255.95,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "target": {
              "price": 244.01,
              "source": "expected_close",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_close",
                  "label": "Expected Close",
                  "price": 244.01,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(247.33-244.01)/247.33=1.34%",
          "heuristic_expected_return_pct": 0.65,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 ARM:在 247.33 附近入场,目标 244.01,预期 +1.34%",
          "expected_r": 0.1178,
          "rr_below_hard_min": true,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 27.2,
            "shares": 11,
            "contracts": 0,
            "max_loss_usd": 94.82,
            "win_usd": 36.52,
            "loss_usd": 94.82,
            "expected_value_usd": 11.57,
            "risk_per_share": 8.62,
            "reward_per_share": 3.32,
            "rr_display": {
              "reward_risk_ratio": 0.39,
              "risk_reward_ratio": 2.56,
              "reward_per_share": 3.32,
              "risk_per_share": 8.62,
              "label_reward_risk": "Reward/Risk 0.39",
              "label_risk_reward": "Risk:Reward 1:2.56",
              "display": "Reward/Risk 0.39 · Risk:Reward 1:2.56",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$37 / Loss -$95"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 27.2,
            "contracts": 0,
            "shares": 11,
            "max_loss_usd": 94.82,
            "size_label": "None",
            "display": "Risk 1.0% → Position 27.2% → 11 unit(s) → Max Loss $94.82"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 8.61,
              "runner_up_value": 7.78,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "win_prob",
              "label": "Highest Probability",
              "primary_value": 81.0,
              "runner_up_value": 80.0,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "MU",
              "rank": 1,
              "reasons": [
                "Win% 81 vs 80",
                "ER 1.3% vs 1.7%",
                "Score 0.26 vs 0.7",
                "RS -2.7% vs -5.2%",
                "R:R 0.38 vs 0.29"
              ],
              "summary": "Why ARM over MU: Win% 81 vs 80 · ER 1.3% vs 1.7% · Score 0.26 vs 0.7 · RS -2.7% vs -5.2% · R:R 0.38 vs 0.29"
            },
            {
              "symbol": "AVGO",
              "rank": 3,
              "reasons": [
                "Win% 81 vs 72",
                "ER 1.3% vs 0.7%",
                "Score 0.26 vs 0.25",
                "RS -2.7% vs -2.5%",
                "R:R 0.38 vs 0.22"
              ],
              "summary": "Why ARM over AVGO: Win% 81 vs 72 · ER 1.3% vs 0.7% · Score 0.26 vs 0.25 · RS -2.7% vs -2.5% · R:R 0.38 vs 0.22"
            },
            {
              "symbol": "AMD",
              "rank": 4,
              "reasons": [
                "Win% 81 vs 72",
                "ER 1.3% vs 0.7%",
                "Score 0.26 vs 0.23",
                "RS -2.7% vs -2.5%",
                "R:R 0.38 vs 0.14"
              ],
              "summary": "Why ARM over AMD: Win% 81 vs 72 · ER 1.3% vs 0.7% · Score 0.26 vs 0.23 · RS -2.7% vs -2.5% · R:R 0.38 vs 0.14"
            },
            {
              "symbol": "SMH",
              "rank": 5,
              "reasons": [
                "Win% 81 vs 72",
                "ER 1.3% vs 0.6%",
                "Score 0.26 vs 0.22",
                "RS -2.7% vs -2.5%",
                "R:R 0.38 vs 0.17"
              ],
              "summary": "Why ARM over SMH: Win% 81 vs 72 · ER 1.3% vs 0.6% · Score 0.26 vs 0.22 · RS -2.7% vs -2.5% · R:R 0.38 vs 0.17"
            },
            {
              "symbol": "TQQQ",
              "rank": 6,
              "reasons": [
                "Win% 81 vs 72",
                "ER 1.3% vs 0.5%",
                "Score 0.26 vs 0.18",
                "RS -2.7% vs -1.5%",
                "R:R 0.38 vs 0.16"
              ],
              "summary": "Why ARM over TQQQ: Win% 81 vs 72 · ER 1.3% vs 0.5% · Score 0.26 vs 0.18 · RS -2.7% vs -1.5% · R:R 0.38 vs 0.16"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 81.0,
            "sample_size": 0,
            "confidence_interval": null,
            "source": "rules_fallback",
            "match_quality": "insufficient",
            "win_prob_source": "rules",
            "disclaimer": "No historical matches; using rules breakdown"
          },
          "ev_distribution": {
            "expected_value_usd": 11.57,
            "win_scenario_usd": 36.52,
            "loss_scenario_usd": 94.82,
            "win_prob_pct": 81.0,
            "display": "EV $+12 (win +$37 @ 81.0% · loss -$95)"
          },
          "entry_status": {
            "current_price": 245.61,
            "ideal_entry": 247.33,
            "distance_pct": 0.7,
            "remaining_er_pct": 0.65,
            "live_expected_return_pct": 0.65,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 246.59,
            "zone_high": 248.07,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 3,
          "symbol": "AVGO",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 72,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+0.85%",
          "expected_return_pct": 0.85,
          "win_prob": 72.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 12.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": 6.0
              }
            ],
            "total": 72.0,
            "raw_total": 72.0,
            "was_clamped": false
          },
          "risk_reward": 0.58,
          "final_score": 0.25,
          "trade_action": "Pass",
          "relative_strength": -2.46,
          "entry": "Below 350.5 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 350.05,
          "entry_zone": {
            "low": 349.61,
            "high": 350.48,
            "mid": 350.05,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 350.48
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 349.61
              }
            ],
            "display": "Entry Zone 349.61–350.48",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "355.2 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 355.18,
          "target": "347.1 (预期收盘)",
          "target_source": "expected_close",
          "target_price": 347.08,
          "targets": [
            "347.1 (预期收盘)"
          ],
          "level_anchors": {
            "vwap": 350.48,
            "orb_high": 355.18,
            "orb_low": 349.61,
            "prev_high": 360.83,
            "prev_low": 360.83,
            "prior_close": 360.83,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -2.46%",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.12 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -2.46% · Volume 信号 · VIX 走高 · 期望R -0.12 < 0.20(EV门禁)",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -2.46,
            "relative_strength_vs_smh": -0.01,
            "relative_weakness_score": 2.47,
            "gap_pct": -2.38,
            "beta_proxy": 4.57,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 10.48,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(72%) × ER(0.7%) × rr_weight(0.5) / 100",
          "expected_high": 361.99,
          "expected_low": 346.67,
          "expected_close": 347.08,
          "current_price": 349.47,
          "upside_pct": 0.8,
          "downside_risk_pct": 3.58,
          "why_factors": [
            "RS弱于QQQ -2.46%",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.12 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -2.46% · Volume 信号 · VIX 走高 · 期望R -0.12 < 0.20(EV门禁)",
          "gap_pct": -2.38,
          "rr_display": {
            "reward_risk_ratio": 0.58,
            "risk_reward_ratio": 1.72,
            "reward_per_share": 2.97,
            "risk_per_share": 5.13,
            "label_reward_risk": "Reward/Risk 0.58",
            "label_risk_reward": "Risk:Reward 1:1.72",
            "display": "Reward/Risk 0.58 · Risk:Reward 1:1.72",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Fed Headlines · Oil Selloff",
          "invalidation": "Close above stop $355.18",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 350.05,
              "source": "vwap",
              "confidence": 98,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 349.61,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 350.48,
                  "weight_pct": 54.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 349.47,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 355.18,
              "source": "orb_high",
              "confidence": 77,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 355.18,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "target": {
              "price": 347.08,
              "source": "expected_close",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_close",
                  "label": "Expected Close",
                  "price": 347.08,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(350.05-347.08)/350.05=0.85%",
          "heuristic_expected_return_pct": 0.68,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 AVGO:在 350.05 附近入场,目标 347.08,预期 +0.85%",
          "expected_r": 0.1376,
          "rr_below_hard_min": true,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 66.5,
            "shares": 19,
            "contracts": 0,
            "max_loss_usd": 97.47,
            "win_usd": 56.43,
            "loss_usd": 97.47,
            "expected_value_usd": 13.34,
            "risk_per_share": 5.13,
            "reward_per_share": 2.97,
            "rr_display": {
              "reward_risk_ratio": 0.58,
              "risk_reward_ratio": 1.72,
              "reward_per_share": 2.97,
              "risk_per_share": 5.13,
              "label_reward_risk": "Reward/Risk 0.58",
              "label_risk_reward": "Risk:Reward 1:1.72",
              "display": "Reward/Risk 0.58 · Risk:Reward 1:1.72",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$56 / Loss -$97"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 66.5,
            "contracts": 0,
            "shares": 19,
            "max_loss_usd": 97.47,
            "size_label": "None",
            "display": "Risk 1.0% → Position 66.5% → 19 unit(s) → Max Loss $97.47"
          },
          "why_wins_today": [],
          "why_not_alternatives": [
            {
              "symbol": "MU",
              "rank": 1,
              "reasons": [
                "Win% 72 vs 80",
                "ER 0.8% vs 1.7%",
                "Score 0.25 vs 0.7",
                "RS -2.5% vs -5.2%",
                "R:R 0.58 vs 0.29"
              ],
              "summary": "Why AVGO over MU: Win% 72 vs 80 · ER 0.8% vs 1.7% · Score 0.25 vs 0.7 · RS -2.5% vs -5.2% · R:R 0.58 vs 0.29"
            },
            {
              "symbol": "ARM",
              "rank": 2,
              "reasons": [
                "Win% 72 vs 81",
                "ER 0.8% vs 0.7%",
                "Score 0.25 vs 0.26",
                "RS -2.5% vs -2.7%",
                "R:R 0.58 vs 0.1"
              ],
              "summary": "Why AVGO over ARM: Win% 72 vs 81 · ER 0.8% vs 0.7% · Score 0.25 vs 0.26 · RS -2.5% vs -2.7% · R:R 0.58 vs 0.1"
            },
            {
              "symbol": "AMD",
              "rank": 4,
              "reasons": [
                "ER 0.8% vs 0.7%",
                "Score 0.25 vs 0.23",
                "R:R 0.58 vs 0.14"
              ],
              "summary": "Why AVGO over AMD: ER 0.8% vs 0.7% · Score 0.25 vs 0.23 · R:R 0.58 vs 0.14"
            },
            {
              "symbol": "SMH",
              "rank": 5,
              "reasons": [
                "ER 0.8% vs 0.6%",
                "Score 0.25 vs 0.22",
                "R:R 0.58 vs 0.17"
              ],
              "summary": "Why AVGO over SMH: ER 0.8% vs 0.6% · Score 0.25 vs 0.22 · R:R 0.58 vs 0.17"
            },
            {
              "symbol": "TQQQ",
              "rank": 6,
              "reasons": [
                "ER 0.8% vs 0.5%",
                "Score 0.25 vs 0.18",
                "RS -2.5% vs -1.5%",
                "R:R 0.58 vs 0.16"
              ],
              "summary": "Why AVGO over TQQQ: ER 0.8% vs 0.5% · Score 0.25 vs 0.18 · RS -2.5% vs -1.5% · R:R 0.58 vs 0.16"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 72.0,
            "sample_size": 0,
            "confidence_interval": null,
            "source": "rules_fallback",
            "match_quality": "insufficient",
            "win_prob_source": "rules",
            "disclaimer": "No historical matches; using rules breakdown"
          },
          "ev_distribution": {
            "expected_value_usd": 13.34,
            "win_scenario_usd": 56.43,
            "loss_scenario_usd": 97.47,
            "win_prob_pct": 72.0,
            "display": "EV $+13 (win +$56 @ 72.0% · loss -$97)"
          },
          "entry_status": {
            "current_price": 349.47,
            "ideal_entry": 350.05,
            "distance_pct": 0.17,
            "remaining_er_pct": 0.68,
            "live_expected_return_pct": 0.68,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 349.61,
            "zone_high": 350.48,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 4,
          "symbol": "AMD",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 72,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+0.92%",
          "expected_return_pct": 0.92,
          "win_prob": 72.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 12.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": 6.0
              }
            ],
            "total": 72.0,
            "raw_total": 72.0,
            "was_clamped": false
          },
          "risk_reward": 0.41,
          "final_score": 0.23,
          "trade_action": "Pass",
          "relative_strength": -2.48,
          "entry": "Below 488.9 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 488.97,
          "entry_zone": {
            "low": 488.92,
            "high": 489.01,
            "mid": 488.97,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 488.92
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 489.01
              }
            ],
            "display": "Entry Zone 488.92–489.01",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "500.0 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 499.98,
          "target": "484.5 (预期收盘)",
          "target_source": "expected_close",
          "target_price": 484.46,
          "targets": [
            "484.5 (预期收盘)"
          ],
          "level_anchors": {
            "vwap": 488.92,
            "orb_high": 499.98,
            "orb_low": 489.01,
            "prev_high": 503.6,
            "prev_low": 503.6,
            "prior_close": 503.6,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -2.48%",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.18 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -2.48% · Volume 信号 · VIX 走高 · 期望R -0.18 < 0.20(EV门禁)",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -2.48,
            "relative_strength_vs_smh": -0.03,
            "relative_weakness_score": 2.5,
            "gap_pct": -1.91,
            "beta_proxy": 4.59,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 10.48,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(72%) × ER(0.7%) × rr_weight(0.5) / 100",
          "expected_high": 516.13,
          "expected_low": 483.74,
          "expected_close": 484.46,
          "current_price": 487.64,
          "upside_pct": 0.8,
          "downside_risk_pct": 5.84,
          "why_factors": [
            "RS弱于QQQ -2.48%",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.18 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -2.48% · Volume 信号 · VIX 走高 · 期望R -0.18 < 0.20(EV门禁)",
          "gap_pct": -1.91,
          "rr_display": {
            "reward_risk_ratio": 0.41,
            "risk_reward_ratio": 2.44,
            "reward_per_share": 4.51,
            "risk_per_share": 11.01,
            "label_reward_risk": "Reward/Risk 0.41",
            "label_risk_reward": "Risk:Reward 1:2.44",
            "display": "Reward/Risk 0.41 · Risk:Reward 1:2.44",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Fed Headlines · Oil Selloff",
          "invalidation": "Close above stop $499.98",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 488.97,
              "source": "vwap",
              "confidence": 98,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 489.01,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 488.92,
                  "weight_pct": 54.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 487.64,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 499.98,
              "source": "orb_high",
              "confidence": 77,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 499.98,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "target": {
              "price": 484.46,
              "source": "expected_close",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_close",
                  "label": "Expected Close",
                  "price": 484.46,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(488.97-484.46)/488.97=0.92%",
          "heuristic_expected_return_pct": 0.65,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 AMD:在 488.97 附近入场,目标 484.46,预期 +0.92%",
          "expected_r": 0.0152,
          "rr_below_hard_min": true,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 44.0,
            "shares": 9,
            "contracts": 0,
            "max_loss_usd": 99.09,
            "win_usd": 40.59,
            "loss_usd": 99.09,
            "expected_value_usd": 1.48,
            "risk_per_share": 11.01,
            "reward_per_share": 4.51,
            "rr_display": {
              "reward_risk_ratio": 0.41,
              "risk_reward_ratio": 2.44,
              "reward_per_share": 4.51,
              "risk_per_share": 11.01,
              "label_reward_risk": "Reward/Risk 0.41",
              "label_risk_reward": "Risk:Reward 1:2.44",
              "display": "Reward/Risk 0.41 · Risk:Reward 1:2.44",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$41 / Loss -$99"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 44.0,
            "contracts": 0,
            "shares": 9,
            "max_loss_usd": 99.09,
            "size_label": "None",
            "display": "Risk 1.0% → Position 44.0% → 9 unit(s) → Max Loss $99.09"
          },
          "why_wins_today": [],
          "why_not_alternatives": [
            {
              "symbol": "MU",
              "rank": 1,
              "reasons": [
                "Win% 72 vs 80",
                "ER 0.9% vs 1.7%",
                "Score 0.23 vs 0.7",
                "RS -2.5% vs -5.2%",
                "R:R 0.41 vs 0.29"
              ],
              "summary": "Why AMD over MU: Win% 72 vs 80 · ER 0.9% vs 1.7% · Score 0.23 vs 0.7 · RS -2.5% vs -5.2% · R:R 0.41 vs 0.29"
            },
            {
              "symbol": "ARM",
              "rank": 2,
              "reasons": [
                "Win% 72 vs 81",
                "ER 0.9% vs 0.7%",
                "Score 0.23 vs 0.26",
                "RS -2.5% vs -2.7%",
                "R:R 0.41 vs 0.1"
              ],
              "summary": "Why AMD over ARM: Win% 72 vs 81 · ER 0.9% vs 0.7% · Score 0.23 vs 0.26 · RS -2.5% vs -2.7% · R:R 0.41 vs 0.1"
            },
            {
              "symbol": "AVGO",
              "rank": 3,
              "reasons": [
                "ER 0.9% vs 0.7%",
                "Score 0.23 vs 0.25",
                "R:R 0.41 vs 0.22"
              ],
              "summary": "Why AMD over AVGO: ER 0.9% vs 0.7% · Score 0.23 vs 0.25 · R:R 0.41 vs 0.22"
            },
            {
              "symbol": "SMH",
              "rank": 5,
              "reasons": [
                "ER 0.9% vs 0.6%",
                "Score 0.23 vs 0.22",
                "R:R 0.41 vs 0.17"
              ],
              "summary": "Why AMD over SMH: ER 0.9% vs 0.6% · Score 0.23 vs 0.22 · R:R 0.41 vs 0.17"
            },
            {
              "symbol": "TQQQ",
              "rank": 6,
              "reasons": [
                "ER 0.9% vs 0.5%",
                "Score 0.23 vs 0.18",
                "RS -2.5% vs -1.5%",
                "R:R 0.41 vs 0.16"
              ],
              "summary": "Why AMD over TQQQ: ER 0.9% vs 0.5% · Score 0.23 vs 0.18 · RS -2.5% vs -1.5% · R:R 0.41 vs 0.16"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 72.0,
            "sample_size": 0,
            "confidence_interval": null,
            "source": "rules_fallback",
            "match_quality": "insufficient",
            "win_prob_source": "rules",
            "disclaimer": "No historical matches; using rules breakdown"
          },
          "ev_distribution": {
            "expected_value_usd": 1.48,
            "win_scenario_usd": 40.59,
            "loss_scenario_usd": 99.09,
            "win_prob_pct": 72.0,
            "display": "EV $+1 (win +$41 @ 72.0% · loss -$99)"
          },
          "entry_status": {
            "current_price": 487.64,
            "ideal_entry": 488.97,
            "distance_pct": 0.27,
            "remaining_er_pct": 0.65,
            "live_expected_return_pct": 0.65,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 488.92,
            "zone_high": 489.01,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 5,
          "symbol": "SMH",
          "direction": "SHORT",
          "instrument": "ETF",
          "horizon": "Swing",
          "confidence": 72,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+1.09%",
          "expected_return_pct": 1.09,
          "win_prob": 72.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 12.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": 6.0
              }
            ],
            "total": 72.0,
            "raw_total": 72.0,
            "was_clamped": false
          },
          "risk_reward": 0.58,
          "final_score": 0.22,
          "trade_action": "Pass",
          "relative_strength": -2.45,
          "entry": "Below 545.4 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 545.28,
          "entry_zone": {
            "low": 545.16,
            "high": 545.4,
            "mid": 545.28,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 545.4
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 545.16
              }
            ],
            "display": "Entry Zone 545.16–545.40",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "555.5 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 555.45,
          "target": "539.3 (预期收盘)",
          "target_source": "expected_close",
          "target_price": 539.32,
          "targets": [
            "539.3 (预期收盘)"
          ],
          "level_anchors": {
            "vwap": 545.4,
            "orb_high": 555.45,
            "orb_low": 545.16,
            "prev_high": 560.28,
            "prev_low": 560.28,
            "prior_close": 560.28,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -2.45%",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.16 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -2.45% · Volume 信号 · VIX 走高 · 期望R -0.16 < 0.20(EV门禁)",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -2.45,
            "relative_strength_vs_smh": 0.0,
            "relative_weakness_score": 2.45,
            "gap_pct": -1.62,
            "beta_proxy": 4.55,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 10.48,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(72%) × ER(0.6%) × rr_weight(0.5) / 100",
          "expected_high": 568.53,
          "expected_low": 538.34,
          "expected_close": 539.32,
          "current_price": 542.68,
          "upside_pct": 0.8,
          "downside_risk_pct": 4.76,
          "why_factors": [
            "RS弱于QQQ -2.45%",
            "Volume 信号",
            "VIX 走高",
            "期望R -0.16 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -2.45% · Volume 信号 · VIX 走高 · 期望R -0.16 < 0.20(EV门禁)",
          "gap_pct": -1.62,
          "rr_display": {
            "reward_risk_ratio": 0.59,
            "risk_reward_ratio": 1.69,
            "reward_per_share": 5.96,
            "risk_per_share": 10.17,
            "label_reward_risk": "Reward/Risk 0.59",
            "label_risk_reward": "Risk:Reward 1:1.69",
            "display": "Reward/Risk 0.59 · Risk:Reward 1:1.69",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Fed Headlines · Oil Selloff",
          "invalidation": "Close above stop $555.45",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 545.28,
              "source": "vwap",
              "confidence": 98,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 545.16,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 545.4,
                  "weight_pct": 54.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 542.68,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 555.45,
              "source": "orb_high",
              "confidence": 77,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 555.45,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "target": {
              "price": 539.32,
              "source": "expected_close",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_close",
                  "label": "Expected Close",
                  "price": 539.32,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(545.28-539.32)/545.28=1.09%",
          "heuristic_expected_return_pct": 0.62,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 SMH:在 545.28 附近入场,目标 539.32,预期 +1.09%",
          "expected_r": 0.1376,
          "rr_below_hard_min": true,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 49.1,
            "shares": 9,
            "contracts": 0,
            "max_loss_usd": 91.53,
            "win_usd": 53.64,
            "loss_usd": 91.53,
            "expected_value_usd": 12.99,
            "risk_per_share": 10.17,
            "reward_per_share": 5.96,
            "rr_display": {
              "reward_risk_ratio": 0.59,
              "risk_reward_ratio": 1.69,
              "reward_per_share": 5.96,
              "risk_per_share": 10.17,
              "label_reward_risk": "Reward/Risk 0.59",
              "label_risk_reward": "Risk:Reward 1:1.69",
              "display": "Reward/Risk 0.59 · Risk:Reward 1:1.69",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$54 / Loss -$92"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 49.1,
            "contracts": 0,
            "shares": 9,
            "max_loss_usd": 91.53,
            "size_label": "None",
            "display": "Risk 1.0% → Position 49.1% → 9 unit(s) → Max Loss $91.53"
          },
          "why_wins_today": [],
          "why_not_alternatives": [
            {
              "symbol": "MU",
              "rank": 1,
              "reasons": [
                "Win% 72 vs 80",
                "ER 1.1% vs 1.7%",
                "Score 0.22 vs 0.7",
                "RS -2.5% vs -5.2%",
                "R:R 0.58 vs 0.29"
              ],
              "summary": "Why SMH over MU: Win% 72 vs 80 · ER 1.1% vs 1.7% · Score 0.22 vs 0.7 · RS -2.5% vs -5.2% · R:R 0.58 vs 0.29"
            },
            {
              "symbol": "ARM",
              "rank": 2,
              "reasons": [
                "Win% 72 vs 81",
                "ER 1.1% vs 0.7%",
                "Score 0.22 vs 0.26",
                "RS -2.5% vs -2.7%",
                "R:R 0.58 vs 0.1"
              ],
              "summary": "Why SMH over ARM: Win% 72 vs 81 · ER 1.1% vs 0.7% · Score 0.22 vs 0.26 · RS -2.5% vs -2.7% · R:R 0.58 vs 0.1"
            },
            {
              "symbol": "AVGO",
              "rank": 3,
              "reasons": [
                "ER 1.1% vs 0.7%",
                "Score 0.22 vs 0.25",
                "R:R 0.58 vs 0.22"
              ],
              "summary": "Why SMH over AVGO: ER 1.1% vs 0.7% · Score 0.22 vs 0.25 · R:R 0.58 vs 0.22"
            },
            {
              "symbol": "AMD",
              "rank": 4,
              "reasons": [
                "ER 1.1% vs 0.7%",
                "Score 0.22 vs 0.23",
                "R:R 0.58 vs 0.14"
              ],
              "summary": "Why SMH over AMD: ER 1.1% vs 0.7% · Score 0.22 vs 0.23 · R:R 0.58 vs 0.14"
            },
            {
              "symbol": "TQQQ",
              "rank": 6,
              "reasons": [
                "ER 1.1% vs 0.5%",
                "Score 0.22 vs 0.18",
                "RS -2.5% vs -1.5%",
                "R:R 0.58 vs 0.16"
              ],
              "summary": "Why SMH over TQQQ: ER 1.1% vs 0.5% · Score 0.22 vs 0.18 · RS -2.5% vs -1.5% · R:R 0.58 vs 0.16"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 72.0,
            "sample_size": 0,
            "confidence_interval": null,
            "source": "rules_fallback",
            "match_quality": "insufficient",
            "win_prob_source": "rules",
            "disclaimer": "No historical matches; using rules breakdown"
          },
          "ev_distribution": {
            "expected_value_usd": 12.99,
            "win_scenario_usd": 53.64,
            "loss_scenario_usd": 91.53,
            "win_prob_pct": 72.0,
            "display": "EV $+13 (win +$54 @ 72.0% · loss -$92)"
          },
          "entry_status": {
            "current_price": 542.68,
            "ideal_entry": 545.28,
            "distance_pct": 0.48,
            "remaining_er_pct": 0.62,
            "live_expected_return_pct": 0.62,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 545.16,
            "zone_high": 545.4,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        }
      ],
      "watchlist_items": [
        {
          "symbol": "TQQQ",
          "rank": 6,
          "win_prob": 72.0,
          "expected_return_pct": 0.49,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -1.51% · Volume 信号 · VIX 走高 · 期望R -0.16 < 0.20(EV门禁)",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "NVDA",
          "rank": 7,
          "win_prob": 57.0,
          "expected_return_pct": 0.45,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -1.83% · 半导体内领涨 +0.62% · News 8 (利空做空) · Volume 信号",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "TSLA",
          "rank": 8,
          "win_prob": 71.0,
          "expected_return_pct": 0.17,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -0.50% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "XLK",
          "rank": 9,
          "win_prob": 66.0,
          "expected_return_pct": 0.12,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -0.31% · Gap 未过度延伸 · News 1 (利空做空) · Volume 信号",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "QQQ",
          "rank": 10,
          "win_prob": 65.0,
          "expected_return_pct": 0.06,
          "trade_action": "Pass",
          "why": "Gap 未过度延伸 · Volume 信号 · VIX 走高 · 期望R -0.02 < 0.20(EV门禁)",
          "note": "Monitor — below trade threshold"
        }
      ],
      "advisory": true,
      "swing": {
        "symbol": "NVDA",
        "direction": "SHORT",
        "instrument": "Stock",
        "horizon": "Swing",
        "duration": "Swing (days–weeks)",
        "confidence": 62,
        "entry": "Near 213.5 (swing zone)",
        "entry_source": "swing_zone",
        "entry_price": 213.51,
        "entry_zone": {
          "low": 212.87,
          "high": 217.34,
          "mid": 213.51,
          "display": "$212.87–$217.34",
          "source": "swing_pullback"
        },
        "stop": "225.0 (1.75xATR)",
        "stop_source": "1.75xATR",
        "stop_price": 225.01,
        "target": "198.2 (T1 ~7.2%)",
        "target_source": "2xATR_or_5pct",
        "target_price": 198.18,
        "targets": [
          {
            "price": 198.18,
            "label": "T1",
            "pct": 7.18
          },
          {
            "price": 190.51,
            "label": "T2",
            "pct": 10.77
          }
        ],
        "expected_return_pct": 7.18,
        "expected_move": "+7.18%",
        "risk_reward": 1.33,
        "win_prob": 57.0,
        "final_score": 0.13,
        "swing_quality": 6.178,
        "atr": 7.6672,
        "atr_source": "ATR14",
        "level_formula": "stop=1.5–2×ATR or prior-week extreme; T1=max(5%, 2×ATR); T2=min(15%, max(10%, 3×ATR))",
        "current_price": 212.87,
        "why": [
          "高流动性波段标的 NVDA",
          "Prior day +0.0%",
          "5D momentum -4.3%",
          "RS vs QQQ -1.83%",
          "News/8 catalyst hints",
          "Swing score 6.2"
        ],
        "why_chain": "高流动性波段标的 NVDA · Prior day +0.0% · 5D momentum -4.3% · RS vs QQQ -1.83%",
        "invalidation": "Close beyond stop $225.01 or thesis broken (trend flip / catalyst fade)",
        "trade_summary_cn": "波段做空 NVDA:理想入场 $212.87–$217.34,止损 $225.01,目标 $198.18(约 +7.2%),持仓天数–数周",
        "one_liner": "波段做空 NVDA:理想入场 $212.87–$217.34,止损 $225.01,目标 $198.18(约 +7.2%),持仓天数–数周",
        "edge_type": "Relative Weakness",
        "advisory": true,
        "label": "长线 · Swing Trade",
        "separate_from_intraday": true
      }
    },
    "edges": {
      "macro_edge": {
        "edge": "YES",
        "why": "今日有重大催化剂(含地缘/突发):Fed Headlines、Oil Selloff、Trade Policy",
        "catalyst": "Fed Headlines、Oil Selloff、Trade Policy"
      },
      "index_edge": {
        "edge": "YES",
        "why": "SPY 盘前/开盘 +0.22%"
      },
      "sector_edge": {
        "edge": "NO",
        "why": "板块相对强度不足"
      },
      "stock_edge": {
        "edge": "NO",
        "why": "无单票 RS+新闻+量能共振"
      },
      "advisory": "ADVISORY — 不构成投资建议"
    },
    "trade_candidates": [
      {
        "symbol": "MU",
        "win_prob": 80.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 20.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 80.0,
          "raw_total": 80.0,
          "was_clamped": false
        },
        "expected_return_pct": 1.74,
        "expected_high": 975.26,
        "expected_low": 903.75,
        "expected_close": 903.75,
        "current_price": 919.74,
        "upside_pct": 1.74,
        "downside_risk_pct": 6.04,
        "risk_reward": 0.29,
        "rr_display": {
          "reward_risk_ratio": 0.29,
          "risk_reward_ratio": 3.45,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.29",
          "label_risk_reward": "Risk:Reward 1:3.45",
          "display": "Reward/Risk 0.29 · Risk:Reward 1:3.45",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.032,
        "final_score": 0.7,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -4.57,
        "relative_strength": -5.21,
        "relative_strength_vs_smh": -2.76,
        "relative_weakness_score": 6.87,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -5.21%",
          "RS弱于SMH -2.76%",
          "Volume 信号",
          "VIX 走高",
          "期望R 0.03 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -5.21% · RS弱于SMH -2.76% · Volume 信号 · VIX 走高",
        "score": 7,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -5.21,
          "relative_strength_vs_smh": -2.76,
          "relative_weakness_score": 6.87,
          "gap_pct": -4.57,
          "beta_proxy": 8.55,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(80%) × ER(1.7%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "MU RS -5.2% vs ARM -2.7%;ER 1.7% vs 0.7%;higher beta (8.6 vs 4.9);relative weakness play",
        "advisory": true,
        "rank": 1,
        "direction": "SHORT"
      },
      {
        "symbol": "ARM",
        "win_prob": 81.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 16.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 81.0,
          "raw_total": 81.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.65,
        "expected_high": 264.79,
        "expected_low": 243.65,
        "expected_close": 244.01,
        "current_price": 245.61,
        "upside_pct": 0.8,
        "downside_risk_pct": 7.81,
        "risk_reward": 0.1,
        "rr_display": {
          "reward_risk_ratio": 0.1,
          "risk_reward_ratio": 10.0,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.10",
          "label_risk_reward": "Risk:Reward 1:10.00",
          "display": "Reward/Risk 0.10 · Risk:Reward 1:10.00",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.109,
        "final_score": 0.26,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.11,
        "relative_strength": -2.68,
        "relative_strength_vs_smh": -0.23,
        "relative_weakness_score": 2.82,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -2.68%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.11 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -2.68% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 3,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -2.68,
          "relative_strength_vs_smh": -0.23,
          "relative_weakness_score": 2.82,
          "gap_pct": -1.11,
          "beta_proxy": 4.88,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(81%) × ER(0.7%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 2,
        "direction": "SHORT"
      },
      {
        "symbol": "AVGO",
        "win_prob": 72.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 12.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 72.0,
          "raw_total": 72.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.68,
        "expected_high": 361.99,
        "expected_low": 346.67,
        "expected_close": 347.08,
        "current_price": 349.47,
        "upside_pct": 0.8,
        "downside_risk_pct": 3.58,
        "risk_reward": 0.22,
        "rr_display": {
          "reward_risk_ratio": 0.22,
          "risk_reward_ratio": 4.55,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.22",
          "label_risk_reward": "Risk:Reward 1:4.55",
          "display": "Reward/Risk 0.22 · Risk:Reward 1:4.55",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.1216,
        "final_score": 0.25,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -2.38,
        "relative_strength": -2.46,
        "relative_strength_vs_smh": -0.01,
        "relative_weakness_score": 2.47,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -2.46%",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.12 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -2.46% · Volume 信号 · VIX 走高 · 期望R -0.12 < 0.20(EV门禁)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -2.46,
          "relative_strength_vs_smh": -0.01,
          "relative_weakness_score": 2.47,
          "gap_pct": -2.38,
          "beta_proxy": 4.57,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(72%) × ER(0.7%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 3,
        "direction": "SHORT"
      },
      {
        "symbol": "AMD",
        "win_prob": 72.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 12.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 72.0,
          "raw_total": 72.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.65,
        "expected_high": 516.13,
        "expected_low": 483.74,
        "expected_close": 484.46,
        "current_price": 487.64,
        "upside_pct": 0.8,
        "downside_risk_pct": 5.84,
        "risk_reward": 0.14,
        "rr_display": {
          "reward_risk_ratio": 0.14,
          "risk_reward_ratio": 7.14,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.14",
          "label_risk_reward": "Risk:Reward 1:7.14",
          "display": "Reward/Risk 0.14 · Risk:Reward 1:7.14",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.1792,
        "final_score": 0.23,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.91,
        "relative_strength": -2.48,
        "relative_strength_vs_smh": -0.03,
        "relative_weakness_score": 2.5,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -2.48%",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.18 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -2.48% · Volume 信号 · VIX 走高 · 期望R -0.18 < 0.20(EV门禁)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -2.48,
          "relative_strength_vs_smh": -0.03,
          "relative_weakness_score": 2.5,
          "gap_pct": -1.91,
          "beta_proxy": 4.59,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(72%) × ER(0.7%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 4,
        "direction": "SHORT"
      },
      {
        "symbol": "SMH",
        "win_prob": 72.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 12.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 72.0,
          "raw_total": 72.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.62,
        "expected_high": 568.53,
        "expected_low": 538.34,
        "expected_close": 539.32,
        "current_price": 542.68,
        "upside_pct": 0.8,
        "downside_risk_pct": 4.76,
        "risk_reward": 0.17,
        "rr_display": {
          "reward_risk_ratio": 0.17,
          "risk_reward_ratio": 5.88,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.17",
          "label_risk_reward": "Risk:Reward 1:5.88",
          "display": "Reward/Risk 0.17 · Risk:Reward 1:5.88",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.1576,
        "final_score": 0.22,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.62,
        "relative_strength": -2.45,
        "relative_strength_vs_smh": 0.0,
        "relative_weakness_score": 2.45,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -2.45%",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.16 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -2.45% · Volume 信号 · VIX 走高 · 期望R -0.16 < 0.20(EV门禁)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -2.45,
          "relative_strength_vs_smh": 0.0,
          "relative_weakness_score": 2.45,
          "gap_pct": -1.62,
          "beta_proxy": 4.55,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(72%) × ER(0.6%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 5,
        "direction": "SHORT"
      },
      {
        "symbol": "TQQQ",
        "win_prob": 72.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 12.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 72.0,
          "raw_total": 72.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.49,
        "expected_high": 70.98,
        "expected_low": 67.15,
        "expected_close": 67.36,
        "current_price": 67.69,
        "upside_pct": 0.8,
        "downside_risk_pct": 4.86,
        "risk_reward": 0.16,
        "rr_display": {
          "reward_risk_ratio": 0.16,
          "risk_reward_ratio": 6.25,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.16",
          "label_risk_reward": "Risk:Reward 1:6.25",
          "display": "Reward/Risk 0.16 · Risk:Reward 1:6.25",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.1648,
        "final_score": 0.18,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -2.34,
        "relative_strength": -1.51,
        "relative_strength_vs_smh": 0.94,
        "relative_weakness_score": 0.95,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -1.51%",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.16 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -1.51% · Volume 信号 · VIX 走高 · 期望R -0.16 < 0.20(EV门禁)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -1.51,
          "relative_strength_vs_smh": 0.94,
          "relative_weakness_score": 0.95,
          "gap_pct": -2.34,
          "beta_proxy": 3.19,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(72%) × ER(0.5%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 6,
        "direction": "SHORT"
      },
      {
        "symbol": "NVDA",
        "win_prob": 57.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 2.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 57.0,
          "raw_total": 57.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.45,
        "expected_high": 218.29,
        "expected_low": 211.17,
        "expected_close": 211.9,
        "current_price": 212.87,
        "upside_pct": 0.8,
        "downside_risk_pct": 2.55,
        "risk_reward": 0.31,
        "rr_display": {
          "reward_risk_ratio": 0.31,
          "risk_reward_ratio": 3.23,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.31",
          "label_risk_reward": "Risk:Reward 1:3.23",
          "display": "Reward/Risk 0.31 · Risk:Reward 1:3.23",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.2533,
        "final_score": 0.13,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -2.02,
        "relative_strength": -1.83,
        "relative_strength_vs_smh": 0.62,
        "relative_weakness_score": 1.46,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -1.83%",
          "半导体内领涨 +0.62%",
          "News 8 (利空做空)",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.25 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -1.83% · 半导体内领涨 +0.62% · News 8 (利空做空) · Volume 信号",
        "score": 1,
        "news_count": 8,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -1.83,
          "relative_strength_vs_smh": 0.62,
          "relative_weakness_score": 1.46,
          "gap_pct": -2.02,
          "beta_proxy": 3.65,
          "volume_signal": true,
          "news_count": 8,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(57%) × ER(0.5%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 7,
        "direction": "SHORT"
      },
      {
        "symbol": "TSLA",
        "win_prob": 71.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 6.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 71.0,
          "raw_total": 71.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.17,
        "expected_high": 365.44,
        "expected_low": 356.38,
        "expected_close": 358.63,
        "current_price": 359.25,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.72,
        "risk_reward": 0.46,
        "rr_display": {
          "reward_risk_ratio": 0.46,
          "risk_reward_ratio": 2.17,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.46",
          "label_risk_reward": "Risk:Reward 1:2.17",
          "display": "Reward/Risk 0.46 · Risk:Reward 1:2.17",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.0366,
        "final_score": 0.06,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.92,
        "relative_strength": -0.5,
        "relative_strength_vs_smh": 1.95,
        "relative_weakness_score": -0.67,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.50%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "期望R 0.04 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -0.50% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 1,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.5,
          "relative_strength_vs_smh": 1.95,
          "relative_weakness_score": -0.67,
          "gap_pct": -0.92,
          "beta_proxy": 1.72,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(71%) × ER(0.2%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 8,
        "direction": "SHORT"
      },
      {
        "symbol": "XLK",
        "win_prob": 66.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 6.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 66.0,
          "raw_total": 66.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.12,
        "expected_high": 187.67,
        "expected_low": 181.9,
        "expected_close": 183.15,
        "current_price": 183.37,
        "upside_pct": 0.8,
        "downside_risk_pct": 2.35,
        "risk_reward": 0.34,
        "rr_display": {
          "reward_risk_ratio": 0.34,
          "risk_reward_ratio": 2.94,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.34",
          "label_risk_reward": "Risk:Reward 1:2.94",
          "display": "Reward/Risk 0.34 · Risk:Reward 1:2.94",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.1156,
        "final_score": 0.04,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.72,
        "relative_strength": -0.31,
        "relative_strength_vs_smh": 2.14,
        "relative_weakness_score": -0.97,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.31%",
          "Gap 未过度延伸",
          "News 1 (利空做空)",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.12 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -0.31% · Gap 未过度延伸 · News 1 (利空做空) · Volume 信号",
        "score": 0,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.31,
          "relative_strength_vs_smh": 2.14,
          "relative_weakness_score": -0.97,
          "gap_pct": -0.72,
          "beta_proxy": 1.45,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(66%) × ER(0.1%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 9,
        "direction": "SHORT"
      },
      {
        "symbol": "QQQ",
        "win_prob": 65.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 65.0,
          "raw_total": 65.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.06,
        "expected_high": 714.88,
        "expected_low": 698.2,
        "expected_close": 703.44,
        "current_price": 703.83,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.57,
        "risk_reward": 0.51,
        "rr_display": {
          "reward_risk_ratio": 0.51,
          "risk_reward_ratio": 1.96,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.51",
          "label_risk_reward": "Risk:Reward 1:1.96",
          "display": "Reward/Risk 0.51 · Risk:Reward 1:1.96",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.0185,
        "final_score": 0.02,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.7,
        "relative_strength": 0.0,
        "relative_strength_vs_smh": 2.45,
        "relative_weakness_score": -1.47,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "期望R -0.02 < 0.20(EV门禁)"
        ],
        "why": "Gap 未过度延伸 · Volume 信号 · VIX 走高 · 期望R -0.02 < 0.20(EV门禁)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.0,
          "relative_strength_vs_smh": 2.45,
          "relative_weakness_score": -1.47,
          "gap_pct": -0.7,
          "beta_proxy": 1.0,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Index Edge",
        "score_formula_display": "final = win_prob(65%) × ER(0.1%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 10,
        "direction": "SHORT"
      },
      {
        "symbol": "SPY",
        "win_prob": 53.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.2,
        "expected_high": 764.29,
        "expected_low": 753.42,
        "expected_close": 761.03,
        "current_price": 759.5,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.63,
        "risk_reward": 1.27,
        "rr_display": {
          "reward_risk_ratio": 1.27,
          "risk_reward_ratio": 0.79,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.27",
          "label_risk_reward": "Risk:Reward 1:0.79",
          "display": "Reward/Risk 1.27 · Risk:Reward 1:0.79",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.2031,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.25,
        "relative_strength": 0.91,
        "relative_strength_vs_smh": 3.36,
        "relative_weakness_score": -2.93,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +0.91%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +0.91% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.91,
          "relative_strength_vs_smh": 3.36,
          "relative_weakness_score": -2.93,
          "gap_pct": 0.25,
          "beta_proxy": -0.32,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(53%) × ER(-0.2%) × rr_weight(0.64) / 100",
        "rr_weight": 0.64,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 11,
        "direction": "SHORT"
      },
      {
        "symbol": "DIA",
        "win_prob": 48.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 48.0,
          "raw_total": 48.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.34,
        "expected_high": 526.79,
        "expected_low": 519.98,
        "expected_close": 525.93,
        "current_price": 524.17,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.5,
        "risk_reward": 1.6,
        "rr_display": {
          "reward_risk_ratio": 1.6,
          "risk_reward_ratio": 0.62,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.60",
          "label_risk_reward": "Risk:Reward 1:0.62",
          "display": "Reward/Risk 1.60 · Risk:Reward 1:0.62",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.248,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.82,
        "relative_strength": 1.35,
        "relative_strength_vs_smh": 3.8,
        "relative_weakness_score": -3.63,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +1.35%",
          "Gap 未过度延伸",
          "News 1 (利空做空)",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +1.35% · Gap 未过度延伸 · News 1 (利空做空) · Volume 信号",
        "score": 0,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 1.35,
          "relative_strength_vs_smh": 3.8,
          "relative_weakness_score": -3.63,
          "gap_pct": 0.82,
          "beta_proxy": -0.96,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(48%) × ER(-0.3%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 12,
        "direction": "SHORT"
      },
      {
        "symbol": "MSFT",
        "win_prob": 48.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 48.0,
          "raw_total": 48.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.36,
        "expected_high": 500.04,
        "expected_low": 493.57,
        "expected_close": 499.36,
        "current_price": 497.55,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.5,
        "risk_reward": 1.6,
        "rr_display": {
          "reward_risk_ratio": 1.6,
          "risk_reward_ratio": 0.62,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.60",
          "label_risk_reward": "Risk:Reward 1:0.62",
          "display": "Reward/Risk 1.60 · Risk:Reward 1:0.62",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.248,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.21,
        "relative_strength": 1.73,
        "relative_strength_vs_smh": 4.18,
        "relative_weakness_score": -4.24,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +1.73%",
          "Gap 未过度延伸",
          "News 2 (利空做空)",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +1.73% · Gap 未过度延伸 · News 2 (利空做空) · Volume 信号",
        "score": 0,
        "news_count": 2,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 1.73,
          "relative_strength_vs_smh": 4.18,
          "relative_weakness_score": -4.24,
          "gap_pct": 0.21,
          "beta_proxy": -1.51,
          "volume_signal": true,
          "news_count": 2,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(48%) × ER(-0.4%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 13,
        "direction": "SHORT"
      },
      {
        "symbol": "XLF",
        "win_prob": 53.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.37,
        "expected_high": 57.61,
        "expected_low": 56.86,
        "expected_close": 57.53,
        "current_price": 57.32,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.5,
        "risk_reward": 1.6,
        "rr_display": {
          "reward_risk_ratio": 1.6,
          "risk_reward_ratio": 0.62,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.60",
          "label_risk_reward": "Risk:Reward 1:0.62",
          "display": "Reward/Risk 1.60 · Risk:Reward 1:0.62",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.378,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.95,
        "relative_strength": 1.48,
        "relative_strength_vs_smh": 3.93,
        "relative_weakness_score": -3.84,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +1.48%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +1.48% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 1.48,
          "relative_strength_vs_smh": 3.93,
          "relative_weakness_score": -3.84,
          "gap_pct": 0.95,
          "beta_proxy": -1.14,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(53%) × ER(-0.4%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 14,
        "direction": "SHORT"
      },
      {
        "symbol": "AMZN",
        "win_prob": 53.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.5,
        "expected_high": 256.78,
        "expected_low": 253.42,
        "expected_close": 256.75,
        "current_price": 255.47,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.51,
        "risk_reward": 1.56,
        "rr_display": {
          "reward_risk_ratio": 1.56,
          "risk_reward_ratio": 0.64,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.56",
          "label_risk_reward": "Risk:Reward 1:0.64",
          "display": "Reward/Risk 1.56 · Risk:Reward 1:0.64",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.3568,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 1.02,
        "relative_strength": 2.11,
        "relative_strength_vs_smh": 4.56,
        "relative_weakness_score": -4.85,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +2.11%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +2.11% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 2.11,
          "relative_strength_vs_smh": 4.56,
          "relative_weakness_score": -4.85,
          "gap_pct": 1.02,
          "beta_proxy": -2.06,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(53%) × ER(-0.5%) × rr_weight(0.78) / 100",
        "rr_weight": 0.78,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 15,
        "direction": "SHORT"
      },
      {
        "symbol": "XLE",
        "win_prob": 53.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.54,
        "expected_high": 66.28,
        "expected_low": 65.14,
        "expected_close": 66.28,
        "current_price": 65.93,
        "upside_pct": 1.2,
        "downside_risk_pct": 0.54,
        "risk_reward": 2.23,
        "rr_display": {
          "reward_risk_ratio": 2.23,
          "risk_reward_ratio": 0.45,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 2.23",
          "label_risk_reward": "Risk:Reward 1:0.45",
          "display": "Reward/Risk 2.23 · Risk:Reward 1:0.45",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.7119,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 1.14,
        "relative_strength": 2.23,
        "relative_strength_vs_smh": 4.68,
        "relative_weakness_score": -5.04,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +2.23%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +2.23% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 2.23,
          "relative_strength_vs_smh": 4.68,
          "relative_weakness_score": -5.04,
          "gap_pct": 1.14,
          "beta_proxy": -2.23,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(53%) × ER(-0.5%) × rr_weight(1.11) / 100",
        "rr_weight": 1.11,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 16,
        "direction": "SHORT"
      },
      {
        "symbol": "AAPL",
        "win_prob": 48.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 48.0,
          "raw_total": 48.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.64,
        "expected_high": 335.4,
        "expected_low": 330.59,
        "expected_close": 335.4,
        "current_price": 333.26,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.64,
        "risk_reward": 1.25,
        "rr_display": {
          "reward_risk_ratio": 1.25,
          "risk_reward_ratio": 0.8,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.25",
          "label_risk_reward": "Risk:Reward 1:0.80",
          "display": "Reward/Risk 1.25 · Risk:Reward 1:0.80",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.08,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 1.16,
        "relative_strength": 2.74,
        "relative_strength_vs_smh": 5.19,
        "relative_weakness_score": -5.85,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +2.74%",
          "Gap 未过度延伸",
          "News 4 (利空做空)",
          "Volume 信号",
          "VIX 走高",
          "期望R 0.08 < 0.20(EV门禁)"
        ],
        "why": "板块内相对强势 +2.74% · Gap 未过度延伸 · News 4 (利空做空) · Volume 信号",
        "score": 0,
        "news_count": 4,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 2.74,
          "relative_strength_vs_smh": 5.19,
          "relative_weakness_score": -5.85,
          "gap_pct": 1.16,
          "beta_proxy": -2.97,
          "volume_signal": true,
          "news_count": 4,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(48%) × ER(-0.6%) × rr_weight(0.62) / 100",
        "rr_weight": 0.62,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 17,
        "direction": "SHORT"
      },
      {
        "symbol": "META",
        "win_prob": 53.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.63,
        "expected_high": 665.99,
        "expected_low": 648.03,
        "expected_close": 665.99,
        "current_price": 661.8,
        "upside_pct": 2.08,
        "downside_risk_pct": 0.63,
        "risk_reward": 3.29,
        "rr_display": {
          "reward_risk_ratio": 3.29,
          "risk_reward_ratio": 0.3,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 3.29",
          "label_risk_reward": "Risk:Reward 1:0.30",
          "display": "Reward/Risk 3.29 · Risk:Reward 1:0.30",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 1.2737,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.56,
        "relative_strength": 3.39,
        "relative_strength_vs_smh": 5.84,
        "relative_weakness_score": -6.89,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +3.39%",
          "Gap 未过度延伸",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +3.39% · Gap 未过度延伸 · Volume 信号 · VIX 走高",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 3.39,
          "relative_strength_vs_smh": 5.84,
          "relative_weakness_score": -6.89,
          "gap_pct": -0.56,
          "beta_proxy": -3.91,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(53%) × ER(-0.6%) × rr_weight(1.5) / 100",
        "rr_weight": 1.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 18,
        "direction": "SHORT"
      },
      {
        "symbol": "GOOGL",
        "win_prob": 48.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -12.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": 6.0
            }
          ],
          "total": 48.0,
          "raw_total": 48.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.94,
        "expected_high": 347.96,
        "expected_low": 338.5,
        "expected_close": 347.96,
        "current_price": 344.7,
        "upside_pct": 1.8,
        "downside_risk_pct": 0.94,
        "risk_reward": 1.9,
        "rr_display": {
          "reward_risk_ratio": 1.9,
          "risk_reward_ratio": 0.53,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.90",
          "label_risk_reward": "Risk:Reward 1:0.53",
          "display": "Reward/Risk 1.90 · Risk:Reward 1:0.53",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.392,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.98,
        "relative_strength": 4.33,
        "relative_strength_vs_smh": 6.78,
        "relative_weakness_score": -8.4,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +4.33%",
          "Gap 未过度延伸",
          "News 1 (利空做空)",
          "Volume 信号",
          "VIX 走高",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +4.33% · Gap 未过度延伸 · News 1 (利空做空) · Volume 信号",
        "score": 0,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 4.33,
          "relative_strength_vs_smh": 6.78,
          "relative_weakness_score": -8.4,
          "gap_pct": 0.98,
          "beta_proxy": -5.28,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 10.48,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(48%) × ER(-0.9%) × rr_weight(0.95) / 100",
        "rr_weight": 0.95,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 19,
        "direction": "SHORT"
      }
    ]
  },
  "intraday": {
    "s5": {
      "driver_still_valid": true,
      "action": "Hold"
    },
    "s6": {
      "trade_valid": false,
      "action": "N/A"
    },
    "s7": {
      "actual_driver": "AI Chip Selloff",
      "attribution": {
        "ai": 0.53,
        "bond": 0.212,
        "oil": 0.0,
        "macro": 0.208,
        "other": 0.05,
        "splits": {
          "AI Chip Selloff": 0.551
        }
      }
    }
  },
  "trade_plan": {},
  "actual": {},
  "attribution": {
    "ai": 0.53,
    "bond": 0.212,
    "oil": 0.0,
    "macro": 0.208,
    "other": 0.05,
    "splits": {
      "AI Chip Selloff": 0.551
    }
  },
  "labels": {
    "actual_driver": "AI Chip Selloff",
    "agent_driver": "Fed Headlines",
    "agent_driver_type": "Fed",
    "corrected_driver_from_verify": null,
    "driver_splits": {
      "AI Chip Selloff": 0.5509045226130653
    },
    "hypothesis_correct": "部分对",
    "scenario_primary": "A",
    "scenario_actual": "C",
    "scenario_correct": false,
    "trade_recommendation": "—",
    "trade_direction": "NO TRADE",
    "primary_symbol": "—",
    "predicted_return_pct": null,
    "prediction_error_pct": null
  },
  "surprise": "No major surprises vs typical driver mix",
  "lesson": "AI Expansion Regime 下,单日 SMH/NVDA 抛售可压过 Macro 利好,指数分化(Dow+ / QQQ-)比「大盘涨跌」更有信息量",
  "playbook_refs": [
    "Case-49"
  ],
  "bayesian_drivers": {
    "AI": 1.0,
    "Bond": 0.0,
    "Macro": 0.0,
    "Oil": 0.0,
    "Risk": 0.0
  },
  "data_gaps": []
}