12. ライブ取引でのリスク管理とブローカーの適応をシミュレートします (デュアルパス)
このチュートリアルでは、シミュレートされたライブ取引環境で S1.3 の主要な動作を検証するための 2 つの完全なパスを説明します。
パス A:
asset_type='E' + simulatorパス B:
asset_type='FD' + simulator
目標は単に概念を確認することではなく、「実行 + 観察 + 検証」です。
12.1. 0. 教程目标
両方のパス (E と FD) をエンドツーエンドで機能させる
1 つの注文拒否を手動でトリガーし、原因を特定する
partial-filledからfilledに移行する部分充填ステータスの目に見える動作を観察してください。
12.2. 1. 前置准备
すでに実行可能な
Operatorローカル データはランタイム頻度をサポートできます
ライブアカウントパラメータが設定されました
実験の再現を容易にするために、まず「安定して注文拒否をトリガーできる」ルール設定 (注文あたりの数量制限を小さくするなど) を準備することをお勧めします。
12.3. 2. 路径 A:E + simulator
ステップ 1: 構成をセットアップする
import qteasy as qt
qt.configure(
mode=0,
asset_type='E',
live_trade_broker_type='simulator',
live_price_acquire_channel='eastmoney',
live_price_acquire_freq='15MIN',
)
ステップ 2: ランニングを開始する
qt.run(op)
ステップ 3: テスト注文を送信し、フィードバックを観察する
「送信成功」のプロンプトが表示されるかどうかを確認する
リスク管理注文の拒否プロンプト (英語) が表示されるかどうかを確認します。
注文 ID を記録します (後でログを比較するため)
12.4. 3. 路径 B:FD + simulator
ステップ 1: 資産タイプの構成を切り替えます。
import qteasy as qt
qt.configure(
mode=0,
asset_type='FD',
live_trade_broker_type='simulator',
live_price_acquire_channel='eastmoney',
live_price_acquire_freq='15MIN',
)
ステップ 2: 繰り返し再起動し、注文します。
qt.run(op)
ステップ 3: 動作の一貫性を確認します。
FD パスはライブ実行フローに入ることができる必要があります。
拒否/送信/ログの観察方法は E パスと同じです。
同じタイプの注文には、2 つのパスにわたって一貫したフィードバック セマンティクスが必要です。
12.5. 4. 人工触发一次风控拒单
一時的に厳格なルール (注文ごとの数量の上限など) を設定し、制限を超える注文を送信します。 次のような英語のプロンプトが表示されます。
Order rejected by risk rule [MAX_ORDER_QTY]: order quantity exceeds limit
対応するレコードは risk_log で取得できます。
少なくとも 2 回確認することをお勧めします。
1 回の拒否 (拒否の理由が表示されていることを確認)。
1 つのリリース (戦略が実行を継続できることを確認)
12.6. 5. 观察订单状态变化
次のことが発生するかどうかに注目してください。
submitted -> partial-filled -> filled
部分充填シナリオでは、最終ステータスは累積充填量と一致する必要があります。
partial-filled が長期間変更されていない場合は、トラブルシューティング ページに戻り、ログを「ステータスの誤解」プレイブックと照合して確認してください。
12.7. 6. 教程验收清单
パス E は実行可能です
パスFDは実行可能です
リスク管理注文の拒否をトリガーおよび識別できる
注文が拒否された理由はログで確認できます。
部分充填中のステータスの変化を観察して理解できます。
「注文拒否 -> パラメータ調整 -> リリース」の完全な閉ループ検証を少なくとも 1 回完了する
12.8. 7. 下一步
メカニズムの詳細:
live_trading/3-risk-and-order-lifecycleブローカーを拡張します:
live_trading/4-broker-adapter-and-integrationトラブルシューティングマニュアル:
live_trading/5-artifacts-and-troubleshooting
12.9. 8. 结果判定标准
このチュートリアルを完了すると、次の質問に個別に答えられるようになります。
現在の注文はリスク管理によって拒否されましたか、それとも送信されましたが約定されませんでしたか?
注文が
partial-filledに残るのはなぜですか?最初にどのログ ファイルを確認し、次にどのフィールドを確認する必要がありますか?
上記の 3 つの質問すべてに個別に回答できる場合は、ライブ シナリオの基本的なトラブルシューティング スキルをすでに持っていることを意味します。