Skip to content

fatfingererr/chip-whisperer

Repository files navigation

Chip Whisperer

Chip Whisperer Logo

基於量價分析的 MT5 AI 交易代理

License Platform Language


專案簡介

Chip Whisperer 是一個整合 MetaTrader 5 (MT5) 的智能交易分析系統,運用 Volume Profile(量價分析) 技術計算關鍵商品價格水平。透過 Claude AI 和 Telegram Bot 整合,提供自然語言查詢介面,讓交易者可以輕鬆獲取市場分析資訊。

核心特色

  • 🎯 智能量價分析:自動計算 POC、Value Area 等關鍵價位
  • 🤖 AI 驅動決策:整合 Claude AI,支援自然語言查詢
  • 📱 Telegram Bot:隨時隨地透過手機查詢市場數據
  • 📊 多種技術指標:支援 SMA、RSI、布林通道等
  • 🔄 即時數據:直接連接 MT5 取得最新市場資料
  • 🌐 繁體中文:完整支援繁體中文介面與回覆

主要功能

1. MT5 數據整合

  • 支援多種商品(GOLD、SILVER 等)
  • 支援多種時間週期(M1 到 MN1)
  • 自動連線管理和錯誤處理

2. 技術指標計算

  • Volume Profile:POC、VAH、VAL 計算
  • 移動平均線:SMA、EMA
  • 動量指標:RSI、MACD

3. Telegram Bot 介面

  • 自然語言查詢(例如:「目前黃金的 H1 成本價位在哪裡?」)
  • 即時回覆分析結果
  • 支援指令和對話兩種模式

快速開始

系統需求

  • 作業系統:Windows 10/11
  • Python:3.10 或更高版本
  • MetaTrader 5:已安裝並可正常運作
  • MT5 帳戶:有效的交易帳戶(實盤或模擬)

安裝步驟

# 1. 克隆專案
git clone --recursive https://github.com/fatfingererr/chip-whisperer.git
cd chip-whisperer

# 2. 建立虛擬環境
python -m venv venv
venv\Scripts\activate

# 3. 安裝依賴
pip install -r requirements.txt

# 4. 設定環境變數
copy .env.example .env
# 編輯 .env 填入您的帳號資訊

基本配置

編輯 .env 檔案:

# MT5 連線(必要)
MT5_LOGIN=12345678
MT5_PASSWORD=your_password
MT5_SERVER=YourBroker-Server

# Telegram Bot(如需使用)
TELEGRAM_BOT_TOKEN=your_bot_token
ANTHROPIC_API_KEY=your_api_key

使用範例

方式一:執行範例程式

# 取得歷史 K 線資料
python examples/fetch_historical_data.py

# Volume Profile 分析
python examples/demo_volume_profile_data.py

方式二:Telegram Bot

# 啟動 Bot
python scripts/run_bot.py

然後在 Telegram 中與 Bot 對話:

  • /start - 開始使用
  • /help - 查看說明
  • 黃金的 H1 成本價位在哪裡? - 自然語言查詢

方式三:程式碼整合

from src.core import MT5Config, ChipWhispererMT5Client, HistoricalDataFetcher

# 建立連線並取得資料
with ChipWhispererMT5Client(MT5Config()) as client:
    fetcher = HistoricalDataFetcher(client)
    df = fetcher.get_candles_latest('GOLD', 'H1', 100)
    print(df.head())

Demo

Chip Whisperer Demo 1

Telegram Bot 查詢範例 - Volume Profile 分析


Chip Whisperer Demo 2

Telegram Bot 查詢範例 - 技術指標計算


技術架構

┌─────────────────────────────────────────────────────────┐
│                   用戶 (Telegram)                        │
└─────────────────────────┬───────────────────────────────┘
                          │
┌─────────────────────────▼───────────────────────────────┐
│               Telegram Bot (src/bot/)                    │
└─────────────────────────┬───────────────────────────────┘
                          │
┌─────────────────────────▼───────────────────────────────┐
│            Claude Agent SDK (src/agent/)                 │
│              解析意圖 → 調用工具                          │
└─────────────────────────┬───────────────────────────────┘
                          │
┌─────────────────────────▼───────────────────────────────┐
│               Core 模組 (src/core/)                      │
│       MT5Config → MT5Client → DataFetcher               │
└─────────────────────────┬───────────────────────────────┘
                          │
┌─────────────────────────▼───────────────────────────────┐
│                  MetaTrader 5 終端機                     │
└─────────────────────────────────────────────────────────┘

核心技術

  • MetaTrader5:MT5 Python API
  • Anthropic Claude:AI 自然語言處理
  • python-telegram-bot:Telegram Bot 框架
  • pandas / numpy:數據處理
  • loguru:日誌記錄

文檔資源

文檔 說明
快速開始 安裝和基本設定指南
MT5 整合說明 詳細的 MT5 API 使用說明
Telegram Bot 指南 Bot 設定和使用說明

貢獻指南

歡迎任何形式的貢獻!

  1. Fork 本專案
  2. 建立特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交修改 (git commit -m 'Add AmazingFeature')
  4. 推送分支 (git push origin feature/AmazingFeature)
  5. 開啟 Pull Request

風險聲明

重要提示

  • 本軟體僅供教育與研究用途
  • 交易涉及重大風險,可能導致本金損失
  • 使用本軟體進行實際交易前,請務必:
    • 充分了解相關風險
    • 在模擬帳戶中充分測試
    • 諮詢專業財務顧問
  • 開發者不對使用本軟體造成的任何損失負責

授權條款

本專案採用 MIT License 授權


聯絡方式


致謝

感謝以下開源專案的啟發與支持:


如果這個專案對您有幫助,請給我們一個 ⭐

Made with ❤️ by fatfingererr