产品文档

XLight交易SDK的完整使用指南、配置说明和最佳实践

快速开始

XLight交易SDK提供C++原生接口和Python绑定,支持Linux平台。以下是快速上手的步骤:

环境要求

  • 操作系统:Linux (CentOS 7+, Ubuntu 18.04+)
  • CPU:x86_64架构
  • 内存:建议8GB以上
  • 网络:专用交易网络接入

C++开发

  • 支持C++11及以上标准
  • 需要CMake 3.10+
  • 提供完整的头文件和库文件

Python开发

  • 支持Python 3.6+
  • 通过SWIG生成绑定
  • 无需额外编译

安装指南

1. 下载SDK

从下载页面获取最新版本的SDK压缩包:

下载SDK v1.5.1.2

2. 解压文件

unzip xlt_api_sdk_v1.5.1.2.zip
cd xlt_api_sdk_v1.5.1.2
ls -la

3. 目录结构

  • cpp/ - C++ API头文件、库文件和示例
  • python/ - Python包和示例
  • doc/ - API文档 (Doxygen生成)
  • doc.html - 文档主入口

配置说明

API配置参数

XLight SDK使用结构化的配置对象,主要配置参数包括:

配置页 配置接口 必填 配置样例 说明
设置交易日 set_trading_day() config.set_trading_day(20240320); 格式YYYYMMDD,用户需确保该交易日,生产环节为当前交易日,测试环境为某测试日期
设置本地网卡IP set_local_addr() config.set_local_addr("192.168.5.155", "192.168.2.155", "192.168.3.155"); 需按定顺序填AGW,提单,行情接收的3个网卡IP,基础为solarflare网卡
添加网关地址 add_agw_addr() config.add_agw_addr("222.71.197.227", 60601); 请按实际给出AGW地址即加地址,可选加多个AGW地址,每次指定当前可用的AGW地址
设置交易路径 set_path() config.set_path("./"); 修改API生成的文档路径,如日志文件等,默认为当前路径
设置日志级别 set_log_level() - config.set_log_level(ApiLogLevel::LOG_INFO); 设置日志级别,默认为info级别
设置请求超时时间 set_request_timeout() - config.set_request_timeout(10); 单位秒,查询时的超时时长on_request_timeout
设置订单超时时间 set_order_timeout() - config.set_order_timeout(10); 单位秒,委托时的超时时长on_order_timeout
设置内存池大小 set_memory_pool_size() - config.set_memory_pool_size(256, 8, 32); 单位MB、包括交易、level1、level2行情内存,预留板块1,当前版本暂不调整
自定义订单序号设定 set_order_seq_self_define(true) - config.set_order_seq_self_define(true); 默认设为false,使用API内部序号来生成request_sequence字段值,用户须确保每天唯一的request_sequence字段值一
行情单线程模式 receive_quote_in_single_thread() - 配置样例 level1、上海level2快照,深圳level2快照在线程运行
行情快照多线程模式 receive_quote_in_snap_tick_thread() - 配置样例 level1、上海level2快照、上海level2逐笔、深圳level2快照、深圳level2逐笔分成独立线程运行
行情均匀分配模式 receive_quote_in_channel_per_thread() - 配置样例 level1及上海、深圳level2每个接收各独立线程运行,数据平均

C++示例

编译运行步骤

  1. 1.
    进入示例目录: cd cpp/demo
  2. 2.
    创建构建目录: mkdir build
  3. 3.
    配置CMake: cd build && cmake ..
  4. 4.
    编译项目: make && make install
  5. 5.
    运行程序: cd ../targets/bin && ./xlt_api_demo

Python示例

编译运行步骤

  1. 1.
    安装python库: cd python && pip install py_xlt_api-1.5.1.2-py3-none-any.whl
  2. 2.
    进入示例目录: cd demo/py_xlt_api_demo/
  3. 3.
    运行示例: python runme.py

常见问题

连接失败

可能原因:

  • AGW服务器地址或端口错误
  • 本地IP地址配置不正确
  • 网络防火墙阻止连接

Python导入错误

解决方案:

  • 验证Python版本兼容性(需要Python 3.6+)

性能问题

优化建议:

  • 增加mem_pool_size减少内存分配
  • 考虑启用EFVI以获得更低延迟
  • 优化回调函数处理逻辑,避免阻塞