@tradecanvas/core 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,92 @@
1
+ # @tradecanvas/core
2
+
3
+ Canvas rendering engine, indicators, drawing tools, trading overlays, and real-time streaming for the [@tradecanvas/chart](https://www.npmjs.com/package/@tradecanvas/chart) library.
4
+
5
+ **[Live Demo](https://bonguynvan.github.io/tradecanvas/)** | **[GitHub](https://github.com/bonguynvan/tradecanvas)** | **[Documentation](https://bonguynvan.github.io/tradecanvas/#getting-started)**
6
+
7
+ ## Install
8
+
9
+ You don't need to install this package directly. It's included as a dependency of `@tradecanvas/chart`.
10
+
11
+ ```bash
12
+ npm install @tradecanvas/chart
13
+ ```
14
+
15
+ ## What's Inside
16
+
17
+ ### Rendering Engine
18
+
19
+ Multi-layer canvas rendering for optimal performance -- only dirty layers repaint each frame:
20
+
21
+ ```
22
+ UI Layer (price axis, legend, live price) z=3
23
+ Overlay Layer (drawings, trading positions/orders) z=2
24
+ Main Layer (candles, indicators, volume) z=1
25
+ Background (grid, watermark) z=0
26
+ ```
27
+
28
+ - `RenderEngine` -- orchestrates the render pipeline
29
+ - `LayerManager` -- manages canvas layer stack
30
+ - `RenderLoop` -- requestAnimationFrame loop with dirty tracking
31
+ - `DPRManager` -- device pixel ratio handling for crisp rendering
32
+
33
+ ### Chart Renderers (11 types)
34
+
35
+ `CandlestickRenderer`, `HollowCandleRenderer`, `BarRenderer`, `LineRenderer`, `AreaRenderer`, `BaselineRenderer`, `RenkoRenderer`, `KagiRenderer`, `PointAndFigureRenderer`, `VolumeRenderer`, `CompareRenderer`
36
+
37
+ Data transforms: `toHeikinAshi`, `toRenko`, `toLineBreak`, `toKagi`, `toPointAndFigure`
38
+
39
+ ### Indicators (26 built-in)
40
+
41
+ **Overlay** (on price chart): SMA, EMA, Bollinger Bands, Keltner Channel, Donchian Channel, Ichimoku Cloud, Parabolic SAR, Supertrend, VWAP
42
+
43
+ **Panel** (separate sub-chart): RSI, MACD, Stochastic, ATR, ADX, CCI, CMF, MFI, OBV, ROC, TSI, Williams %R, Volume Profile, VROC, Standard Deviation, Accumulation/Distribution, Aroon
44
+
45
+ Extensible via `IndicatorBase` for custom indicators.
46
+
47
+ ### Drawing Tools (23)
48
+
49
+ Trendline, Horizontal/Vertical Lines, Ray, Extended Line, Parallel Channel, Fibonacci Retracement/Extension, Rectangle, Ellipse, Triangle, Arrow, Pitchfork, Gann Fan/Box, Elliott Wave, Regression Channel, Date/Price Range, Measure, Anchored VWAP, Volume Profile Range, Text Annotation
50
+
51
+ All tools support magnet snapping, undo/redo, and serialization. Extensible via `DrawingBase`.
52
+
53
+ ### Trading
54
+
55
+ - `TradingManager` -- manage positions and orders
56
+ - `TradingRenderer` -- render entry lines, P&L zones, SL/TP markers
57
+ - `OrderRenderer` -- render pending orders with drag-to-modify
58
+ - `DepthOverlay` -- bid/ask depth visualization
59
+
60
+ ### Real-Time Streaming
61
+
62
+ - `StreamManager` -- manage data connections with auto-reconnect
63
+ - `BinanceAdapter` -- built-in Binance WebSocket adapter
64
+ - `MockAdapter` -- testing and demo data
65
+ - `TickAggregator` -- aggregate raw ticks into OHLC bars
66
+ - `ReconnectManager` -- exponential backoff reconnection
67
+
68
+ ### Interaction
69
+
70
+ - Pan, zoom (wheel/pinch), crosshair tracking
71
+ - Keyboard shortcuts (arrows, +/-, Home/End, Space)
72
+ - Drawing tool interaction with magnet snapping
73
+
74
+ ### Features
75
+
76
+ - `AlertManager` -- price and indicator alerts
77
+ - `ReplayManager` -- bar-by-bar historical replay
78
+ - `ChartStateManager` -- save/load chart state as JSON
79
+ - `UndoRedoManager` -- undo/redo for drawings
80
+ - `DataExporter` -- export visible/all data as CSV or JSON
81
+
82
+ ### UI
83
+
84
+ - `ChartLegend` -- OHLCV overlay display
85
+ - `Screenshot` -- export chart as PNG
86
+ - `Watermark` -- background text watermark
87
+ - `BarCountdown` -- time until candle close
88
+ - `SessionBreaks` -- market session visualization
89
+
90
+ ## License
91
+
92
+ [MIT](https://github.com/bonguynvan/tradecanvas/blob/main/LICENSE)