| Xlight API用户手册 v1.6.0.23 Xlight极速柜台接口文档

载入中...
搜索中...
未找到
交易API

# 交易API简介

交易API用于订单交易与交易相关查询，采用异步回调模型：请求函数通常立即返回，处理结果通过回调接口推送。

相关头文件：

- `xlt_api/xlt_trade/xlt_trade_api.h`
- `xlt_api/xlt_trade/xlt_trade_config.h`
- `xlt_api/xlt_trade/xlt_trade_struct.h`
- `xlt_api/xlt_trade/xlt_trade_data_type.h`
- `xlt_api/xlt_trade/xlt_trade_list.h`

交易API由以下三个核心部分组成：

组成 | 类 | 说明
--- | --- | ---
配置 | XLTTradeConfig | 交易API配置结构，用于设置交易日、网卡地址、AGW地址等参数
接口 | XLTTradeApi | 交易API入口类，负责初始化、登录、交易请求、查询、订阅等
回调 | XLTTradeSpi | 交易回调接口，包含登录响应、查询响应、交易消息推送（委托回报/成交回报/资金变动等）

可从以下入口查看接口与数据结构的完整定义：

- 文件列表（定位 `xlt_trade_api.h`）
- 类列表

## 配置说明（XLTTradeConfig）

配置项 | 接口 | 说明 | 配置样例
--- | --- | --- | ---
交易日 | x1::XLTTradeConfig::set_trading_day | 格式YYYYMMDD；生产环境通常为当前交易日，测试环境为柜台指定交易日 | `config.set_trading_day(20260402);`
本地网卡IP | x1::XLTTradeConfig::set_local_addr | 设置连接AGW与快速报单的本地网卡IP（生产需为对应接入网段） | `config.set_local_addr("192.168.8.155", "192.168.2.155");`
AGW地址 | x1::XLTTradeConfig::add_agw_addr | 添加一个AGW地址（可重复添加多个） | `config.add_agw_addr("192.168.5.64", 7060);`
订单超时 | x1::XLTTradeConfig::set_order_timeout | 单位秒；超时触发 x1::XLTTradeSpi::on_order_timeout | `config.set_order_timeout(10);`
自定义订单序号 | x1::XLTTradeConfig::set_order_seq_self_define | 启用后下单/撤单需填写 order_sequence 且需保证唯一 | `config.set_order_seq_self_define(true);`

以下为进程级环境变量配置，通过系统环境变量设置。若同一进程中同时使用了交易API和行情API，则共用同一份环境变量。

环境变量 | 默认值 | 说明 | 配置样例
--- | --- | --- | ---
XLT_FILE_PATH | `.`（当前路径） | 文件存放路径（如日志文件）。若路径不存在，API将无法初始化 | `export XLT_FILE_PATH=/data/xlt`
XLT_LOG_LEVEL | INFO | 日志级别，可选值：FATAL / ERROR / WARN / INFO / DEBUG / TRACE | `export XLT_LOG_LEVEL=DEBUG`
XLT_REQUEST_TIMEOUT | 5 | 请求超时时间，单位秒 | `export XLT_REQUEST_TIMEOUT=10`

## 接口说明（XLTTradeApi）

分类 | 接口 | 说明
--- | --- | ---
创建/基础信息 | x1::XLTTradeApi::create |
| x1::XLTTradeApi::get_api_version |
| x1::XLTTradeApi::get_last_error |
| x1::XLTTradeApi::get_order_sequence |
| x1::XLTTradeApi::get_trading_day |
初始化 | x1::XLTTradeApi::initialize |
停止 | x1::XLTTradeApi::stop | 停止回调，退出程序前调用，避免回调线程访问已销毁的对象
登录/登出/认证 | x1::XLTTradeApi::login |
| x1::XLTTradeApi::logout |
| x1::XLTTradeApi::auth_trade |
| x1::XLTTradeApi::deauth_trade |
会话/账号信息 | x1::XLTTradeApi::get_account_index |
| x1::XLTTradeApi::get_init_assets |
| x1::XLTTradeApi::get_init_positions |
| x1::XLTTradeApi::get_xid_sender |
| x1::XLTTradeApi::get_biz_sender |
回报订阅/断点续传 | x1::XLTTradeApi::subscribe_trade_message | `trade_message_type_t` 为按位或组合的订阅掩码：`REPORT`（委托回报）/ `RAW_REPORT`（原始报文）/ `ORDER_BOOK`（订单簿消息）
| x1::XLTTradeApi::rebuild_trade_message |
下单/撤单 | x1::XLTTradeApi::insert_order |
| x1::XLTTradeApi::cancel_order |
| x1::XLTTradeApi::resend_order_request |
资金划拨 | x1::XLTTradeApi::submit_counter_fund_transfer_request |
| x1::XLTTradeApi::submit_cluster_fund_transfer_request |
查询 | x1::XLTTradeApi::query_assets |
| x1::XLTTradeApi::query_positions |
| x1::XLTTradeApi::query_orders |
| x1::XLTTradeApi::query_orders_by_page |
| x1::XLTTradeApi::query_trades |
| x1::XLTTradeApi::query_init_assets |
| x1::XLTTradeApi::query_init_positions |
| x1::XLTTradeApi::query_trade_account_info |

## 回调说明（XLTTradeSpi）

类别 | 回调接口 | 说明
--- | --- | ---
连接/会话 | x1::XLTTradeSpi::on_disconnect |
| x1::XLTTradeSpi::on_order_timeout |
登录/认证 | x1::XLTTradeSpi::on_login |
| x1::XLTTradeSpi::on_auth_trade |
订阅/重推响应 | x1::XLTTradeSpi::on_subscribe_trade_message |
| x1::XLTTradeSpi::on_rebuild_trade_message |
查询响应 | x1::XLTTradeSpi::on_query_assets |
| x1::XLTTradeSpi::on_query_positions |
| x1::XLTTradeSpi::on_query_orders |
| x1::XLTTradeSpi::on_query_orders_by_page |
| x1::XLTTradeSpi::on_query_trades |
| x1::XLTTradeSpi::on_query_init_assets |
| x1::XLTTradeSpi::on_query_init_positions |
| x1::XLTTradeSpi::on_query_trade_account_info |
委托回报（推送） | x1::XLTTradeSpi::on_order_response |
| x1::XLTTradeSpi::on_cancel_response |
| x1::XLTTradeSpi::on_trade_report |
| x1::XLTTradeSpi::on_order_error_response |
| x1::XLTTradeSpi::on_order_end |
原始报文（推送） | x1::XLTTradeSpi::on_raw_report |
订单簿消息（推送） | x1::XLTTradeSpi::on_order_book_insert |
| x1::XLTTradeSpi::on_order_book_update |
| x1::XLTTradeSpi::on_order_book_error |
| x1::XLTTradeSpi::on_asset |
| x1::XLTTradeSpi::on_position |
资金划拨（推送） | x1::XLTTradeSpi::on_counter_fund_transfer_request |
| x1::XLTTradeSpi::on_counter_fund_transfer_result |
| x1::XLTTradeSpi::on_cluster_fund_transfer_request |
| x1::XLTTradeSpi::on_cluster_fund_transfer_result |

另请参阅：

- 使用指南
- 线程模型
- 关键概念
- 消息流