RTD を使用して限月データを取得する際、取得しようとする限月の ID とプロパティを指定する必要があります。
TT RTD 数式は、以下の基本構造を使用します。
=RTD("tt.rtd",,"Topic1",...,"TopicN")
注: 2番目のパラメータは、RTD Server が実行されている外部サーバーの名前になります。TT RTD Server は常にローカル実行されるので、2番目のパラメータの値を除外するか空白の文字 ("") を入力する必要があります。ただし、数式でパラメータを構成する必要があります。
限月に関する情報にアクセスする前に、まず以下のいずれかの方法で ID を抽出する必要があります。
=RTD("tt.rtd",,"Inst","exchangeName","instrName")
instrName 引数は、一般的に限月のショートネームと呼ばれるものに対応します。
例えば、CME 取引所から Jun16 GE 先物限月の ID を取得したい場合、セルに次の数式を入力するだけで結構です。
=RTD("tt.rtd",,"Inst","CME","GEM6")
数式を処理した後、Excel は次のような結果をセルに表示します。
これで、セルに表示された結果を使用して、スプレッドシートの他の数式で限月を識別できます。通常、セルを参照して (この場合はB3)、他の数式で限月を識別します。
=RTD("tt.rtd",,"Instr","exchangeName","instrSymbol","productType","expiry"")
注: 限月の詳細の方法を使用する場合、数式では「Inst」ではなく「Instr」を使用します。
TT は以下の銘柄タイプをサポートしています (全角で入力してください)。
例えば、CME 取引所から Jun19 ES 先物限月の ID を取得したい場合、セルに以下の数式を入力する必要があります。
=RTD("tt.rtd",,"Instr","CME","ES","FUTURE","Jun19")
次の式を使用すると、少なくとも 1つの限月を取引したすべての銘柄の ID を取得できます。
=RTD("tt.rtd",,"Inst","FILLS",CELL("Address",cell-reference))
注: 2番目のパラメータは、RTD Server が実行されている外部サーバーの名前になります。TT RTD Server は常にローカル実行されるので、2番目のパラメータの値を除外するか空白の文字 ("") を入力する必要があります。ただし、数式でパラメータを構成する必要があります。
この数式は、限月 ID を1次元の縦配列で返します。この配列全体を表示するには、Excel の一連のセルにこの同じ数式を指定し、cell-reference (セル参照) 引数の値をそれぞれ異なるものにします。この配列のうち、値のないメンバーを参照した場合は、空白文字列が返されます。
cell-reference 値は、 "column,row" の形式をとります。例:
これで、セルに表示された結果を使用して、スプレッドシートの他の数式で限月を識別できます。通常、セルを参照して、他の数式で限月を識別します。
限月 ID を取得すると、以下の数式でその限月に関連するプロパティを取得できます。
=RTD("tt.rtd",,inst-id,property,filter1,filterN)
TT RTD Server では、TT から取得できるプロパティとして2つのタイプをサポートしています。
限月のタイプ1プロパティは、単一の値を返すもので、オプションのフィルターがありません。これらのプロパティは、以下の形式の RTD 式で抽出できます。
=RTD("tt.rtd",,inst-id,property)
例えば、セル A13 に文字列「Last」、セル B3 に限月 ID を保存した場合、以下のように TT 表示形式で直近値を抽出できます。
=RTD("tt.rtd",,B3,A13)
数式を処理した後、Excel は次のような結果をセルに表示します。セル参照の「$」は、Excel 混合参照表記です。
RTDは、板情報 (TTDepth) と詳細板情報 (TTDetailedDepth) を返すプロパティも提供しています。板情報枚数は、各価格帯におけるダイレクト枚数とインプライド枚数を組み合わせたものです。これらのプロパティは、以下の形式で数式を使って取得できます。
=RTD("tt.rtd",,inst-id,depth-property,num-levels,cell-reference)
注: 2番目のパラメータは、RTD Server が実行されている外部サーバーの名前になります。TT RTD Server は常にローカル実行されるので、2番目のパラメータの値を除外するか空白の文字 ("") を入力する必要があります。ただし、数式でパラメータを構成する必要があります。
TTDepth プロパティは、次のような 4xnum-levels メモリ内配列を返します。
TTDetailedDepth プロパティは、次のような 6xnum-levels メモリ内配列を返します。
注: 詳細板情報については、インプライド注文に対して取引相手 ID は返されません。
たとえば、セル G4 に保存されている限月 ID に対して板情報の 10価格帯を返すには、次のように深度を抽出します。
=RTD("tt.rtd",, $G$4, "TTDepth", "10", CELL("Address", A1)")
数式を処理した後、Excel を設定して、以下の板情報に似た結果を表示できます。
num-levels パラメータは、返す配列のサイズを示していて、必ずしも価格帯の数ではありません。
限月のタイプ 2 プロパティは、単一の値を返すもので、オプションのフィルターがありません。これらのプロパティは、以下の形式の RTD 式で抽出できます。
=RTD("tt.rtd",,inst-id,property,filter1,filter2,filterN)
Account 属性をフィルターとして使用して、TT RTD Server が値を計算する約定を制限できます。For example, you might want the quantity of sell orders (SellQty property) of an instrument only if it was submitted たとえば、特定の口座 (Account 属性) を通じて送信された場合のみ、ある限月の売注文の枚数 (SellQty プロパティ) を取得したいとします。
注: 前述したように、いくつかのタイプ 2 プロパティに対して、少なくとも 1つの 口座 フィルターを指定する必要があります。
数式内のフィルター パラメータの形式は次のとおりです。
<property><operator><value>
例えば、セル A33 に文字列「AvgOpenPrice#」、セルA31 に文字列「Account=ATRSim」、セル B3 に限月 ID を保存した場合、以下のように小数点で平均の始値を抽出できます。
=RTD("tt.rtd",,B3,A33,A31)
数式を処理した後、Excel は次のような結果をセルに表示します。セル参照の「$」は、Excel 混合参照表記です。