application.yamlとは?
application.yamlは、MagicTradeBotの起動方法、取引所への接続、自身の識別、システムレベルでの動作を制御する主要な設定ファイルです。
これはMagicTradeBotの起動設定と考えてください。戦略、マーケットウォッチ、意思決定エンジンのロジックが実行される前に、ボットはこのファイルを読み取って以下を理解します:
- どの取引所に接続するか
- 安全に認証する方法
- デモモードとライブモードのどちらで実行するか
- どのライセンスを使用するか
- 基本的なランタイム動作(デバッグ、命名、環境)
有効なapplication.yamlがないと、MagicTradeBotは初期化または正しく動作できません。
application.yamlは何を制御するのか?
application.yamlファイルは、以下を含むグローバルで非戦略的な設定を担当します:
- 取引所の選択と互換性ルール
- API認証(または環境変数マッピング)
- ライセンス検証
- ボットのアイデンティティとランタイムフラグ
- セキュリティとデプロイメントの動作
定義しないもの:
- 取引戦略
- ストップロス/テイクプロフィットルール
- マーケットウォッチロジック
- DCAまたはBrainの決定ルール
これらは別の機能固有の設定ファイルで処理され、責任を明確に分離し、モジュール化を維持します。
主要セクションの説明
1. 取引所設定
このセクションは、MagicTradeBotにどの取引所にどのように接続するかを指示します。
主な責任:
- 取引所の選択(binance, bybit, okx, bitget, hyperliquid)
- 取引所固有のポジションモード互換性の適用
- API認証情報の安全なロード
MagicTradeBotはここで厳格な検証を実行し、以下を防ぎます:
- 誤ったポジションモード(例:Hedge vs One-Way)
- 注文実行の失敗
- 誤ったPnL計算
- リスク管理の不一致
サポートされていない取引所が設定されている場合、ボットは動作を拒否します。
2. API認証情報とセキュリティ
application.yamlは、認証情報に対して2つの安全な方法をサポートしています:
オプションA: 直接YAML(デモ/テストのみ推奨)
APIKEY: ""
APISECRET: ""
Passphrase: ""
オプションB: 環境変数(本番環境に推奨)
環境変数はYAML値を自動的に上書きします。
この設計:
- 偶発的なキーの露出を防ぎます
- Docker、VPS、クラウドデプロイメントとシームレスに連携します
- エンタープライズセキュリティのベストプラクティスに準拠します
MagicTradeBotは出金権限を決して要求せず、これに対して明示的に警告します。
3. ポジションモードの互換性(重要)
取引所によってサポートされるポジションモードは異なり、MagicTradeBotは起動時にこれを適用します。
例:
- Bybit → One-Wayモードのみ
- Binance / OKX / Bitget → Hedgeモード必須
取引所アカウントが誤って設定されている場合:
- 注文が拒否される可能性があります
- TP/SLが失敗する可能性があります
- ポジションが誤ってクローズされる可能性があります
この検証は、資本を保護し、決定論的な動作を保証するために存在します。
4. ライセンス設定
ライセンスセクションは、MagicTradeBotのインストールをアクティブにします。
License:
Key: ""
ライセンス:
- プランに基づいて機能をアンロックします
- インスタンスの認証を制御します
- 起動時に検証されます
有効なライセンスキーがないと、ボットは運用モードに入りません。
5. 一般アプリケーション設定
このセクションは、ボットがランタイムでどのように動作するかを制御します — 取引方法ではありません。
主なオプション:
- BotName – ログ、ダッシュボード、アラートでこのインスタンスを識別するのに役立ちます
- DemoMode – 実際の資金を使わないシミュレーション取引を有効にします
- DebugMode – 診断のための詳細なロギングを有効にします
これらの設定は、以下を実行する場合に特に役立ちます:
- 複数のボットインスタンス
- ステージング環境と本番環境
- デバッグまたはサポート調査
デモモード vs ライブモード
application.yamlで最も重要なフラグの1つは:
DemoMode: true
- DemoMode = true → 実際の注文は行われません
- DemoMode = false → ライブ取引が有効になります
これにより、ユーザーは以下が可能になります:
- 設定を安全にテストする
- 資本をリスクにさらす前に戦略を検証する
- 実際の市場データでシミュレーション上でボットを実行する
MagicTradeBotがapplication.yamlを使用する理由
MagicTradeBotがapplication.yamlを使用する理由は、以下を提供するからです:
- 人間が読める構造
- 関心事の強力な分離
- 初めてのユーザー向けの安全なデフォルト
- 環境変数による簡単な自動化
- Docker、クラウド、オンプレミスデプロイメントとの互換性
最も重要なのは、予測可能な起動動作を保証することであり、これは自動取引システムに不可欠です。
ベストプラクティス
- ✔ 本番環境ではAPIキーに環境変数を使用する
- ✔ テスト中はDemoModeを有効にしたままにする
- ✔ ライブ運用前に取引所のポジションモードを再確認する
- ✔ APIキーに出金権限を絶対に有効にしない
- ✔ application.yamlをインフラストラクチャ設定として扱い、戦略設定として扱わない
まとめ
application.yamlは、MagicTradeBotのランタイム環境の基盤です。
定義するもの:
- ボットがどこに接続するか
- どのように認証するか
- ライブで取引するかデモで取引するか
- どのライセンスが有効か
- どの程度安全に実行されるか
高度なインテリジェンス(Smart SL/TP、Market Watch、DCA、MagicTradeBot Brainなど)はすべてこのファイル上に構築されており、システム全体で最も重要なコンポーネントの1つとなっています。