TradingView連携 日本株全自動売買システム
Kabuto Auto Traderは、TradingViewのアラートから楽天証券MarketSpeed IIでの自動発注まで、完全自動化された日本株トレーディングシステムです。
- ✅ 完全自動化: TradingView → Relay Server → Excel VBA → MarketSpeed II RSS
- 🛡️ 6層防御機構: パラメータ検証、リスク管理、二重下单防止、時間外防止
- 🚨 Kill Switch: 5連続損失、日次損失-5万円、異常頻度で自動停止
- 📊 包括的ログ: 6種類のログシート、90日自動アーカイブ
- 🔔 Slack/Email通知: 4レベル(INFO/WARNING/ERROR/CRITICAL)、頻度制限
- 📈 リアルタイム監視: Dashboard、約定ポーリング、Heartbeat
- 🔍 実トレード分析: ExecutionLogから勝率、PF、シャープレシオ等を計算
- 🚀 完全バックテスト: OHLCVデータから独立したバックテスト実行
- 📈 テクニカル指標: EMA, RSI, ATR, 出来高等の自動計算
- 🎯 シグナル生成: Kabuto戦略ルールに基づくエントリー/エグジット
- ⚡ K線シミュレーション: Look-ahead bias回避、手数料・スリッページ考慮
- 📋 詳細レポート: 年利、月次分布、ドローダウン詳細、連勝/連敗
- 🔧 パラメータ最適化: 実トレード結果から最適パラメータ推奨
┌─────────────────────────────────────────────────────────────┐
│ TradingView │
│ (Pine Script 戦略) │
└────────────────────────┬────────────────────────────────────┘
│ Webhook (HTTPS)
▼
┌─────────────────────────────────────────────────────────────┐
│ Relay Server (VPS) │
│ ┌────────────────────────────────────────────────────┐ │
│ │ FastAPI + Uvicorn │ │
│ │ - /api/signals/webhook (TradingView受信) │ │
│ │ - /api/signals/pending (Excel取得) │ │
│ │ - /api/signals/{id}/ack (ACK受信) │ │
│ │ - /api/signals/{id}/executed (約定報告受信) │ │
│ │ - /api/heartbeat (生存確認) │ │
│ └────────────────────────────────────────────────────┘ │
└────────────────────────┬────────────────────────────────────┘
│ HTTP API (polling 5秒)
▼
┌─────────────────────────────────────────────────────────────┐
│ Excel VBA Client (Windows PC) │
│ ┌────────────────────────────────────────────────────┐ │
│ │ Module_Main.bas (メインループ) │ │
│ │ Module_API.bas (API通信) │ │
│ │ Module_SignalProcessor.bas (信号処理) │ │
│ │ Module_RSS.bas (RSS連携・6層防御) │ │
│ │ Module_OrderManager.bas (注文・ポジション管理) │ │
│ │ Module_Logger.bas (18関数ログ記録) │ │
│ │ Module_Notification.bas (Slack/Email通知) │ │
│ │ Module_Config.bas (設定・安全装置) │ │
│ └────────────────────────────────────────────────────┘ │
└────────────────────────┬────────────────────────────────────┘
│ COM (RSS)
▼
┌─────────────────────────────────────────────────────────────┐
│ MarketSpeed II (楽天証券) │
│ - RSS.ORDER() 関数で自動発注 │
│ - 約定状態のポーリング監視 │
└─────────────────────────────────────────────────────────────┘
┌──────────────────────────────────┐
│ Analysis (データ分析) ⭐ │
├──────────────────────────────────┤
│ • ExecutionLog分析 │
│ • Yahoo Finance OHLCVデータ │
│ • バックテストエンジン │
│ • パラメータ最適化 │
│ • Jupyter Notebooks (6個) │
└──────────────────────────────────┘
最終更新: 2025-12-27
| コンポーネント | 状態 | 詳細 |
|---|---|---|
| Relay Server | ✅ 100% | FastAPI、全エンドポイント、notification.py |
| Excel VBA | ✅ 100% | 8モジュール、127関数、3,878行 |
| Analysis (分析) | ✅ 100% | 10ライブラリ、6 Jupyter Notebooks ⭐ |
| 設計ドキュメント | ✅ 100% | 22ファイル完成 |
Excel VBA モジュール:
- Module_Main.bas (235行, 9関数)
- Module_API.bas (241行, 6関数)
- Module_RSS.bas (1,132行, 32関数)
- Module_SignalProcessor.bas (194行, 5関数)
- Module_Config.bas (355行, 10関数)
- Module_OrderManager.bas (286行, 6関数)
- Module_Logger.bas (662行, 18関数) ⭐ 拡張完了
- Module_Notification.bas (663行, 15関数) ⭐ 新規追加
Relay Server:
- app/main.py - FastAPI メイン
- app/routers/ - API エンドポイント
- app/core/notification.py (354行, 3クラス) ⭐ 新規追加
Analysis (分析ライブラリ) ⭐ 新規追加:
実トレード分析:
- data_loader.py (340行) - Excel/DB読み込み
- analytics.py (470行) - パフォーマンス分析
- optimizer.py (410行) - パラメータ最適化
バックテスト機能:
- market_data.py (250行) - OHLCVデータ取得 (Yahoo Finance)
- data_cleaner.py (400行) - データクリーニング
- indicators.py (450行) - テクニカルインジケーター
- signal_generator.py (350行) - シグナル生成
- backtest_engine.py (480行) - バックテストエンジン
- backtest_analytics.py (430行) - 詳細レポート
Jupyter Notebooks:
- 01_daily_performance.ipynb - 日次パフォーマンス分析
- 02_monthly_report.ipynb - 月次レポート
- 03_trade_analysis.ipynb - 個別トレード分析
- 04_backtest_simulator.ipynb - バックテストシミュレーター
- 05_parameter_optimization.ipynb - パラメータ最適化
- 06_full_backtest.ipynb - 完全バックテスト (Step A〜F)
Excelシート:
- ✅ 既存シート: 11/15 (Config, SystemState, SignalQueue, OrderHistory, ExecutionLog, ErrorLog, CurrentPositions, Dashboard, DailyReports, HolidayCalendar, RiskSettings)
⚠️ 未作成シート: 4/15- NotificationHistory (4列) - 通知頻度制限用
- SignalLog (19列) - シグナル受信記録
- SystemLog (16列) - システムイベント記録
- AuditLog (19列) - 監査用完全履歴
シート仕様書:
- ✅
excel_vba/sheets/NotificationHistory_sheet_spec.md - ✅
excel_vba/sheets/additional_log_sheets_spec.md
⚠️ 単体・統合・E2Eテスト: 未実装⚠️ CI/CDパイプライン: 未実装- 📄 doc/21_server_test_plan.md に詳細計画あり
詳細: IMPLEMENTATION_VERIFICATION.md を参照
VPS (Relay Server用):
- Ubuntu 22.04 LTS
- Python 3.11+
- ポート 8000 を外部公開
Windows PC (Excel VBA Client用):
- Windows 10/11
- Excel 2016以降(VBA有効)
- MarketSpeed II インストール済み、RSS有効
- インターネット接続安定
通知設定:
- Slack Webhook URL(4レベル分: INFO, WARNING, ERROR, CRITICAL)
- SMTP設定(Gmail等)
# リポジトリクローン
git clone <repository-url>
cd kabuto/relay_server
# Python仮想環境作成
python3.11 -m venv venv
source venv/bin/activate
# 依存関係インストール
pip install -r requirements.txt
# 環境変数設定
cp .env.example .env
nano .env # DATABASE_URL, SECRET_KEY 等を設定
# データベースマイグレーション
alembic upgrade head
# サーバー起動
uvicorn app.main:app --host 0.0.0.0 --port 8000
# バックグラウンド起動(本番)
nohup uvicorn app.main:app --host 0.0.0.0 --port 8000 >> /var/log/kabuto/relay_server.log 2>&1 &ヘルスチェック:
curl http://localhost:8000/health
# 期待結果: {"status": "healthy"}-
新規Excelブック作成:
- ファイル名:
Kabuto Auto Trader.xlsm(マクロ有効)
- ファイル名:
-
シート作成 (11シート):
- Config
- SystemState
- SignalQueue
- OrderHistory
- ExecutionLog
- ErrorLog
- CurrentPositions
- Dashboard
- DailyReports
- HolidayCalendar
- RiskSettings
-
追加シート作成 (4シート - 手動作業):
- NotificationHistory (4列) -
excel_vba/sheets/NotificationHistory_sheet_spec.md参照 - SignalLog (19列) -
excel_vba/sheets/additional_log_sheets_spec.md参照 - SystemLog (16列) -
excel_vba/sheets/additional_log_sheets_spec.md参照 - AuditLog (19列) -
excel_vba/sheets/additional_log_sheets_spec.md参照
- NotificationHistory (4列) -
1. Excel VBA エディタを開く (Alt + F11)
2. ファイル > ファイルのインポート
3. 以下のファイルを順次インポート:
- excel_vba/modules/Module_Main.bas
- excel_vba/modules/Module_API.bas
- excel_vba/modules/Module_RSS.bas
- excel_vba/modules/Module_SignalProcessor.bas
- excel_vba/modules/Module_Config.bas
- excel_vba/modules/Module_OrderManager.bas
- excel_vba/modules/Module_Logger.bas
- excel_vba/modules/Module_Notification.bas
- excel_vba/ThisWorkbook.cls (クラスモジュール)
| 設定項目 | 値 | 備考 |
|---|---|---|
API_BASE_URL |
http://your-vps-ip:8000 |
VPSのIPアドレス |
CLIENT_ID |
CLIENT-001 |
一意のクライアントID |
SLACK_WEBHOOK_INFO |
https://hooks.slack.com/... |
INFO通知用 |
SLACK_WEBHOOK_WARNING |
https://hooks.slack.com/... |
WARNING通知用 |
SLACK_WEBHOOK_ERROR |
https://hooks.slack.com/... |
ERROR通知用 |
SLACK_WEBHOOK_CRITICAL |
https://hooks.slack.com/... |
CRITICAL通知用 |
SMTP_SERVER |
smtp.gmail.com |
SMTPサーバー |
SMTP_PORT |
587 |
SMTPポート |
SMTP_USERNAME |
your-email@gmail.com |
SMTPユーザー名 |
SMTP_PASSWORD |
your-app-password |
SMTPパスワード |
SMTP_FROM |
your-email@gmail.com |
送信元アドレス |
SMTP_TO |
alert@example.com |
送信先アドレス |
KILL_SWITCH_ACTIVE |
FALSE |
手動Kill Switch |
MAX_DAILY_LOSS |
-50000 |
日次損失限度(円) |
MAX_TRADES_PER_HOUR |
10 |
1時間最大取引数 |
MAX_POSITION_SIZE |
1000 |
最大ポジション数量 |
Pine Script で戦略を作成(例: doc/20_tradingview_backtest.md 参照)
1. TradingView チャートでアラート作成
2. Webhook URL: http://your-vps-ip:8000/api/signals/webhook
3. Message (JSON形式):
{
"signal_id": "SIG-{{time}}",
"timestamp": "{{timenow}}",
"strategy": "your-strategy-name",
"ticker": "{{ticker}}",
"ticker_name": "{{ticker}}",
"action": "{{strategy.order.action}}",
"quantity": 100,
"price_type": "market",
"limit_price": null,
"signal_strength": 0.8
}
4. 保存
詳細: doc/22_daily_operations.md および doc/22_daily_checklist.md を参照
8:00 VPS サーバー起動確認
MarketSpeed II 起動・ログイン
Excel ブック起動
8:30 API接続テスト: CheckAPIConnection()
RSS接続テスト: CheckRSSConnection()
SystemState シート確認
9:00 起動前最終チェック(11項目)
9:20 自動売買開始:
Dashboard シート > 「自動売買開始」ボタンクリック
-
Slack/Email通知監視:
- INFO (緑): 正常動作
- WARNING (黄): ErrorLog確認
- ERROR (赤): 原因調査
- CRITICAL (鮮紅): 即座に対応
-
Dashboard 定期確認 (10:30, 12:30, 14:30):
- システム状態:
running - API/RSS接続:
connected - 本日損益: -50,000円以上
- 本日取引回数: 0-20回
- システム状態:
15:05 未決済ポジション確認
Dashboard > 「自動売買停止」ボタンクリック
15:10 本日の取引レビュー(損益・勝率確認)
15:30 ErrorLog 確認
17:30 Excel ブック保存・バックアップ
- パラメータ検証: ticker, side, quantity, price_type, price, condition
- 市場時間チェック: 営業日、市場開場時間、安全時間窓
- リスク限度チェック: ポジションサイズ、日次損失、取引頻度
- 重複防止(3層): SignalQueue, ExecutionLog, Cooldown
- ダブルチェック: 発注前の最終確認
- 監査ログ: 全操作の完全記録
自動トリガー:
- 🔴 5連続損失
- 🔴 日次損失 -50,000円以下
- 🔴 1時間に10回以上取引
手動トリガー:
- Config シートで
KILL_SWITCH_ACTIVE = TRUE
発動時の対応:
- AuditLog で発動理由確認
- 原因分析(戦略 or システム)
- 対策実施
- 再開判断・実施
| シート名 | 用途 | ログID形式 | 保存期間 |
|---|---|---|---|
| SignalLog | シグナル受信記録 | SL-YYYYMMDD-NNN | 90日 |
| OrderHistory | 注文履歴 | ORD-YYYYMMDD-NNN | 永久 |
| ExecutionLog | 約定履歴 | EXE-YYYYMMDD-NNN | 永久 |
| SystemLog | システムイベント | SYS-YYYYMMDD-HHNNSS | 90日 |
| AuditLog | 監査用完全履歴 | AUD-YYYYMMDD-NNN | 永久 |
| ErrorLog | エラーログ | ERR-YYYYMMDD-HHNNSS | 90日 |
自動アーカイブ: 90日以上のログを _Archive シートに移動
Slack/Email 通知レベル:
| レベル | 色 | アイコン | Slack | 頻度制限 | |
|---|---|---|---|---|---|
| INFO | 緑 | ℹ️ | ✅ | ❌ | なし |
| WARNING | 黄 | ✅ | ❌ | 30分 | |
| ERROR | 赤 | 🚨 | ✅ | ✅ | 15分 |
| CRITICAL | 鮮紅 | 🚨🚨🚨 | ✅ | ✅ | なし |
通知イベント:
- 発注失敗(WARNING)
- 連続発注失敗(ERROR)
- Kill Switch発動(CRITICAL)
- エラー頻発(ERROR)
- API接続断(ERROR)
- システムイベント(INFO/WARNING)
kabuto/
├── README.md # このファイル
├── IMPLEMENTATION_VERIFICATION.md # 実装検証レポート
│
├── doc/ # 設計ドキュメント(22ファイル)
│ ├── README.md # 設計書索引
│ ├── 01_system_overview.md # システム全体設計
│ ├── 02_relay_server_design.md # Relay Server 設計
│ ├── 03_excel_vba_design.md # Excel VBA 設計
│ ├── 04_signal_flow.md # シグナルフロー
│ ├── 05_data_models.md # データモデル
│ ├── 06_validation_rules.md # 検証ルール
│ ├── 07_risk_management.md # リスク管理
│ ├── 08_duplicate_prevention.md # 重複防止
│ ├── 09_time_safety.md # 時間安全
│ ├── 10_kill_switch.md # Kill Switch
│ ├── 11_order_execution.md # 注文実行
│ ├── 12_position_management.md # ポジション管理
│ ├── 13_execution_reporting.md # 約定報告
│ ├── 14_rss_safe_order.md # RSS安全発注
│ ├── 15_heartbeat.md # Heartbeat
│ ├── 16_excel_vba_signal_to_order.md # Excel VBA 統合
│ ├── 17_excel_safety_defense.md # Excel 安全装置
│ ├── 18_logging_design.md # ログ設計
│ ├── 19_notification_design.md # 通知設計
│ ├── 20_tradingview_backtest.md # TradingView Backtest
│ ├── 21_server_test_plan.md # サーバーテスト計画
│ ├── 22_daily_operations.md # 日次運用フロー
│ └── 22_daily_checklist.md # 印刷用チェックリスト
│
├── relay_server/ # Relay Server (Python/FastAPI)
│ ├── app/
│ │ ├── main.py # FastAPI メイン
│ │ ├── core/
│ │ │ └── notification.py # 通知システム
│ │ ├── routers/
│ │ │ ├── signals.py # シグナルAPI
│ │ │ └── heartbeat.py # Heartbeat API
│ │ └── models/
│ ├── requirements.txt
│ └── .env.example
│
├── excel_vba/ # Excel VBA Client
│ ├── modules/
│ │ ├── Module_Main.bas # メインループ
│ │ ├── Module_API.bas # API通信
│ │ ├── Module_RSS.bas # RSS連携
│ │ ├── Module_SignalProcessor.bas # シグナル処理
│ │ ├── Module_Config.bas # 設定管理
│ │ ├── Module_OrderManager.bas # 注文管理
│ │ ├── Module_Logger.bas # ログ記録(18関数)
│ │ └── Module_Notification.bas # 通知(15関数)
│ ├── ThisWorkbook.cls # イベントハンドラ
│ └── sheets/
│ ├── NotificationHistory_sheet_spec.md
│ └── additional_log_sheets_spec.md
│
└── analysis/ # データ分析・バックテスト ⭐
├── README.md # 分析環境ガイド
├── requirements.txt # 依存ライブラリ (yfinance含む)
│
├── lib/ # 分析ライブラリ
│ ├── data_loader.py # ExecutionLog読み込み
│ ├── analytics.py # パフォーマンス分析
│ ├── optimizer.py # パラメータ最適化
│ ├── market_data.py # OHLCVデータ取得
│ ├── data_cleaner.py # データクリーニング
│ ├── indicators.py # テクニカルインジケーター
│ ├── signal_generator.py # シグナル生成
│ ├── backtest_engine.py # バックテストエンジン
│ └── backtest_analytics.py # 詳細レポート
│
└── notebooks/ # Jupyter Notebooks (6個)
├── 01_daily_performance.ipynb
├── 02_monthly_report.ipynb
├── 03_trade_analysis.ipynb
├── 04_backtest_simulator.ipynb
├── 05_parameter_optimization.ipynb
└── 06_full_backtest.ipynb # 完全バックテスト
確認項目:
- TradingView アラート設定(Webhook URL正しいか)
- Relay Server 稼働(
ps aux | grep uvicorn) - Excel VBA ポーリング(Dashboard の
last_poll_time更新中か)
確認項目:
- SignalQueue にシグナルがあるか
- ErrorLog のエラー内容確認
- OrderHistory の
blocked_reason確認
よくある理由:
Time check failed: 時間外Risk limit exceeded: リスク限度超過Duplicate order: 重複防止機構作動
対応:
# VPS サーバー確認
ssh user@your-vps-server
ps aux | grep uvicorn
# サーバー再起動
cd /path/to/kabuto/relay_server
source venv/bin/activate
nohup uvicorn app.main:app --host 0.0.0.0 --port 8000 >> /var/log/kabuto/relay_server.log 2>&1 &
# Excel VBA で再接続確認
? CheckAPIConnection()対応:
1. MarketSpeed II 起動確認
2. MarketSpeed II 再起動
3. RSS 有効化確認(ツール > RSS設定)
4. Excel VBA で再接続確認: CheckRSSConnection()
対応:
- AuditLog で発動理由確認(
operation = "KILL_SWITCH") - 発動理由の妥当性判断
- 原因分析(戦略の問題 or システムの問題)
- 対策実施
- Config で
KILL_SWITCH_ACTIVE = FALSE - Dashboard で「自動売買開始」ボタンクリック
索引: doc/README.md
用途別ガイド:
- 初めて読む: doc/01 → doc/04 → doc/22
- 実装する: doc/02-03 → doc/14-19
- 運用する: doc/22 → doc/22_daily_checklist.md
- トラブル対応: doc/22 (トラブルシューティング)
メインガイド: analysis/README.md
Jupyter Notebooks:
-
実トレード分析:
01_daily_performance.ipynb- 日次パフォーマンス分析02_monthly_report.ipynb- 月次レポート03_trade_analysis.ipynb- 個別トレード分析05_parameter_optimization.ipynb- パラメータ最適化(Pine Script生成)
-
完全バックテスト:
06_full_backtest.ipynb- OHLCVデータから完全バックテスト(Step A〜F)- Step A: OHLCVデータ取得(Yahoo Finance)
- Step B: データクリーニング
- Step C: テクニカルインジケーター計算
- Step D: シグナル生成
- Step E: K線シミュレーション(手数料・スリッページ考慮)
- Step F: 詳細レポート(年利、月次分布、DD詳細)
クイックスタート:
cd analysis
pip install -r requirements.txt
jupyter notebook
# 06_full_backtest.ipynb を開いてセル実行IMPLEMENTATION_VERIFICATION.md- 実装状況の詳細レポート
cd relay_server
# 開発サーバー起動(ホットリロード)
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
# テスト実行(未実装)
pytest
# ログ確認
tail -f /var/log/kabuto/relay_server.log1. Excel VBA エディタを開く (Alt + F11)
2. モジュールを編集
3. イミディエイトウィンドウ (Ctrl + G) でテスト実行
4. 保存 (Ctrl + S)
VBAデバッグ:
' イミディエイトウィンドウで実行
? CheckAPIConnection() ' API接続テスト
? CheckRSSConnection() ' RSS接続テスト
? FetchPendingSignals() ' シグナル取得テスト
PollAndProcessSignals ' ポーリング1回実行cd analysis
# 依存ライブラリインストール
pip install -r requirements.txt
# Jupyter Notebook起動
jupyter notebook
# Python スクリプトでテスト
python -c "
from lib.market_data import MarketDataFetcher
fetcher = MarketDataFetcher()
df = fetcher.fetch_ohlcv('7203.T', '2024-01-01', '2024-12-31', '1d')
print(f'データ取得: {len(df)}行')
"バックテストテスト:
# 完全バックテストフロー
from lib import *
# Step A-F実行
fetcher = MarketDataFetcher()
df = fetcher.fetch_ohlcv('7203.T', '2024-01-01', '2024-12-31', '1d')
cleaner = DataCleaner(df)
df_clean = cleaner.remove_anomalies().get_cleaned_data()
ti = TechnicalIndicators(df_clean)
df_indicators = ti.add_all_kabuto_indicators().get_data()
sg = SignalGenerator(df_indicators)
df_signals = sg.generate_entry_signals().apply_risk_filters().get_signals()
engine = BacktestEngine(initial_capital=1000000)
results = engine.run(df_signals)
engine.print_summary(results['summary'])-
API KEY 管理:
.envファイルをGit管理外に.env.exampleをテンプレートとして提供
-
HTTPS 通信:
- TradingView → Relay Server は HTTPS推奨
- Let's Encrypt で無料SSL証明書取得
-
Webhook 認証:
- TradingView Webhook に秘密トークン追加検討
-
SSH キー認証:
- VPS への SSH 接続はキー認証のみ
- パスワード認証無効化
-
定期パスワード変更:
- Slack Webhook URL
- SMTP パスワード
- SSH キー
- ポーリング間隔: 5秒(調整可能、Config シート)
- Heartbeat間隔: 5分(調整可能)
- ログアーカイブ: 90日(調整可能、Module_Logger.bas)
VPS:
- CPU: 1コア以上
- メモリ: 1GB以上
- ディスク: 10GB以上
Windows PC:
- CPU: デュアルコア以上
- メモリ: 4GB以上
- Excel: 2016以降
- MarketSpeed II: 最新版
このプロジェクトは個人用トレーディングシステムです。
フォーク・改変は自由ですが、自己責任でご使用ください。
- このシステムは教育目的で開発されています
- 実際の取引で発生した損失について、開発者は一切の責任を負いません
- 運用は自己責任で行ってください
- 戦略のバックテスト・フォワードテストを十分に実施してください
- 少額での運用から開始することを強く推奨します
このプロジェクトは個人使用を目的としています。
- 設計書:
doc/README.md- 設計書索引 - 実装状況:
IMPLEMENTATION_VERIFICATION.md - 運用方法:
doc/22_daily_operations.md - チェックリスト:
doc/22_daily_checklist.md
- メインガイド:
analysis/README.md- 分析環境完全ガイド - 実トレード分析:
analysis/notebooks/01_daily_performance.ipynb - パラメータ最適化:
analysis/notebooks/05_parameter_optimization.ipynb - 完全バックテスト:
analysis/notebooks/06_full_backtest.ipynb
このプロジェクトには2つの主要機能があります:
cd relay_server
python3.11 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 80001. Kabuto Auto Trader.xlsm 作成
2. VBAモジュール8個をインポート
3. Config シートで API_BASE_URL 設定
1. doc/22_daily_checklist.md を印刷
2. チェックリストに従って起動
3. Dashboard > 「自動売買開始」ボタンクリック
詳細手順: doc/22_daily_operations.md を参照
cd analysis
pip install -r requirements.txt
jupyter notebook1. 06_full_backtest.ipynb を開く
2. セルを順番に実行(Shift+Enter)
3. トヨタ自動車(7203.T)で1年間のバックテスト
4. 結果レポート & グラフ表示
実行例(Python):
from lib import *
# OHLCVデータ取得
fetcher = MarketDataFetcher()
df = fetcher.fetch_ohlcv('7203.T', '2024-01-01', '2024-12-31', '1d')
# クリーニング & インジケーター
cleaner = DataCleaner(df)
df = cleaner.remove_anomalies().get_cleaned_data()
ti = TechnicalIndicators(df)
df = ti.add_all_kabuto_indicators().get_data()
# シグナル生成 & バックテスト
sg = SignalGenerator(df)
df = sg.generate_entry_signals().apply_risk_filters().get_signals()
engine = BacktestEngine(initial_capital=1000000)
results = engine.run(df)
# レポート表示
engine.print_summary(results['summary'])詳細ガイド: analysis/README.md を参照
🚀 Kabuto Auto Trader で安全・確実な自動トレーディング & データ駆動の戦略改善を!
- ✅ 完全バックテスト機能(Step A〜F)
- OHLCVデータ取得(Yahoo Finance)
- データクリーニング & テクニカルインジケーター
- シグナル生成(Kabuto戦略)
- バックテストエンジン(K線シミュレーション)
- 詳細レポート(年利、月次分布、DD詳細)
- ✅ 実トレード分析機能
- ExecutionLog分析
- パフォーマンス指標計算
- パラメータ最適化(Pine Script生成)
- ✅ Jupyter Notebooks(6個)
- ✅ 分析ライブラリ(10ファイル、2,800+行)
- ✅ Slack/Email通知(4レベル)
- ✅ 通知頻度制限
- ✅ Module_Notification.bas(15関数)
最終更新: 2025-12-27