這是一個基於 Python 與 Streamlit 開發的輕量化、高容錯台股技術分析儀表板。系統將技術分析名師林家洋的核心理論(力竭原理、K線組合、趨勢位置、攻擊K線)進行量化,並具備航太級的多層級備援抓取機制,讓投資者能快速且穩定地掃描全市場,捕捉高勝率的買賣訊號。
本系統依據林家洋老師的技術理論,歸納出五大關鍵指標型態與戰術說明:
-
🚀 順勢強攻 (突破高點 / 攻擊K線)
- 條件:股價位於季線 (MA60) 之上,當日實體紅K漲幅 ≥ 3.0%,成交量達 5 日均量 1.5 倍以上,且突破近 20 日波段高點。
- 戰術意義:主力帶量突破前方壓力區,最強勢的買進訊號,勝率與爆發力最高。
-
🔥 多頭反轉 (吞噬賣壓 / 多頭吞噬)
- 條件:股價位於季線 (MA60) 之上,前日為黑K,當日紅K實體完全包覆前一日黑K實體。
- 戰術意義:多頭格局明確的回檔轉折契機,買盤強勢吃掉昨日賣壓。
-
🔋 多頭蓄勢 (蓄力中 / 內困型態)
- 條件:股價位於季線 (MA60) 之上,當日小K線且價格範圍完全包覆在前一日大K線實體內(Harami 型態)。
- 戰術意義:多頭籌碼正在沉澱蓄勢,屬於正面觀察區,等待帶量突破 20 日高點即可轉為攻擊。
-
⏳ 弱勢反彈 (空頭壓制)
- 條件:股價位於季線 (MA60) 之下出現的無量反彈或內困型態。
- 戰術意義:空頭趨勢中的逃命波或短線陷阱,上方均線壓制力道強,絕對禁止追價。
-
💣 逃命警示 (黑K吞噬)
- 條件:前日為紅K,當日黑K實體完全包覆前一日紅K實體。
- 戰術意義:主力極速出貨的絕對警戒與停損訊號,為「絕對不能買」的型態。
💡 量化推薦指數演算法: 推薦指數(-120 至 +120 分)= 訊號基礎強度 × 季線位置係數 × 成交量爆發係數
本系統不僅具備選股邏輯,更在底層架構上進行了深度優化,確保運行的極致穩定性:
- 🛡️ 航太級三層備援抓取 (Multi-Tier Fallback):主戰力
yfinance遭遇 API 封鎖或上櫃股 (.TWO) 識別失敗時,系統會自動無縫切換至「台灣證交所 (TWSE)」與「櫃買中心 (TPEx)」進行資料救援,確保全市場 1700+ 檔股票不漏接。 - 🔍 破除黑箱的錯誤追蹤 (Transparent Error Logging):遭遇特殊金融商品 (如 ETN、創櫃板、下市股) 導致解析失敗時,系統不會靜默當機,而是精準攔截並於前端 UI 展開式面板顯示「失敗名單與具體死因」,提供透明的除錯體驗。
- 💾 斷點續傳與向下相容 (Checkpoint & Backward Compatibility):支援批次掃描進度暫存,中斷後可無縫接續;並導入
pandas.reindex技術處理歷史 CSV 快取,無懼未來欄位擴充引發的結構衝突。 - 🌗 沉浸式暗黑 UI (Dark Mode Interface):專為長時間盯盤設計的暗藍色背景 (
#0B1120) 與高反差顏色標籤,並結合st.session_state狀態即時記憶,提供流暢無遲滯的操作手感。
- 複製專案 (Clone the repository)
git clone https://github.com/kaiserchang/lin_stock_app.git cd lin_stock_app - 建立並啟動虛擬環境
python3 -m venv .venv source .venv/bin/activate - 一鍵安裝依賴套件 (Requirements)
pip install -r requirements.txt
在虛擬環境啟動的狀態下,於終端機輸入以下指令啟動雷達:
streamlit run app3.py系統會自動開啟瀏覽器並連線至 http://localhost:8501。
app3.py:Streamlit 網頁主程式與 UI 渲染、路由分流控制器。analysis_engine.py:林家洋技術分析核心邏輯與量化計分引擎。scan_orchestrator.py:資料抓取器核心,包含 Yahoo/TWSE/TPEx 三重備援邏輯。all_stocks.csv:全市場台股代碼與名稱基礎對照檔。user_settings.json:使用者自訂關注清單的持久化儲存。cache_mode_*_meta.json:各模式專屬的「長期記憶體」,儲存掃描時間戳記與失敗股票日誌。.gitignore:版本控制海關清單,自動過濾虛擬環境與運算產生的暫存 CSV,保持雲端環境純淨。
本專案提供的技術分析訊號與分數僅供學術研究與程式開發參考,不構成任何投資建議。實際交易請自行承擔風險。