← 全部 Cases · 今日流程

Market Case · 2026-09-10

Day 49

Day 49
9/9 Steps

Regime · Hypothesis

R0 Regime
AI Expansion (82.0%)
Hypothesis
AI/Semiconductor leads index today; macro is secondary variable
ID
H-2026-09-10-001

Labels · Attribution

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

Surprise · Lesson

Surprise:AI/Semiconductor dominated more than typical day

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

Evidence / Counter

Evidence

  • VIX=16.7 (low fear)

Counter

  • NVDA -1.6%
  • SMH -1.2%
  • 10Y=4.80% (elevated rates)
  • Breadth 29% (narrow market)

Step 快捷入口

原始 JSON
{
  "date": "2026-09-10",
  "features": {
    "dgs10": 4.8,
    "dgs2": null,
    "vix": 16.68,
    "vix_chg": 1.34,
    "qqq_chg": -1.35,
    "smh_chg": -2.28,
    "nvda_chg": -3.3,
    "spy_chg": 0.0,
    "oil_chg": 0.0,
    "dxy_chg": 0.15,
    "breadth_proxy": 0.2857142857142857,
    "qqq_gap": -0.3,
    "news_headline_count": 17,
    "news_bearish_ratio": 0.0,
    "news_ai_mentions": 5,
    "news_macro_mentions": 4,
    "news_oil_mentions": 2,
    "news_risk_mentions": 0
  },
  "regime": {
    "label": "AI Expansion",
    "confidence": 0.82
  },
  "hypothesis": {
    "id": "H-2026-09-10-001",
    "statement": "AI/Semiconductor leads index today; macro is secondary variable",
    "evidence": [
      "VIX=16.7 (low fear)"
    ],
    "counter_evidence": [
      "NVDA -1.6%",
      "SMH -1.2%",
      "10Y=4.80% (elevated rates)",
      "Breadth 29% (narrow market)"
    ],
    "confidence": 0.44,
    "status": "待验证"
  },
  "morning": {
    "bias": "Strong Bear",
    "total": -5,
    "driver_type": "Macro",
    "daily_driver": "Macro Surprise",
    "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": "AVGO",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 70,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+0.91%",
          "expected_return_pct": 0.91,
          "win_prob": 70.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 16.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              }
            ],
            "total": 70.0,
            "raw_total": 70.0,
            "was_clamped": false
          },
          "risk_reward": 1.82,
          "final_score": 0.22,
          "trade_action": "Pass",
          "relative_strength": -0.89,
          "entry": "Below 362.6 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 362.57,
          "entry_zone": {
            "low": 361.48,
            "high": 363.66,
            "mid": 362.57,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 362.57
              }
            ],
            "display": "Entry Zone 361–364",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "364.4 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 364.38,
          "target": "359.3 (预期低点)",
          "target_source": "expected_low",
          "target_price": 359.27,
          "targets": [
            "359.3 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 362.57,
            "orb_high": 364.38,
            "orb_low": 357.1,
            "prev_high": 368.56,
            "prev_low": 368.56,
            "prior_close": 368.56,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -0.89%",
            "Volume 信号",
            "几何上行 <1.5%(软门槛)"
          ],
          "why_chain": "RS弱于QQQ -0.89% · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "why_vs_runner_up": "AVGO RS -0.9% vs GOOGL -1.3%;ER 0.5% vs 0.4%;Win% 70 vs 61;relative weakness play",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -0.89,
            "relative_strength_vs_smh": -0.46,
            "relative_weakness_score": 1.17,
            "gap_pct": -3.11,
            "beta_proxy": 2.06,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 1.34,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(70%) × ER(0.5%) × rr_weight(0.66) / 100",
          "expected_high": 364.38,
          "expected_low": 359.27,
          "expected_close": 360.42,
          "current_price": 362.17,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.61,
          "why_factors": [
            "RS弱于QQQ -0.89%",
            "Volume 信号",
            "几何上行 <1.5%(软门槛)"
          ],
          "why_today": "RS弱于QQQ -0.89% · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "gap_pct": -3.11,
          "rr_display": {
            "reward_risk_ratio": 1.82,
            "risk_reward_ratio": 0.55,
            "reward_per_share": 3.3,
            "risk_per_share": 1.81,
            "label_reward_risk": "Reward/Risk 1.82",
            "label_risk_reward": "Risk:Reward 1:0.55",
            "display": "Reward/Risk 1.82 · Risk:Reward 1:0.55",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Macro Surprise · Oil Selloff",
          "invalidation": "Close above stop $364.38",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 362.57,
              "source": "vwap",
              "confidence": 89,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 362.57,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 362.17,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 364.38,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 364.38,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 362.57,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 359.27,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 359.27,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(362.57-359.27)/362.57=0.91%",
          "heuristic_expected_return_pct": 0.48,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 AVGO:在 362.57 附近入场,目标 359.27,预期 +0.91%",
          "expected_r": 0.974,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 55,
            "contracts": 0,
            "max_loss_usd": 99.55,
            "win_usd": 181.5,
            "loss_usd": 99.55,
            "expected_value_usd": 97.19,
            "risk_per_share": 1.81,
            "reward_per_share": 3.3,
            "rr_display": {
              "reward_risk_ratio": 1.82,
              "risk_reward_ratio": 0.55,
              "reward_per_share": 3.3,
              "risk_per_share": 1.81,
              "label_reward_risk": "Reward/Risk 1.82",
              "label_risk_reward": "Risk:Reward 1:0.55",
              "display": "Reward/Risk 1.82 · Risk:Reward 1:0.55",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$182 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 55,
            "max_loss_usd": 99.55,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 55 unit(s) → Max Loss $99.55"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 1.82,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "GOOGL",
              "rank": 2,
              "reasons": [
                "Win% 70 vs 61",
                "ER 0.9% vs 0.4%",
                "Score 0.22 vs 0.21",
                "RS -0.9% vs -1.3%",
                "R:R 1.82 vs 1.6"
              ],
              "summary": "Why AVGO over GOOGL: Win% 70 vs 61 · ER 0.9% vs 0.4% · Score 0.22 vs 0.21 · RS -0.9% vs -1.3% · R:R 1.82 vs 1.6"
            },
            {
              "symbol": "AMZN",
              "rank": 3,
              "reasons": [
                "Win% 70 vs 66",
                "ER 0.9% vs 0.3%",
                "Score 0.22 vs 0.18",
                "R:R 1.82 vs 1.6"
              ],
              "summary": "Why AVGO over AMZN: Win% 70 vs 66 · ER 0.9% vs 0.3% · Score 0.22 vs 0.18 · R:R 1.82 vs 1.6"
            },
            {
              "symbol": "TQQQ",
              "rank": 4,
              "reasons": [
                "Win% 70 vs 71",
                "ER 0.9% vs 0.4%",
                "Score 0.22 vs 0.15",
                "RS -0.9% vs -1.7%",
                "R:R 1.82 vs 0.46"
              ],
              "summary": "Why AVGO over TQQQ: Win% 70 vs 71 · ER 0.9% vs 0.4% · Score 0.22 vs 0.15 · RS -0.9% vs -1.7% · R:R 1.82 vs 0.46"
            },
            {
              "symbol": "ARM",
              "rank": 5,
              "reasons": [
                "Win% 70 vs 79",
                "ER 0.9% vs 0.3%",
                "Score 0.22 vs 0.12",
                "RS -0.9% vs -1.1%",
                "R:R 1.82 vs 0.26"
              ],
              "summary": "Why AVGO over ARM: Win% 70 vs 79 · ER 0.9% vs 0.3% · Score 0.22 vs 0.12 · RS -0.9% vs -1.1% · R:R 1.82 vs 0.26"
            },
            {
              "symbol": "NVDA",
              "rank": 6,
              "reasons": [
                "ER 0.9% vs 0.3%",
                "Score 0.22 vs 0.12",
                "RS -0.9% vs -0.7%",
                "R:R 1.82 vs 1.32"
              ],
              "summary": "Why AVGO over NVDA: ER 0.9% vs 0.3% · Score 0.22 vs 0.12 · RS -0.9% vs -0.7% · R:R 1.82 vs 1.32"
            }
          ],
          "rank_summary": "AVGO ranked #1 because best reward/risk",
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 70.0,
            "sample_size": 0,
            "confidence_interval": null,
            "source": "rules_fallback",
            "match_quality": "insufficient",
            "win_prob_source": "rules",
            "disclaimer": "No historical matches; using rules breakdown"
          },
          "similar_days": [
            {
              "date": "2026-08-28",
              "outcome": "win",
              "return_pct": 3.92,
              "match_score": 3,
              "direction": "LONG"
            }
          ],
          "ev_distribution": {
            "expected_value_usd": 97.19,
            "win_scenario_usd": 181.5,
            "loss_scenario_usd": 99.55,
            "win_prob_pct": 70.0,
            "display": "EV $+97 (win +$182 @ 70.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 362.17,
            "ideal_entry": 362.57,
            "distance_pct": 0.11,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 361.48,
            "zone_high": 363.66,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 2,
          "symbol": "GOOGL",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 61,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+0.87%",
          "expected_return_pct": 0.87,
          "win_prob": 61.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 12.0
              },
              {
                "factor": "Catalyst",
                "key": "catalyst",
                "points": -5.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              }
            ],
            "total": 61.0,
            "raw_total": 61.0,
            "was_clamped": false
          },
          "risk_reward": 5.06,
          "final_score": 0.21,
          "trade_action": "Pass",
          "relative_strength": -1.34,
          "entry": "Below 331.3 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 331.23,
          "entry_zone": {
            "low": 330.65,
            "high": 331.8,
            "mid": 331.23,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 331.29
              },
              {
                "source": "orb_high",
                "label": "ORB高点",
                "price": 331.8
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 330.65
              }
            ],
            "display": "Entry Zone 331–332",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "331.8 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 331.8,
          "target": "328.3 (预期低点)",
          "target_source": "expected_low",
          "target_price": 328.34,
          "targets": [
            "328.3 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 331.29,
            "orb_high": 331.8,
            "orb_low": 330.65,
            "prev_high": 338.36,
            "prev_low": 338.36,
            "prior_close": 338.36,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -1.34%",
            "News 1 (利空做空)",
            "Volume 信号",
            "几何上行 <1.5%(软门槛)"
          ],
          "why_chain": "RS弱于QQQ -1.34% · News 1 (利空做空) · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -1.34,
            "relative_strength_vs_smh": -0.91,
            "relative_weakness_score": 1.89,
            "gap_pct": -2.09,
            "beta_proxy": 2.6,
            "volume_signal": true,
            "news_count": 1,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 1.34,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(61%) × ER(0.4%) × rr_weight(0.8) / 100",
          "expected_high": 332.64,
          "expected_low": 328.34,
          "expected_close": 329.55,
          "current_price": 330.99,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "RS弱于QQQ -1.34%",
            "News 1 (利空做空)",
            "Volume 信号",
            "几何上行 <1.5%(软门槛)"
          ],
          "why_today": "RS弱于QQQ -1.34% · News 1 (利空做空) · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "gap_pct": -2.09,
          "rr_display": {
            "reward_risk_ratio": 5.07,
            "risk_reward_ratio": 0.2,
            "reward_per_share": 2.89,
            "risk_per_share": 0.57,
            "label_reward_risk": "Reward/Risk 5.07",
            "label_risk_reward": "Risk:Reward 1:0.20",
            "display": "Reward/Risk 5.07 · Risk:Reward 1:0.20",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Macro Surprise · Oil Selloff",
          "invalidation": "Close above stop $331.8",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 331.23,
              "source": "vwap",
              "confidence": 98,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 330.65,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 331.29,
                  "weight_pct": 54.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 330.99,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 331.8,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 331.8,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 331.29,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 328.34,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 328.34,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(331.23-328.34)/331.23=0.87%",
          "heuristic_expected_return_pct": 0.44,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 GOOGL:在 331.23 附近入场,目标 328.34,预期 +0.87%",
          "expected_r": 2.6966,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 175,
            "contracts": 0,
            "max_loss_usd": 99.75,
            "win_usd": 505.75,
            "loss_usd": 99.75,
            "expected_value_usd": 269.61,
            "risk_per_share": 0.57,
            "reward_per_share": 2.89,
            "rr_display": {
              "reward_risk_ratio": 5.07,
              "risk_reward_ratio": 0.2,
              "reward_per_share": 2.89,
              "risk_per_share": 0.57,
              "label_reward_risk": "Reward/Risk 5.07",
              "label_risk_reward": "Risk:Reward 1:0.20",
              "display": "Reward/Risk 5.07 · Risk:Reward 1:0.20",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$506 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 175,
            "max_loss_usd": 99.75,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 175 unit(s) → Max Loss $99.75"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 5.06,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "AVGO",
              "rank": 1,
              "reasons": [
                "Win% 61 vs 70",
                "ER 0.9% vs 0.5%",
                "Score 0.21 vs 0.22",
                "RS -1.3% vs -0.9%",
                "R:R 5.06 vs 1.31"
              ],
              "summary": "Why GOOGL over AVGO: Win% 61 vs 70 · ER 0.9% vs 0.5% · Score 0.21 vs 0.22 · RS -1.3% vs -0.9% · R:R 5.06 vs 1.31"
            },
            {
              "symbol": "AMZN",
              "rank": 3,
              "reasons": [
                "Win% 61 vs 66",
                "ER 0.9% vs 0.3%",
                "Score 0.21 vs 0.18",
                "RS -1.3% vs -0.9%",
                "R:R 5.06 vs 1.6"
              ],
              "summary": "Why GOOGL over AMZN: Win% 61 vs 66 · ER 0.9% vs 0.3% · Score 0.21 vs 0.18 · RS -1.3% vs -0.9% · R:R 5.06 vs 1.6"
            },
            {
              "symbol": "TQQQ",
              "rank": 4,
              "reasons": [
                "Win% 61 vs 71",
                "ER 0.9% vs 0.4%",
                "Score 0.21 vs 0.15",
                "RS -1.3% vs -1.7%",
                "R:R 5.06 vs 0.46"
              ],
              "summary": "Why GOOGL over TQQQ: Win% 61 vs 71 · ER 0.9% vs 0.4% · Score 0.21 vs 0.15 · RS -1.3% vs -1.7% · R:R 5.06 vs 0.46"
            },
            {
              "symbol": "ARM",
              "rank": 5,
              "reasons": [
                "Win% 61 vs 79",
                "ER 0.9% vs 0.3%",
                "Score 0.21 vs 0.12",
                "RS -1.3% vs -1.1%",
                "R:R 5.06 vs 0.26"
              ],
              "summary": "Why GOOGL over ARM: Win% 61 vs 79 · ER 0.9% vs 0.3% · Score 0.21 vs 0.12 · RS -1.3% vs -1.1% · R:R 5.06 vs 0.26"
            },
            {
              "symbol": "NVDA",
              "rank": 6,
              "reasons": [
                "Win% 61 vs 70",
                "ER 0.9% vs 0.3%",
                "Score 0.21 vs 0.12",
                "RS -1.3% vs -0.7%",
                "R:R 5.06 vs 1.32"
              ],
              "summary": "Why GOOGL over NVDA: Win% 61 vs 70 · ER 0.9% vs 0.3% · Score 0.21 vs 0.12 · RS -1.3% vs -0.7% · R:R 5.06 vs 1.32"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 61.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": 269.61,
            "win_scenario_usd": 505.75,
            "loss_scenario_usd": 99.75,
            "win_prob_pct": 61.0,
            "display": "EV $+270 (win +$506 @ 61.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 330.99,
            "ideal_entry": 331.23,
            "distance_pct": 0.07,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 330.65,
            "zone_high": 331.8,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 3,
          "symbol": "AMZN",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 66,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+0.86%",
          "expected_return_pct": 0.86,
          "win_prob": 66.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
              }
            ],
            "total": 66.0,
            "raw_total": 66.0,
            "was_clamped": false
          },
          "risk_reward": 3.62,
          "final_score": 0.18,
          "trade_action": "Pass",
          "relative_strength": -0.92,
          "entry": "Below 252.7 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 252.6,
          "entry_zone": {
            "low": 252.0,
            "high": 253.2,
            "mid": 252.6,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 252.69
              },
              {
                "source": "orb_high",
                "label": "ORB高点",
                "price": 253.2
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 252.0
              }
            ],
            "display": "Entry Zone 252–253",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "253.2 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 253.2,
          "target": "250.4 (预期低点)",
          "target_source": "expected_low",
          "target_price": 250.43,
          "targets": [
            "250.4 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 252.69,
            "orb_high": 253.2,
            "orb_low": 252.0,
            "prev_high": 256.97,
            "prev_low": 256.97,
            "prior_close": 256.97,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -0.92%",
            "Volume 信号",
            "几何上行 <1.5%(软门槛)"
          ],
          "why_chain": "RS弱于QQQ -0.92% · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -0.92,
            "relative_strength_vs_smh": -0.49,
            "relative_weakness_score": 1.21,
            "gap_pct": -1.93,
            "beta_proxy": 2.1,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 1.34,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(66%) × ER(0.3%) × rr_weight(0.8) / 100",
          "expected_high": 253.71,
          "expected_low": 250.43,
          "expected_close": 251.6,
          "current_price": 252.45,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "RS弱于QQQ -0.92%",
            "Volume 信号",
            "几何上行 <1.5%(软门槛)"
          ],
          "why_today": "RS弱于QQQ -0.92% · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "gap_pct": -1.93,
          "rr_display": {
            "reward_risk_ratio": 3.62,
            "risk_reward_ratio": 0.28,
            "reward_per_share": 2.17,
            "risk_per_share": 0.6,
            "label_reward_risk": "Reward/Risk 3.62",
            "label_risk_reward": "Risk:Reward 1:0.28",
            "display": "Reward/Risk 3.62 · Risk:Reward 1:0.28",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Macro Surprise · Oil Selloff",
          "invalidation": "Close above stop $253.2",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 252.6,
              "source": "vwap",
              "confidence": 98,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 252.0,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 252.69,
                  "weight_pct": 54.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 252.45,
                  "weight_pct": 23.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 253.2,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 253.2,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 252.69,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 250.43,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 250.43,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(252.6-250.43)/252.6=0.86%",
          "heuristic_expected_return_pct": 0.34,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 AMZN:在 252.6 附近入场,目标 250.43,预期 +0.86%",
          "expected_r": 2.0492,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 166,
            "contracts": 0,
            "max_loss_usd": 99.6,
            "win_usd": 360.22,
            "loss_usd": 99.6,
            "expected_value_usd": 203.88,
            "risk_per_share": 0.6,
            "reward_per_share": 2.17,
            "rr_display": {
              "reward_risk_ratio": 3.62,
              "risk_reward_ratio": 0.28,
              "reward_per_share": 2.17,
              "risk_per_share": 0.6,
              "label_reward_risk": "Reward/Risk 3.62",
              "label_risk_reward": "Risk:Reward 1:0.28",
              "display": "Reward/Risk 3.62 · Risk:Reward 1:0.28",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$360 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 166,
            "max_loss_usd": 99.6,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 166 unit(s) → Max Loss $99.6"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 3.62,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "AVGO",
              "rank": 1,
              "reasons": [
                "Win% 66 vs 70",
                "ER 0.9% vs 0.5%",
                "Score 0.18 vs 0.22",
                "R:R 3.62 vs 1.31"
              ],
              "summary": "Why AMZN over AVGO: Win% 66 vs 70 · ER 0.9% vs 0.5% · Score 0.18 vs 0.22 · R:R 3.62 vs 1.31"
            },
            {
              "symbol": "GOOGL",
              "rank": 2,
              "reasons": [
                "Win% 66 vs 61",
                "ER 0.9% vs 0.4%",
                "Score 0.18 vs 0.21",
                "RS -0.9% vs -1.3%",
                "R:R 3.62 vs 1.6"
              ],
              "summary": "Why AMZN over GOOGL: Win% 66 vs 61 · ER 0.9% vs 0.4% · Score 0.18 vs 0.21 · RS -0.9% vs -1.3% · R:R 3.62 vs 1.6"
            },
            {
              "symbol": "TQQQ",
              "rank": 4,
              "reasons": [
                "Win% 66 vs 71",
                "ER 0.9% vs 0.4%",
                "Score 0.18 vs 0.15",
                "RS -0.9% vs -1.7%",
                "R:R 3.62 vs 0.46"
              ],
              "summary": "Why AMZN over TQQQ: Win% 66 vs 71 · ER 0.9% vs 0.4% · Score 0.18 vs 0.15 · RS -0.9% vs -1.7% · R:R 3.62 vs 0.46"
            },
            {
              "symbol": "ARM",
              "rank": 5,
              "reasons": [
                "Win% 66 vs 79",
                "ER 0.9% vs 0.3%",
                "Score 0.18 vs 0.12",
                "RS -0.9% vs -1.1%",
                "R:R 3.62 vs 0.26"
              ],
              "summary": "Why AMZN over ARM: Win% 66 vs 79 · ER 0.9% vs 0.3% · Score 0.18 vs 0.12 · RS -0.9% vs -1.1% · R:R 3.62 vs 0.26"
            },
            {
              "symbol": "NVDA",
              "rank": 6,
              "reasons": [
                "Win% 66 vs 70",
                "ER 0.9% vs 0.3%",
                "Score 0.18 vs 0.12",
                "RS -0.9% vs -0.7%",
                "R:R 3.62 vs 1.32"
              ],
              "summary": "Why AMZN over NVDA: Win% 66 vs 70 · ER 0.9% vs 0.3% · Score 0.18 vs 0.12 · RS -0.9% vs -0.7% · R:R 3.62 vs 1.32"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 66.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": 203.88,
            "win_scenario_usd": 360.22,
            "loss_scenario_usd": 99.6,
            "win_prob_pct": 66.0,
            "display": "EV $+204 (win +$360 @ 66.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 252.45,
            "ideal_entry": 252.6,
            "distance_pct": 0.06,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 252.0,
            "zone_high": 253.2,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 4,
          "symbol": "TQQQ",
          "direction": "SHORT",
          "instrument": "ETF",
          "horizon": "Swing",
          "confidence": 71,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+1.97%",
          "expected_return_pct": 1.97,
          "win_prob": 71.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
              }
            ],
            "total": 71.0,
            "raw_total": 71.0,
            "was_clamped": false
          },
          "risk_reward": 1.92,
          "final_score": 0.15,
          "trade_action": "Pass",
          "relative_strength": -1.7,
          "entry": "Below 71.1 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 71.17,
          "entry_zone": {
            "low": 71.08,
            "high": 71.27,
            "mid": 71.17,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 71.08
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 71.27
              }
            ],
            "display": "Entry Zone 71.08–71.27",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "71.9 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 71.9,
          "target": "69.8 (预期低点)",
          "target_source": "expected_low",
          "target_price": 69.77,
          "targets": [
            "69.8 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 71.08,
            "orb_high": 71.9,
            "orb_low": 71.27,
            "prev_high": 72.16,
            "prev_low": 72.16,
            "prior_close": 72.16,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -1.70%",
            "Gap 未过度延伸",
            "Volume 信号",
            "期望R 0.04 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -1.70% · Gap 未过度延伸 · Volume 信号 · 期望R 0.04 < 0.20(EV门禁)",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -1.7,
            "relative_strength_vs_smh": -1.27,
            "relative_weakness_score": 2.46,
            "gap_pct": -1.12,
            "beta_proxy": 3.02,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 1.34,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(71%) × ER(0.4%) × rr_weight(0.5) / 100",
          "expected_high": 71.55,
          "expected_low": 69.77,
          "expected_close": 70.03,
          "current_price": 70.33,
          "upside_pct": 0.8,
          "downside_risk_pct": 1.73,
          "why_factors": [
            "RS弱于QQQ -1.70%",
            "Gap 未过度延伸",
            "Volume 信号",
            "期望R 0.04 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -1.70% · Gap 未过度延伸 · Volume 信号 · 期望R 0.04 < 0.20(EV门禁)",
          "gap_pct": -1.12,
          "rr_display": {
            "reward_risk_ratio": 1.92,
            "risk_reward_ratio": 0.52,
            "reward_per_share": 1.4,
            "risk_per_share": 0.73,
            "label_reward_risk": "Reward/Risk 1.92",
            "label_risk_reward": "Risk:Reward 1:0.52",
            "display": "Reward/Risk 1.92 · Risk:Reward 1:0.52",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Macro Surprise · Oil Selloff",
          "invalidation": "Close above stop $71.9",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 71.17,
              "source": "vwap",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 71.27,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 71.08,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "stop": {
              "price": 71.9,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 71.9,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "prev_high",
                  "label": "Yesterday High",
                  "price": 72.16,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 69.77,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 69.77,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(71.17-69.77)/71.17=1.97%",
          "heuristic_expected_return_pct": 0.43,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 TQQQ:在 71.17 附近入场,目标 69.77,预期 +1.97%",
          "expected_r": 1.0732,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 96.8,
            "shares": 136,
            "contracts": 0,
            "max_loss_usd": 99.28,
            "win_usd": 190.4,
            "loss_usd": 99.28,
            "expected_value_usd": 106.39,
            "risk_per_share": 0.73,
            "reward_per_share": 1.4,
            "rr_display": {
              "reward_risk_ratio": 1.92,
              "risk_reward_ratio": 0.52,
              "reward_per_share": 1.4,
              "risk_per_share": 0.73,
              "label_reward_risk": "Reward/Risk 1.92",
              "label_risk_reward": "Risk:Reward 1:0.52",
              "display": "Reward/Risk 1.92 · Risk:Reward 1:0.52",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$190 / Loss -$99"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 96.8,
            "contracts": 0,
            "shares": 136,
            "max_loss_usd": 99.28,
            "size_label": "None",
            "display": "Risk 1.0% → Position 96.8% → 136 unit(s) → Max Loss $99.28"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "liquidity",
              "label": "Highest Liquidity",
              "primary_value": 5.0,
              "runner_up_value": 5.0,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 1.92,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "AVGO",
              "rank": 1,
              "reasons": [
                "Win% 71 vs 70",
                "ER 2.0% vs 0.5%",
                "Score 0.15 vs 0.22",
                "RS -1.7% vs -0.9%",
                "R:R 1.92 vs 1.31"
              ],
              "summary": "Why TQQQ over AVGO: Win% 71 vs 70 · ER 2.0% vs 0.5% · Score 0.15 vs 0.22 · RS -1.7% vs -0.9% · R:R 1.92 vs 1.31"
            },
            {
              "symbol": "GOOGL",
              "rank": 2,
              "reasons": [
                "Win% 71 vs 61",
                "ER 2.0% vs 0.4%",
                "Score 0.15 vs 0.21",
                "RS -1.7% vs -1.3%",
                "R:R 1.92 vs 1.6"
              ],
              "summary": "Why TQQQ over GOOGL: Win% 71 vs 61 · ER 2.0% vs 0.4% · Score 0.15 vs 0.21 · RS -1.7% vs -1.3% · R:R 1.92 vs 1.6"
            },
            {
              "symbol": "AMZN",
              "rank": 3,
              "reasons": [
                "Win% 71 vs 66",
                "ER 2.0% vs 0.3%",
                "Score 0.15 vs 0.18",
                "RS -1.7% vs -0.9%",
                "R:R 1.92 vs 1.6"
              ],
              "summary": "Why TQQQ over AMZN: Win% 71 vs 66 · ER 2.0% vs 0.3% · Score 0.15 vs 0.18 · RS -1.7% vs -0.9% · R:R 1.92 vs 1.6"
            },
            {
              "symbol": "ARM",
              "rank": 5,
              "reasons": [
                "Win% 71 vs 79",
                "ER 2.0% vs 0.3%",
                "Score 0.15 vs 0.12",
                "RS -1.7% vs -1.1%",
                "R:R 1.92 vs 0.26"
              ],
              "summary": "Why TQQQ over ARM: Win% 71 vs 79 · ER 2.0% vs 0.3% · Score 0.15 vs 0.12 · RS -1.7% vs -1.1% · R:R 1.92 vs 0.26"
            },
            {
              "symbol": "NVDA",
              "rank": 6,
              "reasons": [
                "Win% 71 vs 70",
                "ER 2.0% vs 0.3%",
                "Score 0.15 vs 0.12",
                "RS -1.7% vs -0.7%",
                "R:R 1.92 vs 1.32"
              ],
              "summary": "Why TQQQ over NVDA: Win% 71 vs 70 · ER 2.0% vs 0.3% · Score 0.15 vs 0.12 · RS -1.7% vs -0.7% · R:R 1.92 vs 1.32"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 71.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": 106.39,
            "win_scenario_usd": 190.4,
            "loss_scenario_usd": 99.28,
            "win_prob_pct": 71.0,
            "display": "EV $+106 (win +$190 @ 71.0% · loss -$99)"
          },
          "entry_status": {
            "current_price": 70.33,
            "ideal_entry": 71.17,
            "distance_pct": 1.18,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 71.08,
            "zone_high": 71.27,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 5,
          "symbol": "ARM",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Swing",
          "confidence": 79,
          "confidence_stars": "★★★☆☆",
          "expected_move": "+2.63%",
          "expected_return_pct": 2.63,
          "win_prob": 79.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "RS",
                "key": "rs",
                "points": 20.0
              },
              {
                "factor": "Gap",
                "key": "gap",
                "points": 5.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              }
            ],
            "total": 79.0,
            "raw_total": 79.0,
            "was_clamped": false
          },
          "risk_reward": 1.67,
          "final_score": 0.12,
          "trade_action": "Pass",
          "relative_strength": -1.09,
          "entry": "Below 261.2 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 261.28,
          "entry_zone": {
            "low": 261.04,
            "high": 261.53,
            "mid": 261.28,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 261.22
              },
              {
                "source": "orb_low",
                "label": "ORB低点",
                "price": 261.04
              },
              {
                "source": "prev_high",
                "label": "昨日高点",
                "price": 261.53
              },
              {
                "source": "prev_low",
                "label": "昨日低点",
                "price": 261.53
              },
              {
                "source": "prior_close",
                "label": "昨收",
                "price": 261.53
              }
            ],
            "display": "Entry Zone 261.04–261.53",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "265.4 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 265.4,
          "target": "254.4 (预期低点)",
          "target_source": "expected_low",
          "target_price": 254.42,
          "targets": [
            "254.4 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 261.22,
            "orb_high": 265.4,
            "orb_low": 261.04,
            "prev_high": 261.53,
            "prev_low": 261.53,
            "prior_close": 261.53,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "RS弱于QQQ -1.09%",
            "RS弱于SMH -0.66%",
            "Gap 未过度延伸",
            "Volume 信号",
            "期望R -0.00 < 0.20(EV门禁)"
          ],
          "why_chain": "RS弱于QQQ -1.09% · RS弱于SMH -0.66% · Gap 未过度延伸 · Volume 信号",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": -1.09,
            "relative_strength_vs_smh": -0.66,
            "relative_weakness_score": 1.49,
            "gap_pct": -0.19,
            "beta_proxy": 2.3,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 1.34,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Relative Weakness",
          "score_formula_display": "final = win_prob(79%) × ER(0.3%) × rr_weight(0.5) / 100",
          "expected_high": 264.23,
          "expected_low": 254.42,
          "expected_close": 255.67,
          "current_price": 256.47,
          "upside_pct": 0.8,
          "downside_risk_pct": 3.03,
          "why_factors": [
            "RS弱于QQQ -1.09%",
            "RS弱于SMH -0.66%",
            "Gap 未过度延伸",
            "Volume 信号",
            "期望R -0.00 < 0.20(EV门禁)"
          ],
          "why_today": "RS弱于QQQ -1.09% · RS弱于SMH -0.66% · Gap 未过度延伸 · Volume 信号",
          "gap_pct": -0.19,
          "rr_display": {
            "reward_risk_ratio": 1.67,
            "risk_reward_ratio": 0.6,
            "reward_per_share": 6.86,
            "risk_per_share": 4.12,
            "label_reward_risk": "Reward/Risk 1.67",
            "label_risk_reward": "Risk:Reward 1:0.60",
            "display": "Reward/Risk 1.67 · Risk:Reward 1:0.60",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Macro Surprise · Oil Selloff",
          "invalidation": "Close above stop $265.4",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 261.28,
              "source": "vwap",
              "confidence": 98,
              "reasons": [
                {
                  "source": "orb_low",
                  "label": "ORB Low",
                  "price": 261.04,
                  "weight_pct": 19.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 261.22,
                  "weight_pct": 44.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "prev_low",
                  "label": "Yesterday Low",
                  "price": 261.53,
                  "weight_pct": 19.0,
                  "matched": true,
                  "primary": false
                },
                {
                  "source": "prior_close",
                  "label": "Prior Close",
                  "price": 261.53,
                  "weight_pct": 19.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 265.4,
              "source": "orb_high",
              "confidence": 77,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 265.4,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "target": {
              "price": 254.42,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 254.42,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(261.28-254.42)/261.28=2.63%",
          "heuristic_expected_return_pct": 0.31,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 ARM:在 261.28 附近入场,目标 254.42,预期 +2.63%",
          "expected_r": 1.1093,
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 62.7,
            "shares": 24,
            "contracts": 0,
            "max_loss_usd": 98.88,
            "win_usd": 164.64,
            "loss_usd": 98.88,
            "expected_value_usd": 109.3,
            "risk_per_share": 4.12,
            "reward_per_share": 6.86,
            "rr_display": {
              "reward_risk_ratio": 1.67,
              "risk_reward_ratio": 0.6,
              "reward_per_share": 6.86,
              "risk_per_share": 4.12,
              "label_reward_risk": "Reward/Risk 1.67",
              "label_risk_reward": "Risk:Reward 1:0.60",
              "display": "Reward/Risk 1.67 · Risk:Reward 1:0.60",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$165 / Loss -$99"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 62.7,
            "contracts": 0,
            "shares": 24,
            "max_loss_usd": 98.88,
            "size_label": "None",
            "display": "Risk 1.0% → Position 62.7% → 24 unit(s) → Max Loss $98.88"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 3.83,
              "runner_up_value": 2.99,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "win_prob",
              "label": "Highest Probability",
              "primary_value": 79.0,
              "runner_up_value": 71.0,
              "wins": true
            },
            {
              "rank": 3,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 1.67,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "AVGO",
              "rank": 1,
              "reasons": [
                "Win% 79 vs 70",
                "ER 2.6% vs 0.5%",
                "Score 0.12 vs 0.22",
                "RS -1.1% vs -0.9%",
                "R:R 1.67 vs 1.31"
              ],
              "summary": "Why ARM over AVGO: Win% 79 vs 70 · ER 2.6% vs 0.5% · Score 0.12 vs 0.22 · RS -1.1% vs -0.9% · R:R 1.67 vs 1.31"
            },
            {
              "symbol": "GOOGL",
              "rank": 2,
              "reasons": [
                "Win% 79 vs 61",
                "ER 2.6% vs 0.4%",
                "Score 0.12 vs 0.21",
                "RS -1.1% vs -1.3%",
                "R:R 1.67 vs 1.6"
              ],
              "summary": "Why ARM over GOOGL: Win% 79 vs 61 · ER 2.6% vs 0.4% · Score 0.12 vs 0.21 · RS -1.1% vs -1.3% · R:R 1.67 vs 1.6"
            },
            {
              "symbol": "AMZN",
              "rank": 3,
              "reasons": [
                "Win% 79 vs 66",
                "ER 2.6% vs 0.3%",
                "Score 0.12 vs 0.18",
                "RS -1.1% vs -0.9%",
                "R:R 1.67 vs 1.6"
              ],
              "summary": "Why ARM over AMZN: Win% 79 vs 66 · ER 2.6% vs 0.3% · Score 0.12 vs 0.18 · RS -1.1% vs -0.9% · R:R 1.67 vs 1.6"
            },
            {
              "symbol": "TQQQ",
              "rank": 4,
              "reasons": [
                "Win% 79 vs 71",
                "ER 2.6% vs 0.4%",
                "Score 0.12 vs 0.15",
                "RS -1.1% vs -1.7%",
                "R:R 1.67 vs 0.46"
              ],
              "summary": "Why ARM over TQQQ: Win% 79 vs 71 · ER 2.6% vs 0.4% · Score 0.12 vs 0.15 · RS -1.1% vs -1.7% · R:R 1.67 vs 0.46"
            },
            {
              "symbol": "NVDA",
              "rank": 6,
              "reasons": [
                "Win% 79 vs 70",
                "ER 2.6% vs 0.3%",
                "RS -1.1% vs -0.7%",
                "R:R 1.67 vs 1.32"
              ],
              "summary": "Why ARM over NVDA: Win% 79 vs 70 · ER 2.6% vs 0.3% · RS -1.1% vs -0.7% · R:R 1.67 vs 1.32"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 79.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": 109.3,
            "win_scenario_usd": 164.64,
            "loss_scenario_usd": 98.88,
            "win_prob_pct": 79.0,
            "display": "EV $+109 (win +$165 @ 79.0% · loss -$99)"
          },
          "entry_status": {
            "current_price": 256.47,
            "ideal_entry": 261.28,
            "distance_pct": 1.84,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 261.04,
            "zone_high": 261.53,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        }
      ],
      "watchlist_items": [
        {
          "symbol": "NVDA",
          "rank": 6,
          "win_prob": 70.0,
          "expected_return_pct": 0.27,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -0.67% · Gap 未过度延伸 · News 1 (利空做空) · Volume 信号",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "TSLA",
          "rank": 7,
          "win_prob": 71.0,
          "expected_return_pct": 0.13,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -0.52% · Gap 未过度延伸 · Volume 信号 · 期望R 0.15 < 0.20(EV门禁)",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "SMH",
          "rank": 8,
          "win_prob": 65.0,
          "expected_return_pct": 0.09,
          "trade_action": "Pass",
          "why": "RS弱于QQQ -0.43% · Gap 未过度延伸 · Volume 信号 · 期望R 0.03 < 0.20(EV门禁)",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "QQQ",
          "rank": 9,
          "win_prob": 59.0,
          "expected_return_pct": 0.02,
          "trade_action": "Pass",
          "why": "Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "MSFT",
          "rank": 10,
          "win_prob": 48.0,
          "expected_return_pct": -0.02,
          "trade_action": "Pass",
          "why": "Gap 未过度延伸 · News 1 (利空做空) · Volume 信号 · 几何上行 <1.5%(软门槛)",
          "note": "Monitor — below trade threshold"
        }
      ],
      "advisory": true,
      "swing": {
        "symbol": "META",
        "direction": "LONG",
        "instrument": "Stock",
        "horizon": "Swing",
        "duration": "Swing (days–weeks)",
        "confidence": 47,
        "entry": "Near 656.5 (swing zone)",
        "entry_source": "swing_zone",
        "entry_price": 656.48,
        "entry_zone": {
          "low": 646.53,
          "high": 658.45,
          "mid": 656.48,
          "display": "$646.53–$658.45",
          "source": "swing_pullback"
        },
        "stop": "626.6 (1.75xATR)",
        "stop_source": "1.75xATR",
        "stop_price": 626.62,
        "target": "696.3 (T1 ~6.1%)",
        "target_source": "2xATR_or_5pct",
        "target_price": 696.29,
        "targets": [
          {
            "price": 696.29,
            "label": "T1",
            "pct": 6.06
          },
          {
            "price": 722.13,
            "label": "T2",
            "pct": 10.0
          }
        ],
        "expected_return_pct": 6.06,
        "expected_move": "+6.06%",
        "risk_reward": 1.33,
        "win_prob": 42.0,
        "final_score": 0.0,
        "swing_quality": 7.0,
        "atr": 19.9036,
        "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": 658.45,
        "why": [
          "高流动性波段标的 META",
          "Prior day +0.0%",
          "5D momentum +13.0%",
          "RS vs QQQ +8.17%",
          "Swing score 7.0"
        ],
        "why_chain": "高流动性波段标的 META · Prior day +0.0% · 5D momentum +13.0% · RS vs QQQ +8.17%",
        "invalidation": "Close beyond stop $626.62 or thesis broken (trend flip / catalyst fade)",
        "trade_summary_cn": "波段做多 META:理想入场 $646.53–$658.45,止损 $626.62,目标 $696.29(约 +6.1%),持仓天数–数周",
        "one_liner": "波段做多 META:理想入场 $646.53–$658.45,止损 $626.62,目标 $696.29(约 +6.1%),持仓天数–数周",
        "edge_type": "Relative Strength",
        "advisory": true,
        "label": "长线 · Swing Trade",
        "separate_from_intraday": true
      }
    },
    "edges": {
      "macro_edge": {
        "edge": "YES",
        "why": "今日有重大催化剂(含地缘/突发):Macro Surprise、Oil Selloff、Trade Policy",
        "catalyst": "Macro Surprise、Oil Selloff、Trade Policy"
      },
      "index_edge": {
        "edge": "YES",
        "why": "QQQ 走弱 -0.89%(做空 edge)"
      },
      "sector_edge": {
        "edge": "NO",
        "why": "板块相对强度不足"
      },
      "stock_edge": {
        "edge": "NO",
        "why": "无单票 RS+新闻+量能共振"
      },
      "advisory": "ADVISORY — 不构成投资建议"
    },
    "trade_candidates": [
      {
        "symbol": "AVGO",
        "win_prob": 70.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 16.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 70.0,
          "raw_total": 70.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.48,
        "expected_high": 364.38,
        "expected_low": 359.27,
        "expected_close": 360.42,
        "current_price": 362.17,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.61,
        "risk_reward": 1.31,
        "rr_display": {
          "reward_risk_ratio": 1.31,
          "risk_reward_ratio": 0.76,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.31",
          "label_risk_reward": "Risk:Reward 1:0.76",
          "display": "Reward/Risk 1.31 · Risk:Reward 1:0.76",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.617,
        "final_score": 0.22,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -3.11,
        "relative_strength": -0.89,
        "relative_strength_vs_smh": -0.46,
        "relative_weakness_score": 1.17,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.89%",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "RS弱于QQQ -0.89% · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.89,
          "relative_strength_vs_smh": -0.46,
          "relative_weakness_score": 1.17,
          "gap_pct": -3.11,
          "beta_proxy": 2.06,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(70%) × ER(0.5%) × rr_weight(0.66) / 100",
        "rr_weight": 0.66,
        "why_vs_runner_up": "AVGO RS -0.9% vs GOOGL -1.3%;ER 0.5% vs 0.4%;Win% 70 vs 61;relative weakness play",
        "advisory": true,
        "rank": 1,
        "direction": "SHORT"
      },
      {
        "symbol": "GOOGL",
        "win_prob": 61.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 12.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 61.0,
          "raw_total": 61.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.44,
        "expected_high": 332.64,
        "expected_low": 328.34,
        "expected_close": 329.55,
        "current_price": 330.99,
        "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.586,
        "final_score": 0.21,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -2.09,
        "relative_strength": -1.34,
        "relative_strength_vs_smh": -0.91,
        "relative_weakness_score": 1.89,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -1.34%",
          "News 1 (利空做空)",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "RS弱于QQQ -1.34% · News 1 (利空做空) · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 2,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -1.34,
          "relative_strength_vs_smh": -0.91,
          "relative_weakness_score": 1.89,
          "gap_pct": -2.09,
          "beta_proxy": 2.6,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(61%) × ER(0.4%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 2,
        "direction": "SHORT"
      },
      {
        "symbol": "AMZN",
        "win_prob": 66.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
            }
          ],
          "total": 66.0,
          "raw_total": 66.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.34,
        "expected_high": 253.71,
        "expected_low": 250.43,
        "expected_close": 251.6,
        "current_price": 252.45,
        "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.716,
        "final_score": 0.18,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.93,
        "relative_strength": -0.92,
        "relative_strength_vs_smh": -0.49,
        "relative_weakness_score": 1.21,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.92%",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "RS弱于QQQ -0.92% · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.92,
          "relative_strength_vs_smh": -0.49,
          "relative_weakness_score": 1.21,
          "gap_pct": -1.93,
          "beta_proxy": 2.1,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(66%) × ER(0.3%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 3,
        "direction": "SHORT"
      },
      {
        "symbol": "TQQQ",
        "win_prob": 71.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
            }
          ],
          "total": 71.0,
          "raw_total": 71.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.43,
        "expected_high": 71.55,
        "expected_low": 69.77,
        "expected_close": 70.03,
        "current_price": 70.33,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.73,
        "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.15,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.12,
        "relative_strength": -1.7,
        "relative_strength_vs_smh": -1.27,
        "relative_weakness_score": 2.46,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -1.70%",
          "Gap 未过度延伸",
          "Volume 信号",
          "期望R 0.04 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -1.70% · Gap 未过度延伸 · Volume 信号 · 期望R 0.04 < 0.20(EV门禁)",
        "score": 2,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -1.7,
          "relative_strength_vs_smh": -1.27,
          "relative_weakness_score": 2.46,
          "gap_pct": -1.12,
          "beta_proxy": 3.02,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(71%) × ER(0.4%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 4,
        "direction": "SHORT"
      },
      {
        "symbol": "ARM",
        "win_prob": 79.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": 20.0
            },
            {
              "factor": "Gap",
              "key": "gap",
              "points": 5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 79.0,
          "raw_total": 79.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.31,
        "expected_high": 264.23,
        "expected_low": 254.42,
        "expected_close": 255.67,
        "current_price": 256.47,
        "upside_pct": 0.8,
        "downside_risk_pct": 3.03,
        "risk_reward": 0.26,
        "rr_display": {
          "reward_risk_ratio": 0.26,
          "risk_reward_ratio": 3.85,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.26",
          "label_risk_reward": "Risk:Reward 1:3.85",
          "display": "Reward/Risk 0.26 · Risk:Reward 1:3.85",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.0046,
        "final_score": 0.12,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.19,
        "relative_strength": -1.09,
        "relative_strength_vs_smh": -0.66,
        "relative_weakness_score": 1.49,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -1.09%",
          "RS弱于SMH -0.66%",
          "Gap 未过度延伸",
          "Volume 信号",
          "期望R -0.00 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -1.09% · RS弱于SMH -0.66% · Gap 未过度延伸 · Volume 信号",
        "score": 1,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -1.09,
          "relative_strength_vs_smh": -0.66,
          "relative_weakness_score": 1.49,
          "gap_pct": -0.19,
          "beta_proxy": 2.3,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(79%) × ER(0.3%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 5,
        "direction": "SHORT"
      },
      {
        "symbol": "NVDA",
        "win_prob": 70.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": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 70.0,
          "raw_total": 70.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.27,
        "expected_high": 223.67,
        "expected_low": 220.54,
        "expected_close": 221.72,
        "current_price": 222.32,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.61,
        "risk_reward": 1.32,
        "rr_display": {
          "reward_risk_ratio": 1.32,
          "risk_reward_ratio": 0.76,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.32",
          "label_risk_reward": "Risk:Reward 1:0.76",
          "display": "Reward/Risk 1.32 · Risk:Reward 1:0.76",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.624,
        "final_score": 0.12,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.31,
        "relative_strength": -0.67,
        "relative_strength_vs_smh": -0.24,
        "relative_weakness_score": 0.81,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.67%",
          "Gap 未过度延伸",
          "News 1 (利空做空)",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "RS弱于QQQ -0.67% · Gap 未过度延伸 · News 1 (利空做空) · Volume 信号",
        "score": 1,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.67,
          "relative_strength_vs_smh": -0.24,
          "relative_weakness_score": 0.81,
          "gap_pct": -1.31,
          "beta_proxy": 1.8,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(70%) × ER(0.3%) × rr_weight(0.66) / 100",
        "rr_weight": 0.66,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 6,
        "direction": "SHORT"
      },
      {
        "symbol": "TSLA",
        "win_prob": 71.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
            }
          ],
          "total": 71.0,
          "raw_total": 71.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.13,
        "expected_high": 367.81,
        "expected_low": 360.23,
        "expected_close": 362.68,
        "current_price": 363.14,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.29,
        "risk_reward": 0.62,
        "rr_display": {
          "reward_risk_ratio": 0.62,
          "risk_reward_ratio": 1.61,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.62",
          "label_risk_reward": "Risk:Reward 1:1.61",
          "display": "Reward/Risk 0.62 · Risk:Reward 1:1.61",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.1502,
        "final_score": 0.05,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.3,
        "relative_strength": -0.52,
        "relative_strength_vs_smh": -0.09,
        "relative_weakness_score": 0.57,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.52%",
          "Gap 未过度延伸",
          "Volume 信号",
          "期望R 0.15 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -0.52% · Gap 未过度延伸 · Volume 信号 · 期望R 0.15 < 0.20(EV门禁)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.52,
          "relative_strength_vs_smh": -0.09,
          "relative_weakness_score": 0.57,
          "gap_pct": -0.3,
          "beta_proxy": 1.62,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "score_formula_display": "final = win_prob(71%) × ER(0.1%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 7,
        "direction": "SHORT"
      },
      {
        "symbol": "SMH",
        "win_prob": 65.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
            }
          ],
          "total": 65.0,
          "raw_total": 65.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.09,
        "expected_high": 574.29,
        "expected_low": 561.89,
        "expected_close": 565.89,
        "current_price": 566.42,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.39,
        "risk_reward": 0.58,
        "rr_display": {
          "reward_risk_ratio": 0.58,
          "risk_reward_ratio": 1.72,
          "reward_per_share": null,
          "risk_per_share": null,
          "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"
        },
        "expected_r": 0.027,
        "final_score": 0.03,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.09,
        "relative_strength": -0.43,
        "relative_strength_vs_smh": 0.0,
        "relative_weakness_score": 0.43,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "RS弱于QQQ -0.43%",
          "Gap 未过度延伸",
          "Volume 信号",
          "期望R 0.03 < 0.20(EV门禁)"
        ],
        "why": "RS弱于QQQ -0.43% · Gap 未过度延伸 · Volume 信号 · 期望R 0.03 < 0.20(EV门禁)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": -0.43,
          "relative_strength_vs_smh": 0.0,
          "relative_weakness_score": 0.43,
          "gap_pct": -0.09,
          "beta_proxy": 1.51,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Weakness",
        "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": 8,
        "direction": "SHORT"
      },
      {
        "symbol": "QQQ",
        "win_prob": 59.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
            }
          ],
          "total": 59.0,
          "raw_total": 59.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.02,
        "expected_high": 716.31,
        "expected_low": 706.63,
        "expected_close": 712.16,
        "current_price": 712.33,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.56,
        "risk_reward": 1.43,
        "rr_display": {
          "reward_risk_ratio": 1.43,
          "risk_reward_ratio": 0.7,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.43",
          "label_risk_reward": "Risk:Reward 1:0.70",
          "display": "Reward/Risk 1.43 · Risk:Reward 1:0.70",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.4337,
        "final_score": 0.01,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.3,
        "relative_strength": 0.0,
        "relative_strength_vs_smh": 0.43,
        "relative_weakness_score": -0.26,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.0,
          "relative_strength_vs_smh": 0.43,
          "relative_weakness_score": -0.26,
          "gap_pct": -0.3,
          "beta_proxy": 1.0,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Index Edge",
        "score_formula_display": "final = win_prob(59%) × ER(0.0%) × rr_weight(0.71) / 100",
        "rr_weight": 0.71,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 9,
        "direction": "SHORT"
      },
      {
        "symbol": "MSFT",
        "win_prob": 48.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
            }
          ],
          "total": 48.0,
          "raw_total": 48.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.02,
        "expected_high": 493.47,
        "expected_low": 487.08,
        "expected_close": 491.08,
        "current_price": 491.01,
        "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.41,
        "relative_strength": 0.24,
        "relative_strength_vs_smh": 0.67,
        "relative_weakness_score": -0.64,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "News 1 (利空做空)",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "Gap 未过度延伸 · News 1 (利空做空) · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.24,
          "relative_strength_vs_smh": 0.67,
          "relative_weakness_score": -0.64,
          "gap_pct": -0.41,
          "beta_proxy": 0.71,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(48%) × ER(-0.0%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 10,
        "direction": "SHORT"
      },
      {
        "symbol": "DIA",
        "win_prob": 53.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
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.03,
        "expected_high": 527.81,
        "expected_low": 520.98,
        "expected_close": 525.34,
        "current_price": 525.18,
        "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.38,
        "relative_strength": 0.3,
        "relative_strength_vs_smh": 0.73,
        "relative_weakness_score": -0.74,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.3,
          "relative_strength_vs_smh": 0.73,
          "relative_weakness_score": -0.74,
          "gap_pct": -0.38,
          "beta_proxy": 0.64,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(53%) × ER(-0.0%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 11,
        "direction": "SHORT"
      },
      {
        "symbol": "SPY",
        "win_prob": 53.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
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.04,
        "expected_high": 765.48,
        "expected_low": 755.58,
        "expected_close": 761.94,
        "current_price": 761.67,
        "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.25,
        "relative_strength": 0.28,
        "relative_strength_vs_smh": 0.71,
        "relative_weakness_score": -0.71,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.28,
          "relative_strength_vs_smh": 0.71,
          "relative_weakness_score": -0.71,
          "gap_pct": -0.25,
          "beta_proxy": 0.67,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Index Edge",
        "score_formula_display": "final = win_prob(53%) × ER(-0.0%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 12,
        "direction": "SHORT"
      },
      {
        "symbol": "XLK",
        "win_prob": 53.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
            }
          ],
          "total": 53.0,
          "raw_total": 53.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.07,
        "expected_high": 187.88,
        "expected_low": 185.45,
        "expected_close": 187.07,
        "current_price": 186.95,
        "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.06,
        "relative_strength": 0.35,
        "relative_strength_vs_smh": 0.78,
        "relative_weakness_score": -0.82,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.35,
          "relative_strength_vs_smh": 0.78,
          "relative_weakness_score": -0.82,
          "gap_pct": -0.06,
          "beta_proxy": 0.58,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(53%) × ER(-0.1%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 13,
        "direction": "SHORT"
      },
      {
        "symbol": "XLF",
        "win_prob": 47.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
            }
          ],
          "total": 47.0,
          "raw_total": 47.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.14,
        "expected_high": 57.51,
        "expected_low": 56.76,
        "expected_close": 57.3,
        "current_price": 57.22,
        "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.222,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.03,
        "relative_strength": 0.7,
        "relative_strength_vs_smh": 1.13,
        "relative_weakness_score": -1.38,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +0.70%",
          "Gap 未过度延伸",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +0.70% · Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 0.7,
          "relative_strength_vs_smh": 1.13,
          "relative_weakness_score": -1.38,
          "gap_pct": -0.03,
          "beta_proxy": 0.17,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(47%) × ER(-0.1%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 14,
        "direction": "SHORT"
      },
      {
        "symbol": "AAPL",
        "win_prob": 47.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
            }
          ],
          "total": 47.0,
          "raw_total": 47.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.3,
        "expected_high": 319.34,
        "expected_low": 315.21,
        "expected_close": 318.7,
        "current_price": 317.75,
        "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.222,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.44,
        "relative_strength": 1.32,
        "relative_strength_vs_smh": 1.75,
        "relative_weakness_score": -2.37,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +1.32%",
          "Gap 未过度延伸",
          "Volume 信号",
          "几何上行 <1.5%(软门槛)"
        ],
        "why": "板块内相对强势 +1.32% · Gap 未过度延伸 · Volume 信号 · 几何上行 <1.5%(软门槛)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 1.32,
          "relative_strength_vs_smh": 1.75,
          "relative_weakness_score": -2.37,
          "gap_pct": 0.44,
          "beta_proxy": -0.57,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(47%) × ER(-0.3%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 15,
        "direction": "SHORT"
      },
      {
        "symbol": "MU",
        "win_prob": 27.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -22.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 27.0,
          "raw_total": 27.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.8,
        "expected_high": 1027.77,
        "expected_low": 1001.54,
        "expected_close": 1017.68,
        "current_price": 1009.62,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.8,
        "risk_reward": 0.45,
        "rr_display": {
          "reward_risk_ratio": 0.45,
          "risk_reward_ratio": 2.22,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.45",
          "label_risk_reward": "Risk:Reward 1:2.22",
          "display": "Reward/Risk 0.45 · Risk:Reward 1:2.22",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.6085,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 2.22,
        "relative_strength": 1.78,
        "relative_strength_vs_smh": 2.21,
        "relative_weakness_score": -3.11,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +1.78%",
          "半导体内领涨 +2.21%",
          "News 2 (利空做空)",
          "Volume 信号",
          "期望R -0.61 < 0.20(EV门禁)"
        ],
        "why": "板块内相对强势 +1.78% · 半导体内领涨 +2.21% · News 2 (利空做空) · Volume 信号",
        "score": 0,
        "news_count": 2,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 1.78,
          "relative_strength_vs_smh": 2.21,
          "relative_weakness_score": -3.11,
          "gap_pct": 2.22,
          "beta_proxy": -1.12,
          "volume_signal": true,
          "news_count": 2,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(27%) × ER(-0.8%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 16,
        "direction": "SHORT"
      },
      {
        "symbol": "XLE",
        "win_prob": 47.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
            }
          ],
          "total": 47.0,
          "raw_total": 47.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.53,
        "expected_high": 66.1,
        "expected_low": 65.22,
        "expected_close": 66.1,
        "current_price": 65.75,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.53,
        "risk_reward": 1.52,
        "rr_display": {
          "reward_risk_ratio": 1.52,
          "risk_reward_ratio": 0.66,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.52",
          "label_risk_reward": "Risk:Reward 1:0.66",
          "display": "Reward/Risk 1.52 · Risk:Reward 1:0.66",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": 0.1844,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 0.69,
        "relative_strength": 2.35,
        "relative_strength_vs_smh": 2.78,
        "relative_weakness_score": -4.02,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +2.35%",
          "Gap 未过度延伸",
          "Volume 信号",
          "期望R 0.18 < 0.20(EV门禁)"
        ],
        "why": "板块内相对强势 +2.35% · Gap 未过度延伸 · Volume 信号 · 期望R 0.18 < 0.20(EV门禁)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 2.35,
          "relative_strength_vs_smh": 2.78,
          "relative_weakness_score": -4.02,
          "gap_pct": 0.69,
          "beta_proxy": -1.8,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(47%) × ER(-0.5%) × rr_weight(0.76) / 100",
        "rr_weight": 0.76,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 17,
        "direction": "SHORT"
      },
      {
        "symbol": "AMD",
        "win_prob": 32.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "RS",
              "key": "rs",
              "points": -22.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 32.0,
          "raw_total": 32.0,
          "was_clamped": false
        },
        "expected_return_pct": -0.92,
        "expected_high": 521.1,
        "expected_low": 507.58,
        "expected_close": 516.39,
        "current_price": 511.68,
        "upside_pct": 0.8,
        "downside_risk_pct": 1.84,
        "risk_reward": 0.43,
        "rr_display": {
          "reward_risk_ratio": 0.43,
          "risk_reward_ratio": 2.33,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.43",
          "label_risk_reward": "Risk:Reward 1:2.33",
          "display": "Reward/Risk 0.43 · Risk:Reward 1:2.33",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.5424,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 2.82,
        "relative_strength": 2.01,
        "relative_strength_vs_smh": 2.44,
        "relative_weakness_score": -3.47,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +2.01%",
          "半导体内领涨 +2.44%",
          "Volume 信号",
          "期望R -0.54 < 0.20(EV门禁)"
        ],
        "why": "板块内相对强势 +2.01% · 半导体内领涨 +2.44% · Volume 信号 · 期望R -0.54 < 0.20(EV门禁)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 2.01,
          "relative_strength_vs_smh": 2.44,
          "relative_weakness_score": -3.47,
          "gap_pct": 2.82,
          "beta_proxy": -1.39,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(32%) × ER(-0.9%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 18,
        "direction": "SHORT"
      },
      {
        "symbol": "META",
        "win_prob": 42.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
            }
          ],
          "total": 42.0,
          "raw_total": 42.0,
          "was_clamped": false
        },
        "expected_return_pct": -2.19,
        "expected_high": 672.86,
        "expected_low": 653.19,
        "expected_close": 672.86,
        "current_price": 658.45,
        "upside_pct": 0.8,
        "downside_risk_pct": 2.19,
        "risk_reward": 0.37,
        "rr_display": {
          "reward_risk_ratio": 0.37,
          "risk_reward_ratio": 2.7,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 0.37",
          "label_risk_reward": "Risk:Reward 1:2.70",
          "display": "Reward/Risk 0.37 · Risk:Reward 1:2.70",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "expected_r": -0.4246,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": 6.92,
        "relative_strength": 8.17,
        "relative_strength_vs_smh": 8.6,
        "relative_weakness_score": -13.33,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "板块内相对强势 +8.17%",
          "Volume 信号",
          "期望R -0.42 < 0.20(EV门禁)"
        ],
        "why": "板块内相对强势 +8.17% · Volume 信号 · 期望R -0.42 < 0.20(EV门禁)",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": 8.17,
          "relative_strength_vs_smh": 8.6,
          "relative_weakness_score": -13.33,
          "gap_pct": 6.92,
          "beta_proxy": -8.73,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 1.34,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Relative Strength",
        "score_formula_display": "final = win_prob(42%) × ER(-2.2%) × rr_weight(0.5) / 100",
        "rr_weight": 0.5,
        "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.74,
        "bond": 0.171,
        "oil": 0.0,
        "macro": 0.039,
        "other": 0.05,
        "splits": {
          "AI Chip Selloff": 0.744
        }
      }
    }
  },
  "trade_plan": {},
  "actual": {},
  "attribution": {
    "ai": 0.74,
    "bond": 0.171,
    "oil": 0.0,
    "macro": 0.039,
    "other": 0.05,
    "splits": {
      "AI Chip Selloff": 0.744
    }
  },
  "labels": {
    "actual_driver": "AI Chip Selloff",
    "agent_driver": "Macro Surprise",
    "agent_driver_type": "Macro",
    "corrected_driver_from_verify": null,
    "driver_splits": {
      "AI Chip Selloff": 0.7436752136752138
    },
    "hypothesis_correct": "部分对",
    "scenario_primary": "A",
    "scenario_actual": "B",
    "scenario_correct": false,
    "trade_recommendation": "—",
    "trade_direction": "NO TRADE",
    "primary_symbol": "—",
    "predicted_return_pct": null,
    "prediction_error_pct": null
  },
  "surprise": "AI/Semiconductor dominated more than typical day",
  "lesson": "AI Expansion Regime 下,单日 SMH/NVDA 抛售可压过 Macro 利好,指数分化(Dow+ / QQQ-)比「大盘涨跌」更有信息量",
  "playbook_refs": [
    "Case-47"
  ],
  "bayesian_drivers": {
    "AI": 1.0,
    "Bond": 0.0,
    "Macro": 0.0,
    "Oil": 0.0,
    "Risk": 0.0
  },
  "data_gaps": []
}