@neabyte/candlestick-cli
Version:
Beautiful terminal candlestick charts with real-time trading data. Create stunning ASCII art charts directly in your terminal with support for live market data, custom colors, and professional trading visualization.
79 lines (78 loc) • 1.9 kB
TypeScript
export declare enum CandleType {
Bearish = 0,
Bullish = 1
}
export interface Candle {
open: number;
high: number;
low: number;
close: number;
volume?: number;
timestamp: number;
type: CandleType;
}
export type Candles = Candle[];
export type RGBColor = [number, number, number];
export type ColorValue = string | RGBColor;
export type ChartHighlights = Record<string, ColorValue>;
export interface ChartLabels {
average: string;
currency: string;
highest: string;
lowest: string;
price: string;
variation: string;
volume: string;
}
export interface ChartConstants {
MARGIN_TOP: number;
MARGIN_RIGHT: number;
CHAR_PRECISION: number;
DEC_PRECISION: number;
WIDTH: number;
HEIGHT: number;
Y_AXIS_SPACING: number;
PRECISION: number;
PRECISION_SMALL: number;
UNICODE_BODY: string;
UNICODE_BOTTOM: string;
UNICODE_HALF_BODY_BOTTOM: string;
UNICODE_HALF_BODY_TOP: string;
UNICODE_FILL: string;
UNICODE_TOP: string;
UNICODE_VOID: string;
UNICODE_WICK: string;
UNICODE_WICK_LOWER: string;
UNICODE_WICK_UPPER: string;
UNICODE_Y_AXIS: string;
UNICODE_Y_AXIS_LEFT: string;
UNICODE_Y_AXIS_RIGHT: string;
MIN_DIFF_THRESHOLD: number;
MAX_DIFF_THRESHOLD: number;
Y_AXIS_ON_THE_RIGHT: boolean;
Y_AXIS_ROUND_DIR: 'down' | 'up';
Y_AXIS_ROUND_MULTIPLIER: number;
}
export interface CandleSetStats {
minPrice: number;
maxPrice: number;
minVolume: number;
maxVolume: number;
variation: number;
average: number;
lastPrice: number;
cumulativeVolume: number;
}
export interface ChartDimensions {
width: number;
height: number;
}
export interface TerminalSize {
width: number;
height: number;
}
export interface ExportOptions {
outputPath: string;
background?: 'light' | 'dark';
scale?: number;
}