RTD and Excel

RTD and Excel

CQG Integrated Clientを使用してRTD(RealTimeData)の機能を使用でき、マーケットデータやその他対応をMicrosoft Excelと連携することができます。CQGとExcelを組み合わせることにより、ユーザー自身の需要に沿った大変カスタマイズ性の高いアプリケーションを作ることができます。

RTDはDDE(Dynamic Data Exchange)と比べとても効率がよく多くの優れた点を持ちます。RTDではリアルタイムデータを反映したセルをベースにした計算式に優れた対応を見せます。マーケットデータ、ヒストリカルデータ、シンセティックスプレッドを含む発注中の注文情報や建玉情報も取得することができます。


特性:

  • Excel 関数形式構文
  • セルを参照にした計算式
  • 一秒間で20000のトピックを同時に3回更新。ひとつのトピックのみの場合は1秒間で200回の更新。
  • 20000セルのマーケットデータ、5000セルのヒストリカルとスタディデータ、500セルの注文に関連したデータにCQGにて対応
    • この制限はRTDにのみ適用され、CQGデータの制限ではありません。ただしバーデータは300までに限られます

 

フォーマット:

  • DDEに類似:全てのパラメータはひとつのアイテムにリンクしており、これはDDEフォーマットのアイテムと同じです。例えば下記数式はe-mini S& P銘柄の清算値を呼び出します:

     =RTD(“CQG.RTD”,,“'EP?1'!Settlement”)

  • RTDリファレンス:全てのパラメータは分けられたラベルにより特定されます。例えば下記数式はe-mini S& P銘柄の少数点を含んだ清算値を返します:

     = RTD(“CQG.RTD”, , “ContractData”, “EP”, “Settlement”,””, “T”)

  • データコレクションへのRTDリファレンス:CQG-RTDサーバー上にて複数のフィールドが特定・リクエストされます。このリクエストはStringを含みExcelのEVALUATE機能を使用して配列に変換されることもあります。

 

以下のサンプルシートをご用意しています。

  • RTDBasicTutorialVersion2.xlsx: RTDの数式の基礎構文からより複雑な数式の詳細をご説明します。簡単にコピー&ペーストをして使用できるよく使用されるRTD集も含まれています。
  • LabelsRTD.xlsm: 銘柄からシンティックスプレッドまでのマーケットデータにて使用できるラベルのリストがあります。注文と関連するデータには約定注文数、未決済建玉、評価損益等が含まれます。
  • StudiesRTD.xlsm: 数式のリストがあり、この数式はヒストリカルバー・チャート、そしてリクエストしたスタディデータやスタディに関連した曲線を使用します。CQG ICにてサポートされている全てのヒストリカルタイプを呼び出し、作成できるヒストリカルスタディのセットをリクエストに使用されます。

サンプルコードにはExcelの基礎プログラミング言語の許容範囲の限界があります。VBA(Visual Basic for Applications)の基礎知識がありましたらさらに有効にRTD機能をご利用いただけます。

 

アドバンスドExcelシートのサンプル

いかにしてCQGとRTDを使用しご自身にあったシートを作り上げるのかご説明をしております。参考となるチャートやカラフルに色分けされた大域的な表示をご覧いただけます。

Click here

Excel 用のDDEからRTDへの変換

DDEからRTDへの移行をスムーズに行うために、CQGではDDEでコードされたシートをRTD形式に変換するツールをご用意しました。ZIPファイルにはこのツールを使用に必要なDLL も含んでおります。またCQGではDDEのサポートは継続しております。

このツールで変換をするとシート名の末尾が「_RTD」となり、DDEのシートと同じフォルダに保存されます。

変換したいファイルをツールへドラッグアンドドロップするか、Addボタン→ファイルの選択→Convertボタンにて変換がされます。この対応にはCQG ICをログオフしておく必要があります。

ExcelでのRTDスロットルの設定

Excel Visual Basic Editorを使用してセルの更新頻度(Application.RTD.ThrottleInterval)を設定することができます。この値を0にすることもできます。(常に更新)この数値を0以上にした場合はその数値ミリ秒待ってから更新をかけます。詳細はMicrosoft社のページをご参照ください。

 

ご質問等ございましたらサポートまでご連絡ください。