// Market data for the briefing — 2026/4/29 snapshot (data as of 4/28 close)
const marketData = {
  vol: "052",
  date: "2026年4月29日",
  dateEn: "Apr 29, 2026",
  weekday: "周三",
  dataAsOf: "08:00 BJT",
  tradingDay: "2026-04-28收盘",

  // ── Indices (live via Tencent Finance) ────────────────────────────────────
  indices: [
    { name: "上证综指", code: "SSE", value: "4,078.64", change: "-0.19%", up: false,
      ma: [ { label: "MA5", above: true }, { label: "MA20", above: true }, { label: "MA60", above: true } ],
      maNote: "MA60多头·MA5整理" },
    { name: "深证成指", code: "SZI", value: "14,830.46", change: "-1.10%", up: false,
      ma: [ { label: "MA5", above: false }, { label: "MA20", above: true }, { label: "MA60", above: true } ],
      maNote: "跌破MA5·中长期多头" },
    { name: "创业板指", code: "GEM", value: "3,596.71",  change: "-1.43%", up: false,
      ma: [ { label: "MA5", above: false }, { label: "MA20", above: true }, { label: "MA60", above: true } ],
      maNote: "跌破MA5·短期承压" },
    { name: "恒生指数", code: "HSI", value: "25,679.78", change: "-0.95%", up: false,
      ma: [ { label: "MA5", above: false }, { label: "MA20", above: false }, { label: "MA60", above: false } ],
      maNote: "三线压制·偏空" },
  ],

  // ── Weekly summary (live via Tencent kline) ───────────────────────────────
  weekSummaryLabel: "上周（4/20–4/24）累计",
  weekSummary: [
    { name: "上证",   change: "+0.70%" },
    { name: "深证",   change: "+0.37%" },
    { name: "创业板", change: "-0.29%" },
  ],

  // ── Capital flows ─────────────────────────────────────────────────────────
  capital: [
    { label: "沪深成交额", en: "Turnover",  value: "2.54",     unit: "万亿", note: "较前日缩量531亿·连续3日缩量回落",          tone: "down" },
    { label: "主力资金",   en: "Main Flow", value: "-498.84",  unit: "亿",   note: "全市场主力净流出近500亿·创业板净流出211亿", tone: "down" },
    { label: "两融余额",   en: "Margin",    value: "2.73",     unit: "万亿", note: "T+1截至4/27·27285亿(历史第四高)",         tone: "up"   },
  ],

  // ── Lede ─────────────────────────────────────────────────────────────────
  lede: {
    headline: {
      prefix:    "美股科技股自前日新高回调，",
      highlight: "A股三大指数集体调整",
      suffix:    "，煤炭/医药防御主线逆势走强，通信/有色退潮，",
      tag:       "防御主线接力 ——",
    },
    dropCap: "美",
    body: [
      "股科技股自前日历史新高回调（道指-0.05%·纳指-0.90%·标普-0.49%·芯片股领跌），A股三大指数集体调整，沪指",
      { text: "-0.19%", color: "down" },
      "·深成",
      { text: "-1.10%", color: "down" },
      "·创业板",
      { text: "-1.43%", color: "down" },
      "，超3600股飘绿，主力净流出",
      { text: "498.84亿", color: "down" },
      "；煤炭涨",
      { text: "+2.81%", color: "up" },
      "居首，高股息+稳现金流避险需求强化；医药生物主力净流入",
      { text: "+18.15亿", color: "up" },
      "行业第一，建材",
      { text: "+1.30%", color: "up" },
      "水泥旺季预期发酵；有色",
      { text: "-2.28%", color: "down" },
      "、通信",
      { text: "-2.24%", color: "down" },
      "领跌退潮；情绪定格在",
      { sentiment: true },
      "。聚焦4/29美联储FOMC决议（鲍威尔最后一场）与4/30 4月PMI。",
    ],
  },

  // ── Sentiment ────────────────────────────────────────────────────────────
  sentiment: {
    label: "中性偏谨慎",
    score: 3,
    notes: [
      { cat: "美股",    text: "道指-0.05%·纳指-0.90%·标普-0.49%·芯片股拖累科技股自前日历史高位回调·盘前期指小幅反弹" },
      { cat: "A股",     text: "三大指数集体调整·沪指-0.19%·创业板-1.43%·超3600股飘绿·主力净流出近500亿·医药逆势走强" },
      { cat: "当日焦点", text: "防御主线接力·煤炭+2.81%领涨·医药主力净流入18.15亿·关注4/29 FOMC+4/30 PMI" },
    ],
  },

  // ── Events ───────────────────────────────────────────────────────────────
  events: [
    { tag: "已发布", text: "周二(4/28)沪深主力净流出498.84亿·医药生物净流入18.15亿(行业第一)·煤炭板块整体净流入" },
    { tag: "今日",   text: "周三焦点：美联储FOMC议息会议(鲍威尔最后一场主持)·Senate Banking Committee表决Warsh美联储主席提名" },
    { tag: "本周",   text: "4/30 国家统计局公布4月制造业PMI(预期50.1)、非制造业PMI(预期49.9)·美联储利率决议" },
    { tag: "下周",   text: "五一假期(5/1–5/3 A股休市)·关注节前消费数据与海外科技股财报·美国非农就业" },
  ],

  // ── Sectors ──────────────────────────────────────────────────────────────
  sectors: [
    {
      name: "煤炭",
      tickers: "601088 中国神华 / 601225 陕西煤业",
      thesis: ["防御板块强势涨幅榜首，高股息+稳现金流避险需求，4月以来煤价企稳，板块涨", { text: "+2.81%", color: "up" }],
      etf:    { code: "515220", label: "煤炭ETF",
                ma: [ { label: "MA5", above: true }, { label: "MA20", above: true }, { label: "MA60", above: true } ],
                note: "三线多头" },
      price:  { label: "涨 +2.81%", tone: "up" },
      flow:   { label: "整体净流入*",  tone: "up" },
      signal: { label: "追多",     tone: "confirm" },
    },
    {
      name: "医药生物",
      tickers: "600276 恒瑞医药 / 300760 迈瑞医疗",
      thesis: ["主力净流入居首", { text: "+18.15亿", color: "up" }, "，创新药、医疗设备走强，避险资金抢筹"],
      etf:    { code: "512010", label: "医药ETF",
                ma: [ { label: "MA5", above: true }, { label: "MA20", above: true }, { label: "MA60", above: true } ],
                note: "短期强势·均线整理" },
      price:  { label: "逆势走强*", tone: "up" },
      flow:   { label: "+18.15亿 #1", tone: "up-strong" },
      signal: { label: "偏多",     tone: "positive" },
    },
    {
      name: "建筑材料",
      tickers: "600585 海螺水泥 / 002271 东方雨虹",
      thesis: ["跻身涨幅前三，基建链概念活跃，水泥旺季预期发酵，板块涨", { text: "+1.30%", color: "up" }],
      etf:    { code: "159755", label: "建材ETF",
                ma: [ { label: "MA5", above: true }, { label: "MA20", above: true }, { label: "MA60", above: true } ],
                note: "突破MA5·关注MA20" },
      price:  { label: "涨 +1.30%", tone: "up" },
      flow:   { label: "净流入超1亿*", tone: "up" },
      signal: { label: "偏多",     tone: "positive" },
    },
    {
      name: "有色金属",
      tickers: "601899 紫金矿业 / 600547 山东黄金",
      thesis: ["跌幅榜居前，前期涨多回落+黄金/铜价波动，主力流出居前，板块跌", { text: "-2.28%", color: "down" }],
      etf:    { code: "512400", label: "有色ETF",
                ma: [ { label: "MA5", above: false }, { label: "MA20", above: false }, { label: "MA60", above: true } ],
                note: "MA5/20压制·MA60多头" },
      price:  { label: "跌 -2.28%", tone: "down" },
      flow:   { label: "净流出>40亿",  tone: "down" },
      signal: { label: "退潮",     tone: "warn" },
    },
    {
      name: "通信",
      tickers: "600487 亨通光电 / 002281 光迅科技",
      thesis: ["算力概念阶段性退潮，光模块/CPO板块回调，主力净流出超40亿，板块跌", { text: "-2.24%", color: "down" }],
      etf:    { code: "515880", label: "通信ETF",
                ma: [ { label: "MA5", above: false }, { label: "MA20", above: false }, { label: "MA60", above: false } ],
                note: "短期跌破·MA60关键位" },
      price:  { label: "跌 -2.24%", tone: "down" },
      flow:   { label: "净流出>40亿",  tone: "down" },
      signal: { label: "退潮",     tone: "warn" },
    },
  ],

  // ── Overseas ──────────────────────────────────────────────────────────────
  overseas: {
    usPrev: [
      { name: "道指",    change: "-0.05%", up: false },
      { name: "纳指",    change: "-0.90%", up: false },
      { name: "标普500", change: "-0.49%", up: false },
      { name: "NVDA",   value: "213.17",  change: "-1.59%", up: false },
    ],
    usFutures: [
      { name: "道指期货", change: "+0.6%", up: true },
      { name: "纳指期货", change: "—",    up: true },
      { name: "标普期货", change: "—",    up: true },
    ],
    usFuturesNote: ["道指期货约+0.6%反弹", "盘前小幅企稳", "关注美联储FOMC决议"],
    europe: [
      { name: "DAX",     change: "-0.27%", up: false },
      { name: "CAC 40",  change: "+0.10%", up: true  },
      { name: "富时100", change: "+0.11%", up: true  },
    ],
    europeNote: ["欧股走势分化", "FOMC前观望情绪浓厚", "关注4/30欧/英央行决议"],
  },

  sources: ["Yahoo Finance · CNBC · Trading Economics · Tencent Finance", "新华社 · 东方财富 · 新浪财经 · 证券之星"],
};

window.marketData = marketData;
