CTP インターフェイス用に正式にリリースされた C++ ダイナミック ライブラリに加えて、多くの人が Python、Java、C# などの主流言語でインターフェイスを提供しており、対応する開発方法を検索できます。1 つの接続でクエリできる株式の数は限られており、パフォーマンスは高くありませんが、複数の API インスタンスを作成して同時に動作し、各インスタンスでコントラクトの一部をサブスクライブすることができます。サブスクリプション インターフェイスを呼び出すときは、先物契約市場にサブスクライブするのと同じで、株式契約コードをサブスクライブするだけです。デモ プログラムが受信するデータは次のとおりです。
#include <iostream>
#include <chrono>
#include "./ThostFtdcMdApi.h"
#pragma comment( lib, "thostmduserapi_se.lib" )
class CMarketSpi :public CThostFtdcMdSpi
{ public: CMarketSpi(CThostFtdcMdApi* pApi) :m_pMarketApi(pApi) { pApi->RegisterSpi(this); }
void OnRtnDepthMarketData(CThostFtdcDepthMarketDataField* pDepthMarketData)
{ std::cout << pDepthMarketData->InstrumentID << " - " << pDepthMarketData->LastPrice << " - " << pDepthMarketData->ボリューム << std::endl; }
CThostFtdcMdApi* m_pMarketApi;
};
int main(int argc, char* argv[])
{ CThostFtdcMdApi* pApi = CThostFtdcMdApi::CreateFtdcMdApi(); CMarketSpi Spi(pApi); pApi->Init(); const char* シンボル[4] = { "600000","000001","00700","AAPL" }; pApi->SubscribeMarketData((char**)symbols, 4); getchar();
0を返します。
}