股票技術分析 (Stock Technical Analysis)

👤 zaferliu 📦 v1.0.2 ⭐ 0.0 ⬇️ 1.4K 下載
📊 資料分析 免費

📖 技能介紹

股票技術分析 Skill (Stock Technical Analysis)

技能資訊

  • 名稱: stock-technical-analysis
  • 描述: 股票技術分析工具 - 獲取K線資料、計算技術指標(KDJ/MACD/BOLL/MA)、資金流向排名
  • 觸發關鍵詞: 股票分析、技術指標、查股票、行情分析、KDJ、MACD、BOLL

功能

  1. K線資料獲取 - 獲取股票歷史行情資料(日/周/月K線)
  2. 技術指標計算 - KDJ、MACD、BOLL、MA 均線
  3. 資金流向 - 主力資金排名(今日/5日/10日)
  4. 綜合訊號 - 金叉/死叉、超買/超賣狀態

環境依賴

  • Python 3.8+

    小蔥技能站7w4.net,專業的AI技能分享平臺。

  • requests>=2.28.0
  • pandas>=1.5.0
  • numpy>=1.21.0

使用示例

1. 完整分析一隻股票

from eastmoney_spider import EastmoneySpider
from indicators import (
    calculate_kdj, 
    calculate_macd, 
    calculate_boll, 
    calculate_ma,
    get_latest_signals
)

spider = EastmoneySpider()

# 獲取K線資料(預設100天)
df = spider.get_stock_kline("600519", days=100)

# 計算各技術指標
kdj = calculate_kdj(df)
macd = calculate_macd(df)
boll = calculate_boll(df)
ma = calculate_ma(df)
signals = get_latest_signals(df)

# 輸出結果
print(f"股票: {df.iloc[0]['name']}")
print(f"收盤價: {df.iloc[-1]['close']}")
print(f"KDJ: K={kdj['k'][-1]:.1f} D={kdj['d'][-1]:.1f} J={kdj['j'][-1]:.1f}")
print(f"MACD: DIF={macd['dif'][-1]:.3f} DEA={macd['dea'][-1]:.3f}")
print(f"BOLL: 上軌={boll['upper'][-1]:.2f} 中軌={boll['middle'][-1]:.2f} 下軌={boll['lower'][-1]:.2f}")
print(f"綜合訊號: {signals}")

2. 獲取資金流向排名

from eastmoney_spider import EastmoneySpider

spider = EastmoneySpider()

# 今日主力資金排名
date, df = spider.fetch_capital_flow_rank(days=0, limit=20)

# 5日主力資金排名
date, df = spider.fetch_capital_flow_rank(days=5, limit=20)

print(df.head(10))

3. 命令列直接執行

python stock_analyze.py 600519
python stock_analyze.py 000001 --json

指標說明

KDJ 隨機指標

  • K值: 快速隨機指標
  • D值: 慢速隨機指標
  • J值: 3×K - 2×D
  • 訊號: K/D金叉(買)、K/D死叉(賣)
  • 超買: J>80 | 超賣: J<20

MACD 指數平滑異同移動平均線

  • DIF: 快線 (EMA12 - EMA26)
  • DEA: 慢線 (DIF的EMA9)
  • MACD: (DIF-DEA)×2
  • 訊號: DIF上穿DEA(金叉)、下穿DEA(死叉)
  • 趨勢: DIF>DEA 多頭 | DIF<DEA 空頭

BOLL 布林線

  • 上軌: 中軌 + 2×標準差
  • 中軌: 20日均線
  • 下軌: 中軌 - 2×標準差
  • 訊號: 突破上軌(超買)、跌破下軌(超賣)

MA 移動平均線

  • MA5: 5日均線(短期)
  • MA10: 10日均線(短期)
  • MA20: 20日均線(中期)
  • MA60: 60日均線(長期)

返回格式

綜合訊號 (get_latest_signals)

{
    'kdj': {
        'signal': 1,  # 1=金叉, -1=死叉, 0=無
        'status': '超買/超賣/正常',
        'j': 85.5    # J值
    },
    'macd': {
        'signal': 0,
        'trend': '多頭/空頭'
    },
    'boll': '突破上軌/跌破下軌/震盪區間',
    'price': {
        'close': 1460.0,
        'pct_chg': 0.12
    },
    'date': '2026-04-03'
}

注意事項

  • 股票程式碼需要是6位數字(如600519、000001)
  • 預設獲取100天日K線資料
  • 資金流向API返回可能包含期貨/債券資料
  • 本技能僅供技術分析參考,不構成投資建議

📁 包含檔案 (7 個)

📄 README.md 884 B
📄 SKILL.md 3.4 KB
📄 _meta.json 142 B
📄 eastmoney_spider.py 6.2 KB
📄 indicators.py 6.2 KB
📄 requirements.txt 44 B
📄 stock_analyze.py 13.6 KB