UNPKG

@stoqey/ibkr

Version:

NodeJS Interactive Brokers wrapper & utilities using @stoqey/ib

49 lines (48 loc) 1.55 kB
import { IBApiNext, OpenOrder, Order, Contract, OrderCancel } from '@stoqey/ib'; import { Trade as SSTrade } from '../interfaces'; import { ContractInstrument } from '../marketdata/MarketDataManager'; import { Mutex } from 'async-mutex'; export declare class Orders { ib: IBApiNext; private GetOrders; private openOrders; private cancelledOrders; private completedTrades; private openOrderQueue; mutex: Mutex; private static _instance; static get Instance(): Orders; private constructor(); get orders(): OpenOrder[]; get trades(): SSTrade[]; /** * getOrders */ getOrders: () => Promise<OpenOrder[]>; logOpenOrder: (title: string, openOrder: OpenOrder) => void; processOrderQueue: () => Promise<void>; /** * getOpenOrders */ asyncOpenOrders: () => Promise<OpenOrder[]>; syncOpenOrders: () => void; /** * init */ init: () => Promise<void>; parseOrder: (orderPlaced: Order, contractDetails: ContractInstrument) => { order: Order; contract: Contract; }; /** * placeOrder */ placeOrder: (contractDetails: ContractInstrument, orderToPlace: Order) => Promise<boolean>; /** * modifyOrder */ modifyOrder: (id: number, contractDetails: ContractInstrument, orderToPlace: Order) => Promise<boolean>; cancelOrder: (orderId: number, orderCancel?: string | OrderCancel) => Promise<boolean>; cancelAllOrders: (orderCancel: OrderCancel) => Promise<boolean>; } export default Orders;