@bcswaper/apis
Version:
bcswaper apis
28 lines (27 loc) • 1.27 kB
TypeScript
import { Candle, CandleResolution, OrderSide, Order, Orderbook, ClientParams } from "../swapContext";
export interface Engine {
getPrice(): number;
getOrderbook(): Orderbook;
getCandles(resolution: CandleResolution): Candle[];
getPosition(): number;
getBalance(): number;
start(): Promise<void>;
subTick(callback: (price: number) => void): void;
subCandle(resolution: CandleResolution, callback: (candle: Candle, resolution: CandleResolution) => void): void;
subOrderbook(): void;
subAccount(callback: () => void): void;
subPosition(callback: () => void): void;
subOrder(callback: (order: Order) => void): void;
subDeal(callback: (order: Order) => void): void;
placeMarketOrder(side: OrderSide, price: number, size: number): void;
buy(price: number, size: number): void;
sell(price: number, size: number): void;
placeLimitOrder(side: OrderSide, price: number, size: number, goodTillTime: number): void;
buyLimit(price: number, size: number): void;
sellLimit(price: number, size: number): void;
cancelOrder(id: number, goodTillTime: number): void;
stop(): void;
}
export declare const EngineFactory: () => {
get(exchange: string, clientParams: ClientParams): Promise<Engine>;
};