概要
東京証券取引所は arrowhead と ToSTNeT の 2 つの売買システムで株式等の取引を行っています。取引参加者およびユーザは、売買システムと相場報道システムへアクセスするために、ネットワークインフラである arrownet に接続する必要があります。
実務上、この「arrownet 接続が前提」という点が設計の起点になります。インターネット越しに叩ける公開 API とは前提が異なり、回線・コロケーション・冗長化の構成が先に決まらないとアプリケーション設計を確定できません。
技術仕様
公式ドキュメントで確認した内容です。出典はページ末尾に記載しています。仕様は更新されることがあるため、実装前に一次資料をご確認ください。
- 売買システム
- arrowhead(オークション)/ ToSTNeT システム
- arrowhead の対象商品
- 株券(内国株・外国株・優先株等)、ETF、不動産投信(REIT)、転換社債型新株予約権付社債券 等
- 取引時間
- arrowhead は 9:00-11:30 / 12:30-15:30。ToSTNeT の単一銘柄取引は 8:20-18:00
- プロトコル
- TCP/IP
- 相場情報
- FLEX Standard / FLEX Market by Order
- ネットワーク
- arrownet への接続が必須。コネクティビティサービス(コロケーション等)が利用可
- 関連システム
- 相場報道システム MAINS、RFQ プラットフォーム CONNEQTOR
受託の範囲
- arrownet 接続を前提とした構成設計(回線・コロケーション・冗長化)
- FLEX Standard / FLEX Market by Order の受信・デコードと板の再構成
- 売買システムとの接続部分の実装と、障害時のフェイルオーバー設計
- 相場情報の社内配信基盤への取り込みと、遅延監視の実装
- ISV 製品を使う場合の接続設計と、自社実装との切り分け
実装で詰まりやすい点
ネットワーク構成が先に決まる
arrownet への接続が前提のため、回線とコロケーションの構成がアプリケーション設計より先に決まります。ここを後回しにすると、遅延要件と冗長化要件が後から効いてきて構成をやり直すことになります。
Market by Order は板の再構成が要る
FLEX Market by Order は注文単位の情報です。板として使うには自前で再構成する必要があり、欠損・順序・スナップショットとの整合をどう扱うかを設計時に決めておく必要があります。
取引時間の変更を定数で埋め込まない
立会時間は制度変更で変わります。売買システムの稼働時間を業務ロジックへ直接書き込まず、設定として持って外から変えられるようにしておきます。
参照元
arrowhead についてよくあるご質問
インターネット経由で接続できますか。
できません。取引参加者およびユーザは、売買システムと相場報道システムへアクセスするために arrownet へ接続する必要があります。回線とコロケーションを含めた構成の検討が最初の作業になります。
ISV 製品を使う場合も相談できますか。
対応します。ISV 製品で賄える範囲と自社実装が必要な範囲の切り分け、および両者の接続部分の設計から入ることが多いです。