CTP APIドッキングとテスト


CTPカウンターは先物分野で重要な地位を占めており、その提供するAPIはコードスタイルの規範で知られている.最近、インタフェースのテストを実現しましたが、使用するのは簡単ではっきりしています.発見された問題の一つは、インタフェースとフィールドが多すぎて、ユーザーに対する理解が難しくなりました.幸い、多くのユーザーにとって、すべてのインタフェースとフィールドを明らかにする必要はありません.
CTPインタフェースの仕様性のため、ここではインタフェースをいくつかの要素に抽象化し、pythonスクリプトによってすべてのコールバック関数のすべてのフィールドをログ記録する機能を実現するために、いくつかのコードを自動的に生成しました.同時に、いくつかの重要なインタフェースをテストしました.紙面制限のため、ここではインタフェースの一部のコード実装のみがリストされ、興味があればGitHubに移行して完全なコードを取得することができる.
 
CTPのSPIクラスのコールバック関数は主に5種類に分けられ、On、OnRsp、OnRspQry、OnErrRtn、OnRtn:
Onで始まるコールバック関数パラメータは、通常、いくつかの簡単なタイプまたはパラメータなしです.
OnRspとOnRspQryで始まるコールバック関数パラメータは、1つのField構造を含み、1つの固定CThostFtdcRspInfoField構造を加え、2つの簡単なパラメータint nRequestIDとbool bIsLastを含む.
OnErrRtnで始まるコールバック関数パラメータは、Field構造を含み、CThostFtdcRspInfoField構造を固定します.
OnRtnで始まるコールバック関数パラメータには、1つのField構造のみが含まれます.
いくつかの要素の抽象は以下の通りです.