qpace
Version:
📊 The Quant SDK for Python and Javascript. Written in Rust.
324 lines (275 loc) • 11.5 kB
TypeScript
/* auto-generated by NAPI-RS */
/* eslint-disable */
export declare class NodeBacktest {
constructor(ctx: NodeCtx, initialCapital?: number | undefined | null, processOrdersOnClose?: boolean | undefined | null)
get initialCapital(): number
get processOrdersOnClose(): boolean
get ctx(): NodeCtx
get equity(): number
get equityList(): Array<number>
get netEquity(): number
get netEquityList(): Array<number>
get pnlList(): Array<number>
get openProfit(): number
get netProfit(): number
get netProfitPct(): number
get grossProfit(): number
get grossProfitPct(): number
get grossLoss(): number
get grossLossPct(): number
get winRate(): number
get profitFactor(): number
get avgTrade(): number
get avgWinningTrade(): number
get avgLosingTrade(): number
get avgWinLossRatio(): number
get returnsList(): Array<number>
sharpeRatio(rfr: number): number
sortinoRatio(rfr: number): number
winningTradesCount(): bigint
get losingTradesCount(): bigint
get positionSize(): number
get openTrades(): Array<NodeTrade>
get closedTrades(): Array<NodeTrade>
get trades(): Array<NodeTrade>
get openLongsCount(): bigint
get openShortsCount(): bigint
get closedLongsCount(): bigint
get closedShortsCount(): bigint
get firstEntryBarIndex(): bigint | null
get instrumentSize(): number
onBarOpen(): void
onBarClose(): void
signal(signal: NodeSignal): void
skip(skip: NodeCtxSkip): void
length(): number
next(): number | null
toPine(): string
display(): void
}
export declare class NodeCtx {
constructor(ohlcv?: NodeOhlcv | undefined | null, sym?: NodeSym | undefined | null)
get barIndex(): number
get bar(): NodeOhlcvBar
get isInitialized(): boolean
get sym(): NodeSym
get ohlcv(): NodeOhlcv
copy(): NodeCtx
reset(): void
next(): number | null
get length(): number
skip(skip: NodeCtxSkip): void
ref(): NodeCtx
}
export declare class NodeCtxSkip {
static end(): NodeCtxSkip
static bars(bars: number): NodeCtxSkip
static barIndex(barIndex: number): NodeCtxSkip
static openTimeEq(openTime: Date): NodeCtxSkip
static openTimeGeq(openTime: Date): NodeCtxSkip
}
export declare class NodeOhlcv {
constructor()
static fromBars(bars: Array<NodeOhlcvBar>): NodeOhlcv
get timeframe(): NodeTimeframe
set timeframe(timeframe: NodeTimeframe)
get openTime(): Array<Date | undefined | null>
get closeTime(): Array<Date | undefined | null>
get open(): Array<number>
get high(): Array<number>
get low(): Array<number>
get close(): Array<number>
get volume(): Array<number>
get bars(): Array<NodeOhlcvBar>
at(index: number): NodeOhlcvBar | null
get length(): number
slice(start: number, end: number): NodeOhlcv
head(count: number): NodeOhlcv
tail(count: number): NodeOhlcv
copy(): NodeOhlcv
extend(other: NodeOhlcv): void
resample(timeframe: NodeTimeframe, alignUtc: boolean): NodeOhlcv
sort(ascending: boolean): void
reverse(): void
clear(): void
pop(): NodeOhlcvBar | null
shift(): NodeOhlcvBar | null
push(bar: NodeOhlcvBar): void
pushMany(bars: Array<NodeOhlcvBar>): void
toString(): string
sanityCheck(): Array<string>
ref(): NodeOhlcv
static readCsv(path: string, timeframe?: NodeTimeframe | undefined | null): NodeOhlcv
static readParquet(path: string, timeframe?: NodeTimeframe | undefined | null): NodeOhlcv
writeCsv(path: string): void
writeParquet(path: string): void
}
export declare class NodeOhlcvBar {
constructor(openTime?: Date | undefined | null, closeTime?: Date | undefined | null, open?: number | undefined | null, high?: number | undefined | null, low?: number | undefined | null, close?: number | undefined | null, volume?: number | undefined | null)
get openTime(): Date | null
set openTime(openTime?: Date | undefined | null)
get closeTime(): Date | null
set closeTime(closeTime?: Date | undefined | null)
get open(): number
set open(open: number)
get high(): number
set high(high: number)
get low(): number
set low(low: number)
get close(): number
set close(close: number)
get volume(): number
set volume(volume: number)
merge(other: NodeOhlcvBar): NodeOhlcvBar
toString(): string
toJSON(): object
static fromJSON(json: object): NodeOhlcvBar
}
export declare class NodeSignal {
static Hold(): NodeSignal
static Size(size: number): NodeSignal
static EquityPct(equityPct: number): NodeSignal
static CloseAll(): NodeSignal
static Long(): NodeSignal
static Short(): NodeSignal
get id(): string | null
set id(id?: string | undefined | null)
get comment(): string | null
set comment(comment?: string | undefined | null)
}
export declare class NodeSym {
constructor()
toString(): string
get id(): string | null
set id(id?: string | undefined | null)
get tickerId(): string | null
set tickerId(tickerId?: string | undefined | null)
get kind(): NodeSymKind
set kind(kind: NodeSymKind)
get minTick(): number
set minTick(v: number)
get minQty(): number
set minQty(v: number)
get prefix(): string | null
set prefix(v?: string | undefined | null)
get currency(): string | null
set currency(v?: string | undefined | null)
get baseCurrency(): string | null
set baseCurrency(v?: string | undefined | null)
get ticker(): string | null
set ticker(v?: string | undefined | null)
get country(): string | null
set country(v?: string | undefined | null)
get priceScale(): number
set priceScale(v: number)
get pointValue(): number
set pointValue(v: number)
get metadata(): string | null
set metadata(v?: string | undefined | null)
get qtyScale(): number
static BTC_USD(): NodeSym
static ETH_USD(): NodeSym
static SOL_USD(): NodeSym
static DOGE_USD(): NodeSym
eq(other: NodeSym): boolean
toJSON(): object
static fromJSON(json: object): NodeSym
}
export declare class NodeSymKind {
toString(): string
static fromString(text: string): NodeSymKind
static Stock(): NodeSymKind
static Future(): NodeSymKind
static Option(): NodeSymKind
static Forex(): NodeSymKind
static Crypto(): NodeSymKind
static Unknown(): NodeSymKind
static Other(other: string): NodeSymKind
eq(other: NodeSymKind): boolean
}
export declare class NodeTimeframe {
toString(): string
static fromString(timeframe: string): NodeTimeframe
static Years(value: number): NodeTimeframe
static Months(value: number): NodeTimeframe
static Weeks(value: number): NodeTimeframe
static Days(value: number): NodeTimeframe
static Hours(value: number): NodeTimeframe
static Minutes(value: number): NodeTimeframe
static Seconds(value: number): NodeTimeframe
static Ticks(value: number): NodeTimeframe
static Ranges(value: number): NodeTimeframe
static Unknown(): NodeTimeframe
get years(): number | null
get months(): number | null
get weeks(): number | null
get days(): number | null
get hours(): number | null
get minutes(): number | null
get seconds(): number | null
get ticks(): number | null
get ranges(): number | null
get unknown(): boolean
eq(other: NodeTimeframe): boolean
toDurationS(): number
static fromDurationS(duration: number): NodeTimeframe
}
export declare class NodeTrade {
get size(): number
get entry(): NodeTradeEvent | null
get exit(): NodeTradeEvent | null
get pnl(): number
get direction(): NodeTradeDirection
get isActive(): boolean
get isClosed(): boolean
}
export declare class NodeTradeDirection {
Long(): NodeTradeDirection
Short(): NodeTradeDirection
toNumber(): number
static fromNumber(value: number): NodeTradeDirection
}
export declare class NodeTradeEvent {
get id(): string | null
get orderBarIndex(): number
get fillBarIndex(): number
get price(): number
get comment(): string | null
}
export declare function _getCoreVersion(): string
export declare function accuracy(tpCount: number, fpCount: number, fnCount: number, tnCount: number): number
export declare function avgLosingTrade(grossLoss: number, losingTrades: number): number
export declare function avgTrade(netProfit: number, closedTrades: number): number
export declare function avgWinLossRatio(avgWinningTrade: number, avgLosingTrade: number): number
export declare function avgWinningTrade(grossProfit: number, winningTrades: number): number
export declare function expectancy(pnl: Float64Array): number
export declare function expectancyScore(expectancy: number, opportunityBars: number): number
export declare function f1(precision: number, recall: number): number
export declare function grossLossPct(grossLoss: number, initialCapital: number): number
export declare function grossProfitPct(grossProfit: number, initialCapital: number): number
export declare function longNetProfitPct(longNetProfit: number, initialCapital: number): number
export declare function longNetProfitRatio(longNetProfit: number, shortNetProfit: number): number
export declare function mean(values: Float64Array): number
export declare function netProfitPct(netProfit: number, initialCapital: number): number
export declare function omegaRatio(positiveReturnsSum: number, negativeReturnsSum: number, riskFreeRate: number): number
export declare function omegaRatioFromReturns(returns: Float64Array, riskFreeRate: number): number
export declare function orderSize(equityPct: number, equity: number, exchangeRate: number, instrumentPrice: number, pointValue: number): number
export declare function orderSizeForEquityPct(equityPct: number, equity: number, currentPosition: number, instrumentPrice: number, pointValue: number, exchangeRate: number): number
export declare function pnl(qty: number, entryPrice: number, currentPrice: number): number
export declare function precision(tpCount: number, fpCount: number): number
export declare function profitFactor(grossProfit: number, grossLoss: number): number
export declare function recall(tpCount: number, fnCount: number): number
export declare function returns(equity: Float64Array, skipFirst?: boolean | undefined | null): Array<number>
export declare function roundContracts(size: number, minQty: number, qtyScale: number): number
export declare function roundToMinTick(value: number, minTick: number): number
export declare function sharpeRatio(meanReturns: number, stdReturns: number, riskFreeRate: number): number
export declare function sharpeRatioFromReturns(returns: Float64Array, riskFreeRate: number): number
export declare function shortNetProfitPct(shortNetProfit: number, initialCapital: number): number
export declare function sortinoRatio(meanReturns: number, negativeReturnsStdev: number, riskFreeRate: number): number
export declare function sortinoRatioFromReturns(returns: Float64Array, riskFreeRate: number): number
export declare function stdev(values: Float64Array): number
export declare function sum(values: Float64Array): number
export declare function validateContracts(size: number, minQty: number): boolean
export declare function variance(values: Float64Array): number
export declare function winRate(profitableTrades: number, totalTrades: number): number
export declare function zipOhlcvBars(openTime?: Array<Date | undefined | null> | undefined | null, closeTime?: Array<Date | undefined | null> | undefined | null, open?: Array<number> | undefined | null, high?: Array<number> | undefined | null, low?: Array<number> | undefined | null, close?: Array<number> | undefined | null, volume?: Array<number> | undefined | null): Array<NodeOhlcvBar>