feat: 重构订单路由逻辑,添加订单意图类型以支持多交易所订单处理

This commit is contained in:
discountry
2025-10-23 14:04:44 +08:00
parent fabc8af679
commit ea5da20311
10 changed files with 745 additions and 62 deletions
+42
View File
@@ -0,0 +1,42 @@
import type { ExchangeAdapter } from "./adapter";
import type { OrderSide, TimeInForce } from "./types";
export interface BaseOrderIntent {
adapter: ExchangeAdapter;
symbol: string;
side: OrderSide;
quantity: number;
reduceOnly?: boolean;
closePosition?: boolean;
timeInForce?: TimeInForce | "GTX";
}
export interface LimitOrderIntent extends BaseOrderIntent {
price: number;
}
export interface MarketOrderIntent extends BaseOrderIntent {
expectedPrice?: number | null;
}
export interface StopOrderIntent extends BaseOrderIntent {
stopPrice: number;
triggerType?: "UNSPECIFIED" | "TAKE_PROFIT" | "STOP_LOSS";
}
export interface TrailingStopOrderIntent extends BaseOrderIntent {
activationPrice: number;
callbackRate: number;
}
export interface ClosePositionIntent extends BaseOrderIntent {
expectedPrice?: number | null;
}
export type ExchangeOrderType = "limit" | "market" | "stop" | "trailingStop" | "close";
export function toStringBoolean(value: boolean | undefined): "true" | "false" | undefined {
if (value === undefined) return undefined;
return value ? "true" : "false";
}