{
  "date": "2026-05-22",
  "data_time": "2026-05-22T21:00:59+08:00",
  "version": "morning_data-v1.0",
  "market": {
    "twse": {
      "close": 42267.97,
      "change": 899.76,
      "change_pct": 2.18,
      "volume_billion_twd": 12368.89,
      "date": "2026-05-22"
    },
    "tpex": {
      "close": 423.25,
      "change": 13.45,
      "change_pct": 3.28,
      "volume_billion_twd": 2605.39,
      "date": "2026-05-22"
    }
  },
  "three_investors": {
    "twse": {
      "foreign": {
        "buy": 4723.33,
        "sell": 3961.96,
        "net": 761.37
      },
      "investment_trust": {
        "buy": 365.09,
        "sell": 252.83,
        "net": 112.26
      },
      "dealer": {
        "buy": 534.79,
        "sell": 340.03,
        "net": 194.76
      },
      "total_net": 1068.39,
      "unit": "億元",
      "date": "2026-05-22"
    },
    "tpex": null
  },
  "top_foreign_movers": {
    "buy_top10": [
      {
        "code": "6770",
        "name": "力積電",
        "net_shares": 96770994,
        "net_value_million": null
      },
      {
        "code": "2344",
        "name": "華邦電",
        "net_shares": 51442004,
        "net_value_million": null
      },
      {
        "code": "1802",
        "name": "台玻",
        "net_shares": 36032532,
        "net_value_million": null
      },
      {
        "code": "3231",
        "name": "緯創",
        "net_shares": 32967540,
        "net_value_million": null
      },
      {
        "code": "2313",
        "name": "華通",
        "net_shares": 29085348,
        "net_value_million": null
      },
      {
        "code": "2409",
        "name": "友達",
        "net_shares": 28252534,
        "net_value_million": null
      },
      {
        "code": "2882",
        "name": "國泰金",
        "net_shares": 27782473,
        "net_value_million": null
      },
      {
        "code": "6116",
        "name": "彩晶",
        "net_shares": 24560767,
        "net_value_million": null
      },
      {
        "code": "1717",
        "name": "長興",
        "net_shares": 23653936,
        "net_value_million": null
      },
      {
        "code": "2367",
        "name": "燿華",
        "net_shares": 22863080,
        "net_value_million": null
      }
    ],
    "sell_top10": [
      {
        "code": "2892",
        "name": "第一金",
        "net_shares": -69439278,
        "net_value_million": null
      },
      {
        "code": "2303",
        "name": "聯電",
        "net_shares": -30346308,
        "net_value_million": null
      },
      {
        "code": "2887",
        "name": "台新新光金",
        "net_shares": -28739056,
        "net_value_million": null
      },
      {
        "code": "2890",
        "name": "永豐金",
        "net_shares": -21852748,
        "net_value_million": null
      },
      {
        "code": "8150",
        "name": "南茂",
        "net_shares": -17099724,
        "net_value_million": null
      },
      {
        "code": "2002",
        "name": "中鋼",
        "net_shares": -14672413,
        "net_value_million": null
      },
      {
        "code": "1303",
        "name": "南亞",
        "net_shares": -13197203,
        "net_value_million": null
      },
      {
        "code": "2880",
        "name": "華南金",
        "net_shares": -12352783,
        "net_value_million": null
      },
      {
        "code": "1216",
        "name": "統一",
        "net_shares": -12079389,
        "net_value_million": null
      },
      {
        "code": "2610",
        "name": "華航",
        "net_shares": -12052483,
        "net_value_million": null
      }
    ],
    "date": "2026-05-22"
  },
  "futures": {
    "foreign_taiwan_index_oi_net": -44454,
    "foreign_oi_long": 17834,
    "foreign_oi_short": 62288,
    "comment": "外資台指期(TX)未平倉淨多空(口數)、負值=淨空",
    "date": "2026-05-21"
  },
  "sectors": {
    "semiconductor": {
      "close": 1444.1,
      "change_pct_d1": 2.17,
      "leading_stocks": [
        "2330",
        "2454",
        "2303"
      ]
    },
    "electronics": {
      "close": 2752.45,
      "change_pct_d1": 2.56,
      "leading_stocks": [
        "2330",
        "2317",
        "2454"
      ]
    },
    "finance": {
      "close": 2536.33,
      "change_pct_d1": -0.11,
      "leading_stocks": [
        "2882",
        "2891",
        "2885"
      ]
    },
    "electronic_components": {
      "close": 905.46,
      "change_pct_d1": 5.27,
      "leading_stocks": [
        "2308",
        "3008"
      ]
    },
    "comment": "資料來源: TWSE 類股指數 (MI_INDEX type=IND)。AI 伺服器 / 蘋概 / 傳產等概念股無對應指數、leading stocks 代表股清單見 CONCEPT_SECTOR_LEADERS、v1.x 待擴充。"
  },
  "margin": null,
  "metadata": {
    "generator": "morning_data.py v1.0",
    "data_completeness": {
      "twse_market": true,
      "tpex_market": true,
      "twse_three_investors": true,
      "top_foreign_movers": true,
      "foreign_futures": true,
      "sectors_twse_industries": true,
      "tpex_three_investors": false,
      "sectors_concept": false,
      "margin": false
    },
    "errors": [],
    "scan_target_date": "2026-05-22",
    "note": "TAIFEX 期貨資料常 D-1 (盤後 ~21:00 才發)、futures.date 標明對應交易日。tpex_three_investors / sectors_concept / margin v1.0 不收、預計 v1.x 補。"
  }
}