前回の記事に引き続き、今回も仮想通貨botの開発状況をまとめていきます。
本記事では「暗号通貨のパンプ&ダンプスキームの検出」に関する論文をベースにbot開発の過程をまとめていきます。
Detecting Crypto Pump-and-Dump Schemes: A Thresholding-Based Approach to Handling Market Noisehttps://t.co/ctCJEV1MBs
— よだか(夜鷹/yodaka) (@yodakablog) March 22, 2025
ここでは、他通貨ペアのBotを追加し、複数のBotを並列で運用する方法について、設計から実装、運用までを具体的に説明します。
✅ なぜ複数通貨ペアでBotを運用するか?
- 📊 相場分散:BTCだけでなく、ETH、XRP、SOLなども対象にしてリスク分散
- 💰 チャンスの最大化:通貨ごとに異なるP&Dやトレンドに対応
- ⚙️ 再利用可能な設計:共通ロジックを活かして効率的に展開できる
🧩 複数Bot運用の構成イメージ(Docker/Kubernetes運用想定)
├── bots/ │ ├── btcusdt/ │ │ └── config.yaml │ ├── ethusdt/ │ │ └── config.yaml │ └── solusdt/ │ └── config.yaml ├── core/ │ ├── scheduler.py │ ├── detector.py │ ├── executor.py │ └── utils/ ├── deploy/ │ └── deployment-template.yaml
各Botは 通貨ペア別の設定ファイルとインスタンスを持ちます。
🛠️ 1. 各Botの設定ファイル(例:btcusdt/config.yaml
)
symbol: BTCUSDT strategy: breakout stop_loss: 3.5 take_profit: 6.0 trade_amount: 0.01 slack_webhook: "https://hooks.slack.com/services/..."
🧠 2. 各Botを個別に起動(Python版)
import yaml from core.scheduler import get_mode from core.executor import run_executor from core.detector import run_detector from core.logger import get_logger def launch_bot(config_path): with open(config_path) as f: config = yaml.safe_load(f) logger = get_logger(config["symbol"]) mode = get_mode() logger.info(f"起動モード: {mode}") if mode in ["full", "monitor"]: run_detector(config, logger) if mode == "full": run_executor(config, logger) if __name__ == "__main__": import sys launch_bot(sys.argv[1]) # ex. python bot_launcher.py ./bots/btcusdt/config.yaml
🐳 3. Docker/K8sでの同時起動(通貨ペアごとにPod分離)
✅ deployment-template.yaml(テンプレート化して自動展開)
apiVersion: apps/v1 kind: Deployment metadata: name: bot-{{PAIR}} spec: replicas: 1 selector: matchLabels: app: bot-{{PAIR}} template: metadata: labels: app: bot-{{PAIR}} spec: containers: - name: bot image: your_dockerhub_user/crypto-bot:latest args: ["bots/{{PAIR}}/config.yaml"] env: - name: PAIR value: "{{PAIR}}"
PAIR
にbtcusdt
,ethusdt
,solusdt
などを渡して展開します。
📈 4. 複数Botのモニタリング例(Grafana)
ペア | 勝率 | PnL | アラート |
---|---|---|---|
BTCUSDT | 62% | $1,250 | ✅ |
ETHUSDT | 55% | $870 | ⚠️ |
XRPUSDT | 67% | $1,040 | ✅ |
🔄 5. 次の拡張ポイント
拡張案 | 内容 |
---|---|
✅ Bot追加自動化 | 設定ファイルと通貨ペア名だけでデプロイできる仕組み |
✅ 通貨ごとの戦略切替 | config.yaml に個別戦略を記述 |
✅ モジュール共通化 | core/ 以下で全通貨共通のロジックを持たせる |
✅ 戦略別Botの比較分析 | 勝率・P&LでBotランキング作成可能 |
🔜 次に進めるなら
- 🛠️ 各Botの
config.yaml
雛形作成 - 🐳 K8sでの自動デプロイ(Helmやテンプレート)
- 📊 複数Botの統合ダッシュボード構築(Grafana)

Yodaka
次は、上記のテンプレートやKubernetes用マニフェストなどをセットで扱う方法をまとめます。
関連
-
-
開発記録#167(2025/4/3)「論文ベースのbot開発フローpart.29」
続きを見る