高度観念

高度観念

離散イベント メッセージの伝達の順序

ADL.変数が更新される粒状順序を理解することは、ADL で高度なプログラミング技術を取得するのに、最も重要な要素の1つです。

ブロックが離散イベント メッセージのパルスを出力すると、アルゴリズムは一時的に、取引所サーバーからの連続メッセージのチャネルを停止します。離散イベント メッセージのパルスがアルゴリズムの中に伝達されている間、連続メッセージ チャネルは、閉じられたままとなります。効果では、この動作は、マーケット データのストリーミングにチャネルする [Instrument Field] ブロックとして、ブロックの出力を「フリーズ」します。この静的状態では、離散的イベント メッセージのパルスはユーザーにより指定された経路を移動して、経路に存在するブロックの出力値の更新を行います。この伝達が完了すると、アルゴリズムはすべての取引所サーバーからの連続メッセージのチャネルを再開します。

TT はパフォーマンスの向上のため常にシステム改善を行っています。そのため TT では、アルゴのシーケンス ロジックを設計する際に、特定のシステム遅延を想定した時間の遅延を含めないように強く推奨しています。

このような伝達はミリ秒で実行され、実際には見えることはありません。ただしこのメカニズムでは、ADL でユーザーは、離散イベント時に正確に存在するマーケット データを取得して使用できます。以下の ADL は、離散イベント メッセージが伝達される際にブロックが更新される正確な順番を制御しています。

Pass-through ブロック

伝達中に、離散イベント メッセージが Pass-Through ブロックに入り (離散イベント メッセージを変更せずに受信または受け渡しする際)、以下の順番で動作が起こります。

  1. Pass-through ブロックの連続出力値自体が、まず更新されます。
  2. Pass-through ブロックの連続出力値を使用するすべての「下流」ブロックが、更新されます。
  3. 離散イベント メッセージは Pass-through ブロックを終了します。
  4. 離散イベント メッセージは、末端点に到達するまでに、指定の道筋を通じて伝達されます (次の黒点を参照)。

「パススルー」ブロックを入力する際の更新の順番。この例では、離散イベント メッセージが、パススルー ブロックを出る前に、パススルー ブロックから 「下流」に接続されているブロックをまず更新します。

  1. 離散イベント メッセージはブロックに入ります。
  2. 連続出力値は、[Add] ブロックの入力ポートに伝達を行います。
  3. 離散イベント メッセージの出力ポートがブロックを出て、道筋で伝達を行い続けます。

Termination ブロック

離散イベント メッセージは、できるだけ遠くに道筋に沿って伝達を行い、以下のブロックのうちいずれかの1つに入ると、終了 (終結) します。

Termination ポイント