Order block
Order ブロック
[Order] ブロックは、取引所に買注文や売注文を送信する取引ブロックです。ブロックの [Block Properties] パネルを使って、注文の詳細を指定できます。選択された注文タイプによって、様々な入力の設定を指定します。
例 [買] に設定したプロパティを含む [Order] ブロックは、発注する限月や価格、枚数データを受信し、ブール値は注文のアクティブ化や非アクティブ化を行います。注文がマーケットにあると、注文ブロックは約定待ち注文枚数を出力します。注文が約定すると、注文ブロックは、約定に関するデータを含む離散メッセージを出力します。
ブロックは、注文に対し受信した約定数を追跡し、[ qty] 入力ポートで指定された合計注文枚数から約定枚数を減算することで、[wrk qty] 出力ポートの値を減少させます。
注: 公開枚数を持つ注文に関しては、[wrk qty] 出力ポートは、[disc qty] 入力ポートで指定された枚数と同等またはそれ以下となります。
[Order] ブロックにより生成された注文を、ユーザーが手動で削除または変更すると、ユーザーに対し制御を放棄させることになりますが、注文の執行に対して離散イベントメッセージは生成されます。具体的には、[Order] ブロックは左側の入力を無視しますが、右側の出力の値は生成します。ユーザがアルゴリズムを一時停止し、再開した場合は、[Order] ブロックは、管理注文を再び指定して、制御を再び取ろうとします。注文を指定できない場合は、[Order] ブロックは、ユーザー定義の入力枚数に対し達成済みの約定数を比較し、残りの枚数に対して、新規の注文を発注します。
Order ブロックの入力
注文ブロックに必須の入力数とタイプは、選択した注文の種類により決定されます。
注文タイプ
- 指値注文 (Limit)
- 成行注文 (Market)
- アイスバーグ注文 (Iceberg)
- ストップ リミット注文 (Stop Limit)
- ストップ マーケット注文 (Stop Market)
選択した注文の種類に基づいて、[Order] ブロックは、以下のブロックの入力を表示します。
-
inst: [Order] ブロックで取引されている銘柄を識別します。
-
price: 注文を発注する価格を示します。
-
qty: 合計注文枚数を示します。
-
on/off: [Boolean] 値条件に基づいて、注文を実行するかどうかを制御します。
この [True/False] が提供されている場合、入力値が [TRUE] から [FALSE] に変わると、[Order] ブロックは約定待ち注文を削除します。[FALSE] から [TRUE] に値が変わると、[Order] ブロックは新規の注文を追加します。
-
disc qty: アイスバーグ注文に使用する、公開数量を示します。
この入力が提供されている場合、[Order] ブロックは、取引所が認識する公開枚数タグを含んだ指値注文や成行注文を発注します。承認を受けた後、取引所は、入力枚数として合計注文数量を認識しますが、一度に特定の数量のみ公開します。公開枚数が入力枚数を超えた場合、取引所は、合計注文枚数として入力枚数を認識します。
-
trigger: ストップ注文にトリガー値を指定します。
- [Order] ブロックで、買注文を発注するように設定されている場合は、[Stop Trigger] 値は銘柄の直近値よりも大きい値である必要があります。売注文の場合は、[Stop Trigger] は直近値よりも小さな値である必要があります。
- [Order] ブロックで、買注文を発注するように設定されている場合は、価格入力は [Stop Trigger] と同等または大きい値である必要があります。売注文の場合は、価格入力は [Stop Trigger] と同等またはである必要があります。
Order ブロックの出力
-
wrk qty: マーケットでまだ約定待ちを続けている注文の数量を示します。
注: StopMarket と StopLimit注文に関しては、ポートが注文枚数をトリガーする時点で、ストップ注文トリガーされるまで、ポートは 0 を出力します。
-
Add Req: 取引所に送信された新規注文要求へのアクセスを提供します。
-
Add OK: 取引所から受信した新規の注文確認へのアクセスを提供します。
-
Chg Req: 取引所に送信された注文の変更要求へのアクセスを提供します。
-
Chg OK: 取引所や変更注文から受信した確認へのアクセスを提供します。
注: StopMarket と StopLimit注文に関しては、ストップ注文がトリガーされた際、このポートを通じて送信された離散メッセージにより、[isTriggered] メッセージ欄に [TRUE] が設定されます。
-
Del Req: 取引所に送信された注文の削除要求へのアクセスを提供します。
-
Del OK: 取引所から受信した注文削除の確認へのアクセスを提供します。
-
fills: 約定確認へのアクセスを提供します。
Autospreader スプレッドと作動する注文ブロックの場合、出力は以下のように変化します。
-
wrk qty: スプレッド注文枚数がまだ約定待ちを続けている枚数を示します。
注: StopMarket と StopLimit注文に関しては、ポートが注文枚数をトリガーする時点で、ストップ注文トリガーされるまで、ポートは 0 を出力します。
-
Add Req: 取引所に送信された新規スプレッド要求へのアクセスを提供します。
-
Add OK: 新規のスプレッド確認の離散イベント メッセージへのアクセスを提供します。
-
Chg Req: 取引所に送信されたスプレッドの変更要求へのアクセスを提供します。
-
Chg OK: スプレッド更新確認の離散イベント メッセージへのアクセスを提供します。
注: StopMarket と StopLimit注文に関しては、ストップ注文がトリガーされた際、このポートを通じて送信された離散メッセージにより、[isTriggered] メッセージ欄に [TRUE] が設定されます。
-
Del Req: 取引所に送信されたスプレッドの削除要求へのアクセスを提供します。
-
Del OK: スプレッドの削除確認の離散イベント メッセージへのアクセスを提供します。
-
Hedge Add OK: Algo Server が正常にスプレッドに対しヘッジ注文を送信すると生成される、離散イベント メッセージへのアクセスを提供します。
-
Quote Fills: スプレッドのクォート レッグに対し、約定メッセージへのアクセスを提供します。
-
Hedge Fills: スプレッドのヘッジ レッグに対し、約定約定メッセージへのアクセスを提供します。
-
fills: スプレッドの約定メッセージへのアクセスを提供します。
取引所注文のための [Order] ブロック
以下の例では、[Order] ブロックを使って、取引所上場の銘柄に対し、指値注文と成行注文を発注できる方法を示しています。
例: 買値より1ティック離れて 10枚の指値買注文を発注します。
例: 5枚の指値買注文を発注します。
Autospreader 注文のための [Order] ブロック
[Order] ブロックに対しブロック プロパティにて Autospreader 設定を有効化することで、アルゴにてカスタム スプレッドを取引することができます。この設定を有効化すると、追加の出力ポートが表示され、またブロックは [inst] 入力ポートを通じて Autospreader 銘柄のみを受け入れます。
例: 5 枚の WTI-Brent のスプレッド買注文を発注します。
[Order] ブロックと [Single Order Container] の接続
[Single Order Container] は、既存の注文を管理します。取引ブロック (Order ブロックなど) が注文を送信する際、その特定の順序に対し固有の [Order Key] を保持します。取引ブロックは次に、[Single Order Container] に離散イベント メッセージを出力します。ここでは [Order Key] を抽出して、識別済みの注文を制御します。
例 Single Order ブロックを使用して、買枚数に基づいて約定待ち注文を削除します
このアルゴは、[Order] ブロックを使って最良売値で売注文を発注します。このブロックは ' exchange からの確認応答を受信すると、メッセージは単一の注文にコンテナに送信し、作業注文を管理します。注文が約定する前に、買枚数が 20 枚を超過すると、[Single Order Container] が約定待ち注文を削除します。
ブロック プロパティ
ブロックをカスタマイズするには、[Block Properties] を更新します。
プロパティ | 説明 |
---|---|
Name (名前) | ADL キャンバスのブロックの下に表示される名前。 |
Type (タイプ) |
取引所固有の発注タイプ。 次の項目を選択できます。
注: 取引所でネイティブ サポートされていないタイプを選択した場合、注文は拒否されます。 |
Side (サイド) | 注文が買注文または売注文のいずれであるかを示します。 |
TIF (有効期限) |
市場で約定待ち中の生成済みの注文を残す期間を示します。 次の項目を選択できます。
|
Flip For Sell Order |
必要に応じて1つのアルゴリズムが買側または売側として機能できるように設定するかどうか。 ADL の自動ストラテジーの多くは、「ピボット」ポイントなどの特定のブロックの動作をもつ、ほぼ同一の買側と売側の方法を使用します。1つのアルゴリズムを有効化し、必要に応じて買側と売側の動作を行うため、ADL の幾つかのブロックに 「Flip For Sell Orders」 のオプションが含まれています。ユーザーが [Order Side] 変数 (買または売) を選択するかどうかによって、このオプションで代わりの機能を実行できるようになります。 [Order Side] 変数は、「Flip For Sell Orders」機能が有効化されているブロックを含むすべてのアルゴリズムに対し自動的に表示され、ユーザーはアルゴリズムを起動する前に子の変数を設定する必要があります。この機能が有効化されている場合、[Order Side] 変数の選択内容に基づいて、[Discrete Order] ブロックは、買注文または売注文のいずれかを発注します (詳細は「Flip For Sell Orders 機能」を参照してください)。 |
Autospreader |
ブロックが Autospreader 注文を管理するかどうかを示します。 これが有効化されている場合は、[Order] ブロックは 追加の出力を表示し、スプレッド レッグの操作へのアクセスを提供します。 |
When Ext Mod Occurs (外部変更の発生時) |
注文がアルゴリズム外で変更された場合に取る操作。
|
Leave Child Order On (子注文を残す) |
アルゴリズムが停止または取消されても、[Discrete Order] ブロックにより生成された注文が注文ブロックに残存する必要があるかどうかを示します。 クライアント側の接続の損失により、停止の状態となる可能性があります。 |
Ignore Inputs After Add (追加後に入力を無視) |
入力での変更を無視するかどうかを示します。 このオプションが有効の場合、[Order] ブロックは注文の発注時にのみ入力を考慮します。注文が一度発注され約定待ちしている場合、[Order] ブロックは入力のすべての変更を無視します。事実、このオプションをオンにすると、[Order] ブロックに「1ショット」注文を発注するように指示します。一方、このオプションがオフの場合、[Order] ブロックは引き続き約定待ち注文を変更し、任意の入力で変更を反映させます (入力は動的であることに注意してください):
|
AutoResubmit |
現在の約定待ち注文が削除された際に、常に新注文を発注するかどうかを示します。 有効化した場合、新注文は [OrderQty-FillQty] の注文枚数で発注されます。事実、このオプションを有効にすると、ユーザーの指定を達成するため、必要に応じて [Order] ブロックに、新注文を発注するように指示します。このオプションが無効になっている場合、[Order] ブロックは、アルゴリズムの寿命の間に1つの注文を発注することが許可されます。ユーザーが手動で削除すると、このオプションが有効であっても無効であっても、[Order] ブロックはユーザーに対する抑制ができなくなります。 注: ブロックの [on/off] 入力ポートがその時点で 「FALSE」 である場合、[Order] ブロックは「TRUE」に戻るのを待って、新注文を発注します。 |
Connectors (コネクター) |
以下の選択イベントを表示する追加の出力ポート。
|
注文タグ (Order Tag) |
[Discrete Order] ブロックから生成された注文の [Fills] ウィジェットの [Order Tag] 列に表示するカスタム テキスト。[Algo Dashboard] の インスタンス名でアルゴが起動されると、すべての子の [TextTT] 欄は、親注文の [TextTT] 欄で連結されます。 例えば、この値を [OT123] に設定し、以下のように [Algo Dashboard] から起動します。 アルゴの親注文の [TextTT] 欄は [MM 3x10] に設定されます。このアルゴにより発注された各子注文の [TextTT ] 欄は、[MM 3x10:OT123] に設定されます。 各注文にテキストを割り当てることにより、[TextTT] 列に基づいて [Fills] ウィジェットのこのアルゴの子注文をすばやく並べ替えてフィルターできます。 |
注文の配色 |
TT の [MD Trader] や [Order Book] ウィジェットのこのブロックにより生成された注文の横に表示される配色は、以下に類似しています。 |
説明 | ブロックの使用方法を説明するオプションのテキスト。 |