Xlight API用户手册 v1.6.0.23
Xlight极速柜台接口文档
载入中...
搜索中...
未找到
x1::XLTQuoteApi类 参考

接口类 更多...

#include <xlt_quote_api.h>

Public 成员函数

 ~XLTQuoteApi ()=default
 
uint32_t get_trading_day ()
 获取当前交易日。只有登录成功后,才能得到正确的交易日。
 
bool initialize (XLTQuoteConfig *quote_config, XLTQuoteSpi *quote_spi)
 初始化行情,登录之前必须调用此函数,只能初始化一次
 
void stop ()
 停止行情API 断开所有行情session连接,清空所有session上的回调指针,停止回调。
 
bool login (uint64_t request_id, uint16_t client_id, const char *account_name, const char *password, const char *pub_key, const xlt_user_terminal_info_t *info=nullptr)
 用户行情登录请求
 
bool logout (uint64_t session_id)
 行情登出请求
 
bool subscribe_quote (uint64_t session_id, uint16_t thread_count, quote_thread_t *quote_threads, QuoteRxMode rx_mode=QuoteRxMode::RX_MODE_AUTO)
 订阅行情请求
 
bool unsubscribe_quote (uint64_t session_id)
 退订行情请求
 
bool query_static_quote_info (uint64_t session_id, uint64_t request_id)
 查询静态行情信息请求
 
bool query_level1_quote (uint64_t session_id, uint64_t request_id, ExchangeIndex exchange_index, const char *security_code)
 查询level1行情请求
 
bool query_all_level1_quote (uint64_t session_id, uint64_t request_id)
 查询全量level1行情请求
 
bool request_rebuild_tick_quote (uint64_t session_id, uint64_t request_id, const xlt_rebuild_tick_quote_req_t *request)
 回补level2逐笔行情请求
 

静态 Public 成员函数

static XLTQuoteApicreate ()
 创建实例(只能创建一次)
 
static const char * get_api_version ()
 获取API版本号
 
static xlt_error_info_t get_last_error ()
 获取错误信息
 

详细描述

接口类

构造及析构函数说明

◆ ~XLTQuoteApi()

x1::XLTQuoteApi::~XLTQuoteApi ( )
default

成员函数说明

◆ create()

static XLTQuoteApi * x1::XLTQuoteApi::create ( )
static

创建实例(只能创建一次)

返回
返回行情接口实例

◆ get_api_version()

static const char * x1::XLTQuoteApi::get_api_version ( )
static

获取API版本号

返回
API版本号

◆ get_last_error()

static xlt_error_info_t x1::XLTQuoteApi::get_last_error ( )
static

获取错误信息

返回
错误信息

◆ get_trading_day()

uint32_t x1::XLTQuoteApi::get_trading_day ( )

获取当前交易日。只有登录成功后,才能得到正确的交易日。

返回
返回日期,格式为YYYYMMDD

◆ initialize()

bool x1::XLTQuoteApi::initialize ( XLTQuoteConfig * quote_config,
XLTQuoteSpi * quote_spi )

初始化行情,登录之前必须调用此函数,只能初始化一次

参数
quote_config配置参数
quote_spi派生自行情响应类的实例,请在登录之前设定
返回
初始化是否成功

◆ login()

bool x1::XLTQuoteApi::login ( uint64_t request_id,
uint16_t client_id,
const char * account_name,
const char * password,
const char * pub_key,
const xlt_user_terminal_info_t * info = nullptr )

用户行情登录请求

参数
request_id用于用户定位请求响应的ID,由用户自定义
client_id客户端标识ID
account_name登录账号
password登录密码
pub_key用户公钥(长度64字节),用户开户时申请得到
info终端信息,若当前API为最终端则填nullptr,否则填写终端信息
返回
登录请求发送是否成功,true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。
备注
行情API只能登录一次,如果需要重新登录,需要先调用logout登出,然后再调用login登录。登录成功后,API会创建一个会话,并在on_login回调中返回会话ID,用户需要保存这个会话ID,在后续的订阅、查询等请求中使用,以标识当前的登录状态和身份信息。

◆ logout()

bool x1::XLTQuoteApi::logout ( uint64_t session_id)

行情登出请求

参数
session_id会话id,登录时得到
返回
true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。

◆ query_all_level1_quote()

bool x1::XLTQuoteApi::query_all_level1_quote ( uint64_t session_id,
uint64_t request_id )

查询全量level1行情请求

参数
session_id会话id,登录时得到
request_id用于用户定位查询响应的ID,由用户自定义
返回
请求发送是否成功,true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。
备注
查询结果将在on_query_all_level1_quote回调中返回,由于全量level1行情数据较大,可能会分多条消息返回,请注意处理好回调中的is_last参数,以确定何时接收完毕。

◆ query_level1_quote()

bool x1::XLTQuoteApi::query_level1_quote ( uint64_t session_id,
uint64_t request_id,
ExchangeIndex exchange_index,
const char * security_code )

查询level1行情请求

参数
session_id会话id,登录时得到
request_id用于用户定位查询响应的ID,由用户自定义
exchange_index市场
security_code证券代码
返回
请求发送是否成功,true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。
备注
查询结果将在on_query_level1_quote回调中返回

◆ query_static_quote_info()

bool x1::XLTQuoteApi::query_static_quote_info ( uint64_t session_id,
uint64_t request_id )

查询静态行情信息请求

参数
session_id会话id,登录时得到
request_id用于用户定位查询响应的ID,由用户自定义
返回
请求发送是否成功,true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。
备注
查询结果将在on_query_static_quote_info回调中返回

◆ request_rebuild_tick_quote()

bool x1::XLTQuoteApi::request_rebuild_tick_quote ( uint64_t session_id,
uint64_t request_id,
const xlt_rebuild_tick_quote_req_t * request )

回补level2逐笔行情请求

参数
session_id会话id,登录时得到
request_id用于用户定位查询响应的ID,由用户自定义
request回补请求
返回
请求发送是否成功,true表示成功,false表示出错。请求失败响应将在on_request_rebuild_tick_quote_error中返回,如果成功则直接在on_rebuild_tick_quote中推送回补数据。

◆ stop()

void x1::XLTQuoteApi::stop ( )

停止行情API 断开所有行情session连接,清空所有session上的回调指针,停止回调。

备注
调用stop后,所有未完成的回调将不再触发,用户可安全地释放对象。

◆ subscribe_quote()

bool x1::XLTQuoteApi::subscribe_quote ( uint64_t session_id,
uint16_t thread_count,
quote_thread_t * quote_threads,
QuoteRxMode rx_mode = QuoteRxMode::RX_MODE_AUTO )

订阅行情请求

参数
session_id会话id,登录时得到
thread_count行情接收线程数量
quote_threads行情接收线程配置列表,每个元素包含一个线程的CPU亲和力设置和负责接收的行情组播类型列表
rx_mode行情接收模式,默认为自动模式(QuoteRxMode::RX_MODE_AUTO),在自动模式下,API会根据系统环境和配置自动选择最优的接收模式(如ef_vi或内核socket)。用户也可以根据实际情况强制指定接收模式(如ef_vi模式或内核socket模式)。请注意,ef_vi模式需要满足特定的系统环境和配置要求,如使用Solarflare网卡,并正确设置网卡驱动和系统参数,否则可能无法正常工作或性能不佳。
返回
请求发送是否成功,true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。
备注
订阅成功后,API会创建相应数量的行情接收线程,并绑定到指定CPU核心,同时订阅对应的行情组播地址,以便接收行情数据。请根据实际情况合理配置线程数量、CPU亲和力和组播类型分配,以获得最佳性能。

◆ unsubscribe_quote()

bool x1::XLTQuoteApi::unsubscribe_quote ( uint64_t session_id)

退订行情请求

参数
session_id会话id,登录时得到
返回
请求发送是否成功,true表示成功,false表示出错,此时用户可以调用get_last_error()来获取错误信息。
备注
退订成功后,API会销毁所有行情接收线程,并退订所有行情组播地址,停止接收行情数据。请在不需要接收行情数据时调用此接口,以释放系统资源。

该类的文档由以下文件生成: