SPB Git

spb/hfmarketdata

Public

Open high-frequency market data platform — FirstRate full-history downloader, DuckDB/Parquet lake, open REST API and React docs platform (www.hfmarketdata.io)

web: charts — vignettes générées par notre moteur (scripts/charts-thumbs.mjs + harnais dev/charts-thumbs.html) : 408 PNG, 102 sujets × sombre/clair × 480×270 et 960×540 @2x, série synthétique dessinée avec pivots, manifeste index.json, npm run charts:thumbs

Simon-Pierre Boucher committed (Sep 7, 2026) parent fd35f89 Browse files

413 changed files +3,019 −1

413 changed files
added hfmarketdata/web/dev/charts-thumbs.html +19 −0
@@ -0,0 +1,19 @@
1 +<!doctype html>
2 +<html lang="en">
3 +<head>
4 + <meta charset="utf-8" />
5 + <meta name="viewport" content="width=device-width, initial-scale=1" />
6 + <title>hfmarketdata · chart thumbnails harness</title>
7 + <style>
8 + :root { --bg: #10131a; }
9 + [data-theme="light"] { --bg: #ffffff; }
10 + html, body { margin: 0; background: var(--bg); }
11 + body { padding: 8px; }
12 + #chart { position: relative; width: 480px; height: 270px; overflow: hidden; }
13 + </style>
14 +</head>
15 +<body>
16 + <div id="chart"></div>
17 + <script type="module" src="./charts-thumbs.js"></script>
18 +</body>
19 +</html>
added hfmarketdata/web/dev/charts-thumbs.js +204 −0
@@ -0,0 +1,204 @@
1 +// Thumbnail harness for scripts/charts-thumbs.mjs: renders ONE indicator or ONE drawing tool with OUR engine on a
2 +// deterministic, designed daily series (base → inverse head & shoulders → breakout → pullback → new highs), so every
3 +// thumbnail shows the same market and the drawings land on meaningful pivots. Exposes
4 +// `window.__thumb.render({ kind, id, theme, w, h, params })` → Promise<{ ok, error }>.
5 +//
6 +// URL params (manual use): ?kind=indicator&id=rsi&theme=dark&w=480&h=270
7 +
8 +import { createChart, darkTheme, lightTheme, listIndicators } from '../src/charts/engine/index.js'
9 +
10 +/* ───────────── designed synthetic series ───────────── */
11 +
12 +function mulberry32(seed) {
13 + let a = seed >>> 0
14 + return () => { a = (a + 0x6D2B79F5) >>> 0; let t = a; t = Math.imul(t ^ (t >>> 15), t | 1); t ^= t + Math.imul(t ^ (t >>> 7), t | 61); return ((t ^ (t >>> 14)) >>> 0) / 4294967296 }
15 +}
16 +function gauss(rnd) { let u = 0, v = 0; while (u === 0) u = rnd(); while (v === 0) v = rnd(); return Math.sqrt(-2 * Math.log(u)) * Math.cos(2 * Math.PI * v) }
17 +const r2 = v => Math.round(v * 100) / 100
18 +
19 +const N = 400
20 +// Spine: [index relative to the end (−1 = last bar), price]. Linear interpolation of log-price between knots.
21 +const SPINE = [
22 + [-400, 104], [-330, 110], [-290, 103], [-260, 98], [-225, 103.5], [-200, 101], [-170, 105], [-150, 99], [-130, 100.5],
23 + [-112, 96], [-105, 92.5], [-97, 95], [-88, 90.5], [-78, 95.5], [-70, 92.8], // base: inverse head & shoulders
24 + [-60, 100], [-50, 97.5], [-30, 106], [-22, 102], [-12, 108.5], // breakout · pullback · new highs
25 + [-7, 106], [-4, 107.3], [-1, 105.2], // small ABC at the end
26 +]
27 +function spineAt(rel) {
28 + for (let k = 1; k < SPINE.length; k++) {
29 + const [i0, p0] = SPINE[k - 1], [i1, p1] = SPINE[k]
30 + if (rel <= i1) { const u = (rel - i0) / (i1 - i0); return Math.exp(Math.log(p0) + u * (Math.log(p1) - Math.log(p0))) }
31 + }
32 + return SPINE[SPINE.length - 1][1]
33 +}
34 +
35 +export function makeThumbBars() {
36 + const rnd = mulberry32(2024)
37 + const dayMs = 86_400_000
38 + const end = Date.UTC(2024, 11, 31)
39 + const isWeekend = ts => { const d = new Date(ts).getUTCDay(); return d === 0 || d === 6 }
40 + // collect N weekdays ending on `end`
41 + const days = []
42 + for (let d = end; days.length < N; d -= dayMs) if (!isWeekend(d)) days.unshift(d)
43 + const bars = []
44 + let eps = 0, prevClose = null
45 + for (let k = 0; k < N; k++) {
46 + const rel = k - N
47 + const spine = spineAt(rel)
48 + eps = 0.55 * eps + gauss(rnd) * 0.0045
49 + const c = spine * Math.exp(eps)
50 + const o = prevClose == null ? c * Math.exp(gauss(rnd) * 0.002) : prevClose * Math.exp(gauss(rnd) * 0.0025)
51 + let hi = Math.max(o, c), lo = Math.min(o, c)
52 + const s = 0.0035 + 0.004 * Math.abs(gauss(rnd))
53 + for (let m = 0; m < 3; m++) { const p = Math.exp(Math.log(lo + (hi - lo) * rnd()) + gauss(rnd) * s); hi = Math.max(hi, p); lo = Math.min(lo, p) }
54 + const ret = Math.abs(Math.log(c / (prevClose || o)))
55 + const v = Math.round(3.2e6 * (0.7 + 0.6 * Math.abs(gauss(rnd))) * (1 + 55 * ret) * (rel >= -61 && rel <= -58 ? 1.8 : 1))
56 + bars.push({ t: days[k], o: r2(o), h: r2(hi), l: r2(lo), c: r2(c), v })
57 + prevClose = c
58 + }
59 + return bars
60 +}
61 +
62 +/* ───────────── pivots on the designed series ───────────── */
63 +
64 +/** index of the extreme (key 'h' max or 'l' min) within ±span bars around the designed relative index. */
65 +function extremeIndex(bars, rel, key, span = 4) {
66 + const n = bars.length
67 + const c = n + rel
68 + let best = c
69 + for (let i = Math.max(0, c - span); i <= Math.min(n - 1, c + span); i++) {
70 + if (key === 'h' ? bars[i].h > bars[best].h : bars[i].l < bars[best].l) best = i
71 + }
72 + return best
73 +}
74 +
75 +function pivots(bars) {
76 + const n = bars.length
77 + const P = (rel, key, span) => { const i = extremeIndex(bars, rel, key, span); return { t: bars[i].t, price: bars[i][key], i } }
78 + const at = rel => bars[Math.max(0, Math.min(n - 1, n + rel))]
79 + return {
80 + at,
81 + start: P(-112, 'h', 3), ls: P(-105, 'l', 3), neck1: P(-97, 'h', 3), head: P(-88, 'l', 3), neck2: P(-78, 'h', 3), rs: P(-70, 'l', 3),
82 + bo: P(-60, 'h', 3), // breakout high
83 + pb1: P(-50, 'l', 3), // first pullback low
84 + hi1: P(-30, 'h', 3), // swing high
85 + pb2: P(-22, 'l', 3), // second pullback low
86 + hi2: P(-12, 'h', 3), // new high
87 + a: P(-7, 'l', 2), b: P(-4, 'h', 2), c: P(-1, 'l', 1),
88 + baseHi: P(-97, 'h', 12), baseLo: P(-88, 'l', 14),
89 + }
90 +}
91 +
92 +/* ───────────── drawings per tool (points on the pivots) ───────────── */
93 +
94 +export function drawingsFor(tool, bars) {
95 + const p = pivots(bars)
96 + const pt = (piv, key) => ({ t: piv.t, price: key ? piv[key] : piv.price })
97 + const tp = (rel, price) => ({ t: p.at(rel).t, price })
98 + const cl = rel => ({ t: p.at(rel).t, price: p.at(rel).c })
99 + const one = (type, points, extra = {}) => [{ id: `th-${type}`, type, points, ...extra }]
100 + switch (tool) {
101 + case 'trendline': return one('trendline', [pt(p.rs), pt(p.pb1)])
102 + case 'ray': return one('ray', [pt(p.pb1), pt(p.pb2)])
103 + case 'extended': return one('extended', [pt(p.neck1), pt(p.neck2)], { style: { dash: [4, 3] } })
104 + case 'hray': return one('hray', [pt(p.bo)])
105 + case 'hline': return one('hline', [pt(p.hi1)])
106 + case 'vline': return one('vline', [cl(-60)])
107 + case 'cross': return one('cross', [cl(-30)])
108 + case 'channel': return one('channel', [pt(p.rs), pt(p.pb2), pt(p.bo)], { style: { fill: 0.08 } })
109 + case 'regression': return one('regression', [cl(-72), cl(-12)])
110 + case 'pitchfork': return one('pitchfork', [pt(p.rs), pt(p.bo), pt(p.pb1)])
111 + case 'schiff': return one('schiff', [pt(p.rs), pt(p.bo), pt(p.pb1)])
112 + case 'mschiff': return one('mschiff', [pt(p.rs), pt(p.bo), pt(p.pb1)])
113 + case 'fib': return one('fib', [pt(p.rs), pt(p.hi1)], { style: { showLabels: true } })
114 + case 'fib-extension': return one('fib-extension', [pt(p.rs), pt(p.bo), pt(p.pb1)])
115 + case 'fib-timezones': return one('fib-timezones', [pt(p.rs), pt(p.bo)], { style: { showLabels: true } })
116 + case 'fib-fan': return one('fib-fan', [pt(p.rs), pt(p.hi1)])
117 + case 'fib-arcs': return one('fib-arcs', [pt(p.rs), pt(p.hi1)])
118 + case 'gann-fan': return one('gann-fan', [pt(p.rs), pt(p.bo)], { style: { color: '#c98500' } })
119 + case 'gann-box': return one('gann-box', [pt(p.pb1), pt(p.hi1)], { style: { color: '#c98500' } })
120 + case 'rect': return one('rect', [tp(-108, p.baseHi.price * 1.003), tp(-66, p.baseLo.price * 0.997)], { style: { fill: 0.12 }, text: 'Base' })
121 + case 'ellipse': return one('ellipse', [tp(-104, p.baseHi.price * 1.01), tp(-68, p.baseLo.price * 0.99)], { style: { color: '#199e70', fill: 0.1 } })
122 + case 'triangle': return one('triangle', [pt(p.bo), pt(p.pb1), pt(p.hi1)], { style: { color: '#9085e9', fill: 0.12 } })
123 + case 'path': return one('path', [cl(-60), cl(-50), cl(-30), cl(-22), cl(-12), cl(-7), cl(-4)], { style: { width: 2, color: '#d95926' } })
124 + case 'brush': {
125 + // a hand-drawn support arc hugging the lows (5-bar smoothed lows, slightly below)
126 + const pts = []
127 + for (let k = -46; k <= -14; k += 1) { let s = 0; for (let j = -2; j <= 2; j++) s += p.at(k + j).l; pts.push({ t: p.at(k).t, price: (s / 5) * (0.984 + 0.002 * Math.sin(k / 5)) }) }
128 + return one('brush', pts, { style: { width: 2, color: '#d55181' } })
129 + }
130 + case 'arrow': return one('arrow', [tp(-57, p.pb1.price * 0.965), tp(-51, p.pb1.price * 0.993)], { style: { width: 2 } })
131 + case 'arrow-up': return one('arrow-up', [pt(p.pb1)], { text: 'Buy' })
132 + case 'arrow-down': return one('arrow-down', [pt(p.hi2)], { text: 'Sell' })
133 + case 'text': return one('text', [tp(-60, p.bo.price * 1.02)], { text: 'Breakout' })
134 + case 'callout': return one('callout', [pt(p.hi1), tp(-58, p.hi1.price * 1.03)], { text: 'Swing high\n0.382 held' })
135 + case 'price-label': return one('price-label', [pt(p.pb2)])
136 + case 'flag': return one('flag', [pt(p.hi2)], { text: 'New high' })
137 + case 'measure': return one('measure', [pt(p.pb1), pt(p.hi1)])
138 + case 'price-range': return one('price-range', [pt(p.rs), pt(p.hi1)])
139 + case 'date-range': return one('date-range', [pt(p.rs), pt(p.bo)])
140 + case 'date-price-range': return one('date-price-range', [pt(p.pb1), pt(p.hi1)])
141 + case 'vrange': return one('vrange', [cl(-62), cl(-57)], { text: 'Earnings', style: { fill: 0.12 } })
142 + case 'long': { const e = p.at(-58).c; return one('long', [tp(-58, e), tp(-31, e * 1.06), tp(-31, e * 0.97)], { style: { qty: 100 } }) }
143 + case 'short': { const e = p.at(-29).c; return one('short', [tp(-29, e), tp(-15, e * 0.962), tp(-15, e * 1.015)], { style: { qty: 100 } }) }
144 + case 'elliott-impulse': return one('elliott-impulse', [pt(p.rs), pt(p.bo), pt(p.pb1), pt(p.hi1), pt(p.pb2), pt(p.hi2)], { style: { color: '#e66767' } })
145 + case 'elliott-correction': return one('elliott-correction', [pt(p.hi2), pt(p.a), pt(p.b), pt(p.c)], { style: { color: '#e66767' } })
146 + case 'xabcd': return one('xabcd', [pt(p.rs), pt(p.bo), pt(p.pb1), pt(p.hi1), pt(p.pb2)], { style: { color: '#d55181' } })
147 + case 'head-shoulders': return one('head-shoulders', [pt(p.start), pt(p.ls), pt(p.neck1), pt(p.head), pt(p.neck2), pt(p.rs), pt(p.bo)], { style: { color: '#c98500' } })
148 + default: return []
149 + }
150 +}
151 +
152 +/** Visible window (bars) per tool — patterns on the base need the whole structure. */
153 +const TOOL_BARS = { 'head-shoulders': 135, 'elliott-correction': 60, rect: 120, ellipse: 120, regression: 110, xabcd: 120, 'elliott-impulse': 120, 'fib-timezones': 130, 'fib-arcs': 120 }
154 +
155 +/* ───────────── render ───────────── */
156 +
157 +const bars = makeThumbBars()
158 +const container = document.getElementById('chart')
159 +let chart = null
160 +
161 +function indicatorParams(id, params) {
162 + if (id === 'avwap' && !params?.anchor) { const p = pivots(bars); return { ...(params || {}), anchor: p.rs.t } }
163 + return params
164 +}
165 +
166 +export async function render({ kind = 'indicator', id, theme = 'dark', w = 480, h = 270, bars: visible, params, volume } = {}) {
167 + document.documentElement.dataset.theme = theme
168 + container.style.width = `${w}px`
169 + container.style.height = `${h}px`
170 + if (chart) { chart.destroy(); chart = null }
171 + chart = createChart(container, { theme: theme === 'light' ? lightTheme : darkTheme, timeframe: '1day', watermark: '', reducedMotion: true, rightOffsetBars: kind === 'tool' ? 6 : 3, barSpacing: 6 })
172 + window.__chart = chart
173 + chart.setData(bars)
174 + chart.setCrosshair({ mode: 'hidden' })
175 + let n = visible || 120
176 + let showVolume = !!volume
177 + if (kind === 'indicator') {
178 + const meta = listIndicators().find(x => x.id === id)
179 + if (!meta) return { ok: false, error: `unknown indicator ${id}` }
180 + if (id === 'ichimoku') n = Math.max(n, 150)
181 + chart.setVolume(showVolume)
182 + chart.addIndicator({ type: id, params: indicatorParams(id, params) })
183 + // Give an oscillator pane enough room to read its levels (the page default is a 28 % pane).
184 + for (const p of chart.panes) if (p.kind !== 'main') p.weight = 0.62
185 + chart.invalidate('layout')
186 + } else {
187 + n = TOOL_BARS[id] || n
188 + chart.setVolume(false)
189 + const list = drawingsFor(id, bars)
190 + if (!list.length) return { ok: false, error: `unknown tool ${id}` }
191 + chart.setDrawings(list)
192 + }
193 + const total = chart.getData().length
194 + chart.setVisibleRange({ fromIndex: total - n, toIndex: total - 1 }, false)
195 + await new Promise(r => requestAnimationFrame(() => requestAnimationFrame(r)))
196 + await new Promise(r => setTimeout(r, 40))
197 + return { ok: true }
198 +}
199 +
200 +window.__thumb = { render, bars, pivots: () => pivots(bars), drawingsFor }
201 +
202 +// Manual use through the URL.
203 +const q = new URLSearchParams(location.search)
204 +if (q.get('id')) render({ kind: q.get('kind') || 'indicator', id: q.get('id'), theme: q.get('theme') || 'dark', w: Number(q.get('w')) || 480, h: Number(q.get('h')) || 270, volume: q.get('volume') === '1' })
modified hfmarketdata/web/package.json +3 −1
@@ -16,7 +16,9 @@
16 16 "test:e2e": "playwright test",
17 17 "test:e2e:ui": "playwright test --ui",
18 18 "test:charts": "node --test \"src/charts/**/*.test.js\"",
19 − "charts:shots": "node scripts/charts-shots.mjs"
19 + "charts:shots": "node scripts/charts-shots.mjs",
20 + "charts:thumbs": "node scripts/charts-thumbs.mjs",
21 + "charts:docs": "node scripts/charts-docs.mjs"
20 22 },
21 23 "dependencies": {
22 24 "@mdx-js/react": "^3.1.1",
added hfmarketdata/web/public/charts/thumbs/index.json +2674 −0
Large diff (2,675 lines) is not loaded by default to keep the page fast.Load diff
added hfmarketdata/web/public/charts/thumbs/indicator-ad-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ad-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ad-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ad-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-adx-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-adx-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-adx-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-adx-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-alma-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-alma-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-alma-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-alma-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ao-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ao-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ao-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ao-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-aroon-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-aroon-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-aroon-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-aroon-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-atr-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-atr-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-atr-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-atr-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-auto-fib-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-auto-fib-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-auto-fib-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-auto-fib-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-avwap-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-avwap-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-avwap-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-avwap-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-pctb-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-pctb-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-pctb-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-pctb-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-width-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-width-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-width-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bb-width-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bollinger-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bollinger-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bollinger-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-bollinger-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cci-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cci-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cci-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cci-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-chaikin-osc-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-chaikin-osc-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-chaikin-osc-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-chaikin-osc-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-choppiness-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-choppiness-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-choppiness-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-choppiness-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmf-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmf-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmf-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmf-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmo-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmo-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmo-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-cmo-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-coppock-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-coppock-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-coppock-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-coppock-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dema-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dema-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dema-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dema-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-donchian-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-donchian-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-donchian-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-donchian-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dpo-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dpo-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dpo-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-dpo-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-elder-ray-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-elder-ray-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-elder-ray-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-elder-ray-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ema-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ema-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ema-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ema-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-envelope-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-envelope-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-envelope-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-envelope-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-eom-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-eom-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-eom-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-eom-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-force-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-force-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-force-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-force-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hma-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hma-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hma-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hma-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hv-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hv-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hv-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-hv-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ichimoku-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ichimoku-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ichimoku-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ichimoku-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kama-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kama-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kama-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kama-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-keltner-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-keltner-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-keltner-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-keltner-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-klinger-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-klinger-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-klinger-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-klinger-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kst-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kst-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kst-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-kst-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-lsma-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-lsma-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-lsma-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-lsma-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-macd-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-macd-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-macd-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-macd-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mass-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mass-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mass-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mass-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mfi-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mfi-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mfi-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-mfi-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-momentum-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-momentum-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-momentum-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-momentum-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-obv-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-obv-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-obv-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-obv-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-pivots-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-pivots-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-pivots-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-pivots-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-psar-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-psar-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-psar-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-psar-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-roc-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-roc-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-roc-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-roc-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rsi-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rsi-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rsi-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rsi-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rvi-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rvi-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rvi-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-rvi-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-sma-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-sma-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-sma-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-sma-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stddev-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stddev-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stddev-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stddev-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stoch-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stoch-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stoch-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stoch-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stochrsi-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stochrsi-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stochrsi-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-stochrsi-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-supertrend-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-supertrend-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-supertrend-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-supertrend-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tema-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tema-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tema-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tema-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-trix-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-trix-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-trix-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-trix-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tsi-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tsi-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tsi-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-tsi-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ultimate-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ultimate-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ultimate-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-ultimate-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-ma-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-ma-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-ma-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-ma-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-osc-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-osc-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-osc-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-osc-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-profile-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-profile-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-profile-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-volume-profile-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vortex-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vortex-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vortex-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vortex-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vwap-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vwap-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vwap-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-vwap-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-williams-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-williams-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-williams-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-williams-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-wma-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-wma-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-wma-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-wma-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-zigzag-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-zigzag-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-zigzag-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/indicator-zigzag-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-down-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-down-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-down-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-down-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-up-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-up-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-up-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-arrow-up-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-brush-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-brush-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-brush-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-brush-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-callout-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-callout-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-callout-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-callout-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-channel-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-channel-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-channel-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-channel-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-cross-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-cross-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-cross-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-cross-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-price-range-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-price-range-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-price-range-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-price-range-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-range-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-range-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-range-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-date-range-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-correction-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-correction-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-correction-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-correction-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-impulse-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-impulse-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-impulse-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-elliott-impulse-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ellipse-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ellipse-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ellipse-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ellipse-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-extended-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-extended-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-extended-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-extended-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-arcs-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-arcs-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-arcs-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-arcs-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-extension-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-extension-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-extension-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-extension-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-fan-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-fan-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-fan-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-fan-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-timezones-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-timezones-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-timezones-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-fib-timezones-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-flag-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-flag-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-flag-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-flag-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-box-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-box-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-box-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-box-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-fan-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-fan-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-fan-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-gann-fan-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-head-shoulders-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-head-shoulders-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-head-shoulders-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-head-shoulders-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hline-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hline-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hline-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hline-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hray-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hray-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hray-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-hray-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-long-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-long-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-long-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-long-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-measure-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-measure-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-measure-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-measure-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-mschiff-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-mschiff-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-mschiff-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-mschiff-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-path-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-path-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-path-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-path-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-pitchfork-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-pitchfork-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-pitchfork-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-pitchfork-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-label-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-label-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-label-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-label-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-range-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-range-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-range-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-price-range-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ray-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ray-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ray-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-ray-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-rect-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-rect-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-rect-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-rect-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-regression-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-regression-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-regression-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-regression-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-schiff-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-schiff-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-schiff-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-schiff-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-short-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-short-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-short-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-short-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-text-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-text-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-text-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-text-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-trendline-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-trendline-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-trendline-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-trendline-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-triangle-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-triangle-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-triangle-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-triangle-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vline-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vline-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vline-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vline-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vrange-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vrange-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vrange-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-vrange-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-xabcd-dark-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-xabcd-dark.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-xabcd-light-lg.png +0 −0

Binary file not shown.

added hfmarketdata/web/public/charts/thumbs/tool-xabcd-light.png +0 −0

Binary file not shown.

added hfmarketdata/web/scripts/charts-thumbs.mjs +119 −0
Large diff (120 lines) is not loaded by default to keep the page fast.Load diff
Menu

Theme