本 repo 為「金融科技與智能交易」課程期末報告之完整程式碼還原版本,
報告完成後依據報告內容整理並補齊所有執行步驟。
📄 期末報告 PDF:金融科技與智能交易期末報告.pdf
利用文字探勘(Text Mining)與資料重採樣(Data Resampling)技術,預測台灣股票市場個股的高漲幅事件。
參考論文:
Tsai, C. F., Wang, M. C., Lin, W. C., and Zheng, X. Y. (2025). Predicting high increases in stock prices using text mining and data resampling techniques.
| 代號 | 名稱 | 角色 |
|---|---|---|
| TWII | 加權指數(大盤) | 主要說明對象 + Buy & Hold 基準 |
| 2330 | 台積電 | 個股預測目標 |
| 3231 | 緯創 | 個股預測目標 |
| 2368 | 金像電 | 個股預測目標 |
| 3017 | 奇鋐 | 個股預測目標 |
- 資料期間:2020/01/01 – 2025/10/31
- 訓練集:2020–2022、驗證集:2023、測試集:2024–2025
- 漲幅門檻:1 % / 2 % / 3 % / 4 % / 5 % / 6 %(共六種)
TF-IDF(max_features = 300)
SMOTETomek(Hybrid Sampling)
| 模型 | 說明 |
|---|---|
| OCSVM | One-Class SVM,學習高漲幅日特徵邊界 |
| CNN | 卷積神經網路(靜態訓練 / Walk-Forward) |
| RF | 隨機森林(Walk-Forward Validation) |
- 勝率(Win Rate):預測方向正確率
- 累積報酬(Cumulative Return):以每日實際漲跌幅計算策略損益
01_download_stock_price.py ← 報告 3.2.1 節
02_crawl_news.py ← 報告 3.2.2 節
03_fetch_content.py ← 報告 3.2.2 節(新聞內文抓取)
04_preprocess_text.py ← 報告 3.2.3 節
05_create_labels.py ← 報告 3.2.3 節(標籤建立)
06_baseline_models.py ← 報告 3.2.4 節(基礎模型)
07_smote_models.py ← 報告 3.2.5 節(採樣後模型)
08_evaluation.py ← 報告第 4 章(績效評估與視覺化)
python -m venv venv
# Windows
venv\Scripts\activate
# macOS / Linux
source venv/bin/activatepip install -r requirements.txtpython 01_download_stock_price.py
python 02_crawl_news.py
python 03_fetch_content.py
python 04_preprocess_text.py
python 05_create_labels.py
python 06_baseline_models.py
python 07_smote_models.py
python 08_evaluation.py注意:各步驟皆支援斷點續傳,若中途中斷可直接重跑,已完成的部分會自動跳過。
步驟 2、3 依網路速度與新聞數量,可能需要數小時。
.
├── config.py # 全域設定(股票代號、日期、超參數)
├── 01_download_stock_price.py
├── 02_crawl_news.py
├── 03_fetch_content.py
├── 04_preprocess_text.py
├── 05_create_labels.py
├── 06_baseline_models.py
├── 07_smote_models.py
├── 08_evaluation.py
├── requirements.txt
├── 金融科技與智能交易期末報告.pdf # 期末報告(含完整結果圖表)
├── data/ # 資料目錄(CSV 不含於 repo,執行後自動產生)
│ └── results/ # 模型預測結果
└── charts/ # 累積報酬走勢圖(執行後自動產生)
repo 不包含任何 CSV 資料檔與圖表,完整的實驗結果與圖表請參閱期末報告 PDF。
| 資料類型 | 來源 |
|---|---|
| 股價資料 | Yahoo Finance(透過 yfinance 套件) |
| 新聞資料 | 鉅亨網 API |
本專案為「金融科技與智能交易」課程的四人團隊期末報告,
每位成員各自負責一支股票的深入分析:
| 成員 | 負責標的 |
|---|---|
| 本 repo 作者 | 台積電(2330) |
將四支個股的完整分析流程統一整合為可重現的程式碼。
完整研究內容(含文獻回顧、各股實驗結果與分析)請參閱期末報告 PDF。
MIT License — 詳見 LICENSE