← 全部 Cases · 今日流程

Market Case · 2026-07-14

Day 8

Day 8
9/9 Steps

Regime · Hypothesis

R0 Regime
AI Expansion (82.0%)
Hypothesis
Inflation is today's primary market driver
ID
H-2026-07-14-001

Labels · Attribution

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

Surprise · Lesson

Surprise:AI/Semiconductor dominated more than typical day

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

Evidence / Counter

Evidence

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

Counter

Step 快捷入口

原始 JSON
{
  "date": "2026-07-14",
  "features": {
    "dgs10": 4.56,
    "dgs2": null,
    "vix": 17.28,
    "vix_chg": 0.7,
    "qqq_chg": -1.64,
    "smh_chg": -4.88,
    "nvda_chg": -1.5,
    "spy_chg": 0.0,
    "oil_chg": 0.0,
    "dxy_chg": -0.17,
    "breadth_proxy": 0.7142857142857143,
    "qqq_gap": -0.09,
    "news_headline_count": 31,
    "news_bearish_ratio": 0.273,
    "news_ai_mentions": 72,
    "news_macro_mentions": 10,
    "news_oil_mentions": 3,
    "news_risk_mentions": 4
  },
  "regime": {
    "label": "AI Expansion",
    "confidence": 0.82
  },
  "hypothesis": {
    "id": "H-2026-07-14-001",
    "statement": "Inflation is today's primary market driver",
    "evidence": [
      "VIX=17.3 (low fear)",
      "Breadth 71% (broad participation)"
    ],
    "counter_evidence": [],
    "confidence": 0.78,
    "status": "待验证"
  },
  "morning": {
    "bias": "Neutral",
    "total": -1,
    "driver_type": "Political",
    "daily_driver": "Geopolitical Risk",
    "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": "TQQQ",
          "direction": "SHORT",
          "instrument": "ETF",
          "horizon": "Intraday",
          "confidence": 40,
          "confidence_stars": "★★☆☆☆",
          "expected_move": "+2.17%",
          "expected_return_pct": 2.17,
          "win_prob": 36.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": -18.0
              }
            ],
            "total": 36.0,
            "raw_total": 36.0,
            "was_clamped": false
          },
          "risk_reward": 5.16,
          "final_score": 0.13,
          "trade_action": "Pass",
          "relative_strength": null,
          "entry": "Below 73.7 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 73.66,
          "entry_zone": {
            "low": 73.44,
            "high": 73.88,
            "mid": 73.66,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 73.66
              }
            ],
            "display": "Entry Zone 73.44–73.88",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "74.0 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 73.97,
          "target": "72.1 (预期低点)",
          "target_source": "expected_low",
          "target_price": 72.06,
          "targets": [
            "72.1 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 73.66,
            "orb_high": 73.97,
            "orb_low": 71.96,
            "prev_high": 77.03,
            "prev_low": 77.03,
            "prior_close": 77.03,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "Volume 信号",
            "Geo-risk day — avoid blind TQQQ short vs escalation",
            "上行空间 <1.0%"
          ],
          "why_chain": "Volume 信号 · Geo-risk day — avoid blind TQQQ short vs escalation · 上行空间 <1.0%",
          "why_vs_runner_up": "ER 0.5% vs 0.3%",
          "factor_breakdown": {
            "relative_strength_vs_qqq": null,
            "relative_strength_vs_smh": null,
            "relative_weakness_score": null,
            "gap_pct": -5.7,
            "beta_proxy": null,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 0.7,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Index Edge",
          "score_formula_display": "final = win_prob(36%) × ER(0.5%) × rr_weight(0.8) / 100",
          "expected_high": 73.0,
          "expected_low": 72.06,
          "expected_close": 72.31,
          "current_price": 72.64,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "Volume 信号",
            "Geo-risk day — avoid blind TQQQ short vs escalation",
            "上行空间 <1.0%"
          ],
          "why_today": "Volume 信号 · Geo-risk day — avoid blind TQQQ short vs escalation · 上行空间 <1.0%",
          "gap_pct": -5.7,
          "rr_display": {
            "reward_risk_ratio": 5.16,
            "risk_reward_ratio": 0.19,
            "reward_per_share": 1.6,
            "risk_per_share": 0.31,
            "label_reward_risk": "Reward/Risk 5.16",
            "label_risk_reward": "Risk:Reward 1:0.19",
            "display": "Reward/Risk 5.16 · Risk:Reward 1:0.19",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Geopolitical Risk · Geopolitical Risk (Iran)",
          "invalidation": "Close above stop $73.97 · Geopolitical escalation invalidates mean-reversion",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 73.66,
              "source": "vwap",
              "confidence": 77,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 73.66,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "stop": {
              "price": 73.97,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 73.97,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 73.66,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 72.06,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 72.06,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(73.66-72.06)/73.66=2.17%",
          "heuristic_expected_return_pct": 0.46,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 TQQQ:在 73.66 附近入场,目标 72.06,预期 +2.17%",
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 322,
            "contracts": 0,
            "max_loss_usd": 99.82,
            "win_usd": 515.2,
            "loss_usd": 99.82,
            "expected_value_usd": 121.59,
            "risk_per_share": 0.31,
            "reward_per_share": 1.6,
            "rr_display": {
              "reward_risk_ratio": 5.16,
              "risk_reward_ratio": 0.19,
              "reward_per_share": 1.6,
              "risk_per_share": 0.31,
              "label_reward_risk": "Reward/Risk 5.16",
              "label_risk_reward": "Risk:Reward 1:0.19",
              "display": "Reward/Risk 5.16 · Risk:Reward 1:0.19",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$515 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 322,
            "max_loss_usd": 99.82,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 322 unit(s) → Max Loss $99.82"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 1.3,
              "runner_up_value": 1.3,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "liquidity",
              "label": "Highest Liquidity",
              "primary_value": 5.0,
              "runner_up_value": 5.0,
              "wins": true
            },
            {
              "rank": 3,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 5.16,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "TSLA",
              "rank": 2,
              "reasons": [
                "Win% 36 vs 54",
                "ER 2.2% vs 0.3%",
                "Score 0.13 vs 0.11",
                "R:R 5.16 vs 1.6"
              ],
              "summary": "Why TQQQ over TSLA: Win% 36 vs 54 · ER 2.2% vs 0.3% · Score 0.13 vs 0.11 · R:R 5.16 vs 1.6"
            },
            {
              "symbol": "SMH",
              "rank": 3,
              "reasons": [
                "ER 2.2% vs 0.3%",
                "Score 0.13 vs 0.1",
                "R:R 5.16 vs 1.6"
              ],
              "summary": "Why TQQQ over SMH: ER 2.2% vs 0.3% · Score 0.13 vs 0.1 · R:R 5.16 vs 1.6"
            },
            {
              "symbol": "NVDA",
              "rank": 4,
              "reasons": [
                "Win% 36 vs 31",
                "ER 2.2% vs 0.3%",
                "Score 0.13 vs 0.07",
                "R:R 5.16 vs 1.6"
              ],
              "summary": "Why TQQQ over NVDA: Win% 36 vs 31 · ER 2.2% vs 0.3% · Score 0.13 vs 0.07 · R:R 5.16 vs 1.6"
            },
            {
              "symbol": "QQQ",
              "rank": 5,
              "reasons": [
                "Win% 36 vs 54",
                "ER 2.2% vs 0.1%",
                "Score 0.13 vs 0.07",
                "R:R 5.16 vs 1.6"
              ],
              "summary": "Why TQQQ over QQQ: Win% 36 vs 54 · ER 2.2% vs 0.1% · Score 0.13 vs 0.07 · R:R 5.16 vs 1.6"
            },
            {
              "symbol": "META",
              "rank": 6,
              "reasons": [
                "Win% 36 vs 49",
                "ER 2.2% vs 0.1%",
                "Score 0.13 vs 0.06",
                "R:R 5.16 vs 1.6"
              ],
              "summary": "Why TQQQ over META: Win% 36 vs 49 · ER 2.2% vs 0.1% · Score 0.13 vs 0.06 · R:R 5.16 vs 1.6"
            }
          ],
          "rank_summary": "TQQQ ranked #1 because largest expected range + acceptable liquidity + best reward/risk",
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 36.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": 121.59,
            "win_scenario_usd": 515.2,
            "loss_scenario_usd": 99.82,
            "win_prob_pct": 36.0,
            "display": "EV $+122 (win +$515 @ 36.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 72.64,
            "ideal_entry": 73.66,
            "distance_pct": 1.38,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 73.44,
            "zone_high": 73.88,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 2,
          "symbol": "TSLA",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Intraday",
          "confidence": 54,
          "confidence_stars": "★★☆☆☆",
          "expected_move": "+1.03%",
          "expected_return_pct": 1.03,
          "win_prob": 54.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              }
            ],
            "total": 54.0,
            "raw_total": 54.0,
            "was_clamped": false
          },
          "risk_reward": 7.41,
          "final_score": 0.11,
          "trade_action": "Pass",
          "relative_strength": null,
          "entry": "Below 395.1 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 395.68,
          "entry_zone": {
            "low": 395.12,
            "high": 396.23,
            "mid": 395.68,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 395.12
              },
              {
                "source": "orb_high",
                "label": "ORB高点",
                "price": 396.23
              }
            ],
            "display": "Entry Zone 395–396",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "396.2 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 396.23,
          "target": "391.6 (预期低点)",
          "target_source": "expected_low",
          "target_price": 391.6,
          "targets": [
            "391.6 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 395.12,
            "orb_high": 396.23,
            "orb_low": 393.21,
            "prev_high": 407.76,
            "prev_low": 407.76,
            "prior_close": 407.76,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "Volume 信号",
            "上行空间 <1.0%"
          ],
          "why_chain": "Volume 信号 · 上行空间 <1.0%",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": null,
            "relative_strength_vs_smh": null,
            "relative_weakness_score": null,
            "gap_pct": -3.19,
            "beta_proxy": null,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 0.7,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Range",
          "score_formula_display": "final = win_prob(54%) × ER(0.3%) × rr_weight(0.8) / 100",
          "expected_high": 396.73,
          "expected_low": 391.6,
          "expected_close": 393.75,
          "current_price": 394.76,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "Volume 信号",
            "上行空间 <1.0%"
          ],
          "why_today": "Volume 信号 · 上行空间 <1.0%",
          "gap_pct": -3.19,
          "rr_display": {
            "reward_risk_ratio": 7.42,
            "risk_reward_ratio": 0.13,
            "reward_per_share": 4.08,
            "risk_per_share": 0.55,
            "label_reward_risk": "Reward/Risk 7.42",
            "label_risk_reward": "Risk:Reward 1:0.13",
            "display": "Reward/Risk 7.42 · Risk:Reward 1:0.13",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Geopolitical Risk · Geopolitical Risk (Iran)",
          "invalidation": "Close above stop $396.23 · Geopolitical escalation invalidates mean-reversion",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 395.68,
              "source": "vwap",
              "confidence": 89,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 395.12,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 394.76,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 396.23,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 396.23,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 395.12,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 391.6,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 391.6,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(395.68-391.6)/395.68=1.03%",
          "heuristic_expected_return_pct": 0.26,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 TSLA:在 395.68 附近入场,目标 391.6,预期 +1.03%",
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 181,
            "contracts": 0,
            "max_loss_usd": 99.55,
            "win_usd": 738.48,
            "loss_usd": 99.55,
            "expected_value_usd": 352.99,
            "risk_per_share": 0.55,
            "reward_per_share": 4.08,
            "rr_display": {
              "reward_risk_ratio": 7.42,
              "risk_reward_ratio": 0.13,
              "reward_per_share": 4.08,
              "risk_per_share": 0.55,
              "label_reward_risk": "Reward/Risk 7.42",
              "label_risk_reward": "Risk:Reward 1:0.13",
              "display": "Reward/Risk 7.42 · Risk:Reward 1:0.13",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$738 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 181,
            "max_loss_usd": 99.55,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 181 unit(s) → Max Loss $99.55"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 1.3,
              "runner_up_value": 1.3,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 7.41,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "TQQQ",
              "rank": 1,
              "reasons": [
                "Win% 54 vs 36",
                "ER 1.0% vs 0.5%",
                "Score 0.11 vs 0.13",
                "R:R 7.41 vs 1.6"
              ],
              "summary": "Why TSLA over TQQQ: Win% 54 vs 36 · ER 1.0% vs 0.5% · Score 0.11 vs 0.13 · R:R 7.41 vs 1.6"
            },
            {
              "symbol": "SMH",
              "rank": 3,
              "reasons": [
                "Win% 54 vs 36",
                "ER 1.0% vs 0.3%",
                "Score 0.11 vs 0.1",
                "R:R 7.41 vs 1.6"
              ],
              "summary": "Why TSLA over SMH: Win% 54 vs 36 · ER 1.0% vs 0.3% · Score 0.11 vs 0.1 · R:R 7.41 vs 1.6"
            },
            {
              "symbol": "NVDA",
              "rank": 4,
              "reasons": [
                "Win% 54 vs 31",
                "ER 1.0% vs 0.3%",
                "Score 0.11 vs 0.07",
                "R:R 7.41 vs 1.6"
              ],
              "summary": "Why TSLA over NVDA: Win% 54 vs 31 · ER 1.0% vs 0.3% · Score 0.11 vs 0.07 · R:R 7.41 vs 1.6"
            },
            {
              "symbol": "QQQ",
              "rank": 5,
              "reasons": [
                "ER 1.0% vs 0.1%",
                "Score 0.11 vs 0.07",
                "R:R 7.41 vs 1.6"
              ],
              "summary": "Why TSLA over QQQ: ER 1.0% vs 0.1% · Score 0.11 vs 0.07 · R:R 7.41 vs 1.6"
            },
            {
              "symbol": "META",
              "rank": 6,
              "reasons": [
                "Win% 54 vs 49",
                "ER 1.0% vs 0.1%",
                "Score 0.11 vs 0.06",
                "R:R 7.41 vs 1.6"
              ],
              "summary": "Why TSLA over META: Win% 54 vs 49 · ER 1.0% vs 0.1% · Score 0.11 vs 0.06 · R:R 7.41 vs 1.6"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 54.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": 352.99,
            "win_scenario_usd": 738.48,
            "loss_scenario_usd": 99.55,
            "win_prob_pct": 54.0,
            "display": "EV $+353 (win +$738 @ 54.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 394.76,
            "ideal_entry": 395.68,
            "distance_pct": 0.23,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 395.12,
            "zone_high": 396.23,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 3,
          "symbol": "SMH",
          "direction": "SHORT",
          "instrument": "ETF",
          "horizon": "Intraday",
          "confidence": 40,
          "confidence_stars": "★★☆☆☆",
          "expected_move": "+2.79%",
          "expected_return_pct": 2.79,
          "win_prob": 36.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": -18.0
              }
            ],
            "total": 36.0,
            "raw_total": 36.0,
            "was_clamped": false
          },
          "risk_reward": 87.75,
          "final_score": 0.1,
          "trade_action": "Pass",
          "relative_strength": null,
          "entry": "Below 597.4 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 597.6,
          "entry_zone": {
            "low": 597.41,
            "high": 597.79,
            "mid": 597.6,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 597.41
              },
              {
                "source": "orb_high",
                "label": "ORB高点",
                "price": 597.79
              }
            ],
            "display": "Entry Zone 597.41–597.79",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "597.8 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 597.79,
          "target": "580.9 (预期低点)",
          "target_source": "expected_low",
          "target_price": 580.94,
          "targets": [
            "580.9 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 597.41,
            "orb_high": 597.79,
            "orb_low": 585.0,
            "prev_high": 611.03,
            "prev_low": 611.03,
            "prior_close": 611.03,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "Volume 信号",
            "Geo-risk day — avoid blind SMH short vs escalation",
            "上行空间 <1.0%"
          ],
          "why_chain": "Volume 信号 · Geo-risk day — avoid blind SMH short vs escalation · 上行空间 <1.0%",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": null,
            "relative_strength_vs_smh": null,
            "relative_weakness_score": null,
            "gap_pct": -4.16,
            "beta_proxy": null,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 0.7,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Range",
          "score_formula_display": "final = win_prob(36%) × ER(0.3%) × rr_weight(0.8) / 100",
          "expected_high": 588.55,
          "expected_low": 580.94,
          "expected_close": 583.67,
          "current_price": 585.62,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "Volume 信号",
            "Geo-risk day — avoid blind SMH short vs escalation",
            "上行空间 <1.0%"
          ],
          "why_today": "Volume 信号 · Geo-risk day — avoid blind SMH short vs escalation · 上行空间 <1.0%",
          "gap_pct": -4.16,
          "rr_display": {
            "reward_risk_ratio": 87.68,
            "risk_reward_ratio": 0.01,
            "reward_per_share": 16.66,
            "risk_per_share": 0.19,
            "label_reward_risk": "Reward/Risk 87.68",
            "label_risk_reward": "Risk:Reward 1:0.01",
            "display": "Reward/Risk 87.68 · Risk:Reward 1:0.01",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Geopolitical Risk · Geopolitical Risk (Iran)",
          "invalidation": "Close above stop $597.79 · Geopolitical escalation invalidates mean-reversion",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 597.6,
              "source": "vwap",
              "confidence": 77,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 597.41,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "stop": {
              "price": 597.79,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 597.79,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 597.41,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 580.94,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 580.94,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(597.6-580.94)/597.6=2.79%",
          "heuristic_expected_return_pct": 0.33,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 SMH:在 597.6 附近入场,目标 580.94,预期 +2.79%",
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 526,
            "contracts": 0,
            "max_loss_usd": 99.94,
            "win_usd": 8763.16,
            "loss_usd": 99.94,
            "expected_value_usd": 3090.78,
            "risk_per_share": 0.19,
            "reward_per_share": 16.66,
            "rr_display": {
              "reward_risk_ratio": 87.68,
              "risk_reward_ratio": 0.01,
              "reward_per_share": 16.66,
              "risk_per_share": 0.19,
              "label_reward_risk": "Reward/Risk 87.68",
              "label_risk_reward": "Risk:Reward 1:0.01",
              "display": "Reward/Risk 87.68 · Risk:Reward 1:0.01",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$8763 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 526,
            "max_loss_usd": 99.94,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 526 unit(s) → Max Loss $99.94"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 1.3,
              "runner_up_value": 1.3,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 87.75,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "TQQQ",
              "rank": 1,
              "reasons": [
                "ER 2.8% vs 0.5%",
                "Score 0.1 vs 0.13",
                "R:R 87.75 vs 1.6"
              ],
              "summary": "Why SMH over TQQQ: ER 2.8% vs 0.5% · Score 0.1 vs 0.13 · R:R 87.75 vs 1.6"
            },
            {
              "symbol": "TSLA",
              "rank": 2,
              "reasons": [
                "Win% 36 vs 54",
                "ER 2.8% vs 0.3%",
                "Score 0.1 vs 0.11",
                "R:R 87.75 vs 1.6"
              ],
              "summary": "Why SMH over TSLA: Win% 36 vs 54 · ER 2.8% vs 0.3% · Score 0.1 vs 0.11 · R:R 87.75 vs 1.6"
            },
            {
              "symbol": "NVDA",
              "rank": 4,
              "reasons": [
                "Win% 36 vs 31",
                "ER 2.8% vs 0.3%",
                "Score 0.1 vs 0.07",
                "R:R 87.75 vs 1.6"
              ],
              "summary": "Why SMH over NVDA: Win% 36 vs 31 · ER 2.8% vs 0.3% · Score 0.1 vs 0.07 · R:R 87.75 vs 1.6"
            },
            {
              "symbol": "QQQ",
              "rank": 5,
              "reasons": [
                "Win% 36 vs 54",
                "ER 2.8% vs 0.1%",
                "Score 0.1 vs 0.07",
                "R:R 87.75 vs 1.6"
              ],
              "summary": "Why SMH over QQQ: Win% 36 vs 54 · ER 2.8% vs 0.1% · Score 0.1 vs 0.07 · R:R 87.75 vs 1.6"
            },
            {
              "symbol": "META",
              "rank": 6,
              "reasons": [
                "Win% 36 vs 49",
                "ER 2.8% vs 0.1%",
                "Score 0.1 vs 0.06",
                "R:R 87.75 vs 1.6"
              ],
              "summary": "Why SMH over META: Win% 36 vs 49 · ER 2.8% vs 0.1% · Score 0.1 vs 0.06 · R:R 87.75 vs 1.6"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 36.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": 3090.78,
            "win_scenario_usd": 8763.16,
            "loss_scenario_usd": 99.94,
            "win_prob_pct": 36.0,
            "display": "EV $+3091 (win +$8763 @ 36.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 585.62,
            "ideal_entry": 597.6,
            "distance_pct": 2.0,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 597.41,
            "zone_high": 597.79,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 4,
          "symbol": "NVDA",
          "direction": "SHORT",
          "instrument": "Stock",
          "horizon": "Intraday",
          "confidence": 40,
          "confidence_stars": "★★☆☆☆",
          "expected_move": "+1.63%",
          "expected_return_pct": 1.63,
          "win_prob": 31.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "Catalyst",
                "key": "catalyst",
                "points": -5.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              },
              {
                "factor": "Macro",
                "key": "macro",
                "points": -18.0
              }
            ],
            "total": 31.0,
            "raw_total": 31.0,
            "was_clamped": false
          },
          "risk_reward": 13.38,
          "final_score": 0.07,
          "trade_action": "Pass",
          "relative_strength": null,
          "entry": "Below 205.0 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 205.24,
          "entry_zone": {
            "low": 204.98,
            "high": 205.49,
            "mid": 205.24,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 204.98
              },
              {
                "source": "orb_high",
                "label": "ORB高点",
                "price": 205.49
              }
            ],
            "display": "Entry Zone 204.98–205.49",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "205.5 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 205.49,
          "target": "201.9 (预期低点)",
          "target_source": "expected_low",
          "target_price": 201.9,
          "targets": [
            "201.9 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 204.98,
            "orb_high": 205.49,
            "orb_low": 203.11,
            "prev_high": 210.96,
            "prev_low": 210.96,
            "prior_close": 210.96,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "News 8 (利空做空)",
            "Volume 信号",
            "Geo-risk day — avoid blind NVDA short vs escalation",
            "上行空间 <1.0%"
          ],
          "why_chain": "News 8 (利空做空) · Volume 信号 · Geo-risk day — avoid blind NVDA short vs escalation · 上行空间 <1.0%",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": null,
            "relative_strength_vs_smh": null,
            "relative_weakness_score": null,
            "gap_pct": -3.52,
            "beta_proxy": null,
            "volume_signal": true,
            "news_count": 8,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 0.7,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Range",
          "score_formula_display": "final = win_prob(31%) × ER(0.3%) × rr_weight(0.8) / 100",
          "expected_high": 204.55,
          "expected_low": 201.9,
          "expected_close": 202.96,
          "current_price": 203.53,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "News 8 (利空做空)",
            "Volume 信号",
            "Geo-risk day — avoid blind NVDA short vs escalation",
            "上行空间 <1.0%"
          ],
          "why_today": "News 8 (利空做空) · Volume 信号 · Geo-risk day — avoid blind NVDA short vs escalation · 上行空间 <1.0%",
          "gap_pct": -3.52,
          "rr_display": {
            "reward_risk_ratio": 13.36,
            "risk_reward_ratio": 0.07,
            "reward_per_share": 3.34,
            "risk_per_share": 0.25,
            "label_reward_risk": "Reward/Risk 13.36",
            "label_risk_reward": "Risk:Reward 1:0.07",
            "display": "Reward/Risk 13.36 · Risk:Reward 1:0.07",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Geopolitical Risk · Geopolitical Risk (Iran)",
          "invalidation": "Close above stop $205.49 · Geopolitical escalation invalidates mean-reversion",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 205.24,
              "source": "vwap",
              "confidence": 77,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 204.98,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            },
            "stop": {
              "price": 205.49,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 205.49,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 204.98,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 201.9,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 201.9,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(205.24-201.9)/205.24=1.63%",
          "heuristic_expected_return_pct": 0.28,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 NVDA:在 205.24 附近入场,目标 201.9,预期 +1.63%",
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 400,
            "contracts": 0,
            "max_loss_usd": 100.0,
            "win_usd": 1336.0,
            "loss_usd": 100.0,
            "expected_value_usd": 345.16,
            "risk_per_share": 0.25,
            "reward_per_share": 3.34,
            "rr_display": {
              "reward_risk_ratio": 13.36,
              "risk_reward_ratio": 0.07,
              "reward_per_share": 3.34,
              "risk_per_share": 0.25,
              "label_reward_risk": "Reward/Risk 13.36",
              "label_risk_reward": "Risk:Reward 1:0.07",
              "display": "Reward/Risk 13.36 · Risk:Reward 1:0.07",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$1336 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 400,
            "max_loss_usd": 100.0,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 400 unit(s) → Max Loss $100.0"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 1.3,
              "runner_up_value": 1.3,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 13.38,
              "runner_up_value": 1.6,
              "wins": true
            },
            {
              "rank": 3,
              "dimension": "catalyst",
              "label": "Best Catalyst Alignment",
              "primary_value": 8.0,
              "runner_up_value": 1.0,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "TQQQ",
              "rank": 1,
              "reasons": [
                "Win% 31 vs 36",
                "ER 1.6% vs 0.5%",
                "Score 0.07 vs 0.13",
                "R:R 13.38 vs 1.6"
              ],
              "summary": "Why NVDA over TQQQ: Win% 31 vs 36 · ER 1.6% vs 0.5% · Score 0.07 vs 0.13 · R:R 13.38 vs 1.6"
            },
            {
              "symbol": "TSLA",
              "rank": 2,
              "reasons": [
                "Win% 31 vs 54",
                "ER 1.6% vs 0.3%",
                "Score 0.07 vs 0.11",
                "R:R 13.38 vs 1.6"
              ],
              "summary": "Why NVDA over TSLA: Win% 31 vs 54 · ER 1.6% vs 0.3% · Score 0.07 vs 0.11 · R:R 13.38 vs 1.6"
            },
            {
              "symbol": "SMH",
              "rank": 3,
              "reasons": [
                "Win% 31 vs 36",
                "ER 1.6% vs 0.3%",
                "Score 0.07 vs 0.1",
                "R:R 13.38 vs 1.6"
              ],
              "summary": "Why NVDA over SMH: Win% 31 vs 36 · ER 1.6% vs 0.3% · Score 0.07 vs 0.1 · R:R 13.38 vs 1.6"
            },
            {
              "symbol": "QQQ",
              "rank": 5,
              "reasons": [
                "Win% 31 vs 54",
                "ER 1.6% vs 0.1%",
                "R:R 13.38 vs 1.6"
              ],
              "summary": "Why NVDA over QQQ: Win% 31 vs 54 · ER 1.6% vs 0.1% · R:R 13.38 vs 1.6"
            },
            {
              "symbol": "META",
              "rank": 6,
              "reasons": [
                "Win% 31 vs 49",
                "ER 1.6% vs 0.1%",
                "Score 0.07 vs 0.06",
                "R:R 13.38 vs 1.6"
              ],
              "summary": "Why NVDA over META: Win% 31 vs 49 · ER 1.6% vs 0.1% · Score 0.07 vs 0.06 · R:R 13.38 vs 1.6"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 31.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": 345.16,
            "win_scenario_usd": 1336.0,
            "loss_scenario_usd": 100.0,
            "win_prob_pct": 31.0,
            "display": "EV $+345 (win +$1336 @ 31.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 203.53,
            "ideal_entry": 205.24,
            "distance_pct": 0.83,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 204.98,
            "zone_high": 205.49,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        },
        {
          "rank": 5,
          "symbol": "QQQ",
          "direction": "SHORT",
          "instrument": "ETF",
          "horizon": "Intraday",
          "confidence": 54,
          "confidence_stars": "★★☆☆☆",
          "expected_move": "+1.35%",
          "expected_return_pct": 1.35,
          "win_prob": 54.0,
          "win_prob_breakdown": {
            "components": [
              {
                "factor": "Base",
                "key": "base",
                "points": 50.0
              },
              {
                "factor": "Volume",
                "key": "volume",
                "points": 4.0
              }
            ],
            "total": 54.0,
            "raw_total": 54.0,
            "was_clamped": false
          },
          "risk_reward": 18.58,
          "final_score": 0.07,
          "trade_action": "Pass",
          "relative_strength": null,
          "entry": "Below 715.2 (VWAP)",
          "entry_source": "vwap",
          "entry_price": 715.68,
          "entry_zone": {
            "low": 715.17,
            "high": 716.2,
            "mid": 715.68,
            "anchors": [
              {
                "source": "vwap",
                "label": "VWAP",
                "price": 715.17
              },
              {
                "source": "orb_high",
                "label": "ORB高点",
                "price": 716.2
              }
            ],
            "display": "Entry Zone 715–716",
            "entry_source": "vwap",
            "tolerance_pct": 0.3
          },
          "stop": "716.2 (ORB高点)",
          "stop_source": "orb_high",
          "stop_price": 716.2,
          "target": "706.0 (预期低点)",
          "target_source": "expected_low",
          "target_price": 706.05,
          "targets": [
            "706.0 (预期低点)"
          ],
          "level_anchors": {
            "vwap": 715.17,
            "orb_high": 716.2,
            "orb_low": 709.6,
            "prev_high": 725.51,
            "prev_low": 725.51,
            "prior_close": 725.51,
            "orb_from_minute": true
          },
          "levels_valid": true,
          "why": [
            "Volume 信号",
            "上行空间 <1.0%"
          ],
          "why_chain": "Volume 信号 · 上行空间 <1.0%",
          "why_vs_runner_up": "—",
          "factor_breakdown": {
            "relative_strength_vs_qqq": null,
            "relative_strength_vs_smh": null,
            "relative_weakness_score": null,
            "gap_pct": -1.9,
            "beta_proxy": null,
            "volume_signal": true,
            "news_count": 0,
            "extended_gap_penalty": 0.0,
            "vix_change_pct": 0.7,
            "prior_day_change_pct": 0.0
          },
          "edge_type": "Index Edge",
          "score_formula_display": "final = win_prob(54%) × ER(0.2%) × rr_weight(0.8) / 100",
          "expected_high": 715.3,
          "expected_low": 706.05,
          "expected_close": 710.66,
          "current_price": 711.74,
          "upside_pct": 0.8,
          "downside_risk_pct": 0.5,
          "why_factors": [
            "Volume 信号",
            "上行空间 <1.0%"
          ],
          "why_today": "Volume 信号 · 上行空间 <1.0%",
          "gap_pct": -1.9,
          "rr_display": {
            "reward_risk_ratio": 18.52,
            "risk_reward_ratio": 0.05,
            "reward_per_share": 9.63,
            "risk_per_share": 0.52,
            "label_reward_risk": "Reward/Risk 18.52",
            "label_risk_reward": "Risk:Reward 1:0.05",
            "display": "Reward/Risk 18.52 · Risk:Reward 1:0.05",
            "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
          },
          "catalyst": "Geopolitical Risk · Geopolitical Risk (Iran)",
          "invalidation": "Close above stop $716.2 · Geopolitical escalation invalidates mean-reversion",
          "advisory": true,
          "level_reasons": {
            "entry": {
              "price": 715.68,
              "source": "vwap",
              "confidence": 89,
              "reasons": [
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 715.17,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "current",
                  "label": "Below Current",
                  "price": 711.74,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "stop": {
              "price": 716.2,
              "source": "orb_high",
              "confidence": 89,
              "reasons": [
                {
                  "source": "orb_high",
                  "label": "ORB High",
                  "price": 716.2,
                  "weight_pct": 70.0,
                  "matched": true,
                  "primary": true
                },
                {
                  "source": "vwap",
                  "label": "VWAP",
                  "price": 715.17,
                  "weight_pct": 30.0,
                  "matched": true,
                  "primary": false
                }
              ]
            },
            "target": {
              "price": 706.05,
              "source": "expected_low",
              "confidence": 77,
              "reasons": [
                {
                  "source": "expected_low",
                  "label": "Expected Low",
                  "price": 706.05,
                  "weight_pct": 100.0,
                  "matched": true,
                  "primary": true
                }
              ]
            }
          },
          "return_calculation": "(715.68-706.05)/715.68=1.35%",
          "heuristic_expected_return_pct": 0.15,
          "target_action": "买入/平空仓",
          "trade_summary_cn": "做空 QQQ:在 715.68 附近入场,目标 706.05,预期 +1.35%",
          "trade_economics": {
            "account_size": 10000.0,
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "shares": 192,
            "contracts": 0,
            "max_loss_usd": 99.84,
            "win_usd": 1848.96,
            "loss_usd": 99.84,
            "expected_value_usd": 952.51,
            "risk_per_share": 0.52,
            "reward_per_share": 9.63,
            "rr_display": {
              "reward_risk_ratio": 18.52,
              "risk_reward_ratio": 0.05,
              "reward_per_share": 9.63,
              "risk_per_share": 0.52,
              "label_reward_risk": "Reward/Risk 18.52",
              "label_risk_reward": "Risk:Reward 1:0.05",
              "display": "Reward/Risk 18.52 · Risk:Reward 1:0.05",
              "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
            },
            "size_label": "None",
            "display": "$10,000 → Win +$1849 / Loss -$100"
          },
          "position_sizing": {
            "risk_pct": 1.0,
            "position_pct": 100.0,
            "contracts": 0,
            "shares": 192,
            "max_loss_usd": 99.84,
            "size_label": "None",
            "display": "Risk 1.0% → Position 100.0% → 192 unit(s) → Max Loss $99.84"
          },
          "why_wins_today": [
            {
              "rank": 1,
              "dimension": "expected_range",
              "label": "Largest Expected Range",
              "primary_value": 1.3,
              "runner_up_value": 1.3,
              "wins": true
            },
            {
              "rank": 2,
              "dimension": "liquidity",
              "label": "Highest Liquidity",
              "primary_value": 5.0,
              "runner_up_value": 5.0,
              "wins": true
            },
            {
              "rank": 3,
              "dimension": "risk_reward",
              "label": "Best Risk Reward",
              "primary_value": 18.58,
              "runner_up_value": 1.6,
              "wins": true
            }
          ],
          "why_not_alternatives": [
            {
              "symbol": "TQQQ",
              "rank": 1,
              "reasons": [
                "Win% 54 vs 36",
                "ER 1.4% vs 0.5%",
                "Score 0.07 vs 0.13",
                "R:R 18.58 vs 1.6"
              ],
              "summary": "Why QQQ over TQQQ: Win% 54 vs 36 · ER 1.4% vs 0.5% · Score 0.07 vs 0.13 · R:R 18.58 vs 1.6"
            },
            {
              "symbol": "TSLA",
              "rank": 2,
              "reasons": [
                "ER 1.4% vs 0.3%",
                "Score 0.07 vs 0.11",
                "R:R 18.58 vs 1.6"
              ],
              "summary": "Why QQQ over TSLA: ER 1.4% vs 0.3% · Score 0.07 vs 0.11 · R:R 18.58 vs 1.6"
            },
            {
              "symbol": "SMH",
              "rank": 3,
              "reasons": [
                "Win% 54 vs 36",
                "ER 1.4% vs 0.3%",
                "Score 0.07 vs 0.1",
                "R:R 18.58 vs 1.6"
              ],
              "summary": "Why QQQ over SMH: Win% 54 vs 36 · ER 1.4% vs 0.3% · Score 0.07 vs 0.1 · R:R 18.58 vs 1.6"
            },
            {
              "symbol": "NVDA",
              "rank": 4,
              "reasons": [
                "Win% 54 vs 31",
                "ER 1.4% vs 0.3%",
                "R:R 18.58 vs 1.6"
              ],
              "summary": "Why QQQ over NVDA: Win% 54 vs 31 · ER 1.4% vs 0.3% · R:R 18.58 vs 1.6"
            },
            {
              "symbol": "META",
              "rank": 6,
              "reasons": [
                "Win% 54 vs 49",
                "ER 1.4% vs 0.1%",
                "Score 0.07 vs 0.06",
                "R:R 18.58 vs 1.6"
              ],
              "summary": "Why QQQ over META: Win% 54 vs 49 · ER 1.4% vs 0.1% · Score 0.07 vs 0.06 · R:R 18.58 vs 1.6"
            }
          ],
          "win_prob_source": "rules",
          "calibration": {
            "calibrated_win_prob": 54.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": 952.51,
            "win_scenario_usd": 1848.96,
            "loss_scenario_usd": 99.84,
            "win_prob_pct": 54.0,
            "display": "EV $+953 (win +$1849 @ 54.0% · loss -$100)"
          },
          "entry_status": {
            "current_price": 711.74,
            "ideal_entry": 715.68,
            "distance_pct": 0.55,
            "remaining_er_pct": 0.8,
            "live_expected_return_pct": 0.8,
            "new_plan": null,
            "alternate_entry": null,
            "advisory": true,
            "advisory_tag": "ADVISORY — 不构成投资建议",
            "zone_low": 715.17,
            "zone_high": 716.2,
            "miss_threshold_pct": 1.0,
            "status": "PREMARKET",
            "status_reason": "Premarket Ideal Entry — plan not yet live",
            "action_hint": "Entry still valid"
          }
        }
      ],
      "watchlist_items": [
        {
          "symbol": "META",
          "rank": 6,
          "win_prob": 49.0,
          "expected_return_pct": 0.15,
          "trade_action": "Pass",
          "why": "News 1 (利空做空) · Volume 信号 · 上行空间 <1.0%",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "SPY",
          "rank": 7,
          "win_prob": 59.0,
          "expected_return_pct": 0.06,
          "trade_action": "Pass",
          "why": "Gap 未过度延伸 · Volume 信号 · 上行空间 <1.0%",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "AMD",
          "rank": 8,
          "win_prob": 50.0,
          "expected_return_pct": 0.0,
          "trade_action": "Pass",
          "why": "No quote data",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "MU",
          "rank": 9,
          "win_prob": 50.0,
          "expected_return_pct": 0.0,
          "trade_action": "Pass",
          "why": "No quote data",
          "note": "Monitor — below trade threshold"
        },
        {
          "symbol": "AVGO",
          "rank": 10,
          "win_prob": 50.0,
          "expected_return_pct": 0.0,
          "trade_action": "Pass",
          "why": "No quote data",
          "note": "Monitor — below trade threshold"
        }
      ],
      "advisory": true
    },
    "edges": {
      "macro_edge": {
        "edge": "YES",
        "why": "今日有重大催化剂(含地缘/突发):Geopolitical Risk、Geopolitical Risk (Iran)、Oil Selloff、Trade Policy",
        "catalyst": "Geopolitical Risk、Geopolitical Risk (Iran)、Oil Selloff、Trade Policy"
      },
      "index_edge": {
        "edge": "NO",
        "why": "指数方向不明或幅度不足"
      },
      "sector_edge": {
        "edge": "NO",
        "why": "板块相对强度不足"
      },
      "stock_edge": {
        "edge": "NO",
        "why": "无单票 RS+新闻+量能共振"
      },
      "advisory": "ADVISORY — 不构成投资建议"
    },
    "trade_candidates": [
      {
        "symbol": "TQQQ",
        "win_prob": 36.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": -18.0
            }
          ],
          "total": 36.0,
          "raw_total": 36.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.46,
        "expected_high": 73.0,
        "expected_low": 72.06,
        "expected_close": 72.31,
        "current_price": 72.64,
        "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"
        },
        "final_score": 0.13,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -5.7,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Volume 信号",
          "Geo-risk day — avoid blind TQQQ short vs escalation",
          "上行空间 <1.0%"
        ],
        "why": "Volume 信号 · Geo-risk day — avoid blind TQQQ short vs escalation · 上行空间 <1.0%",
        "score": 1,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -5.7,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Index Edge",
        "score_formula_display": "final = win_prob(36%) × ER(0.5%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "ER 0.5% vs 0.3%",
        "advisory": true,
        "rank": 1,
        "direction": "SHORT"
      },
      {
        "symbol": "TSLA",
        "win_prob": 54.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 54.0,
          "raw_total": 54.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.26,
        "expected_high": 396.73,
        "expected_low": 391.6,
        "expected_close": 393.75,
        "current_price": 394.76,
        "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"
        },
        "final_score": 0.11,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -3.19,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Volume 信号",
          "上行空间 <1.0%"
        ],
        "why": "Volume 信号 · 上行空间 <1.0%",
        "score": 1,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -3.19,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(54%) × ER(0.3%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 2,
        "direction": "SHORT"
      },
      {
        "symbol": "SMH",
        "win_prob": 36.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": -18.0
            }
          ],
          "total": 36.0,
          "raw_total": 36.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.33,
        "expected_high": 588.55,
        "expected_low": 580.94,
        "expected_close": 583.67,
        "current_price": 585.62,
        "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"
        },
        "final_score": 0.1,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -4.16,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Volume 信号",
          "Geo-risk day — avoid blind SMH short vs escalation",
          "上行空间 <1.0%"
        ],
        "why": "Volume 信号 · Geo-risk day — avoid blind SMH short vs escalation · 上行空间 <1.0%",
        "score": 1,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -4.16,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(36%) × ER(0.3%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 3,
        "direction": "SHORT"
      },
      {
        "symbol": "NVDA",
        "win_prob": 31.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            },
            {
              "factor": "Macro",
              "key": "macro",
              "points": -18.0
            }
          ],
          "total": 31.0,
          "raw_total": 31.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.28,
        "expected_high": 204.55,
        "expected_low": 201.9,
        "expected_close": 202.96,
        "current_price": 203.53,
        "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"
        },
        "final_score": 0.07,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -3.52,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "News 8 (利空做空)",
          "Volume 信号",
          "Geo-risk day — avoid blind NVDA short vs escalation",
          "上行空间 <1.0%"
        ],
        "why": "News 8 (利空做空) · Volume 信号 · Geo-risk day — avoid blind NVDA short vs escalation · 上行空间 <1.0%",
        "score": 1,
        "news_count": 8,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -3.52,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 8,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(31%) × ER(0.3%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 4,
        "direction": "SHORT"
      },
      {
        "symbol": "QQQ",
        "win_prob": 54.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 54.0,
          "raw_total": 54.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.15,
        "expected_high": 715.3,
        "expected_low": 706.05,
        "expected_close": 710.66,
        "current_price": 711.74,
        "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"
        },
        "final_score": 0.07,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.9,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Volume 信号",
          "上行空间 <1.0%"
        ],
        "why": "Volume 信号 · 上行空间 <1.0%",
        "score": 1,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -1.9,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Index Edge",
        "score_formula_display": "final = win_prob(54%) × ER(0.2%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 5,
        "direction": "SHORT"
      },
      {
        "symbol": "META",
        "win_prob": 49.0,
        "win_prob_breakdown": {
          "components": [
            {
              "factor": "Base",
              "key": "base",
              "points": 50.0
            },
            {
              "factor": "Catalyst",
              "key": "catalyst",
              "points": -5.0
            },
            {
              "factor": "Volume",
              "key": "volume",
              "points": 4.0
            }
          ],
          "total": 49.0,
          "raw_total": 49.0,
          "was_clamped": false
        },
        "expected_return_pct": 0.15,
        "expected_high": 660.01,
        "expected_low": 651.48,
        "expected_close": 655.75,
        "current_price": 656.73,
        "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"
        },
        "final_score": 0.06,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -1.86,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "News 1 (利空做空)",
          "Volume 信号",
          "上行空间 <1.0%"
        ],
        "why": "News 1 (利空做空) · Volume 信号 · 上行空间 <1.0%",
        "score": 1,
        "news_count": 1,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -1.86,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 1,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Range",
        "score_formula_display": "final = win_prob(49%) × ER(0.1%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 6,
        "direction": "SHORT"
      },
      {
        "symbol": "SPY",
        "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.06,
        "expected_high": 752.92,
        "expected_low": 743.18,
        "expected_close": 748.71,
        "current_price": 749.17,
        "upside_pct": 0.8,
        "downside_risk_pct": 0.5,
        "risk_reward": 1.6,
        "rr_display": {
          "reward_risk_ratio": 1.6,
          "risk_reward_ratio": 0.62,
          "reward_per_share": null,
          "risk_per_share": null,
          "label_reward_risk": "Reward/Risk 1.60",
          "label_risk_reward": "Risk:Reward 1:0.62",
          "display": "Reward/Risk 1.60 · Risk:Reward 1:0.62",
          "convention": "reward_risk_ratio = reward ÷ risk; Risk:Reward shows risk per unit reward"
        },
        "final_score": 0.03,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": -0.77,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": null,
        "prior_day_change_pct": 0.0,
        "why_factors": [
          "Gap 未过度延伸",
          "Volume 信号",
          "上行空间 <1.0%"
        ],
        "why": "Gap 未过度延伸 · Volume 信号 · 上行空间 <1.0%",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {
          "relative_strength_vs_qqq": null,
          "relative_strength_vs_smh": null,
          "relative_weakness_score": null,
          "gap_pct": -0.77,
          "beta_proxy": null,
          "volume_signal": true,
          "news_count": 0,
          "extended_gap_penalty": 0.0,
          "vix_change_pct": 0.7,
          "prior_day_change_pct": 0.0
        },
        "edge_type": "Index Edge",
        "score_formula_display": "final = win_prob(59%) × ER(0.1%) × rr_weight(0.8) / 100",
        "rr_weight": 0.8,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 7,
        "direction": "SHORT"
      },
      {
        "symbol": "AMD",
        "win_prob": 50.0,
        "win_prob_breakdown": null,
        "expected_return_pct": 0.0,
        "expected_high": 0.0,
        "expected_low": 0.0,
        "expected_close": 0.0,
        "current_price": null,
        "upside_pct": 0.0,
        "downside_risk_pct": 0.0,
        "risk_reward": 0.0,
        "rr_display": null,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": null,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": 0,
        "prior_day_change_pct": null,
        "why_factors": [
          "No quote data"
        ],
        "why": "No quote data",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {},
        "edge_type": null,
        "score_formula_display": null,
        "rr_weight": null,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 8,
        "direction": "SHORT"
      },
      {
        "symbol": "MU",
        "win_prob": 50.0,
        "win_prob_breakdown": null,
        "expected_return_pct": 0.0,
        "expected_high": 0.0,
        "expected_low": 0.0,
        "expected_close": 0.0,
        "current_price": null,
        "upside_pct": 0.0,
        "downside_risk_pct": 0.0,
        "risk_reward": 0.0,
        "rr_display": null,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": null,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": 0,
        "prior_day_change_pct": null,
        "why_factors": [
          "No quote data"
        ],
        "why": "No quote data",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {},
        "edge_type": null,
        "score_formula_display": null,
        "rr_weight": null,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 9,
        "direction": "SHORT"
      },
      {
        "symbol": "AVGO",
        "win_prob": 50.0,
        "win_prob_breakdown": null,
        "expected_return_pct": 0.0,
        "expected_high": 0.0,
        "expected_low": 0.0,
        "expected_close": 0.0,
        "current_price": null,
        "upside_pct": 0.0,
        "downside_risk_pct": 0.0,
        "risk_reward": 0.0,
        "rr_display": null,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": null,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": 0,
        "prior_day_change_pct": null,
        "why_factors": [
          "No quote data"
        ],
        "why": "No quote data",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {},
        "edge_type": null,
        "score_formula_display": null,
        "rr_weight": null,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 10,
        "direction": "SHORT"
      },
      {
        "symbol": "ARM",
        "win_prob": 50.0,
        "win_prob_breakdown": null,
        "expected_return_pct": 0.0,
        "expected_high": 0.0,
        "expected_low": 0.0,
        "expected_close": 0.0,
        "current_price": null,
        "upside_pct": 0.0,
        "downside_risk_pct": 0.0,
        "risk_reward": 0.0,
        "rr_display": null,
        "final_score": 0.0,
        "trade_action": "Pass",
        "trade": "Pass",
        "gap_pct": null,
        "relative_strength": null,
        "relative_strength_vs_smh": null,
        "relative_weakness_score": 0,
        "prior_day_change_pct": null,
        "why_factors": [
          "No quote data"
        ],
        "why": "No quote data",
        "score": 0,
        "news_count": 0,
        "factor_breakdown": {},
        "edge_type": null,
        "score_formula_display": null,
        "rr_weight": null,
        "why_vs_runner_up": "—",
        "advisory": true,
        "rank": 11,
        "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.889,
        "bond": 0.034,
        "oil": 0.0,
        "macro": 0.027,
        "other": 0.05,
        "splits": {
          "AI Chip Selloff": 0.891
        }
      }
    }
  },
  "trade_plan": {},
  "actual": {},
  "attribution": {
    "ai": 0.889,
    "bond": 0.034,
    "oil": 0.0,
    "macro": 0.027,
    "other": 0.05,
    "splits": {
      "AI Chip Selloff": 0.891
    }
  },
  "labels": {
    "actual_driver": "AI Chip Selloff",
    "agent_driver": "Geopolitical Risk",
    "agent_driver_type": "Political",
    "corrected_driver_from_verify": null,
    "driver_splits": {
      "AI Chip Selloff": 0.8913914740318223
    },
    "hypothesis_correct": "部分对",
    "scenario_primary": "A",
    "scenario_actual": "B",
    "scenario_correct": false,
    "trade_recommendation": "—",
    "trade_direction": "NO TRADE",
    "primary_symbol": null,
    "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-)比「大盘涨跌」更有信息量;SMH -5.2% + QQQ -1.8%:半导体拖累纳指",
  "playbook_refs": [
    "Case-8"
  ],
  "bayesian_drivers": {
    "AI": 1.0,
    "Bond": 0.0,
    "Macro": 0.0,
    "Oil": 0.0,
    "Risk": 0.0
  },
  "data_gaps": []
}