feat(exchanges): add Ondo Perps exchange adapter

This commit is contained in:
discountry
2026-07-11 15:10:40 +08:00
parent 6b5f2542a4
commit 1f2c2150e0
20 changed files with 2181 additions and 4 deletions
+10 -1
View File
@@ -17,6 +17,7 @@ import * as paradexOrders from "./paradex/order";
import * as nadoOrders from "./nado/order";
import * as standxOrders from "./standx/order";
import * as binanceOrders from "./binance/order";
import * as ondoperpsOrders from "./ondoperps/order";
type ExchangeKey = SupportedExchangeId;
@@ -85,13 +86,21 @@ const handlerMap: Record<ExchangeKey, ExchangeOrderHandlers> = {
trailingStop: binanceOrders.createTrailingStopOrder,
close: binanceOrders.createClosePositionOrder,
},
ondoperps: {
limit: ondoperpsOrders.createLimitOrder,
market: ondoperpsOrders.createMarketOrder,
stop: ondoperpsOrders.createStopOrder,
trailingStop: ondoperpsOrders.createTrailingStopOrder,
close: ondoperpsOrders.createClosePositionOrder,
},
};
const knownExchanges: ExchangeKey[] = [...SUPPORTED_EXCHANGE_IDS];
function normalizeExchangeId(value: string | undefined | null): string | undefined {
if (!value) return undefined;
return value.trim().toLowerCase();
const normalized = value.trim().toLowerCase();
return normalized === "ondoperp" ? "ondoperps" : normalized;
}
function resolveExchangeKey(adapter: ExchangeAdapter): ExchangeKey {