跳轉至

建立 2025-02-24 更新 2026-09-16

技術分析

技術指標是用歷史價格與成交量算出來的數字,幫助判斷市場的趨勢、動能與波動程度。單一指標都有盲點,實務上通常會搭配使用。

類別 代表指標 用途
趨勢 移動平均線(MA)、MACD 判斷市場方向
動量 RSI 判斷是否超買、超賣
波動率 布林通道(Bollinger Bands) 衡量價格波動範圍
成交量 OBV 判斷資金流向
通道 唐奇安通道(Donchian Channel) 用近期高低點定義突破區間

移動平均線(MA)

import talib

data["SMA_20"] = talib.SMA(data["Close"], timeperiod=20)   # 簡單移動平均,反應較慢、較平滑
data["EMA_20"] = talib.EMA(data["Close"], timeperiod=20)   # 指數移動平均,對近期價格更敏感

MACD

MACD(Moving Average Convergence Divergence)是趨勢與動能指標,常用來判斷趨勢轉折。

macd, macd_signal, macd_hist = talib.MACD(
    data["Close"], fastperiod=12, slowperiod=26, signalperiod=9
)

當 MACD 由下往上穿越訊號線(Signal Line),通常視為偏多訊號;反之則偏空。

RSI(相對強弱指數)

data["RSI"] = talib.RSI(data["Close"], timeperiod=14)

RSI 介於 0~100 之間:一般認為 RSI > 70 為超買,RSI < 30 為超賣,但在強勢趨勢中 RSI 可能長時間停留在極端區間,不宜單獨依賴。

布林通道(Bollinger Bands)

upper, middle, lower = talib.BBANDS(data["Close"], timeperiod=20)

布林通道用移動平均加減標準差畫出上下軌,衡量價格的波動範圍:價格觸及上軌代表相對高檔,觸及下軌代表相對低檔。

唐奇安通道(Donchian Channel)

唐奇安通道用「近 N 天最高價」與「近 N 天最低價」畫出通道,是海龜交易法則等突破策略常用的指標。

data["20d_high"] = data["Close"].rolling(window=20).max()
data["10d_low"] = data["Close"].rolling(window=10).min()

OBV(能量潮)

data["OBV"] = talib.OBV(data["Close"], data["Volume"])

OBV 累加每日成交量(漲日加、跌日減),OBV 持續上升通常代表資金持續流入。

指標的綜合應用

單一指標容易出現假訊號,實務上常搭配使用,例如「均線多頭排列 + RSI 未過熱」:

data["Buy_Signal"] = (data["SMA_20"] > data["SMA_50"]) & (data["RSI"] < 30)
data["Sell_Signal"] = (data["SMA_20"] < data["SMA_50"]) & (data["RSI"] > 70)

動手做

Notebook 內容
6-1 均線(MA) 計算並繪製移動平均線
6-2 唐奇安通道 計算唐奇安通道;本 Notebook 保留繪圖練習給學員自行完成
6-3 布林帶 計算並繪製布林通道
6-4 安裝及使用 TA-Lib 在 Colab 環境安裝 TA-Lib 的步驟