TT と Excel の統合

注文プロパティの取得

注文プロパティの取得

TT RTD Server では、RTD 数式を使って、[Order Book] に表示されている注文プロパティなどの個々の注文についての情報を取得できます。以下の例では、数式はt ABCTextTT 値で識別された注文の価格注文プロパティの値を取得します。

注文情報を抽出する RTD 数式は、以下の数式を使用します。

=RTD("tt.rtd",,"Order",order-property,filter)

: 2番目のパラメータは、RTD Server が実行されている外部サーバーの名前になります。TT RTD Server は常にローカル実行されるので、2番目のパラメータの値を除外するか空白の文字 ("") を入力する必要があります。ただし、数式でパラメータを構成する必要があります。

Order-property パラメータは、Order Book 列で利用可能なすべてのプロパティや、アルゴ注文のすべての入力や出力である可能性があります。

注: プロパティの名前は大文字、スペース、特殊文字など、すべてが完全に一致している必要があります。

Filter パラメータは、以下の数式のいずれかを使用して、1つの注文を正確に識別する必要があります。

  • TTOrderID=order-idorder-id は注文の TT 注文 ID を示します。
  • TextTT=tag-valuetag-value は、元々注文に関連する TextTT 欄です。

    [Order] ブロックや [Discrete Order] ブロックの [Order Tag] プロパティにも設定されている [Algo Dashboard] に、インスタンス名で起動された ADL に関しては、子注文の [TextTT] 欄はフォーム、instance-name:order-tag-value を使って変更されます。

: フィルターが1つ以上の注文とマッチした場合、RTD 数式はエラーを返します。

例えば、[TextTT] プロパティが [bbb] である注文の [Contract] プロパティを取得する場合、セルに以下の数式のみ入力します。

=RTD("tt.rtd",,"Order","Contract","TextTT=bbb")

数式を処理した後、Excel に以下のような内容の結果がセルに表示されます。セル参照の 「$」は、Excel の混合参照表記で、& 記号は2つのセルの値にジョインし、文字列 「TextTT=bbb」を作成します。

注: 数式で参照するセルの値の周りに引用符を使用しないでください。

ADL アルゴのエクスポート変数の取得

ADL アルゴからエクスポート変数の値を取得することもできます。アルゴ変数を識別するには、block.connector 形式にて order-property を指定します。block は ADL ブロックの名前で、connector は出力ポートの名前です。

入力ブロック値に、ブロック名のみ含みます。例:

=RTD("tt.rtd",,"Order","Instrument0","TextTT=myalgo")

出力ブロック値に、変数 [Exports] タブに示されたコネクター名を使用します。例:

=RTD("tt.rtd",,"Order","Entry Fill.fillPrice","TextTT=myalgo")

: ブロックとコネクターの名前は大文字、スペース、特殊文字など、すべてが完全に一致している必要があります。[Add] ブロックなど 1つの出力ポートのみを含むブロックに関しては、コネクターを除外します。

以下の ADL アルゴから情報にアクセスする場合、エクスポート済み変数が表示される他、Instrument0 入力ブロックからの [Instrument ID] も [Exports] タブに表示されます。

アルゴ注文からこれらの値を取得するには、以下に類似した RTD 数式を含みます (一致するスペースや大小文字に注意してください):

  • Instrument0 入力ブロックの場合:
    =RTD("tt.rtd",,"Order","Instrument0","TextTT=myalgo")
  • Exit Price という [Add] ブロックの出力の場合
    =RTD("tt.rtd",,"Order","Exit Price","TextTT=myalgo")
  • Entry Fill という Time and Sales ブロックの fillQuantity 出力の場合
    =RTD("tt.rtd",,"Order","Entry Fill.fillQuantity","TextTT=myalgo")
  • Entry Fill という Time and Sales ブロックの fillPrice 出力の場合
    =RTD("tt.rtd",,"Order","Entry Fill.fillPrice","TextTT=myalgo")