猎户座量化交易API接口文档
文档概述
猎户座是基于利佛莫尔理论为基础的AI金融智能决策系统,能够快速帮助用户安全积累本金。本系统提供开放的量化交易接口,供授权用户进行自动化交易操作。
接口详情
执行用户量化交易买入交割指令 /api/executeuserbuytrade
接口描述
执行指定用户的买单交割操作,用于将待处理的买单状态更新为已买入,并记录真实买入价格。此接口允许用户通过API手动执行买入操作,同步量化交易数据源状态。
请求参数
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| appid | String | 是 | 应用ID |
| appsecret | String | 是 | 应用密钥 |
| id | Integer | 是 | 买单ID |
| realbuyprice | Float | 是 | 真实买入价格 |
业务逻辑
- 验证API访问权限,检查IP白名单、AppID和AppSecret
- 根据AppID获取用户配置信息
- 查询指定ID的买单记录,确保属于当前用户且为待处理状态(ResultColumnID为4或5)
- 将订单状态更新为已买入(ResultColumnID = 6),并记录真实买入价格
- 更新股票池持仓状态:将持仓中对应标的的持仓状态设为持有(Own = true)
- 更新信号池对应的信号为已进成功(DillStatus = 1)
响应数据结构
json
{
"code": 1,
"message": "买单交割执行成功",
"data": {
"trade_executed": true,
"financial_object_id": 10211,
"real_buy_price": 30.57,
"original_buy_price": 30.1345
}
}请求示例
POST http://www.deephunt.com.cn/api/executeuserbuytrade Content-Type: application/x-www-form-urlencoded
appid=test_app_id&appsecret=test_app_secret&id=123&realbuyprice=30.50响应示例
json
{
"code": 1,
"message": "买单交割执行成功",
"data": {
"trade_executed": true,
"financial_object_id": 10211,
"real_buy_price": 30.50,
"original_buy_price": 30.1345
}
}常见问题FAQ
Q: 什么情况下会返回"该买单不是待处理状态,无法执行交割"错误? A: 当买单的ResultColumnID不为4或5时会出现此错误,表示该买单已处理或未达到可执行状态。
Q: 如何确认买单交割是否成功? A: 检查响应中的code字段为1,message为"买单交割执行成功",同时data中的trade_executed为true。
Q: realbuyprice参数有什么限制? A: realbuyprice必须为有效的浮点数,不能为负数或非数字字符,否则会返回参数格式错误。
Q: 执行交割后,原订单的买入价格会被替换吗? A: 不会替换,原买入价格会保存在original_buy_price字段中,真实买入价格会更新到BuyPrice字段。
Q: 只有特定状态的买单才能执行交割吗? A: 是的,只有ResultColumnID为4(待处理)或5(已提交量化握手处理等待结果)状态的买单才能执行交割。
错误码说明
| 错误码 | 描述 |
|---|---|
| 1 | 成功 |
| -1 | 失败或错误 |
常见错误信息:
- "缺少必要的认证参数: appid 或 appsecret" - 未提供必需的身份验证参数
- "无效的AppID" - 提供的应用ID不存在
- "AppSecret验证失败" - 应用密钥错误
- "该账户未启用量化交易功能" - 账户未激活量化交易权限
- "IP地址不在白名单中" - 客户端IP不在允许的白名单中
- "查询数据失败" - 数据库查询出现异常
- "参数必须整形: id" - 传入的参数类型不正确
- "用户权限查询失败" - 无法查询到用户权限信息
- "用户权限已到期" - 用户的使用权限已过期
- "用户权限不足,无法进行量化交易" - 用户没有量化交易的权限
安全注意事项
- 请妥善保管您的AppID和AppSecret,不要泄露给他人
- 确保调用接口的IP地址在白名单中
- 请对敏感数据进行适当的加密传输
- 定期更换AppSecret以增强安全性
- 限制接口调用频率,避免被系统限制访问
技术支持
如在使用过程中遇到问题,请联系技术支持团队。
