- crates/ctp_futures 期货CTP接口的封装
- crates/tora_stock 证券交易接口的封装
- crates/rust_share_util 公共的实用函数集合
- crates/examples 一些示例
- crates/spider 抓取一些财经网站的数据
- crates/gateway 交易网关, 完成订单执行,持仓调整
- app/log_pump 简单的消息推送
- 编译过程中会用到clang(15.0.7), 需要手动下载安装对应的依赖, 下载
- 仅在ubuntu 20.04 和 windows11 上编译测试过
cargo build
cargo run --example ctp-query
- 运行网关
sh scripts/run_gateway.sh
- 网关处理账号登陆,重连,查询,下单的细节
- 网关默认提供一个http api供远程调用
- 网关提供一个持仓对齐功能,比如发送请求设定合约 SHFE:ru2409为3手多头持仓,那么post发送以下请求到网关即可:
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"broker_id": "9999",
"account": "143650",
"target":{
"exchange":"SHFE",
"symbol": "ru2409",
"position": 3,
"shift": 1,
"close_priority": "YesterdayFirst"
},
"credential":""}' \
http://localhost:10111/api/set_contract_target
- 网关会自动订阅合约行情,根据最新报价偏移shift * price_tick作为发单价
- close_priority 用于指定优先平仓顺序,因为某些情况下平昨和平今的手续费不一样
- 微信号 string_io