feat: add Alt-Chart Bars (Renko, Kagi, Point & Figure) via a BarBuilder trait (#146)
Introduces a BarBuilder trait for price-driven chart constructors that emit a variable number of bars per candle (deliberately not Indicator). Adds Renko (box-size bricks, 2-box reversal), Kagi (reversal-amount segments) and Point & Figure (box-size X/O columns, N-box reversal) in a new Alt-Chart Bars family, with custom Python/Node/WASM bindings, a dedicated fuzz target, tests and docs. Indicator count 292 -> 295.
This commit is contained in:
Vendored
+40
@@ -310,6 +310,21 @@ export interface LiquidationFeaturesValue {
|
||||
total: number
|
||||
imbalance: number
|
||||
}
|
||||
export interface RenkoBrickValue {
|
||||
open: number
|
||||
close: number
|
||||
direction: number
|
||||
}
|
||||
export interface KagiSegmentValue {
|
||||
start: number
|
||||
end: number
|
||||
direction: number
|
||||
}
|
||||
export interface PnfColumnValue {
|
||||
direction: number
|
||||
high: number
|
||||
low: number
|
||||
}
|
||||
export type SmaNode = SMA
|
||||
export declare class SMA {
|
||||
constructor(period: number)
|
||||
@@ -3022,6 +3037,31 @@ export declare class InformationRatio {
|
||||
isReady(): boolean
|
||||
warmupPeriod(): number
|
||||
}
|
||||
export type RenkoBarsNode = RenkoBars
|
||||
export declare class RenkoBars {
|
||||
constructor(boxSize: number)
|
||||
update(close: number): Array<RenkoBrickValue>
|
||||
batch(close: Array<number>): Array<RenkoBrickValue>
|
||||
boxSize(): number
|
||||
reset(): void
|
||||
}
|
||||
export type KagiBarsNode = KagiBars
|
||||
export declare class KagiBars {
|
||||
constructor(reversal: number)
|
||||
update(close: number): Array<KagiSegmentValue>
|
||||
batch(close: Array<number>): Array<KagiSegmentValue>
|
||||
reversal(): number
|
||||
reset(): void
|
||||
}
|
||||
export type PointAndFigureBarsNode = PointAndFigureBars
|
||||
export declare class PointAndFigureBars {
|
||||
constructor(boxSize: number, reversal: number)
|
||||
update(close: number): Array<PnfColumnValue>
|
||||
batch(close: Array<number>): Array<PnfColumnValue>
|
||||
boxSize(): number
|
||||
reversal(): number
|
||||
reset(): void
|
||||
}
|
||||
export type AlphaNode = Alpha
|
||||
export declare class Alpha {
|
||||
constructor(period: number, riskFree: number)
|
||||
|
||||
Reference in New Issue
Block a user