velo-plot 1.19.0 → 2.20.0

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.
Files changed (86) hide show
  1. package/dist/{ChartCore-DQ691eXH.js → ChartCore-ivzLqxVb.js} +1376 -1153
  2. package/dist/ChartCore-ivzLqxVb.js.map +1 -0
  3. package/dist/SciPlot-CEU4ApgD.js +463 -0
  4. package/dist/SciPlot-CEU4ApgD.js.map +1 -0
  5. package/dist/axisFormat-CzumxpCL.js +200 -0
  6. package/dist/axisFormat-CzumxpCL.js.map +1 -0
  7. package/dist/core/InteractionManager.d.ts +1 -0
  8. package/dist/core/OverlayRenderer.d.ts +11 -0
  9. package/dist/core/chart/ChartAxisManager.d.ts +2 -0
  10. package/dist/core/chart/ChartCore.d.ts +20 -0
  11. package/dist/core/chart/ChartPluginBridge.d.ts +1 -0
  12. package/dist/core/chart/ChartRenderLoop.d.ts +7 -0
  13. package/dist/core/chart/ChartRenderer.d.ts +5 -0
  14. package/dist/core/chart/ChartStateManager.d.ts +2 -0
  15. package/dist/core/chart/positionLines.d.ts +12 -0
  16. package/dist/core/chart/types.d.ts +7 -0
  17. package/dist/core/format/axisFormat.d.ts +2 -1
  18. package/dist/core/indicator/addIndicator.d.ts +1 -1
  19. package/dist/core/indicator/indicatorPresets.d.ts +10 -2
  20. package/dist/core/sync/index.d.ts +0 -1
  21. package/dist/core/time/TimeScale.d.ts +2 -2
  22. package/dist/core/time/applyTimeScale.d.ts +10 -0
  23. package/dist/createStackedChart-DxNW0VkF.js +705 -0
  24. package/dist/createStackedChart-DxNW0VkF.js.map +1 -0
  25. package/dist/{index-D7dTq6VB.js → index-BBpJwOct.js} +17 -19
  26. package/dist/index-BBpJwOct.js.map +1 -0
  27. package/dist/{index-CUGS98p4.js → index-CaXWSOTk.js} +3 -6
  28. package/dist/index-CaXWSOTk.js.map +1 -0
  29. package/dist/{index-DjeWClO9.js → index-qunX30Xu.js} +2 -2
  30. package/dist/{index-DjeWClO9.js.map → index-qunX30Xu.js.map} +1 -1
  31. package/dist/{index.core-BtGFYMOu.js → index.core-COREBDNq.js} +25 -24
  32. package/dist/{index.core-BtGFYMOu.js.map → index.core-COREBDNq.js.map} +1 -1
  33. package/dist/index.d.ts +6 -1
  34. package/dist/mockDatafeed-927foCM4.js +511 -0
  35. package/dist/mockDatafeed-927foCM4.js.map +1 -0
  36. package/dist/plugins/analysis/contours.d.ts +31 -0
  37. package/dist/plugins/analysis.js +494 -407
  38. package/dist/plugins/analysis.js.map +1 -1
  39. package/dist/plugins/broken-axis.js +170 -181
  40. package/dist/plugins/broken-axis.js.map +1 -1
  41. package/dist/plugins/drawing-tools/index.d.ts +14 -1
  42. package/dist/plugins/drawing-tools/measure.d.ts +21 -0
  43. package/dist/plugins/drawing-tools/snapToCandle.d.ts +21 -0
  44. package/dist/plugins/forecasting/algorithms.d.ts +7 -2
  45. package/dist/plugins/forecasting/types.d.ts +13 -3
  46. package/dist/plugins/forecasting.js +355 -175
  47. package/dist/plugins/forecasting.js.map +1 -1
  48. package/dist/plugins/latex/symbols.d.ts +50 -0
  49. package/dist/plugins/latex/types.d.ts +13 -1
  50. package/dist/plugins/latex.js +351 -331
  51. package/dist/plugins/latex.js.map +1 -1
  52. package/dist/plugins/ml-integration/native-algorithms.d.ts +24 -4
  53. package/dist/plugins/ml-integration/types.d.ts +19 -0
  54. package/dist/plugins/ml-integration.js +191 -140
  55. package/dist/plugins/ml-integration.js.map +1 -1
  56. package/dist/plugins/pattern-recognition/types.d.ts +28 -1
  57. package/dist/plugins/pattern-recognition.js +416 -343
  58. package/dist/plugins/pattern-recognition.js.map +1 -1
  59. package/dist/plugins/snapshot.js +36 -36
  60. package/dist/plugins/snapshot.js.map +1 -1
  61. package/dist/plugins/sync.js +1 -1
  62. package/dist/plugins/tools.js +1 -1
  63. package/dist/plugins/virtualization.js +1 -1
  64. package/dist/react.js +5 -5
  65. package/dist/symbols-DT0eLlpW.js +568 -0
  66. package/dist/symbols-DT0eLlpW.js.map +1 -0
  67. package/dist/trading/datafeed.d.ts +48 -0
  68. package/dist/trading/index.d.ts +29 -0
  69. package/dist/trading/mockDatafeed.d.ts +9 -0
  70. package/dist/trading/ohlcvGenerator.d.ts +25 -0
  71. package/dist/trading.d.ts +1 -0
  72. package/dist/trading.js +95 -0
  73. package/dist/trading.js.map +1 -0
  74. package/dist/types.d.ts +1 -1
  75. package/dist/velo-plot.full.js +835 -1054
  76. package/dist/velo-plot.full.js.map +1 -1
  77. package/dist/velo-plot.js +13 -13
  78. package/dist/workers/indicatorsAsync.d.ts +24 -0
  79. package/package.json +13 -1
  80. package/dist/ChartCore-DQ691eXH.js.map +0 -1
  81. package/dist/axisFormat-B7o_uIEA.js +0 -127
  82. package/dist/axisFormat-B7o_uIEA.js.map +0 -1
  83. package/dist/createStackedChart-BPooTQ9z.js +0 -1164
  84. package/dist/createStackedChart-BPooTQ9z.js.map +0 -1
  85. package/dist/index-CUGS98p4.js.map +0 -1
  86. package/dist/index-D7dTq6VB.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ import { DatafeedAdapter } from './datafeed';
2
+
3
+ export interface MockDatafeedOptions {
4
+ symbol?: string;
5
+ barMs?: number;
6
+ basePrice?: number;
7
+ seed?: number;
8
+ }
9
+ export declare function createMockDatafeed(options?: MockDatafeedOptions): DatafeedAdapter;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Seeded OHLCV generators for trading demos and tests.
3
+ */
4
+ export interface OhlcvData {
5
+ x: Float64Array;
6
+ open: Float32Array;
7
+ high: Float32Array;
8
+ low: Float32Array;
9
+ close: Float32Array;
10
+ volume: Float32Array;
11
+ }
12
+ export interface OhlcvOptions {
13
+ startMs?: number;
14
+ seed?: number;
15
+ }
16
+ /** Mulberry32 PRNG — deterministic when seed is provided. */
17
+ export declare function mulberry32(seed: number): () => number;
18
+ /** OHLCV with business-day timestamps (weekends skipped in data). */
19
+ export declare function generateBusinessDayOhlcv(n: number, startMsOrOptions?: number | OhlcvOptions, legacySeed?: number): OhlcvData;
20
+ /** OHLCV with consecutive calendar days (includes weekends). */
21
+ export declare function generateContinuousOhlcv(n: number, startMsOrOptions?: number | OhlcvOptions, legacySeed?: number): OhlcvData;
22
+ /** Index of the bar with the lowest low. */
23
+ export declare function findLowestBarIndex(low: Float32Array): number;
24
+ /** Index of the bar with the highest high. */
25
+ export declare function findHighestBarIndex(high: Float32Array): number;
@@ -0,0 +1 @@
1
+ export * from './trading/index'
@@ -0,0 +1,95 @@
1
+ import { D as P, f as b, L as v, a as B, b as E, e as S, d as U, c as H } from "./ChartCore-ivzLqxVb.js";
2
+ import { c as k } from "./createStackedChart-DxNW0VkF.js";
3
+ import { c as _, b as R, f as G, i as K, a as j, m as X } from "./axisFormat-CzumxpCL.js";
4
+ import { PluginAnnotations as q } from "./plugins/annotations.js";
5
+ import { P as J, a as N, b as O, c as Q } from "./mockDatafeed-927foCM4.js";
6
+ import { P as W } from "./index-DoYxf1cV.js";
7
+ import { P as $ } from "./index-BMiZoKmm.js";
8
+ import { C as te } from "./index-CaXWSOTk.js";
9
+ const p = 864e5;
10
+ function w(e) {
11
+ let a = e >>> 0;
12
+ return () => {
13
+ a = a + 1831565813 >>> 0;
14
+ let t = Math.imul(a ^ a >>> 15, 1 | a);
15
+ return t = t + Math.imul(t ^ t >>> 7, 61 | t) ^ t, ((t ^ t >>> 14) >>> 0) / 4294967296;
16
+ };
17
+ }
18
+ function h(e) {
19
+ return e !== void 0 ? w(e) : Math.random;
20
+ }
21
+ function D(e, a, t = Date.UTC(2024, 0, 2)) {
22
+ const l = typeof e == "object" ? e : { startMs: e, seed: a };
23
+ return {
24
+ startMs: l.startMs ?? t,
25
+ seed: l.seed
26
+ };
27
+ }
28
+ function x(e, a = Date.UTC(2024, 0, 2), t) {
29
+ const { startMs: l, seed: d } = D(a, t), n = h(d), u = new Float64Array(e), c = new Float32Array(e), f = new Float32Array(e), m = new Float32Array(e), s = new Float32Array(e), y = new Float32Array(e);
30
+ let i = l, r = 100;
31
+ for (let o = 0; o < e; o++) {
32
+ for (; new Date(i).getUTCDay() === 0 || new Date(i).getUTCDay() === 6; )
33
+ i += p;
34
+ u[o] = i, c[o] = r;
35
+ const A = (n() - 0.48) * 3;
36
+ s[o] = r + A, f[o] = Math.max(c[o], s[o]) + n() * 1.5, m[o] = Math.min(c[o], s[o]) - n() * 1.5, y[o] = 5e5 + n() * 2e6, r = s[o], i += p;
37
+ }
38
+ return { x: u, open: c, high: f, low: m, close: s, volume: y };
39
+ }
40
+ function g(e, a = Date.UTC(2024, 0, 1), t) {
41
+ const { startMs: l, seed: d } = D(
42
+ a,
43
+ t,
44
+ Date.UTC(2024, 0, 1)
45
+ ), n = h(d), u = new Float64Array(e), c = new Float32Array(e), f = new Float32Array(e), m = new Float32Array(e), s = new Float32Array(e), y = new Float32Array(e);
46
+ let i = 100;
47
+ for (let r = 0; r < e; r++) {
48
+ u[r] = l + r * p, c[r] = i;
49
+ const o = (n() - 0.48) * 3;
50
+ s[r] = i + o, f[r] = Math.max(c[r], s[r]) + n() * 1.5, m[r] = Math.min(c[r], s[r]) - n() * 1.5, y[r] = 5e5 + n() * 2e6, i = s[r];
51
+ }
52
+ return { x: u, open: c, high: f, low: m, close: s, volume: y };
53
+ }
54
+ function M(e) {
55
+ let a = 0;
56
+ for (let t = 1; t < e.length; t++)
57
+ e[t] < e[a] && (a = t);
58
+ return a;
59
+ }
60
+ function T(e) {
61
+ let a = 0;
62
+ for (let t = 1; t < e.length; t++)
63
+ e[t] > e[a] && (a = t);
64
+ return a;
65
+ }
66
+ export {
67
+ te as ChartGroup,
68
+ P as DARK_THEME,
69
+ b as DEFAULT_THEME,
70
+ v as LIGHT_THEME,
71
+ q as PluginAnnotations,
72
+ J as PluginDrawingTools,
73
+ W as PluginKeyboard,
74
+ N as PluginReplay,
75
+ $ as PluginStreaming,
76
+ B as addIndicatorToChart,
77
+ _ as applyBusinessDayX,
78
+ O as barsToOhlc,
79
+ E as buildIndicatorPaneFromPreset,
80
+ R as businessDaySpanMs,
81
+ S as computeHeikinAshi,
82
+ U as computeIndicatorFromSeries,
83
+ H as createChart,
84
+ Q as createMockDatafeed,
85
+ k as createStackedChart,
86
+ T as findHighestBarIndex,
87
+ M as findLowestBarIndex,
88
+ G as formatBusinessDayTick,
89
+ x as generateBusinessDayOhlcv,
90
+ g as generateContinuousOhlcv,
91
+ K as isBusinessDay,
92
+ j as isBusinessDayScaleActive,
93
+ X as mapToBusinessDayScale
94
+ };
95
+ //# sourceMappingURL=trading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trading.js","sources":["../src/trading/ohlcvGenerator.ts"],"sourcesContent":["/**\n * Seeded OHLCV generators for trading demos and tests.\n */\n\nexport interface OhlcvData {\n x: Float64Array;\n open: Float32Array;\n high: Float32Array;\n low: Float32Array;\n close: Float32Array;\n volume: Float32Array;\n}\n\nexport interface OhlcvOptions {\n startMs?: number;\n seed?: number;\n}\n\nconst MS_DAY = 86_400_000;\n\n/** Mulberry32 PRNG — deterministic when seed is provided. */\nexport function mulberry32(seed: number): () => number {\n let s = seed >>> 0;\n return () => {\n s = (s + 0x6d2b79f5) >>> 0;\n let t = Math.imul(s ^ (s >>> 15), 1 | s);\n t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;\n return ((t ^ (t >>> 14)) >>> 0) / 4294967296;\n };\n}\n\nfunction resolveRand(seed?: number): () => number {\n return seed !== undefined ? mulberry32(seed) : Math.random;\n}\n\nfunction resolveOptions(\n startMsOrOptions: number | OhlcvOptions,\n legacySeed?: number,\n defaultStartMs = Date.UTC(2024, 0, 2),\n): { startMs: number; seed?: number } {\n const opts: OhlcvOptions =\n typeof startMsOrOptions === \"object\"\n ? startMsOrOptions\n : { startMs: startMsOrOptions, seed: legacySeed };\n return {\n startMs: opts.startMs ?? defaultStartMs,\n seed: opts.seed,\n };\n}\n\n/** OHLCV with business-day timestamps (weekends skipped in data). */\nexport function generateBusinessDayOhlcv(\n n: number,\n startMsOrOptions: number | OhlcvOptions = Date.UTC(2024, 0, 2),\n legacySeed?: number,\n): OhlcvData {\n const { startMs, seed } = resolveOptions(startMsOrOptions, legacySeed);\n const rand = resolveRand(seed);\n\n const x = new Float64Array(n);\n const open = new Float32Array(n);\n const high = new Float32Array(n);\n const low = new Float32Array(n);\n const close = new Float32Array(n);\n const volume = new Float32Array(n);\n\n let t = startMs;\n let price = 100;\n\n for (let i = 0; i < n; i++) {\n while (new Date(t).getUTCDay() === 0 || new Date(t).getUTCDay() === 6) {\n t += MS_DAY;\n }\n x[i] = t;\n open[i] = price;\n const change = (rand() - 0.48) * 3;\n close[i] = price + change;\n high[i] = Math.max(open[i], close[i]) + rand() * 1.5;\n low[i] = Math.min(open[i], close[i]) - rand() * 1.5;\n volume[i] = 500_000 + rand() * 2_000_000;\n price = close[i];\n t += MS_DAY;\n }\n\n return { x, open, high, low, close, volume };\n}\n\n/** OHLCV with consecutive calendar days (includes weekends). */\nexport function generateContinuousOhlcv(\n n: number,\n startMsOrOptions: number | OhlcvOptions = Date.UTC(2024, 0, 1),\n legacySeed?: number,\n): OhlcvData {\n const { startMs, seed } = resolveOptions(\n startMsOrOptions,\n legacySeed,\n Date.UTC(2024, 0, 1),\n );\n const rand = resolveRand(seed);\n\n const x = new Float64Array(n);\n const open = new Float32Array(n);\n const high = new Float32Array(n);\n const low = new Float32Array(n);\n const close = new Float32Array(n);\n const volume = new Float32Array(n);\n\n let price = 100;\n for (let i = 0; i < n; i++) {\n x[i] = startMs + i * MS_DAY;\n open[i] = price;\n const change = (rand() - 0.48) * 3;\n close[i] = price + change;\n high[i] = Math.max(open[i], close[i]) + rand() * 1.5;\n low[i] = Math.min(open[i], close[i]) - rand() * 1.5;\n volume[i] = 500_000 + rand() * 2_000_000;\n price = close[i];\n }\n\n return { x, open, high, low, close, volume };\n}\n\n/** Index of the bar with the lowest low. */\nexport function findLowestBarIndex(low: Float32Array): number {\n let idx = 0;\n for (let i = 1; i < low.length; i++) {\n if (low[i] < low[idx]) idx = i;\n }\n return idx;\n}\n\n/** Index of the bar with the highest high. */\nexport function findHighestBarIndex(high: Float32Array): number {\n let idx = 0;\n for (let i = 1; i < high.length; i++) {\n if (high[i] > high[idx]) idx = i;\n }\n return idx;\n}\n"],"names":["MS_DAY","mulberry32","seed","s","resolveRand","resolveOptions","startMsOrOptions","legacySeed","defaultStartMs","opts","generateBusinessDayOhlcv","n","startMs","rand","x","open","high","low","close","volume","t","price","i","change","generateContinuousOhlcv","findLowestBarIndex","idx","findHighestBarIndex"],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -72,7 +72,7 @@ export interface AxisOptions {
72
72
  /** Trading time scale (Stage 2) — business-day gaps, session presets */
73
73
  timeScale?: import('./core/time/TimeScale').TimeScaleOptions;
74
74
  }
75
- export type SeriesType = "line" | "scatter" | "line+scatter" | "step" | "step+scatter" | "band" | "area" | "bar" | "heatmap" | "candlestick" | "polar" | "radar" | "boxplot" | "waterfall" | "gauge" | "sankey" | "ternary" | "indicator";
75
+ export type SeriesType = "line" | "scatter" | "line+scatter" | "step" | "step+scatter" | "band" | "area" | "bar" | "heatmap" | "candlestick" | "heikin-ashi" | "polar" | "radar" | "boxplot" | "waterfall" | "gauge" | "sankey" | "ternary" | "indicator";
76
76
  /** Step mode defines where the step occurs */
77
77
  export type StepMode = "before" | "after" | "center";
78
78
  /** Error bar direction */