import { DataFrame } from 'danfojs-node'; import { Order } from './order'; import { Trade } from './trade'; import { Position } from './position'; import { BrokerOptions, OrderOptions } from './interfaces'; export declare class Broker { private readonly data; private _i; private _cash; private _commission; private _leverage; private _tradeOnClose; private _hedging; private _exclusiveOrders; equities: number[]; orders: Order[]; trades: Trade[]; closedTrades: Trade[]; position?: Position; constructor(data: DataFrame, options: BrokerOptions); get index(): (string | number)[]; get lastPrice(): any; get equity(): number; get marginAvailable(): number; newOrder(options: OrderOptions): Order; next(): void; last(): void; private processOrders; /** * Long/short `price`, adjusted for commissions or user-defined trade execution price. * In long positions, the commission-adjusted price for is a fraction higher, and vice versa. */ private adjustPrice; private openTrade; private closeTrade; private reduceTrade; }