订单详情
该接口用于订单详情查询。
SDK Links
Python |
Rust |
Go |
Node.js |
Java |
C++ |
Request
| HTTP Method | GET |
| HTTP URL | /v1/trade/order |
Parameters
Content-Type: application/json; charset=utf-8
| Name | Type | Required | Description |
|---|---|---|---|
| order_id | string | YES | 订单 ID,用于指定订单 ID 查询,例如:701276261045858304 |
| is_attached | bool | NO | order_id 是否为附加单 |
Request Example
from longbridge.openapi import TradeContext, Config, OAuthBuilder
oauth = OAuthBuilder("your-client-id").build(lambda url: print("Visit:", url))
config = Config.from_oauth(oauth)
ctx = TradeContext(config)
resp = ctx.order_detail(
order_id = "701276261045858304",
is_attached = False,
)
print(resp)import asyncio
from longbridge.openapi import AsyncTradeContext, Config, OAuthBuilder
async def main() -> None:
oauth = await OAuthBuilder("your-client-id").build_async(lambda url: print("Visit:", url))
config = Config.from_oauth(oauth)
ctx = AsyncTradeContext.create(config)
resp = await ctx.order_detail(
order_id = "701276261045858304",
is_attached = False,
)
print(resp)
if __name__ == "__main__":
asyncio.run(main())const { Config, TradeContext, OAuth } = require('longbridge')
async function main() {
const oauth = await OAuth.build("your-client-id", (_, url) => { console.log("Open this URL to authorize: " + url) })
const config = Config.fromOAuth(oauth)
const ctx = TradeContext.new(config)
const resp = await ctx.orderDetail("701276261045858304")
console.log(resp)
}
main().catch(console.error)import com.longbridge.*;
import com.longbridge.trade.*;
class Main {
public static void main(String[] args) throws Exception {
try (OAuth oauth = new OAuthBuilder("your-client-id").build(url -> System.out.println("Open to authorize: " + url)).get();
Config config = Config.fromOAuth(oauth);
TradeContext ctx = TradeContext.create(config)) {
OrderDetail resp = ctx.getOrderDetail("701276261045858304").get();
System.out.println(resp);
}
}
}use std::sync::Arc;
use longbridge::{oauth::OAuthBuilder, trade::TradeContext, Config};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let oauth = OAuthBuilder::new("your-client-id").build(|url| println!("Open this URL to authorize: {url}")).await?;
let config = Arc::new(Config::from_oauth(oauth));
let (ctx, _) = TradeContext::new(config);
let resp = ctx.order_detail("701276261045858304").await?;
println!("{:?}", resp);
Ok(())
}#include <iostream>
#include <longbridge.hpp>
#ifdef WIN32
#include <windows.h>
#endif
using namespace longbridge;
using namespace longbridge::trade;
static void
run(const OAuth& oauth)
{
Config config = Config::from_oauth(oauth);
TradeContext ctx = TradeContext::create(config);
ctx.order_detail("701276261045858304", [](auto res) {
if (!res) { std::cout << "failed" << std::endl; return; }
std::cout << res->order_id << std::endl;
});
}
int main(int argc, char const* argv[]) {
#ifdef WIN32
SetConsoleOutputCP(CP_UTF8);
#endif
const std::string client_id = "your-client-id";
OAuthBuilder(client_id).build(
[](const std::string& url) {
std::cout << "Open this URL to authorize: " << url << std::endl;
},
[](auto res) {
if (!res) {
std::cout << "authorization failed: " << *res.status().message() << std::endl;
return;
}
run(*res);
});
std::cin.get();
return 0;
}package main
import (
"context"
"fmt"
"log"
"github.com/longbridge/openapi-go/config"
"github.com/longbridge/openapi-go/oauth"
"github.com/longbridge/openapi-go/trade"
)
func main() {
o := oauth.New("your-client-id").
OnOpenURL(func(url string) { fmt.Println("Open this URL to authorize:", url) })
if err := o.Build(context.Background()); err != nil {
log.Fatal(err)
}
conf, err := config.New(config.WithOAuthClient(o))
if err != nil {
log.Fatal(err)
}
tctx, err := trade.NewFromCfg(conf)
if err != nil {
log.Fatal(err)
}
defer tctx.Close()
detail, err := tctx.OrderDetail(context.Background(), "701276261045858304")
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", detail)
}Response
Response Headers
- Content-Type: application/json
Response Example
{
"code": 0,
"message": "success",
"data": {
"order_id": "828940451093708800",
"status": "FilledStatus",
"stock_name": "苹果",
"quantity": "10",
"executed_quantity": "10",
"price": "200.000",
"executed_price": "164.660",
"submitted_at": "1680863604",
"side": "Buy",
"symbol": "AAPL.US",
"order_type": "LO",
"last_done": "164.660",
"trigger_price": "0.0000",
"msg": "",
"tag": "Normal",
"time_in_force": "Day",
"expire_date": "2023-04-10",
"updated_at": "1681113000",
"trigger_at": "0",
"trailing_amount": "",
"trailing_percent": "",
"limit_offset": "",
"limit_depth_level": 0,
"monitor_price": "",
"trigger_count": 1,
"trigger_status": "NOT_USED",
"outside_rth": "ANY_TIME",
"currency": "USD",
"remark": "1680863603.927165",
"delayed_until": "0",
"free_status": "None",
"free_amount": "",
"free_currency": "",
"deductions_status": "NONE",
"deductions_amount": "",
"deductions_currency": "",
"platform_deducted_status": "NONE",
"platform_deducted_amount": "",
"platform_deducted_currency": "",
"history": [
{
"price": "164.6600",
"quantity": "10",
"status": "FilledStatus",
"msg": "Execution of 10",
"time": "1681113000"
},
{
"price": "200.0000",
"quantity": "10",
"status": "NewStatus",
"msg": "",
"time": "1681113000"
}
],
"charge_detail": {
"items": [
{
"code": "BROKER_FEES",
"name": "收费明细",
"fees": []
},
{
"code": "THIRD_FEES",
"name": "第三方收费明细",
"fees": []
}
],
"total_amount": "0",
"currency": "USD"
},
"attached_orders": [
{
"order_id": "706388312699592705",
"attached_type_display": 2,
"trigger_price": "10.500",
"quantity": "200",
"executed_qty": "0",
"status": "NewStatus",
"updated_at": "1651644898",
"withdrawn": false,
"gtd": "",
"time_in_force": "Day",
"counter_id": "",
"trigger_status": 0,
"executed_amount": "0",
"tag": 0,
"submitted_at": "1651644897",
"executed_price": "0.000",
"force_only_rth": "RTH_ONLY",
"reviewed": false,
"activate_order_type": "MIT",
"activate_rth": "RTH_ONLY",
"submit_price": ""
}
],
"multi_leg": {
"strategy": "2",
"strategy_name": "垂直策略",
"multileg_id": "Spread_QQQ20260731C764/767",
"code": "QQQ 260731 764/767 垂直策略",
"legs": [
{
"symbol": "QQQ260731C764000.US",
"side": "Buy",
"position": "LONG",
"ratio_quantity": "1",
"strike_price": "764",
"expire_date": "20260731",
"contract_direction": "C"
},
{
"symbol": "QQQ260731C767000.US",
"side": "Sell",
"position": "SHORT",
"ratio_quantity": "1",
"strike_price": "767",
"expire_date": "20260731",
"contract_direction": "C"
}
]
}
}
}
Response Status
| Status | Description | Schema |
|---|---|---|
| 200 | 订单详情查询成功 | order_detail_rsp |
| 400 | 查询失败,请求参数错误。 | None |
Schemas
order_detail_rsp
订单信息
| Name | Type | Required | Description |
|---|---|---|---|
| order_id | string | true | 订单 ID |
| status | string | true | 订单状态 |
| stock_name | string | true | 股票名称 |
| quantity | string | true | 下单数量 |
| executed_quantity | string | true | 成交数量。 当订单未成交时为 0 |
| price | string | true | 下单价格。 当市价条件单未触发时为空字符串 |
| executed_price | string | true | 成交价。 当订单未成交时为 0 |
| submitted_at | string | true | 下单时间 |
| side | string | true | 买卖方向 可选值: Buy - 买入Sell - 卖出 |
| symbol | string | true | 股票代码,使用 ticker.region 格式,例如:AAPL.US |
| order_type | string | true | 订单类型 |
| last_done | string | true | 最近成交价格。 当订单未成交时为空字符串 |
| trigger_price | string | true | LIT / MIT 订单触发价格。当订单不是 LIT / MIT 订单为空字符串 |
| msg | string | true | 拒绝信息或备注,默认为空字符串。 |
| tag | string | true | 订单标记 可选值: Normal - 普通订单Gtc - 长期单Grey - 暗盘单 |
| time_in_force | string | true | 订单有效期类型 可选值: Day - 当日有效GTC - 撤单前有效GTD - 到期前有效 |
| expire_date | string | true | 长期单过期时间,格式为 YYYY-MM-DD, 例如:`2022-12-05。不是长期单时,默认为空字符串。 |
| updated_at | string | true | 最近更新时间,格式为时间戳 (秒),默认为 0。 |
| trigger_at | string | true | 条件单触发时间,格式为时间戳 (秒),默认为 0。 |
| trailing_amount | string | true | TSLPAMT 订单跟踪金额。当订单不是 TSLPAMT 订单时为空字符串。 |
| trailing_percent | string | true | TSLPPCT 订单跟踪涨跌幅。当订单不是 TSLPPCT 订单时为空字符串。 |
| limit_offset | string | true | TSLPAMT / TSLPPCT 订单指定价差。当订单不是 TSLPAMT / TSLPPCT 订单时为空字符串。 |
| trigger_status | string | true | 条件单触发状态 当订单不是条件单或条件单未触发时,触发状态为 NOT_USED 可选值: NOT_USED - 未激活DEACTIVE - 已失效ACTIVE - 已激活RELEASED - 已触发 |
| currency | string | true | 结算货币 |
| outside_rth | string | true | 是否允许盘前盘后 当订单不是美股时,默认为 UnknownOutsideRth 可选值: RTH_ONLY - 不允许盘前盘后ANY_TIME - 允许盘前盘后OVERNIGHT - 夜盘” |
| remark | string | true | 备注 |
| delayed_until | string | true | 时间条件单的提交时间,格式为时间戳 (秒) 非时间条件单时为 0 |
| free_status | string | true | 免佣状态,默认为 None 可选值: None - 无Calculated - 免佣额待计算Pending - 待免佣Ready - 已免佣 |
| free_amount | string | true | 免佣金额,默认为空字符串 |
| free_currency | string | true | 免佣货币,默认为空字符串 |
| deductions_status | string | true | 抵扣状态/返现状态,默认为 NONE 可选值: NONE - 待结算 NO_DATA - 已结算无数据PENDING - 已结算待发放DONE - 已结算已发放 |
| deductions_amount | string | true | 抵扣金额,默认为空字符串 |
| deductions_currency | string | true | 抵扣货币,默认为空字符串 |
| platform_deducted_status | string | true | 平台费抵扣状态/返现状态,默认为 NONE 可选值: NONE - 待结算 NO_DATA - 已结算无数据PENDING - 已结算待发放DONE - 已结算已发放 |
| platform_deducted_amount | string | true | 平台费抵扣金额,默认为空字符串 |
| platform_deducted_currency | string | true | 平台费抵扣货币,默认为空字符串 |
| history | object[] | true | 订单历史明细 |
| ∟ price | string | true | 成交展示成交价格,过期、撤单、拒绝等状态展示提交价格 |
| ∟ quantity | string | true | 成交展示成交数量,过期、撤单、拒绝等状态展示剩余数量 |
| ∟ status | string | true | 订单状态 |
| ∟ msg | string | true | 成交或错误信息 |
| ∟ time | string | true | 发生时间 |
| charge_detail | object | true | 订单费用 |
| ∟ total_amount | string | true | 全部费用 |
| ∟ currency | string | true | 结算货币 |
| ∟ items | object[] | true | 订单费用明细 |
| ∟∟ code | string | true | 收费类别代码 可选值: UNKNOWNBROKER_FEESTHIRD_FEES |
| ∟∟ name | string | true | 收费类别名称 |
| ∟∟ fees | object[] | true | 收费明细 |
| ∟∟∟ code | string | true | 收费代码 |
| ∟∟∟ name | string | true | 收费名称 |
| ∟∟∟ amount | string | true | 单项收费金额 |
| ∟∟∟ currency | string | true | 收费货币 |
| ∟ limit_depth_level | int32 | true | 指定买卖档位 |
| ∟ monitor_price | string | true | 监控价格 |
| ∟ trigger_count | int32 | true | 触发次数 |
| ∟ attached_orders | object[] | false | 附加订单详情列表 |
| ∟∟ order_id | string | true | 附加订单 ID |
| ∟∟ attached_type_display | int32 | true | 附加订单类型。可选值: 1 - 止盈 2 - 止损 |
| ∟∟ trigger_price | string | true | 触发价格 |
| ∟∟ quantity | string | true | 下单数量 |
| ∟∟ executed_qty | string | true | 成交数量 |
| ∟∟ status | string | true | 订单状态 |
| ∟∟ updated_at | string | true | 最近更新时间,格式为时间戳 (秒) |
| ∟∟ withdrawn | boolean | true | 是否已撤销 |
| ∟∟ gtd | string | true | GTD 到期日期,格式为 YYYY-MM-DD |
| ∟∟ time_in_force | string | true | 订单有效期类型 可选值: Day - 当日有效GTC - 撤单前有效GTD - 到期前有效 |
| ∟∟ counter_id | string | true | 对应单 ID |
| ∟∟ trigger_status | int32 | true | 附加单激活后的条件单触发状态。0 - 未激活 1 - 监控中 2 - 已撤单 4 - 已触发 |
| ∟∟ executed_amount | string | true | 成交金额 |
| ∟∟ tag | int32 | true | 订单标记 |
| ∟∟ submitted_at | string | true | 下单时间,格式为时间戳 (秒) |
| ∟∟ executed_price | string | true | 成交价格 |
| ∟∟ force_only_rth | string | true | 是否仅正常交易时段执行。 |
| ∟∟ reviewed | boolean | true | 是否已审核 |
| ∟∟ activate_order_type | string | true | 触发后提交的订单类型,例如 LIT(限价单)或 MIT(市价单) |
| ∟∟ activate_rth | string | true | 触发后提交订单是否允许盘前盘后。 |
| ∟∟ submit_price | string | true | 委托价格 |
| multi_leg | object | false | 多腿策略信息,仅多腿期权组合订单返回,非组合订单不返回。 |
| ∟ strategy | string | false | 多腿策略 可选值: 0 - CoveredCall(股票担保)1 - CoveredPut(股票担保)2 - VerticalCallSpread(垂直策略)3 - VerticalPutSpread(垂直策略)4 - Collar(领式策略)5 - Straddle(跨式策略)6 - Strangle(宽跨式策略)7 - CalendarCallSpread(日历策略)8 - CalendarPutSpread(日历策略) |
| ∟ strategy_name | string | false | 策略名称 |
| ∟ multileg_id | string | false | 多腿组合 ID |
| ∟ code | string | false | 多腿组合代码 |
| ∟ legs | object[] | false | 组合订单的各腿 |
| ∟∟ symbol | string | false | 期权 symbol,使用 ticker.region 格式,例如:QQQ260731C764000.US |
| ∟∟ side | string | false | 买卖方向 可选值: BuySell |
| ∟∟ position | string | false | 持仓方向 可选值: LONGSHORT |
| ∟∟ ratio_quantity | string | false | 该腿比例数量 |
| ∟∟ strike_price | string | false | 行权价 |
| ∟∟ expire_date | string | false | 期权到期日,格式:YYYYMMDD |
| ∟∟ contract_direction | string | false | 合约类型 可选值: C - 看涨(Call)P - 看跌(Put) |