mirror of
https://github.com/discountry/ritmex-bot.git
synced 2026-09-11 17:28:08 +00:00
feat: 重构订单路由逻辑,添加订单意图类型以支持多交易所订单处理
This commit is contained in:
@@ -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";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user