nodejs-order-book
Version:
Node.js Lmit Order Book for high-frequency trading (HFT).
30 lines (29 loc) • 1.15 kB
TypeScript
import createRBTree from "functional-red-black-tree";
import { type LimitOrder } from "./order";
import { OrderQueue } from "./orderqueue";
import { type OrderUpdatePrice, type OrderUpdateSize, Side } from "./types";
export declare class OrderSide {
private _priceTree;
private _prices;
private _volume;
private _total;
private _numOrders;
private _depthSide;
private readonly _side;
constructor(side: Side);
len: () => number;
depth: () => number;
volume: () => number;
total: () => number;
priceTree: () => createRBTree.Tree<number, OrderQueue>;
append: (order: LimitOrder) => LimitOrder;
remove: (order: LimitOrder) => LimitOrder;
updateOrderPrice: (oldOrder: LimitOrder, orderUpdate: OrderUpdatePrice) => LimitOrder;
updateOrderSize: (oldOrder: LimitOrder, orderUpdate: OrderUpdateSize) => LimitOrder;
maxPriceQueue: () => OrderQueue | undefined;
minPriceQueue: () => OrderQueue | undefined;
lowerThan: (price: number) => OrderQueue | undefined;
greaterThan: (price: number) => OrderQueue | undefined;
orders: () => LimitOrder[];
toString: () => string;
}