ADL ブロックでは、ブロックの出力値を計算するための数式を定義できます。このようなブロックは、それぞれの [ブロックプロパティ] パネルから [Formula Editor] を開くことができます。
[Formula Editor] には、以下のような、数式で使用できる値や演算子が表示されます。
Formula Editor ではオート コンプリート機能を提供していて、アルゴですでに利用可能な情報を簡単に参照できます。特殊文字を入力すると (@または#)、数式に変数として挿入できる項目のリストがエディターに表示されます。また記号の後に文字を入力すると、その文字で始まる項目に絞り込まれます。
![]() |
# を入力すると、受信した離散イベント メッセージで利用可能なすべての欄のリストが表示されます。 |
![]() |
@ を入力すると、キャンバスに1つ以上の連続出力ポートを含むブロックのリストが表示されます。 |
以下のサンプルでは、基本的な数式タイプを説明しています。
以下の数式は、単純にブール値「TRUE」を出力し、他の下流ブロックが使用できるようにするものです。
[ExitPrice Value Extractor] ブロックの次の数式は、買注文の約定値よりも2ティック高い価格を計算します。そしてこれを使用して、買注文の約定値よりも2ティック高いエグジット売注文を発注できます。
![]() |
[fillPrice] メッセージ欄の値にアクセスするには、# を入力して欄を選択します。 |
![]() |
[TickSize Field ] ブロックの値にアクセスするには、@ を入力して希望するブロックを選択します。 |
次の数式は、現在の反対側のインサイドマーケットが、約定値より2ティック高いかどうかに基づいて、[TRUE] または [FALSE] の値を出力します。
[Formula Editor] には、アルゴが実行されるにつれ、動的に更新する値を追加できる、ドロップダウン メニューが含まれています。
connectors: アルゴリズムの他のブロックから、連続出力ポートの値を参照できるようにします。また [block.connector] の形式でコネクターを入力することもできます。
[Formula Editor] 内の以下のコネクターにより、アルゴリズム内の Analytics0 という Analytics ブロックからの連続出力ポートが表示されます。
messages: 離散イベント メッセージに埋め込まれた以下の情報を抽出できます。また {fieldName} の形式でコネクターを入力することもできます。
"string": (Alert ブロックのみ) メッセージ文字にカスタム文字を追加できます。
以下の ADL ブロックでは、カスタム数式を作成できます。
取引ブロック
Discrete ブロック
Misc ブロック