[{"data":1,"prerenderedAt":7448},["ShallowReactive",2],{"indicators:cookbook/multi-timeframe-terminal":3},{"slug":4,"filePath":5,"frontmatter":6,"rawMarkdown":11,"tree":12},"cookbook/multi-timeframe-terminal","cookbook/multi-timeframe-terminal.md",{"title":7,"description":8,"order":9,"section":10},"Multi-timeframe terminal","The chart's own trend on the price pane, a side window of the 4h context, and the last 4h swing levels docked on the price axis, all from one file. Two EMA…",66,"cookbook","---\ntitle: \"Multi-timeframe terminal\"\ndescription: \"The chart's own trend on the price pane, a side window of the 4h context, and the last 4h swing levels docked on the price axis, all from one file. Two EMA…\"\norder: 66\nsection: \"cookbook\"\n---\n\n\u003C!-- source: docs/indicators/cookbook/multi-timeframe-terminal.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit -->\n\n# Multi-timeframe terminal\n\nThe chart's own trend on the price pane, a side window of the 4h context, and the last 4h swing levels docked on the price axis, all from one file. Two EMA lines (21 and 55) sit on the candles and a bias histogram sits below them; a line panel placed at the side draws the 4h closes of every candle closed inside the last `span` chart bars (480 by default, up to 200 candles) with their 4h EMA 8 and EMA 21 on their own time axis; two levels docked on the right price axis mark the lowest 4h low and the highest 4h high of the last 12 4h candles, each lighting up on the bar that tags it. The kScript (legacy) precedent is MMT's Multi-timeframe terminal; here the coarse candles come in through three inputs pinned to `4h`, and every view is a frame the package writes on the live bar. This is also the `multi-timeframe-terminal` template.\n\nThe 4h inputs follow the rule from [Multi-timeframe](../core-concepts/multi-timeframe.md): a coarse value lands on the first primary row whose close is at or after that 4h candle's close and is carried until the next one lands, so no forming candle ever leaks into the window, the EMAs or the levels. The ring below is keyed on that rule, so a candle carried across several rows is one entry, never one per row.\n\n## The Indicator\n\n```typescript\n// A multi-timeframe terminal: the chart's own trend on the price pane, a side window of the 4h context, and the last 4h swing levels docked on the price axis.\nimport { frame, histogram, input, line, lower, ohlcv, output, overlay, panel, param, plot, time } from \"./sdk/declare\"; // the declaring words\nimport { bar } from \"./gen/draw\"; // the last-bar signal\nimport { FRAME_CONTEXT, FRAME_SWINGS, writeFrame } from \"./gen/frames\"; // generated: a slot constant per frame declared below, plus the writer\nimport { in_close, in_close_4h, in_high, in_high_4h, in_low, in_low_4h, in_t } from \"./gen/inputs\"; // generated: an in_ reader for each input\nimport { emitRow, out_bias, out_ema21, out_ema55 } from \"./gen/outputs\"; // generated: an out_ writer per output, plus emitRow\nimport { p_lookback, p_span } from \"./gen/params\"; // generated: a p_ reader per param declared below\nimport { Ema } from \"./sdk/ta\"; // the moving-average helper for the chart's own two EMAs\n\nparam(\"span\", 480, { min: 56, max: 500 }); // chart bars a read covers: the side window lists every 4h candle closed inside them (up to the ring's 200), and a metric read fetches that many bars\nparam(\"lookback\", 12, { min: 2, max: 100 }); // 4h candles the swing levels span\ninput(\"close\", ohlcv.close); // the primary input: the chart's own candles define the grid every other input lines up on\ninput(\"high\", ohlcv.high); // this bar's high: it lights the swing high on the bar that tags it\ninput(\"low\", ohlcv.low); // this bar's low: the same for the swing low\ninput(\"close_4h\", ohlcv.close, { interval: \"4h\", missing: \"carry\" }); // the 4h close, landing on the first row whose close is at or after the candle's close, then carried\ninput(\"high_4h\", ohlcv.high, { interval: \"4h\", missing: \"carry\" }); // the 4h high, the same landing rule\ninput(\"low_4h\", ohlcv.low, { interval: \"4h\", missing: \"carry\" }); // the 4h low\ninput(\"t\", time.bar_open_sec); // this bar's open time in epoch seconds; with the bar's width it gives the row's close, and so the last closed 4h candle\noutput(\"ema21\", line, overlay, { color: \"#38bdf8\", width: 2 }); // the chart's own EMA 21\noutput(\"ema55\", line, overlay, { color: \"#f472b6\", width: 2 }); // the chart's own EMA 55\noutput(\"bias\", histogram, lower, { color: \"#a3e635\" }); // +1 above both EMAs with the 4h close above its 4h EMA 21, -1 the mirror, else 0\nconst context = frame(\"context\", { max_bytes: 16384 }); // the side window's rows, one per closed 4h candle\nconst swings = frame(\"swings\", { max_bytes: 2048 }); // the two docked levels\npanel.line({ name: \"context_window\", title: \"4h context\", x: \"time\", place: \"side\", frame: context, series: [{ name: \"4h close\" }, { name: \"4h EMA 8\" }, { name: \"4h EMA 21\" }] });\nplot.levels({ name: \"swing_levels\", frame: swings, dock: \"right\", labels: true, color: \"#f5a623\" });\n\nconst H4: f64 = 14400.0; const MAX = 200; // the candle width in seconds; the ring holds the last 200 closed candles\nconst times = new StaticArray\u003Cf64>(MAX); const closes = new StaticArray\u003Cf64>(MAX); const highs = new StaticArray\u003Cf64>(MAX); const lows = new StaticArray\u003Cf64>(MAX);\nconst ema8s = new StaticArray\u003Cf64>(MAX); const ema21s = new StaticArray\u003Cf64>(MAX); // the 4h EMAs, one value per ring entry, stepped from the entry before\nconst bytes = new StaticArray\u003Cu8>(16384); let used = 0; // the window's JSON, appended as UTF-8 bytes row by row; a growing string or an Array join copies the whole text again per row\nlet ema21 = new Ema(21); let ema55 = new Ema(55); // the chart's own EMAs, fed the primary close every bar\nlet span = 480.0; let lookback = 12; let head = -1; let count = 0; let candle: f64 = NaN; // the ring: head is the newest entry, count the entries in use, candle the newest entry's id\nlet t: f64 = NaN; let prevT: f64 = NaN; // this bar's open time and the previous one: their gap is the bar's width\nlet close: f64 = NaN; let high: f64 = NaN; let low: f64 = NaN; let fast: f64 = NaN; let slow: f64 = NaN; let bias: f64 = 0.0; // this bar\n\nfunction ema(prev: f64, x: f64, n: f64): f64 { const a = 2.0 / (n + 1.0); return isNaN(prev) ? x : x * a + prev * (1.0 - a); } // one EMA step; the first candle seeds it\nfunction put(text: string): void { // append one piece of JSON to the buffer; a window past the frame's cap is left short, and the host refuses it by name\n  if (used + String.UTF8.byteLength(text) \u003C= bytes.length) used += i32(String.UTF8.encodeUnsafe(changetype\u003Cusize>(text), text.length, changetype\u003Cusize>(bytes) + used));\n}\n\n// init() runs once before the first bar: read the params (the window's span in chart bars, the swing span in candles), then reserve two pages\n// (128 KiB) of headroom for the live bar's write, about 72 KiB at 200 rows: the stub runtime never frees a string and memory may not grow after init().\nexport function init(): void { span = p_span(); lookback = i32(p_lookback()); memory.grow(2); }\n// state() runs once per bar: feed the chart's EMAs, then fold the 4h inputs into the ring. A 4h value lands as of its candle's close and is carried,\n// so the ring is keyed on the last CLOSED candle as of this row's close (the open time plus the bar's width): a new id appends an entry, the\n// same id replaces the newest entry's close, high and low with the delivered candle. The 4h EMAs step once per entry, never per primary bar.\nexport function state(): i32 {\n  prevT = t; t = in_t(); close = in_close(); high = in_high(); low = in_low(); fast = ema21.update(close); slow = ema55.update(close);\n  const c4 = in_close_4h(); const h4 = in_high_4h(); const l4 = in_low_4h();\n  if (!isNaN(prevT) && !isNaN(c4) && !isNaN(h4) && !isNaN(l4)) { // the first row has no width yet, and nothing has landed at the start of a grid: the ring waits\n    const id = Math.floor((t + (t - prevT)) / H4) - 1.0; // the candle that closed last as of this row's close; its open time is id * H4\n    if (id != candle) { candle = id; head = (head + 1) % MAX; if (count \u003C MAX) count += 1; times[head] = id * H4; }\n    closes[head] = c4; highs[head] = h4; lows[head] = l4; // one closed candle per entry: the delivered values replace, nothing folds\n    const prev = count > 1 ? (head + MAX - 1) % MAX : -1;\n    ema8s[head] = ema(prev \u003C 0 ? NaN : ema8s[prev], c4, 8.0); ema21s[head] = ema(prev \u003C 0 ? NaN : ema21s[prev], c4, 21.0);\n  }\n  const c4Now = count > 0 ? closes[head] : NaN; const e21Now = count > 0 ? ema21s[head] : NaN; // the newest 4h candle and its EMA 21\n  bias = isNaN(fast) || isNaN(slow) || isNaN(e21Now) ? 0.0 : close > fast && close > slow && c4Now > e21Now ? 1.0 : close \u003C fast && close \u003C slow && c4Now \u003C e21Now ? -1.0 : 0.0;\n  return isNaN(slow) ? 0 : 1;\n}\n// finalize() runs after state() returns 1: write the outputs, and on the live bar only, the two frames the side window and the\n// docked levels read. A frame is a snapshot of the run (its last write wins), so closed bars never pay for the JSON.\nexport function finalize(): void {\n  out_ema21(fast); out_ema55(slow); out_bias(bias);\n  if (bar.isLast() && count > 0) {\n    const from = t + (t - prevT) * (1.0 - span); // the span's start: this row's close minus span bar widths; the window lists the candles closed after it\n    let shown = 0; while (shown \u003C count && times[(head + MAX - shown) % MAX] + H4 > from) shown += 1; // newest first, stopping at the first candle closed before the span\n    used = 0; put('{\"rows\":['); // oldest first: [the candle's open in epoch seconds, 4h close, 4h EMA 8, 4h EMA 21]\n    for (let k = shown - 1; k >= 0; k -= 1) {\n      const i = (head + MAX - k) % MAX; put(k == shown - 1 ? \"[\" : \",[\");\n      put(i64(times[i]).toString()); put(\",\"); put(closes[i].toString()); put(\",\"); put(ema8s[i].toString()); put(\",\"); put(ema21s[i].toString()); put(\"]\");\n    }\n    put(\"]}\"); writeFrame(FRAME_CONTEXT, String.UTF8.decodeUnsafe(changetype\u003Cusize>(bytes), used)); // one string from the bytes, then the frame\n    let hi = -Infinity; let lo = Infinity; const n = lookback \u003C count ? lookback : count; // the last lookback candles, newest first\n    for (let k = 0; k \u003C n; k += 1) { const i = (head + MAX - k) % MAX; hi = Math.max(hi, highs[i]); lo = Math.min(lo, lows[i]); }\n    if (lo \u003C hi) { // prices must be strictly increasing, so two equal levels skip the write and the last snapshot stands\n      const lowColor = low \u003C= lo ? \"#f8fafc\" : \"#f5a623\"; const highColor = high >= hi ? \"#f8fafc\" : \"#f5a623\"; // lit on the bar that tags the level\n      writeFrame(FRAME_SWINGS, '{\"prices\":[' + lo.toString() + \",\" + hi.toString() + '],\"values\":[1,1],\"colors\":[\"' + lowColor + '\",\"' + highColor + '\"]}');\n    }\n  }\n  emitRow();\n}\n// reset() runs when the chart restarts the series: back to what init() built, the ring emptied (its arrays need no clearing).\nexport function reset(): void { ema21.reset(); ema55.reset(); head = -1; count = 0; candle = NaN; t = NaN; prevT = NaN; close = NaN; high = NaN; low = NaN; fast = NaN; slow = NaN; bias = 0.0; }\n```\n\n## How it works\n\n**Three inputs at 4h, one landing rule.** `close_4h`, `high_4h` and `low_4h` are the chart's own market read at a coarser interval: `{ interval: \"4h\", missing: \"carry\" }` on each. The host fetches the real 4h feed and lands each candle's value on the first primary row whose close is at or after that candle's close, then carries it forward until the next candle lands, so inside a 4h period the three values hold one closed candle and never the forming one. On a 1h chart the candle that opened at 00:00 closes at 04:00, lands on the row that closes at 04:00 (the 03:00 row) and is carried across the 04:00, 05:00 and 06:00 rows; the 07:00 row brings the next one. The primary input `close` stays unpinned and selector-following, as always: it defines the grid the 4h values are projected onto.\n\n**One entry per closed candle.** `t` is `time.bar_open_sec`, the bar's open time in epoch seconds; the gap between two consecutive readings is the bar's width, so `t + width` is the row's close and `floor((t + width) / 14400) - 1` is the id of the last 4h candle closed at or before it, the candle the landing rule delivers on that row. The ring is four module-level arrays (`times`, `closes`, `highs`, `lows`) plus two for the 4h EMAs, 200 entries indexed by `head` and `count`, so it survives from bar to bar exactly like the accumulator in [Aggregated CVD](aggregated-cvd.md). A row whose id differs from the newest entry's appends an entry keyed by the candle's open time (`id * 14400`); a row with the same id replaces the newest entry's close, high and low with the delivered values, because the delivered candle is one closed candle and not a running fold. That is what keeps the ring honest under the carry: the four 1h rows that hold the 00:00 candle are one entry, never a second entry holding the same candle, and a value that lands a row late corrects the entry it belongs to instead of merging two candles' highs and lows. The first row of a run has no width yet and skips the ring; the next row appends the same candle.\n\n**True 4h EMAs.** The 4h EMA 8 and EMA 21 in the side window are computed from the ring, not from primary bars: when an entry is appended, its EMA is one step from the entry before it (`ema(prev, x, n)`, seeded by the first candle), and a replaced close redoes that one step. They step once per 4h candle and never see a 1m close, which is what makes them 4h EMAs rather than resampled ones. The chart's own EMA 21 and EMA 55 are ordinary `Ema` helpers from `./sdk/ta` fed the primary close every bar, and `state()` returns `0` until the slower one has warmed up.\n\n**Two frames, two views.** `context` (16 KiB) holds the side window: one row per candle closed inside the last `span` chart bars (up to the ring's 200), oldest first, `[the candle's open in epoch seconds, 4h close, 4h EMA 8, 4h EMA 21]`, and `panel.line` draws it beside the chart with `place: \"side\"`, `x: \"time\"` and three named series. The rows are appended as UTF-8 bytes into one preallocated buffer through `put(...)` and decoded into a string once: the sandbox lets no memory grow after `init()` and the stub runtime never frees, so a string grown with `+=` or an `Array` join, which copies the whole text again for every row, would cost megabytes at 200 rows, while the buffer costs one short string per number, about 72 KiB in all, which the two pages `init()` reserves with `memory.grow(2)` pay for. `swings` (2 KiB) holds `{ prices: [low, high], values: [1, 1], colors: [...] }`, the lowest 4h low and the highest 4h high over the last `lookback` entries, and `plot.levels` docks it on the right price axis with labels. Both writes sit under `bar.isLast()`: a frame is a snapshot of the run whose last write wins, so closed bars build no JSON at all. Level prices must be strictly increasing, so when the two are equal the write is skipped and the previous snapshot stands. The two colors come from the primary `high` and `low`: a level turns white on the bar whose range reaches it, and amber otherwise.\n\n**The bias.** `bias` is `+1` when the close is above both EMAs and the newest 4h close is above its 4h EMA 21, `-1` when the close is below both and the 4h close is below its 4h EMA 21, and `0` for anything mixed. It is a histogram in the lower pane and a metric on your machine, so a watch can read it without the chart.\n\n## What kScript (legacy) could not do\n\n- No side window of another timeframe: every plot sat on the chart's own time axis, so a 4h series could only be stretched across 1m bars as an overlay. Here `panel.line` with `place: \"side\"` draws the ring on its own time axis, one point per 4h candle.\n- No docked levels on the price axis: a level was a horizontal line across the pane. Here `plot.levels` docks the two swing prices on the right axis with labels and a color per level.\n- No ring of coarse candles inside the script: `htf()` handed back one value per bar. Here the module keeps the last 200 closed 4h candles itself and writes them as one snapshot.\n- No per-input interval: the script's inputs shared the chart's interval. Here `{ interval: \"4h\" }` is a word on the input, honored as of each candle's close.\n\n## Customize it\n\n- **Span and lookback.** `span` (56 to 500) is how many chart bars a read covers: the side window lists every 4h candle closed inside them, up to the ring's 200 (480 bars of 1h hold 120 candles; a 4h chart fills the ring), and a metric read or a watch on your machine fetches `span` bars, so the primary EMA 55 is always warm (a read sizes itself to a window param up to 500 bars). `lookback` (2 to 100) is how many candles the swing levels span. Both are params, so the chart user changes them without a rebuild. A ring above 200 needs a larger `MAX` and a larger `bytes` buffer and `context` frame: a row is about 65 bytes, so 200 rows fit the 16 KiB frame.\n- **EMA lengths.** The chart's EMAs are `new Ema(21)` and `new Ema(55)`; the 4h ones are the `8.0` and `21.0` passed to `ema(...)` in `state()`. Rename the outputs and the series titles to match.\n- **Another candle.** Change `H4` to `86400.0` and the interval to `\"1d\"` on the three pinned inputs for a daily window; the candle id and the ring stay the same.\n- **Where the views sit.** `place: \"below\"` puts the window under the chart instead of beside it; `dock: \"left\"` moves the levels; `width_frac` (0.05 to 0.5) widens the docked strip and `poc: true` marks the larger of the two values.\n- **A graded bias.** Count the three conditions instead of requiring all of them: `i32(close > fast) + i32(close > slow) + i32(c4Now > e21Now)` minus the same three for below gives a value from `-3` to `+3`, and the histogram shows how much of the stack agrees.\n\nScaffold, build, install, and read the bias on your machine:\n\n```bash\nom wrun create @you/multi-timeframe-terminal ./multi-timeframe-terminal --template multi-timeframe-terminal\nom wrun build ./multi-timeframe-terminal\nom wrun install ./multi-timeframe-terminal --replace\nom metric series --metric wrun/@you/multi-timeframe-terminal/bias --symbol BTCUSDT --exchange BINANCE_FUTURES --bars 20\n```\n\n## Concepts used\n\n- [Multi-timeframe](../core-concepts/multi-timeframe.md) for the `interval` pin, the as-of-close landing rule and the row's close from `time.bar_open_sec`\n- [Drawing primitives](../functions/drawing-primitives.md) for frames, side panels and docked levels\n- [Moving averages](../functions/moving-averages.md) for the `Ema` helper behind the chart's own lines\n- [Time and sessions](../core-concepts/time-and-sessions.md) for candle math on epoch seconds\n- [Execution model](../core-concepts/execution-model.md) for module-level state and where the live bar is evaluated\n- [Data sources](../core-concepts/data-sources.md) for the `missing` policies on a pinned input\n",{"type":13,"children":14,"data":7441,"position":7443},"root",[15,25,28,29,107,108,149,150,169,170,5150,5151,5168,5169,5301,5302,5572,5573,5702,5703,6105,6106,6212,6213,6230,6231,6399,6400,6416,6417,6995,6996,7011,7012,7163,7164,7180,7181],{"type":16,"value":17,"position":18},"comment"," source: docs/indicators/cookbook/multi-timeframe-terminal.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit ",{"start":19,"end":22},{"line":20,"column":20,"offset":21},1,0,{"line":20,"column":23,"offset":24},140,139,{"type":26,"value":27},"text","\n",{"type":26,"value":27},{"type":30,"tagName":31,"properties":32,"children":33,"position":104},"element","p",{},[34,43,57,64,77,84,97],{"type":26,"value":35,"position":36},"The chart's own trend on the price pane, a side window of the 4h context, and the last 4h swing levels docked on the price axis, all from one file. Two EMA lines (21 and 55) sit on the candles and a bias histogram sits below them; a line panel placed at the side draws the 4h closes of every candle closed inside the last ",{"start":37,"end":40},{"line":38,"column":20,"offset":39},5,169,{"line":38,"column":41,"offset":42},323,491,{"type":30,"tagName":44,"properties":45,"children":46,"position":54},"code",{},[47],{"type":26,"value":48,"position":49},"span",{"start":50,"end":51},{"line":38,"column":41,"offset":42},{"line":38,"column":52,"offset":53},329,497,{"start":55,"end":56},{"line":38,"column":41,"offset":42},{"line":38,"column":52,"offset":53},{"type":26,"value":58,"position":59}," chart bars (480 by default, up to 200 candles) with their 4h EMA 8 and EMA 21 on their own time axis; two levels docked on the right price axis mark the lowest 4h low and the highest 4h high of the last 12 4h candles, each lighting up on the bar that tags it. The kScript (legacy) precedent is MMT's Multi-timeframe terminal; here the coarse candles come in through three inputs pinned to ",{"start":60,"end":61},{"line":38,"column":52,"offset":53},{"line":38,"column":62,"offset":63},719,887,{"type":30,"tagName":44,"properties":65,"children":66,"position":74},{},[67],{"type":26,"value":68,"position":69},"4h",{"start":70,"end":71},{"line":38,"column":62,"offset":63},{"line":38,"column":72,"offset":73},723,891,{"start":75,"end":76},{"line":38,"column":62,"offset":63},{"line":38,"column":72,"offset":73},{"type":26,"value":78,"position":79},", and every view is a frame the package writes on the live bar. This is also the ",{"start":80,"end":81},{"line":38,"column":72,"offset":73},{"line":38,"column":82,"offset":83},804,972,{"type":30,"tagName":44,"properties":85,"children":86,"position":94},{},[87],{"type":26,"value":88,"position":89},"multi-timeframe-terminal",{"start":90,"end":91},{"line":38,"column":82,"offset":83},{"line":38,"column":92,"offset":93},830,998,{"start":95,"end":96},{"line":38,"column":82,"offset":83},{"line":38,"column":92,"offset":93},{"type":26,"value":98,"position":99}," template.",{"start":100,"end":101},{"line":38,"column":92,"offset":93},{"line":38,"column":102,"offset":103},840,1008,{"start":105,"end":106},{"line":38,"column":20,"offset":39},{"line":38,"column":102,"offset":103},{"type":26,"value":27},{"type":30,"tagName":31,"properties":109,"children":110,"position":146},{},[111,120,139],{"type":26,"value":112,"position":113},"The 4h inputs follow the rule from ",{"start":114,"end":117},{"line":115,"column":20,"offset":116},7,1010,{"line":115,"column":118,"offset":119},36,1045,{"type":30,"tagName":121,"properties":122,"children":124,"position":134},"a",{"href":123},"../core-concepts/multi-timeframe.md",[125],{"type":26,"value":126,"position":127},"Multi-timeframe",{"start":128,"end":131},{"line":115,"column":129,"offset":130},37,1046,{"line":115,"column":132,"offset":133},52,1061,{"start":135,"end":136},{"line":115,"column":118,"offset":119},{"line":115,"column":137,"offset":138},90,1099,{"type":26,"value":140,"position":141},": a coarse value lands on the first primary row whose close is at or after that 4h candle's close and is carried until the next one lands, so no forming candle ever leaks into the window, the EMAs or the levels. The ring below is keyed on that rule, so a candle carried across several rows is one entry, never one per row.",{"start":142,"end":143},{"line":115,"column":137,"offset":138},{"line":115,"column":144,"offset":145},412,1421,{"start":147,"end":148},{"line":115,"column":20,"offset":116},{"line":115,"column":144,"offset":145},{"type":26,"value":27},{"type":30,"tagName":151,"properties":152,"children":154,"position":165},"h2",{"id":153},"the-indicator",[155],{"type":26,"value":156,"position":157},"The Indicator",{"start":158,"end":162},{"line":159,"column":160,"offset":161},9,4,1426,{"line":159,"column":163,"offset":164},17,1439,{"start":166,"end":168},{"line":159,"column":20,"offset":167},1423,{"line":159,"column":163,"offset":164},{"type":26,"value":27},{"type":13,"children":171},[172],{"type":30,"tagName":173,"properties":174,"children":178,"data":-1},"pre",{"class":175,"style":176,"tabindex":177},"shiki shiki-themes github-dark github-light","--shiki-dark:#e1e4e8;--shiki-light:#24292e;--shiki-dark-bg:#24292e;--shiki-light-bg:#fff","0",[179],{"type":30,"tagName":44,"properties":180,"children":181},{},[182,192,193,229,230,260,261,291,292,322,323,353,354,384,385,415,416,419,420,480,481,533,534,561,562,588,589,615,616,661,662,704,705,747,748,774,775,820,821,863,864,899,900,951,952,999,1000,1086,1087,1144,1145,1148,1149,1211,1212,1387,1388,1478,1479,1553,1554,1631,1632,1762,1763,1829,1830,2013,2014,2017,2018,2223,2224,2275,2276,2423,2424,2432,2433,2436,2437,2445,2446,2454,2455,2545,2546,2554,2555,2563,2564,2572,2573,2606,2607,2717,2718,2790,2791,2875,2876,2958,2959,3084,3085,3125,3126,3210,3211,3313,3314,3322,3323,3423,3424,3613,3614,3650,3651,3658,3659,3667,3668,3676,3677,3709,3710,3743,3744,3787,3788,3852,3853,3970,3971,4014,4015,4083,4084,4182,4183,4332,4333,4341,4342,4421,4422,4520,4521,4655,4656,4682,4683,4785,4786,4905,4906,4913,4914,4921,4922,4934,4935,4942,4943,4951,4952],{"type":30,"tagName":48,"properties":183,"children":185},{"class":184},"line",[186],{"type":30,"tagName":48,"properties":187,"children":189},{"style":188},"--shiki-dark:#6A737D;--shiki-light:#6A737D",[190],{"type":26,"value":191},"// A multi-timeframe terminal: the chart's own trend on the price pane, a side window of the 4h context, and the last 4h swing levels docked on the price axis.",{"type":26,"value":27},{"type":30,"tagName":48,"properties":194,"children":195},{"class":184},[196,202,208,213,219,224],{"type":30,"tagName":48,"properties":197,"children":199},{"style":198},"--shiki-dark:#F97583;--shiki-light:#D73A49",[200],{"type":26,"value":201},"import",{"type":30,"tagName":48,"properties":203,"children":205},{"style":204},"--shiki-dark:#E1E4E8;--shiki-light:#24292E",[206],{"type":26,"value":207}," { frame, histogram, input, line, lower, ohlcv, output, overlay, panel, param, plot, time } ",{"type":30,"tagName":48,"properties":209,"children":210},{"style":198},[211],{"type":26,"value":212},"from",{"type":30,"tagName":48,"properties":214,"children":216},{"style":215},"--shiki-dark:#9ECBFF;--shiki-light:#032F62",[217],{"type":26,"value":218}," \"./sdk/declare\"",{"type":30,"tagName":48,"properties":220,"children":221},{"style":204},[222],{"type":26,"value":223},"; ",{"type":30,"tagName":48,"properties":225,"children":226},{"style":188},[227],{"type":26,"value":228},"// the declaring words",{"type":26,"value":27},{"type":30,"tagName":48,"properties":231,"children":232},{"class":184},[233,237,242,246,251,255],{"type":30,"tagName":48,"properties":234,"children":235},{"style":198},[236],{"type":26,"value":201},{"type":30,"tagName":48,"properties":238,"children":239},{"style":204},[240],{"type":26,"value":241}," { bar } ",{"type":30,"tagName":48,"properties":243,"children":244},{"style":198},[245],{"type":26,"value":212},{"type":30,"tagName":48,"properties":247,"children":248},{"style":215},[249],{"type":26,"value":250}," \"./gen/draw\"",{"type":30,"tagName":48,"properties":252,"children":253},{"style":204},[254],{"type":26,"value":223},{"type":30,"tagName":48,"properties":256,"children":257},{"style":188},[258],{"type":26,"value":259},"// the last-bar signal",{"type":26,"value":27},{"type":30,"tagName":48,"properties":262,"children":263},{"class":184},[264,268,273,277,282,286],{"type":30,"tagName":48,"properties":265,"children":266},{"style":198},[267],{"type":26,"value":201},{"type":30,"tagName":48,"properties":269,"children":270},{"style":204},[271],{"type":26,"value":272}," { FRAME_CONTEXT, FRAME_SWINGS, writeFrame } ",{"type":30,"tagName":48,"properties":274,"children":275},{"style":198},[276],{"type":26,"value":212},{"type":30,"tagName":48,"properties":278,"children":279},{"style":215},[280],{"type":26,"value":281}," \"./gen/frames\"",{"type":30,"tagName":48,"properties":283,"children":284},{"style":204},[285],{"type":26,"value":223},{"type":30,"tagName":48,"properties":287,"children":288},{"style":188},[289],{"type":26,"value":290},"// generated: a slot constant per frame declared below, plus the writer",{"type":26,"value":27},{"type":30,"tagName":48,"properties":293,"children":294},{"class":184},[295,299,304,308,313,317],{"type":30,"tagName":48,"properties":296,"children":297},{"style":198},[298],{"type":26,"value":201},{"type":30,"tagName":48,"properties":300,"children":301},{"style":204},[302],{"type":26,"value":303}," { in_close, in_close_4h, in_high, in_high_4h, in_low, in_low_4h, in_t } ",{"type":30,"tagName":48,"properties":305,"children":306},{"style":198},[307],{"type":26,"value":212},{"type":30,"tagName":48,"properties":309,"children":310},{"style":215},[311],{"type":26,"value":312}," \"./gen/inputs\"",{"type":30,"tagName":48,"properties":314,"children":315},{"style":204},[316],{"type":26,"value":223},{"type":30,"tagName":48,"properties":318,"children":319},{"style":188},[320],{"type":26,"value":321},"// generated: an in_ reader for each input",{"type":26,"value":27},{"type":30,"tagName":48,"properties":324,"children":325},{"class":184},[326,330,335,339,344,348],{"type":30,"tagName":48,"properties":327,"children":328},{"style":198},[329],{"type":26,"value":201},{"type":30,"tagName":48,"properties":331,"children":332},{"style":204},[333],{"type":26,"value":334}," { emitRow, out_bias, out_ema21, out_ema55 } ",{"type":30,"tagName":48,"properties":336,"children":337},{"style":198},[338],{"type":26,"value":212},{"type":30,"tagName":48,"properties":340,"children":341},{"style":215},[342],{"type":26,"value":343}," \"./gen/outputs\"",{"type":30,"tagName":48,"properties":345,"children":346},{"style":204},[347],{"type":26,"value":223},{"type":30,"tagName":48,"properties":349,"children":350},{"style":188},[351],{"type":26,"value":352},"// generated: an out_ writer per output, plus emitRow",{"type":26,"value":27},{"type":30,"tagName":48,"properties":355,"children":356},{"class":184},[357,361,366,370,375,379],{"type":30,"tagName":48,"properties":358,"children":359},{"style":198},[360],{"type":26,"value":201},{"type":30,"tagName":48,"properties":362,"children":363},{"style":204},[364],{"type":26,"value":365}," { p_lookback, p_span } ",{"type":30,"tagName":48,"properties":367,"children":368},{"style":198},[369],{"type":26,"value":212},{"type":30,"tagName":48,"properties":371,"children":372},{"style":215},[373],{"type":26,"value":374}," \"./gen/params\"",{"type":30,"tagName":48,"properties":376,"children":377},{"style":204},[378],{"type":26,"value":223},{"type":30,"tagName":48,"properties":380,"children":381},{"style":188},[382],{"type":26,"value":383},"// generated: a p_ reader per param declared below",{"type":26,"value":27},{"type":30,"tagName":48,"properties":386,"children":387},{"class":184},[388,392,397,401,406,410],{"type":30,"tagName":48,"properties":389,"children":390},{"style":198},[391],{"type":26,"value":201},{"type":30,"tagName":48,"properties":393,"children":394},{"style":204},[395],{"type":26,"value":396}," { Ema } ",{"type":30,"tagName":48,"properties":398,"children":399},{"style":198},[400],{"type":26,"value":212},{"type":30,"tagName":48,"properties":402,"children":403},{"style":215},[404],{"type":26,"value":405}," \"./sdk/ta\"",{"type":30,"tagName":48,"properties":407,"children":408},{"style":204},[409],{"type":26,"value":223},{"type":30,"tagName":48,"properties":411,"children":412},{"style":188},[413],{"type":26,"value":414},"// the moving-average helper for the chart's own two EMAs",{"type":26,"value":27},{"type":30,"tagName":48,"properties":417,"children":418},{"class":184},[],{"type":26,"value":27},{"type":30,"tagName":48,"properties":421,"children":422},{"class":184},[423,429,434,439,444,450,455,460,465,470,475],{"type":30,"tagName":48,"properties":424,"children":426},{"style":425},"--shiki-dark:#B392F0;--shiki-light:#6F42C1",[427],{"type":26,"value":428},"param",{"type":30,"tagName":48,"properties":430,"children":431},{"style":204},[432],{"type":26,"value":433},"(",{"type":30,"tagName":48,"properties":435,"children":436},{"style":215},[437],{"type":26,"value":438},"\"span\"",{"type":30,"tagName":48,"properties":440,"children":441},{"style":204},[442],{"type":26,"value":443},", ",{"type":30,"tagName":48,"properties":445,"children":447},{"style":446},"--shiki-dark:#79B8FF;--shiki-light:#005CC5",[448],{"type":26,"value":449},"480",{"type":30,"tagName":48,"properties":451,"children":452},{"style":204},[453],{"type":26,"value":454},", { min: ",{"type":30,"tagName":48,"properties":456,"children":457},{"style":446},[458],{"type":26,"value":459},"56",{"type":30,"tagName":48,"properties":461,"children":462},{"style":204},[463],{"type":26,"value":464},", max: ",{"type":30,"tagName":48,"properties":466,"children":467},{"style":446},[468],{"type":26,"value":469},"500",{"type":30,"tagName":48,"properties":471,"children":472},{"style":204},[473],{"type":26,"value":474}," }); ",{"type":30,"tagName":48,"properties":476,"children":477},{"style":188},[478],{"type":26,"value":479},"// chart bars a read covers: the side window lists every 4h candle closed inside them (up to the ring's 200), and a metric read fetches that many bars",{"type":26,"value":27},{"type":30,"tagName":48,"properties":482,"children":483},{"class":184},[484,488,492,497,501,506,510,515,519,524,528],{"type":30,"tagName":48,"properties":485,"children":486},{"style":425},[487],{"type":26,"value":428},{"type":30,"tagName":48,"properties":489,"children":490},{"style":204},[491],{"type":26,"value":433},{"type":30,"tagName":48,"properties":493,"children":494},{"style":215},[495],{"type":26,"value":496},"\"lookback\"",{"type":30,"tagName":48,"properties":498,"children":499},{"style":204},[500],{"type":26,"value":443},{"type":30,"tagName":48,"properties":502,"children":503},{"style":446},[504],{"type":26,"value":505},"12",{"type":30,"tagName":48,"properties":507,"children":508},{"style":204},[509],{"type":26,"value":454},{"type":30,"tagName":48,"properties":511,"children":512},{"style":446},[513],{"type":26,"value":514},"2",{"type":30,"tagName":48,"properties":516,"children":517},{"style":204},[518],{"type":26,"value":464},{"type":30,"tagName":48,"properties":520,"children":521},{"style":446},[522],{"type":26,"value":523},"100",{"type":30,"tagName":48,"properties":525,"children":526},{"style":204},[527],{"type":26,"value":474},{"type":30,"tagName":48,"properties":529,"children":530},{"style":188},[531],{"type":26,"value":532},"// 4h candles the swing levels span",{"type":26,"value":27},{"type":30,"tagName":48,"properties":535,"children":536},{"class":184},[537,542,546,551,556],{"type":30,"tagName":48,"properties":538,"children":539},{"style":425},[540],{"type":26,"value":541},"input",{"type":30,"tagName":48,"properties":543,"children":544},{"style":204},[545],{"type":26,"value":433},{"type":30,"tagName":48,"properties":547,"children":548},{"style":215},[549],{"type":26,"value":550},"\"close\"",{"type":30,"tagName":48,"properties":552,"children":553},{"style":204},[554],{"type":26,"value":555},", ohlcv.close); ",{"type":30,"tagName":48,"properties":557,"children":558},{"style":188},[559],{"type":26,"value":560},"// the primary input: the chart's own candles define the grid every other input lines up on",{"type":26,"value":27},{"type":30,"tagName":48,"properties":563,"children":564},{"class":184},[565,569,573,578,583],{"type":30,"tagName":48,"properties":566,"children":567},{"style":425},[568],{"type":26,"value":541},{"type":30,"tagName":48,"properties":570,"children":571},{"style":204},[572],{"type":26,"value":433},{"type":30,"tagName":48,"properties":574,"children":575},{"style":215},[576],{"type":26,"value":577},"\"high\"",{"type":30,"tagName":48,"properties":579,"children":580},{"style":204},[581],{"type":26,"value":582},", ohlcv.high); ",{"type":30,"tagName":48,"properties":584,"children":585},{"style":188},[586],{"type":26,"value":587},"// this bar's high: it lights the swing high on the bar that tags it",{"type":26,"value":27},{"type":30,"tagName":48,"properties":590,"children":591},{"class":184},[592,596,600,605,610],{"type":30,"tagName":48,"properties":593,"children":594},{"style":425},[595],{"type":26,"value":541},{"type":30,"tagName":48,"properties":597,"children":598},{"style":204},[599],{"type":26,"value":433},{"type":30,"tagName":48,"properties":601,"children":602},{"style":215},[603],{"type":26,"value":604},"\"low\"",{"type":30,"tagName":48,"properties":606,"children":607},{"style":204},[608],{"type":26,"value":609},", ohlcv.low); ",{"type":30,"tagName":48,"properties":611,"children":612},{"style":188},[613],{"type":26,"value":614},"// this bar's low: the same for the swing low",{"type":26,"value":27},{"type":30,"tagName":48,"properties":617,"children":618},{"class":184},[619,623,627,632,637,642,647,652,656],{"type":30,"tagName":48,"properties":620,"children":621},{"style":425},[622],{"type":26,"value":541},{"type":30,"tagName":48,"properties":624,"children":625},{"style":204},[626],{"type":26,"value":433},{"type":30,"tagName":48,"properties":628,"children":629},{"style":215},[630],{"type":26,"value":631},"\"close_4h\"",{"type":30,"tagName":48,"properties":633,"children":634},{"style":204},[635],{"type":26,"value":636},", ohlcv.close, { interval: ",{"type":30,"tagName":48,"properties":638,"children":639},{"style":215},[640],{"type":26,"value":641},"\"4h\"",{"type":30,"tagName":48,"properties":643,"children":644},{"style":204},[645],{"type":26,"value":646},", missing: ",{"type":30,"tagName":48,"properties":648,"children":649},{"style":215},[650],{"type":26,"value":651},"\"carry\"",{"type":30,"tagName":48,"properties":653,"children":654},{"style":204},[655],{"type":26,"value":474},{"type":30,"tagName":48,"properties":657,"children":658},{"style":188},[659],{"type":26,"value":660},"// the 4h close, landing on the first row whose close is at or after the candle's close, then carried",{"type":26,"value":27},{"type":30,"tagName":48,"properties":663,"children":664},{"class":184},[665,669,673,678,683,687,691,695,699],{"type":30,"tagName":48,"properties":666,"children":667},{"style":425},[668],{"type":26,"value":541},{"type":30,"tagName":48,"properties":670,"children":671},{"style":204},[672],{"type":26,"value":433},{"type":30,"tagName":48,"properties":674,"children":675},{"style":215},[676],{"type":26,"value":677},"\"high_4h\"",{"type":30,"tagName":48,"properties":679,"children":680},{"style":204},[681],{"type":26,"value":682},", ohlcv.high, { interval: ",{"type":30,"tagName":48,"properties":684,"children":685},{"style":215},[686],{"type":26,"value":641},{"type":30,"tagName":48,"properties":688,"children":689},{"style":204},[690],{"type":26,"value":646},{"type":30,"tagName":48,"properties":692,"children":693},{"style":215},[694],{"type":26,"value":651},{"type":30,"tagName":48,"properties":696,"children":697},{"style":204},[698],{"type":26,"value":474},{"type":30,"tagName":48,"properties":700,"children":701},{"style":188},[702],{"type":26,"value":703},"// the 4h high, the same landing rule",{"type":26,"value":27},{"type":30,"tagName":48,"properties":706,"children":707},{"class":184},[708,712,716,721,726,730,734,738,742],{"type":30,"tagName":48,"properties":709,"children":710},{"style":425},[711],{"type":26,"value":541},{"type":30,"tagName":48,"properties":713,"children":714},{"style":204},[715],{"type":26,"value":433},{"type":30,"tagName":48,"properties":717,"children":718},{"style":215},[719],{"type":26,"value":720},"\"low_4h\"",{"type":30,"tagName":48,"properties":722,"children":723},{"style":204},[724],{"type":26,"value":725},", ohlcv.low, { interval: ",{"type":30,"tagName":48,"properties":727,"children":728},{"style":215},[729],{"type":26,"value":641},{"type":30,"tagName":48,"properties":731,"children":732},{"style":204},[733],{"type":26,"value":646},{"type":30,"tagName":48,"properties":735,"children":736},{"style":215},[737],{"type":26,"value":651},{"type":30,"tagName":48,"properties":739,"children":740},{"style":204},[741],{"type":26,"value":474},{"type":30,"tagName":48,"properties":743,"children":744},{"style":188},[745],{"type":26,"value":746},"// the 4h low",{"type":26,"value":27},{"type":30,"tagName":48,"properties":749,"children":750},{"class":184},[751,755,759,764,769],{"type":30,"tagName":48,"properties":752,"children":753},{"style":425},[754],{"type":26,"value":541},{"type":30,"tagName":48,"properties":756,"children":757},{"style":204},[758],{"type":26,"value":433},{"type":30,"tagName":48,"properties":760,"children":761},{"style":215},[762],{"type":26,"value":763},"\"t\"",{"type":30,"tagName":48,"properties":765,"children":766},{"style":204},[767],{"type":26,"value":768},", time.bar_open_sec); ",{"type":30,"tagName":48,"properties":770,"children":771},{"style":188},[772],{"type":26,"value":773},"// this bar's open time in epoch seconds; with the bar's width it gives the row's close, and so the last closed 4h candle",{"type":26,"value":27},{"type":30,"tagName":48,"properties":776,"children":777},{"class":184},[778,783,787,792,797,802,807,811,815],{"type":30,"tagName":48,"properties":779,"children":780},{"style":425},[781],{"type":26,"value":782},"output",{"type":30,"tagName":48,"properties":784,"children":785},{"style":204},[786],{"type":26,"value":433},{"type":30,"tagName":48,"properties":788,"children":789},{"style":215},[790],{"type":26,"value":791},"\"ema21\"",{"type":30,"tagName":48,"properties":793,"children":794},{"style":204},[795],{"type":26,"value":796},", line, overlay, { color: ",{"type":30,"tagName":48,"properties":798,"children":799},{"style":215},[800],{"type":26,"value":801},"\"#38bdf8\"",{"type":30,"tagName":48,"properties":803,"children":804},{"style":204},[805],{"type":26,"value":806},", width: ",{"type":30,"tagName":48,"properties":808,"children":809},{"style":446},[810],{"type":26,"value":514},{"type":30,"tagName":48,"properties":812,"children":813},{"style":204},[814],{"type":26,"value":474},{"type":30,"tagName":48,"properties":816,"children":817},{"style":188},[818],{"type":26,"value":819},"// the chart's own EMA 21",{"type":26,"value":27},{"type":30,"tagName":48,"properties":822,"children":823},{"class":184},[824,828,832,837,841,846,850,854,858],{"type":30,"tagName":48,"properties":825,"children":826},{"style":425},[827],{"type":26,"value":782},{"type":30,"tagName":48,"properties":829,"children":830},{"style":204},[831],{"type":26,"value":433},{"type":30,"tagName":48,"properties":833,"children":834},{"style":215},[835],{"type":26,"value":836},"\"ema55\"",{"type":30,"tagName":48,"properties":838,"children":839},{"style":204},[840],{"type":26,"value":796},{"type":30,"tagName":48,"properties":842,"children":843},{"style":215},[844],{"type":26,"value":845},"\"#f472b6\"",{"type":30,"tagName":48,"properties":847,"children":848},{"style":204},[849],{"type":26,"value":806},{"type":30,"tagName":48,"properties":851,"children":852},{"style":446},[853],{"type":26,"value":514},{"type":30,"tagName":48,"properties":855,"children":856},{"style":204},[857],{"type":26,"value":474},{"type":30,"tagName":48,"properties":859,"children":860},{"style":188},[861],{"type":26,"value":862},"// the chart's own EMA 55",{"type":26,"value":27},{"type":30,"tagName":48,"properties":865,"children":866},{"class":184},[867,871,875,880,885,890,894],{"type":30,"tagName":48,"properties":868,"children":869},{"style":425},[870],{"type":26,"value":782},{"type":30,"tagName":48,"properties":872,"children":873},{"style":204},[874],{"type":26,"value":433},{"type":30,"tagName":48,"properties":876,"children":877},{"style":215},[878],{"type":26,"value":879},"\"bias\"",{"type":30,"tagName":48,"properties":881,"children":882},{"style":204},[883],{"type":26,"value":884},", histogram, lower, { color: ",{"type":30,"tagName":48,"properties":886,"children":887},{"style":215},[888],{"type":26,"value":889},"\"#a3e635\"",{"type":30,"tagName":48,"properties":891,"children":892},{"style":204},[893],{"type":26,"value":474},{"type":30,"tagName":48,"properties":895,"children":896},{"style":188},[897],{"type":26,"value":898},"// +1 above both EMAs with the 4h close above its 4h EMA 21, -1 the mirror, else 0",{"type":26,"value":27},{"type":30,"tagName":48,"properties":901,"children":902},{"class":184},[903,908,913,918,923,927,932,937,942,946],{"type":30,"tagName":48,"properties":904,"children":905},{"style":198},[906],{"type":26,"value":907},"const",{"type":30,"tagName":48,"properties":909,"children":910},{"style":446},[911],{"type":26,"value":912}," context",{"type":30,"tagName":48,"properties":914,"children":915},{"style":198},[916],{"type":26,"value":917}," =",{"type":30,"tagName":48,"properties":919,"children":920},{"style":425},[921],{"type":26,"value":922}," frame",{"type":30,"tagName":48,"properties":924,"children":925},{"style":204},[926],{"type":26,"value":433},{"type":30,"tagName":48,"properties":928,"children":929},{"style":215},[930],{"type":26,"value":931},"\"context\"",{"type":30,"tagName":48,"properties":933,"children":934},{"style":204},[935],{"type":26,"value":936},", { max_bytes: ",{"type":30,"tagName":48,"properties":938,"children":939},{"style":446},[940],{"type":26,"value":941},"16384",{"type":30,"tagName":48,"properties":943,"children":944},{"style":204},[945],{"type":26,"value":474},{"type":30,"tagName":48,"properties":947,"children":948},{"style":188},[949],{"type":26,"value":950},"// the side window's rows, one per closed 4h candle",{"type":26,"value":27},{"type":30,"tagName":48,"properties":953,"children":954},{"class":184},[955,959,964,968,972,976,981,985,990,994],{"type":30,"tagName":48,"properties":956,"children":957},{"style":198},[958],{"type":26,"value":907},{"type":30,"tagName":48,"properties":960,"children":961},{"style":446},[962],{"type":26,"value":963}," swings",{"type":30,"tagName":48,"properties":965,"children":966},{"style":198},[967],{"type":26,"value":917},{"type":30,"tagName":48,"properties":969,"children":970},{"style":425},[971],{"type":26,"value":922},{"type":30,"tagName":48,"properties":973,"children":974},{"style":204},[975],{"type":26,"value":433},{"type":30,"tagName":48,"properties":977,"children":978},{"style":215},[979],{"type":26,"value":980},"\"swings\"",{"type":30,"tagName":48,"properties":982,"children":983},{"style":204},[984],{"type":26,"value":936},{"type":30,"tagName":48,"properties":986,"children":987},{"style":446},[988],{"type":26,"value":989},"2048",{"type":30,"tagName":48,"properties":991,"children":992},{"style":204},[993],{"type":26,"value":474},{"type":30,"tagName":48,"properties":995,"children":996},{"style":188},[997],{"type":26,"value":998},"// the two docked levels",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1001,"children":1002},{"class":184},[1003,1008,1012,1017,1022,1027,1032,1037,1042,1047,1052,1057,1062,1067,1072,1076,1081],{"type":30,"tagName":48,"properties":1004,"children":1005},{"style":204},[1006],{"type":26,"value":1007},"panel.",{"type":30,"tagName":48,"properties":1009,"children":1010},{"style":425},[1011],{"type":26,"value":184},{"type":30,"tagName":48,"properties":1013,"children":1014},{"style":204},[1015],{"type":26,"value":1016},"({ name: ",{"type":30,"tagName":48,"properties":1018,"children":1019},{"style":215},[1020],{"type":26,"value":1021},"\"context_window\"",{"type":30,"tagName":48,"properties":1023,"children":1024},{"style":204},[1025],{"type":26,"value":1026},", title: ",{"type":30,"tagName":48,"properties":1028,"children":1029},{"style":215},[1030],{"type":26,"value":1031},"\"4h context\"",{"type":30,"tagName":48,"properties":1033,"children":1034},{"style":204},[1035],{"type":26,"value":1036},", x: ",{"type":30,"tagName":48,"properties":1038,"children":1039},{"style":215},[1040],{"type":26,"value":1041},"\"time\"",{"type":30,"tagName":48,"properties":1043,"children":1044},{"style":204},[1045],{"type":26,"value":1046},", place: ",{"type":30,"tagName":48,"properties":1048,"children":1049},{"style":215},[1050],{"type":26,"value":1051},"\"side\"",{"type":30,"tagName":48,"properties":1053,"children":1054},{"style":204},[1055],{"type":26,"value":1056},", frame: context, series: [{ name: ",{"type":30,"tagName":48,"properties":1058,"children":1059},{"style":215},[1060],{"type":26,"value":1061},"\"4h close\"",{"type":30,"tagName":48,"properties":1063,"children":1064},{"style":204},[1065],{"type":26,"value":1066}," }, { name: ",{"type":30,"tagName":48,"properties":1068,"children":1069},{"style":215},[1070],{"type":26,"value":1071},"\"4h EMA 8\"",{"type":30,"tagName":48,"properties":1073,"children":1074},{"style":204},[1075],{"type":26,"value":1066},{"type":30,"tagName":48,"properties":1077,"children":1078},{"style":215},[1079],{"type":26,"value":1080},"\"4h EMA 21\"",{"type":30,"tagName":48,"properties":1082,"children":1083},{"style":204},[1084],{"type":26,"value":1085}," }] });",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1088,"children":1089},{"class":184},[1090,1095,1100,1104,1109,1114,1119,1124,1129,1134,1139],{"type":30,"tagName":48,"properties":1091,"children":1092},{"style":204},[1093],{"type":26,"value":1094},"plot.",{"type":30,"tagName":48,"properties":1096,"children":1097},{"style":425},[1098],{"type":26,"value":1099},"levels",{"type":30,"tagName":48,"properties":1101,"children":1102},{"style":204},[1103],{"type":26,"value":1016},{"type":30,"tagName":48,"properties":1105,"children":1106},{"style":215},[1107],{"type":26,"value":1108},"\"swing_levels\"",{"type":30,"tagName":48,"properties":1110,"children":1111},{"style":204},[1112],{"type":26,"value":1113},", frame: swings, dock: ",{"type":30,"tagName":48,"properties":1115,"children":1116},{"style":215},[1117],{"type":26,"value":1118},"\"right\"",{"type":30,"tagName":48,"properties":1120,"children":1121},{"style":204},[1122],{"type":26,"value":1123},", labels: ",{"type":30,"tagName":48,"properties":1125,"children":1126},{"style":446},[1127],{"type":26,"value":1128},"true",{"type":30,"tagName":48,"properties":1130,"children":1131},{"style":204},[1132],{"type":26,"value":1133},", color: ",{"type":30,"tagName":48,"properties":1135,"children":1136},{"style":215},[1137],{"type":26,"value":1138},"\"#f5a623\"",{"type":30,"tagName":48,"properties":1140,"children":1141},{"style":204},[1142],{"type":26,"value":1143}," });",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1146,"children":1147},{"class":184},[],{"type":26,"value":27},{"type":30,"tagName":48,"properties":1150,"children":1151},{"class":184},[1152,1156,1161,1166,1171,1175,1180,1184,1188,1193,1197,1202,1206],{"type":30,"tagName":48,"properties":1153,"children":1154},{"style":198},[1155],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1157,"children":1158},{"style":446},[1159],{"type":26,"value":1160}," H4",{"type":30,"tagName":48,"properties":1162,"children":1163},{"style":198},[1164],{"type":26,"value":1165},":",{"type":30,"tagName":48,"properties":1167,"children":1168},{"style":425},[1169],{"type":26,"value":1170}," f64",{"type":30,"tagName":48,"properties":1172,"children":1173},{"style":198},[1174],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1176,"children":1177},{"style":446},[1178],{"type":26,"value":1179}," 14400.0",{"type":30,"tagName":48,"properties":1181,"children":1182},{"style":204},[1183],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1185,"children":1186},{"style":198},[1187],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1189,"children":1190},{"style":446},[1191],{"type":26,"value":1192}," MAX",{"type":30,"tagName":48,"properties":1194,"children":1195},{"style":198},[1196],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1198,"children":1199},{"style":446},[1200],{"type":26,"value":1201}," 200",{"type":30,"tagName":48,"properties":1203,"children":1204},{"style":204},[1205],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1207,"children":1208},{"style":188},[1209],{"type":26,"value":1210},"// the candle width in seconds; the ring holds the last 200 closed candles",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1213,"children":1214},{"class":184},[1215,1219,1224,1228,1233,1238,1243,1248,1253,1258,1263,1267,1272,1276,1280,1284,1288,1292,1296,1300,1304,1308,1313,1317,1321,1325,1329,1333,1337,1341,1345,1349,1354,1358,1362,1366,1370,1374,1378,1382],{"type":30,"tagName":48,"properties":1216,"children":1217},{"style":198},[1218],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1220,"children":1221},{"style":446},[1222],{"type":26,"value":1223}," times",{"type":30,"tagName":48,"properties":1225,"children":1226},{"style":198},[1227],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1229,"children":1230},{"style":198},[1231],{"type":26,"value":1232}," new",{"type":30,"tagName":48,"properties":1234,"children":1235},{"style":425},[1236],{"type":26,"value":1237}," StaticArray",{"type":30,"tagName":48,"properties":1239,"children":1240},{"style":204},[1241],{"type":26,"value":1242},"\u003C",{"type":30,"tagName":48,"properties":1244,"children":1245},{"style":425},[1246],{"type":26,"value":1247},"f64",{"type":30,"tagName":48,"properties":1249,"children":1250},{"style":204},[1251],{"type":26,"value":1252},">(",{"type":30,"tagName":48,"properties":1254,"children":1255},{"style":446},[1256],{"type":26,"value":1257},"MAX",{"type":30,"tagName":48,"properties":1259,"children":1260},{"style":204},[1261],{"type":26,"value":1262},"); ",{"type":30,"tagName":48,"properties":1264,"children":1265},{"style":198},[1266],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1268,"children":1269},{"style":446},[1270],{"type":26,"value":1271}," closes",{"type":30,"tagName":48,"properties":1273,"children":1274},{"style":198},[1275],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1277,"children":1278},{"style":198},[1279],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1281,"children":1282},{"style":425},[1283],{"type":26,"value":1237},{"type":30,"tagName":48,"properties":1285,"children":1286},{"style":204},[1287],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":1289,"children":1290},{"style":425},[1291],{"type":26,"value":1247},{"type":30,"tagName":48,"properties":1293,"children":1294},{"style":204},[1295],{"type":26,"value":1252},{"type":30,"tagName":48,"properties":1297,"children":1298},{"style":446},[1299],{"type":26,"value":1257},{"type":30,"tagName":48,"properties":1301,"children":1302},{"style":204},[1303],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1305,"children":1306},{"style":198},[1307],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1309,"children":1310},{"style":446},[1311],{"type":26,"value":1312}," highs",{"type":30,"tagName":48,"properties":1314,"children":1315},{"style":198},[1316],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1318,"children":1319},{"style":198},[1320],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1322,"children":1323},{"style":425},[1324],{"type":26,"value":1237},{"type":30,"tagName":48,"properties":1326,"children":1327},{"style":204},[1328],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":1330,"children":1331},{"style":425},[1332],{"type":26,"value":1247},{"type":30,"tagName":48,"properties":1334,"children":1335},{"style":204},[1336],{"type":26,"value":1252},{"type":30,"tagName":48,"properties":1338,"children":1339},{"style":446},[1340],{"type":26,"value":1257},{"type":30,"tagName":48,"properties":1342,"children":1343},{"style":204},[1344],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1346,"children":1347},{"style":198},[1348],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1350,"children":1351},{"style":446},[1352],{"type":26,"value":1353}," lows",{"type":30,"tagName":48,"properties":1355,"children":1356},{"style":198},[1357],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1359,"children":1360},{"style":198},[1361],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1363,"children":1364},{"style":425},[1365],{"type":26,"value":1237},{"type":30,"tagName":48,"properties":1367,"children":1368},{"style":204},[1369],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":1371,"children":1372},{"style":425},[1373],{"type":26,"value":1247},{"type":30,"tagName":48,"properties":1375,"children":1376},{"style":204},[1377],{"type":26,"value":1252},{"type":30,"tagName":48,"properties":1379,"children":1380},{"style":446},[1381],{"type":26,"value":1257},{"type":30,"tagName":48,"properties":1383,"children":1384},{"style":204},[1385],{"type":26,"value":1386},");",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1389,"children":1390},{"class":184},[1391,1395,1400,1404,1408,1412,1416,1420,1424,1428,1432,1436,1441,1445,1449,1453,1457,1461,1465,1469,1473],{"type":30,"tagName":48,"properties":1392,"children":1393},{"style":198},[1394],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1396,"children":1397},{"style":446},[1398],{"type":26,"value":1399}," ema8s",{"type":30,"tagName":48,"properties":1401,"children":1402},{"style":198},[1403],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1405,"children":1406},{"style":198},[1407],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1409,"children":1410},{"style":425},[1411],{"type":26,"value":1237},{"type":30,"tagName":48,"properties":1413,"children":1414},{"style":204},[1415],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":1417,"children":1418},{"style":425},[1419],{"type":26,"value":1247},{"type":30,"tagName":48,"properties":1421,"children":1422},{"style":204},[1423],{"type":26,"value":1252},{"type":30,"tagName":48,"properties":1425,"children":1426},{"style":446},[1427],{"type":26,"value":1257},{"type":30,"tagName":48,"properties":1429,"children":1430},{"style":204},[1431],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1433,"children":1434},{"style":198},[1435],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1437,"children":1438},{"style":446},[1439],{"type":26,"value":1440}," ema21s",{"type":30,"tagName":48,"properties":1442,"children":1443},{"style":198},[1444],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1446,"children":1447},{"style":198},[1448],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1450,"children":1451},{"style":425},[1452],{"type":26,"value":1237},{"type":30,"tagName":48,"properties":1454,"children":1455},{"style":204},[1456],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":1458,"children":1459},{"style":425},[1460],{"type":26,"value":1247},{"type":30,"tagName":48,"properties":1462,"children":1463},{"style":204},[1464],{"type":26,"value":1252},{"type":30,"tagName":48,"properties":1466,"children":1467},{"style":446},[1468],{"type":26,"value":1257},{"type":30,"tagName":48,"properties":1470,"children":1471},{"style":204},[1472],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1474,"children":1475},{"style":188},[1476],{"type":26,"value":1477},"// the 4h EMAs, one value per ring entry, stepped from the entry before",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1480,"children":1481},{"class":184},[1482,1486,1491,1495,1499,1503,1507,1512,1516,1520,1524,1529,1534,1539,1544,1548],{"type":30,"tagName":48,"properties":1483,"children":1484},{"style":198},[1485],{"type":26,"value":907},{"type":30,"tagName":48,"properties":1487,"children":1488},{"style":446},[1489],{"type":26,"value":1490}," bytes",{"type":30,"tagName":48,"properties":1492,"children":1493},{"style":198},[1494],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1496,"children":1497},{"style":198},[1498],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1500,"children":1501},{"style":425},[1502],{"type":26,"value":1237},{"type":30,"tagName":48,"properties":1504,"children":1505},{"style":204},[1506],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":1508,"children":1509},{"style":425},[1510],{"type":26,"value":1511},"u8",{"type":30,"tagName":48,"properties":1513,"children":1514},{"style":204},[1515],{"type":26,"value":1252},{"type":30,"tagName":48,"properties":1517,"children":1518},{"style":446},[1519],{"type":26,"value":941},{"type":30,"tagName":48,"properties":1521,"children":1522},{"style":204},[1523],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1525,"children":1526},{"style":198},[1527],{"type":26,"value":1528},"let",{"type":30,"tagName":48,"properties":1530,"children":1531},{"style":204},[1532],{"type":26,"value":1533}," used ",{"type":30,"tagName":48,"properties":1535,"children":1536},{"style":198},[1537],{"type":26,"value":1538},"=",{"type":30,"tagName":48,"properties":1540,"children":1541},{"style":446},[1542],{"type":26,"value":1543}," 0",{"type":30,"tagName":48,"properties":1545,"children":1546},{"style":204},[1547],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1549,"children":1550},{"style":188},[1551],{"type":26,"value":1552},"// the window's JSON, appended as UTF-8 bytes row by row; a growing string or an Array join copies the whole text again per row",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1555,"children":1556},{"class":184},[1557,1561,1566,1570,1574,1579,1583,1588,1592,1596,1601,1605,1609,1613,1617,1622,1626],{"type":30,"tagName":48,"properties":1558,"children":1559},{"style":198},[1560],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1562,"children":1563},{"style":204},[1564],{"type":26,"value":1565}," ema21 ",{"type":30,"tagName":48,"properties":1567,"children":1568},{"style":198},[1569],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":1571,"children":1572},{"style":198},[1573],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1575,"children":1576},{"style":425},[1577],{"type":26,"value":1578}," Ema",{"type":30,"tagName":48,"properties":1580,"children":1581},{"style":204},[1582],{"type":26,"value":433},{"type":30,"tagName":48,"properties":1584,"children":1585},{"style":446},[1586],{"type":26,"value":1587},"21",{"type":30,"tagName":48,"properties":1589,"children":1590},{"style":204},[1591],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1593,"children":1594},{"style":198},[1595],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1597,"children":1598},{"style":204},[1599],{"type":26,"value":1600}," ema55 ",{"type":30,"tagName":48,"properties":1602,"children":1603},{"style":198},[1604],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":1606,"children":1607},{"style":198},[1608],{"type":26,"value":1232},{"type":30,"tagName":48,"properties":1610,"children":1611},{"style":425},[1612],{"type":26,"value":1578},{"type":30,"tagName":48,"properties":1614,"children":1615},{"style":204},[1616],{"type":26,"value":433},{"type":30,"tagName":48,"properties":1618,"children":1619},{"style":446},[1620],{"type":26,"value":1621},"55",{"type":30,"tagName":48,"properties":1623,"children":1624},{"style":204},[1625],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":1627,"children":1628},{"style":188},[1629],{"type":26,"value":1630},"// the chart's own EMAs, fed the primary close every bar",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1633,"children":1634},{"class":184},[1635,1639,1644,1648,1653,1657,1661,1666,1670,1675,1679,1683,1688,1692,1697,1702,1706,1710,1715,1719,1723,1727,1731,1736,1740,1744,1748,1753,1757],{"type":30,"tagName":48,"properties":1636,"children":1637},{"style":198},[1638],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1640,"children":1641},{"style":204},[1642],{"type":26,"value":1643}," span ",{"type":30,"tagName":48,"properties":1645,"children":1646},{"style":198},[1647],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":1649,"children":1650},{"style":446},[1651],{"type":26,"value":1652}," 480.0",{"type":30,"tagName":48,"properties":1654,"children":1655},{"style":204},[1656],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1658,"children":1659},{"style":198},[1660],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1662,"children":1663},{"style":204},[1664],{"type":26,"value":1665}," lookback ",{"type":30,"tagName":48,"properties":1667,"children":1668},{"style":198},[1669],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":1671,"children":1672},{"style":446},[1673],{"type":26,"value":1674}," 12",{"type":30,"tagName":48,"properties":1676,"children":1677},{"style":204},[1678],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1680,"children":1681},{"style":198},[1682],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1684,"children":1685},{"style":204},[1686],{"type":26,"value":1687}," head ",{"type":30,"tagName":48,"properties":1689,"children":1690},{"style":198},[1691],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":1693,"children":1694},{"style":198},[1695],{"type":26,"value":1696}," -",{"type":30,"tagName":48,"properties":1698,"children":1699},{"style":446},[1700],{"type":26,"value":1701},"1",{"type":30,"tagName":48,"properties":1703,"children":1704},{"style":204},[1705],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1707,"children":1708},{"style":198},[1709],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1711,"children":1712},{"style":204},[1713],{"type":26,"value":1714}," count ",{"type":30,"tagName":48,"properties":1716,"children":1717},{"style":198},[1718],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":1720,"children":1721},{"style":446},[1722],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":1724,"children":1725},{"style":204},[1726],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1728,"children":1729},{"style":198},[1730],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1732,"children":1733},{"style":204},[1734],{"type":26,"value":1735}," candle",{"type":30,"tagName":48,"properties":1737,"children":1738},{"style":198},[1739],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1741,"children":1742},{"style":425},[1743],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1745,"children":1746},{"style":198},[1747],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1749,"children":1750},{"style":446},[1751],{"type":26,"value":1752}," NaN",{"type":30,"tagName":48,"properties":1754,"children":1755},{"style":204},[1756],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1758,"children":1759},{"style":188},[1760],{"type":26,"value":1761},"// the ring: head is the newest entry, count the entries in use, candle the newest entry's id",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1764,"children":1765},{"class":184},[1766,1770,1775,1779,1783,1787,1791,1795,1799,1804,1808,1812,1816,1820,1824],{"type":30,"tagName":48,"properties":1767,"children":1768},{"style":198},[1769],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1771,"children":1772},{"style":204},[1773],{"type":26,"value":1774}," t",{"type":30,"tagName":48,"properties":1776,"children":1777},{"style":198},[1778],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1780,"children":1781},{"style":425},[1782],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1784,"children":1785},{"style":198},[1786],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1788,"children":1789},{"style":446},[1790],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1792,"children":1793},{"style":204},[1794],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1796,"children":1797},{"style":198},[1798],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1800,"children":1801},{"style":204},[1802],{"type":26,"value":1803}," prevT",{"type":30,"tagName":48,"properties":1805,"children":1806},{"style":198},[1807],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1809,"children":1810},{"style":425},[1811],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1813,"children":1814},{"style":198},[1815],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1817,"children":1818},{"style":446},[1819],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1821,"children":1822},{"style":204},[1823],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1825,"children":1826},{"style":188},[1827],{"type":26,"value":1828},"// this bar's open time and the previous one: their gap is the bar's width",{"type":26,"value":27},{"type":30,"tagName":48,"properties":1831,"children":1832},{"class":184},[1833,1837,1842,1846,1850,1854,1858,1862,1866,1871,1875,1879,1883,1887,1891,1895,1900,1904,1908,1912,1916,1920,1924,1929,1933,1937,1941,1945,1949,1953,1958,1962,1966,1970,1974,1978,1982,1987,1991,1995,1999,2004,2008],{"type":30,"tagName":48,"properties":1834,"children":1835},{"style":198},[1836],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1838,"children":1839},{"style":204},[1840],{"type":26,"value":1841}," close",{"type":30,"tagName":48,"properties":1843,"children":1844},{"style":198},[1845],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1847,"children":1848},{"style":425},[1849],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1851,"children":1852},{"style":198},[1853],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1855,"children":1856},{"style":446},[1857],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1859,"children":1860},{"style":204},[1861],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1863,"children":1864},{"style":198},[1865],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1867,"children":1868},{"style":204},[1869],{"type":26,"value":1870}," high",{"type":30,"tagName":48,"properties":1872,"children":1873},{"style":198},[1874],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1876,"children":1877},{"style":425},[1878],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1880,"children":1881},{"style":198},[1882],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1884,"children":1885},{"style":446},[1886],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1888,"children":1889},{"style":204},[1890],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1892,"children":1893},{"style":198},[1894],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1896,"children":1897},{"style":204},[1898],{"type":26,"value":1899}," low",{"type":30,"tagName":48,"properties":1901,"children":1902},{"style":198},[1903],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1905,"children":1906},{"style":425},[1907],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1909,"children":1910},{"style":198},[1911],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1913,"children":1914},{"style":446},[1915],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1917,"children":1918},{"style":204},[1919],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1921,"children":1922},{"style":198},[1923],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1925,"children":1926},{"style":204},[1927],{"type":26,"value":1928}," fast",{"type":30,"tagName":48,"properties":1930,"children":1931},{"style":198},[1932],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1934,"children":1935},{"style":425},[1936],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1938,"children":1939},{"style":198},[1940],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1942,"children":1943},{"style":446},[1944],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1946,"children":1947},{"style":204},[1948],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1950,"children":1951},{"style":198},[1952],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1954,"children":1955},{"style":204},[1956],{"type":26,"value":1957}," slow",{"type":30,"tagName":48,"properties":1959,"children":1960},{"style":198},[1961],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1963,"children":1964},{"style":425},[1965],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1967,"children":1968},{"style":198},[1969],{"type":26,"value":917},{"type":30,"tagName":48,"properties":1971,"children":1972},{"style":446},[1973],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":1975,"children":1976},{"style":204},[1977],{"type":26,"value":223},{"type":30,"tagName":48,"properties":1979,"children":1980},{"style":198},[1981],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":1983,"children":1984},{"style":204},[1985],{"type":26,"value":1986}," bias",{"type":30,"tagName":48,"properties":1988,"children":1989},{"style":198},[1990],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":1992,"children":1993},{"style":425},[1994],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":1996,"children":1997},{"style":198},[1998],{"type":26,"value":917},{"type":30,"tagName":48,"properties":2000,"children":2001},{"style":446},[2002],{"type":26,"value":2003}," 0.0",{"type":30,"tagName":48,"properties":2005,"children":2006},{"style":204},[2007],{"type":26,"value":223},{"type":30,"tagName":48,"properties":2009,"children":2010},{"style":188},[2011],{"type":26,"value":2012},"// this bar",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2015,"children":2016},{"class":184},[],{"type":26,"value":27},{"type":30,"tagName":48,"properties":2019,"children":2020},{"class":184},[2021,2026,2031,2035,2041,2045,2049,2053,2058,2062,2066,2070,2075,2079,2083,2088,2092,2096,2101,2105,2110,2114,2119,2124,2129,2134,2139,2143,2148,2153,2158,2163,2168,2172,2176,2181,2186,2190,2195,2199,2204,2209,2213,2218],{"type":30,"tagName":48,"properties":2022,"children":2023},{"style":198},[2024],{"type":26,"value":2025},"function",{"type":30,"tagName":48,"properties":2027,"children":2028},{"style":425},[2029],{"type":26,"value":2030}," ema",{"type":30,"tagName":48,"properties":2032,"children":2033},{"style":204},[2034],{"type":26,"value":433},{"type":30,"tagName":48,"properties":2036,"children":2038},{"style":2037},"--shiki-dark:#FFAB70;--shiki-light:#E36209",[2039],{"type":26,"value":2040},"prev",{"type":30,"tagName":48,"properties":2042,"children":2043},{"style":198},[2044],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2046,"children":2047},{"style":425},[2048],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":2050,"children":2051},{"style":204},[2052],{"type":26,"value":443},{"type":30,"tagName":48,"properties":2054,"children":2055},{"style":2037},[2056],{"type":26,"value":2057},"x",{"type":30,"tagName":48,"properties":2059,"children":2060},{"style":198},[2061],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2063,"children":2064},{"style":425},[2065],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":2067,"children":2068},{"style":204},[2069],{"type":26,"value":443},{"type":30,"tagName":48,"properties":2071,"children":2072},{"style":2037},[2073],{"type":26,"value":2074},"n",{"type":30,"tagName":48,"properties":2076,"children":2077},{"style":198},[2078],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2080,"children":2081},{"style":425},[2082],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":2084,"children":2085},{"style":204},[2086],{"type":26,"value":2087},")",{"type":30,"tagName":48,"properties":2089,"children":2090},{"style":198},[2091],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2093,"children":2094},{"style":425},[2095],{"type":26,"value":1170},{"type":30,"tagName":48,"properties":2097,"children":2098},{"style":204},[2099],{"type":26,"value":2100}," { ",{"type":30,"tagName":48,"properties":2102,"children":2103},{"style":198},[2104],{"type":26,"value":907},{"type":30,"tagName":48,"properties":2106,"children":2107},{"style":446},[2108],{"type":26,"value":2109}," a",{"type":30,"tagName":48,"properties":2111,"children":2112},{"style":198},[2113],{"type":26,"value":917},{"type":30,"tagName":48,"properties":2115,"children":2116},{"style":446},[2117],{"type":26,"value":2118}," 2.0",{"type":30,"tagName":48,"properties":2120,"children":2121},{"style":198},[2122],{"type":26,"value":2123}," /",{"type":30,"tagName":48,"properties":2125,"children":2126},{"style":204},[2127],{"type":26,"value":2128}," (n ",{"type":30,"tagName":48,"properties":2130,"children":2131},{"style":198},[2132],{"type":26,"value":2133},"+",{"type":30,"tagName":48,"properties":2135,"children":2136},{"style":446},[2137],{"type":26,"value":2138}," 1.0",{"type":30,"tagName":48,"properties":2140,"children":2141},{"style":204},[2142],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":2144,"children":2145},{"style":198},[2146],{"type":26,"value":2147},"return",{"type":30,"tagName":48,"properties":2149,"children":2150},{"style":425},[2151],{"type":26,"value":2152}," isNaN",{"type":30,"tagName":48,"properties":2154,"children":2155},{"style":204},[2156],{"type":26,"value":2157},"(prev) ",{"type":30,"tagName":48,"properties":2159,"children":2160},{"style":198},[2161],{"type":26,"value":2162},"?",{"type":30,"tagName":48,"properties":2164,"children":2165},{"style":204},[2166],{"type":26,"value":2167}," x ",{"type":30,"tagName":48,"properties":2169,"children":2170},{"style":198},[2171],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2173,"children":2174},{"style":204},[2175],{"type":26,"value":2167},{"type":30,"tagName":48,"properties":2177,"children":2178},{"style":198},[2179],{"type":26,"value":2180},"*",{"type":30,"tagName":48,"properties":2182,"children":2183},{"style":204},[2184],{"type":26,"value":2185}," a ",{"type":30,"tagName":48,"properties":2187,"children":2188},{"style":198},[2189],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":2191,"children":2192},{"style":204},[2193],{"type":26,"value":2194}," prev ",{"type":30,"tagName":48,"properties":2196,"children":2197},{"style":198},[2198],{"type":26,"value":2180},{"type":30,"tagName":48,"properties":2200,"children":2201},{"style":204},[2202],{"type":26,"value":2203}," (",{"type":30,"tagName":48,"properties":2205,"children":2206},{"style":446},[2207],{"type":26,"value":2208},"1.0",{"type":30,"tagName":48,"properties":2210,"children":2211},{"style":198},[2212],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":2214,"children":2215},{"style":204},[2216],{"type":26,"value":2217}," a); } ",{"type":30,"tagName":48,"properties":2219,"children":2220},{"style":188},[2221],{"type":26,"value":2222},"// one EMA step; the first candle seeds it",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2225,"children":2226},{"class":184},[2227,2231,2236,2240,2244,2248,2253,2257,2261,2266,2270],{"type":30,"tagName":48,"properties":2228,"children":2229},{"style":198},[2230],{"type":26,"value":2025},{"type":30,"tagName":48,"properties":2232,"children":2233},{"style":425},[2234],{"type":26,"value":2235}," put",{"type":30,"tagName":48,"properties":2237,"children":2238},{"style":204},[2239],{"type":26,"value":433},{"type":30,"tagName":48,"properties":2241,"children":2242},{"style":2037},[2243],{"type":26,"value":26},{"type":30,"tagName":48,"properties":2245,"children":2246},{"style":198},[2247],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2249,"children":2250},{"style":446},[2251],{"type":26,"value":2252}," string",{"type":30,"tagName":48,"properties":2254,"children":2255},{"style":204},[2256],{"type":26,"value":2087},{"type":30,"tagName":48,"properties":2258,"children":2259},{"style":198},[2260],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2262,"children":2263},{"style":446},[2264],{"type":26,"value":2265}," void",{"type":30,"tagName":48,"properties":2267,"children":2268},{"style":204},[2269],{"type":26,"value":2100},{"type":30,"tagName":48,"properties":2271,"children":2272},{"style":188},[2273],{"type":26,"value":2274},"// append one piece of JSON to the buffer; a window past the frame's cap is left short, and the host refuses it by name",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2277,"children":2278},{"class":184},[2279,2284,2289,2293,2298,2303,2308,2313,2318,2323,2328,2333,2338,2343,2348,2353,2357,2361,2366,2370,2375,2379,2384,2389,2393,2397,2401,2405,2409,2414,2418],{"type":30,"tagName":48,"properties":2280,"children":2281},{"style":198},[2282],{"type":26,"value":2283},"  if",{"type":30,"tagName":48,"properties":2285,"children":2286},{"style":204},[2287],{"type":26,"value":2288}," (used ",{"type":30,"tagName":48,"properties":2290,"children":2291},{"style":198},[2292],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":2294,"children":2295},{"style":204},[2296],{"type":26,"value":2297}," String.",{"type":30,"tagName":48,"properties":2299,"children":2300},{"style":446},[2301],{"type":26,"value":2302},"UTF8",{"type":30,"tagName":48,"properties":2304,"children":2305},{"style":204},[2306],{"type":26,"value":2307},".",{"type":30,"tagName":48,"properties":2309,"children":2310},{"style":425},[2311],{"type":26,"value":2312},"byteLength",{"type":30,"tagName":48,"properties":2314,"children":2315},{"style":204},[2316],{"type":26,"value":2317},"(text) ",{"type":30,"tagName":48,"properties":2319,"children":2320},{"style":198},[2321],{"type":26,"value":2322},"\u003C=",{"type":30,"tagName":48,"properties":2324,"children":2325},{"style":204},[2326],{"type":26,"value":2327}," bytes.",{"type":30,"tagName":48,"properties":2329,"children":2330},{"style":446},[2331],{"type":26,"value":2332},"length",{"type":30,"tagName":48,"properties":2334,"children":2335},{"style":204},[2336],{"type":26,"value":2337},") used ",{"type":30,"tagName":48,"properties":2339,"children":2340},{"style":198},[2341],{"type":26,"value":2342},"+=",{"type":30,"tagName":48,"properties":2344,"children":2345},{"style":425},[2346],{"type":26,"value":2347}," i32",{"type":30,"tagName":48,"properties":2349,"children":2350},{"style":204},[2351],{"type":26,"value":2352},"(String.",{"type":30,"tagName":48,"properties":2354,"children":2355},{"style":446},[2356],{"type":26,"value":2302},{"type":30,"tagName":48,"properties":2358,"children":2359},{"style":204},[2360],{"type":26,"value":2307},{"type":30,"tagName":48,"properties":2362,"children":2363},{"style":425},[2364],{"type":26,"value":2365},"encodeUnsafe",{"type":30,"tagName":48,"properties":2367,"children":2368},{"style":204},[2369],{"type":26,"value":433},{"type":30,"tagName":48,"properties":2371,"children":2372},{"style":425},[2373],{"type":26,"value":2374},"changetype",{"type":30,"tagName":48,"properties":2376,"children":2377},{"style":204},[2378],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":2380,"children":2381},{"style":425},[2382],{"type":26,"value":2383},"usize",{"type":30,"tagName":48,"properties":2385,"children":2386},{"style":204},[2387],{"type":26,"value":2388},">(text), text.",{"type":30,"tagName":48,"properties":2390,"children":2391},{"style":446},[2392],{"type":26,"value":2332},{"type":30,"tagName":48,"properties":2394,"children":2395},{"style":204},[2396],{"type":26,"value":443},{"type":30,"tagName":48,"properties":2398,"children":2399},{"style":425},[2400],{"type":26,"value":2374},{"type":30,"tagName":48,"properties":2402,"children":2403},{"style":204},[2404],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":2406,"children":2407},{"style":425},[2408],{"type":26,"value":2383},{"type":30,"tagName":48,"properties":2410,"children":2411},{"style":204},[2412],{"type":26,"value":2413},">(bytes) ",{"type":30,"tagName":48,"properties":2415,"children":2416},{"style":198},[2417],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":2419,"children":2420},{"style":204},[2421],{"type":26,"value":2422}," used));",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2425,"children":2426},{"class":184},[2427],{"type":30,"tagName":48,"properties":2428,"children":2429},{"style":204},[2430],{"type":26,"value":2431},"}",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2434,"children":2435},{"class":184},[],{"type":26,"value":27},{"type":30,"tagName":48,"properties":2438,"children":2439},{"class":184},[2440],{"type":30,"tagName":48,"properties":2441,"children":2442},{"style":188},[2443],{"type":26,"value":2444},"// init() runs once before the first bar: read the params (the window's span in chart bars, the swing span in candles), then reserve two pages",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2447,"children":2448},{"class":184},[2449],{"type":30,"tagName":48,"properties":2450,"children":2451},{"style":188},[2452],{"type":26,"value":2453},"// (128 KiB) of headroom for the live bar's write, about 72 KiB at 200 rows: the stub runtime never frees a string and memory may not grow after init().",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2456,"children":2457},{"class":184},[2458,2463,2468,2473,2478,2482,2486,2491,2495,2500,2505,2509,2513,2517,2522,2527,2532,2536,2540],{"type":30,"tagName":48,"properties":2459,"children":2460},{"style":198},[2461],{"type":26,"value":2462},"export",{"type":30,"tagName":48,"properties":2464,"children":2465},{"style":198},[2466],{"type":26,"value":2467}," function",{"type":30,"tagName":48,"properties":2469,"children":2470},{"style":425},[2471],{"type":26,"value":2472}," init",{"type":30,"tagName":48,"properties":2474,"children":2475},{"style":204},[2476],{"type":26,"value":2477},"()",{"type":30,"tagName":48,"properties":2479,"children":2480},{"style":198},[2481],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2483,"children":2484},{"style":446},[2485],{"type":26,"value":2265},{"type":30,"tagName":48,"properties":2487,"children":2488},{"style":204},[2489],{"type":26,"value":2490}," { span ",{"type":30,"tagName":48,"properties":2492,"children":2493},{"style":198},[2494],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2496,"children":2497},{"style":425},[2498],{"type":26,"value":2499}," p_span",{"type":30,"tagName":48,"properties":2501,"children":2502},{"style":204},[2503],{"type":26,"value":2504},"(); lookback ",{"type":30,"tagName":48,"properties":2506,"children":2507},{"style":198},[2508],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2510,"children":2511},{"style":425},[2512],{"type":26,"value":2347},{"type":30,"tagName":48,"properties":2514,"children":2515},{"style":204},[2516],{"type":26,"value":433},{"type":30,"tagName":48,"properties":2518,"children":2519},{"style":425},[2520],{"type":26,"value":2521},"p_lookback",{"type":30,"tagName":48,"properties":2523,"children":2524},{"style":204},[2525],{"type":26,"value":2526},"()); memory.",{"type":30,"tagName":48,"properties":2528,"children":2529},{"style":425},[2530],{"type":26,"value":2531},"grow",{"type":30,"tagName":48,"properties":2533,"children":2534},{"style":204},[2535],{"type":26,"value":433},{"type":30,"tagName":48,"properties":2537,"children":2538},{"style":446},[2539],{"type":26,"value":514},{"type":30,"tagName":48,"properties":2541,"children":2542},{"style":204},[2543],{"type":26,"value":2544},"); }",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2547,"children":2548},{"class":184},[2549],{"type":30,"tagName":48,"properties":2550,"children":2551},{"style":188},[2552],{"type":26,"value":2553},"// state() runs once per bar: feed the chart's EMAs, then fold the 4h inputs into the ring. A 4h value lands as of its candle's close and is carried,",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2556,"children":2557},{"class":184},[2558],{"type":30,"tagName":48,"properties":2559,"children":2560},{"style":188},[2561],{"type":26,"value":2562},"// so the ring is keyed on the last CLOSED candle as of this row's close (the open time plus the bar's width): a new id appends an entry, the",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2565,"children":2566},{"class":184},[2567],{"type":30,"tagName":48,"properties":2568,"children":2569},{"style":188},[2570],{"type":26,"value":2571},"// same id replaces the newest entry's close, high and low with the delivered candle. The 4h EMAs step once per entry, never per primary bar.",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2574,"children":2575},{"class":184},[2576,2580,2584,2589,2593,2597,2601],{"type":30,"tagName":48,"properties":2577,"children":2578},{"style":198},[2579],{"type":26,"value":2462},{"type":30,"tagName":48,"properties":2581,"children":2582},{"style":198},[2583],{"type":26,"value":2467},{"type":30,"tagName":48,"properties":2585,"children":2586},{"style":425},[2587],{"type":26,"value":2588}," state",{"type":30,"tagName":48,"properties":2590,"children":2591},{"style":204},[2592],{"type":26,"value":2477},{"type":30,"tagName":48,"properties":2594,"children":2595},{"style":198},[2596],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":2598,"children":2599},{"style":425},[2600],{"type":26,"value":2347},{"type":30,"tagName":48,"properties":2602,"children":2603},{"style":204},[2604],{"type":26,"value":2605}," {",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2608,"children":2609},{"class":184},[2610,2615,2619,2624,2628,2633,2638,2642,2647,2652,2656,2661,2666,2670,2675,2680,2684,2689,2694,2699,2703,2708,2712],{"type":30,"tagName":48,"properties":2611,"children":2612},{"style":204},[2613],{"type":26,"value":2614},"  prevT ",{"type":30,"tagName":48,"properties":2616,"children":2617},{"style":198},[2618],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2620,"children":2621},{"style":204},[2622],{"type":26,"value":2623}," t; t ",{"type":30,"tagName":48,"properties":2625,"children":2626},{"style":198},[2627],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2629,"children":2630},{"style":425},[2631],{"type":26,"value":2632}," in_t",{"type":30,"tagName":48,"properties":2634,"children":2635},{"style":204},[2636],{"type":26,"value":2637},"(); close ",{"type":30,"tagName":48,"properties":2639,"children":2640},{"style":198},[2641],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2643,"children":2644},{"style":425},[2645],{"type":26,"value":2646}," in_close",{"type":30,"tagName":48,"properties":2648,"children":2649},{"style":204},[2650],{"type":26,"value":2651},"(); high ",{"type":30,"tagName":48,"properties":2653,"children":2654},{"style":198},[2655],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2657,"children":2658},{"style":425},[2659],{"type":26,"value":2660}," in_high",{"type":30,"tagName":48,"properties":2662,"children":2663},{"style":204},[2664],{"type":26,"value":2665},"(); low ",{"type":30,"tagName":48,"properties":2667,"children":2668},{"style":198},[2669],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2671,"children":2672},{"style":425},[2673],{"type":26,"value":2674}," in_low",{"type":30,"tagName":48,"properties":2676,"children":2677},{"style":204},[2678],{"type":26,"value":2679},"(); fast ",{"type":30,"tagName":48,"properties":2681,"children":2682},{"style":198},[2683],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2685,"children":2686},{"style":204},[2687],{"type":26,"value":2688}," ema21.",{"type":30,"tagName":48,"properties":2690,"children":2691},{"style":425},[2692],{"type":26,"value":2693},"update",{"type":30,"tagName":48,"properties":2695,"children":2696},{"style":204},[2697],{"type":26,"value":2698},"(close); slow ",{"type":30,"tagName":48,"properties":2700,"children":2701},{"style":198},[2702],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2704,"children":2705},{"style":204},[2706],{"type":26,"value":2707}," ema55.",{"type":30,"tagName":48,"properties":2709,"children":2710},{"style":425},[2711],{"type":26,"value":2693},{"type":30,"tagName":48,"properties":2713,"children":2714},{"style":204},[2715],{"type":26,"value":2716},"(close);",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2719,"children":2720},{"class":184},[2721,2726,2731,2735,2740,2745,2749,2754,2758,2763,2767,2771,2776,2780,2785],{"type":30,"tagName":48,"properties":2722,"children":2723},{"style":198},[2724],{"type":26,"value":2725},"  const",{"type":30,"tagName":48,"properties":2727,"children":2728},{"style":446},[2729],{"type":26,"value":2730}," c4",{"type":30,"tagName":48,"properties":2732,"children":2733},{"style":198},[2734],{"type":26,"value":917},{"type":30,"tagName":48,"properties":2736,"children":2737},{"style":425},[2738],{"type":26,"value":2739}," in_close_4h",{"type":30,"tagName":48,"properties":2741,"children":2742},{"style":204},[2743],{"type":26,"value":2744},"(); ",{"type":30,"tagName":48,"properties":2746,"children":2747},{"style":198},[2748],{"type":26,"value":907},{"type":30,"tagName":48,"properties":2750,"children":2751},{"style":446},[2752],{"type":26,"value":2753}," h4",{"type":30,"tagName":48,"properties":2755,"children":2756},{"style":198},[2757],{"type":26,"value":917},{"type":30,"tagName":48,"properties":2759,"children":2760},{"style":425},[2761],{"type":26,"value":2762}," in_high_4h",{"type":30,"tagName":48,"properties":2764,"children":2765},{"style":204},[2766],{"type":26,"value":2744},{"type":30,"tagName":48,"properties":2768,"children":2769},{"style":198},[2770],{"type":26,"value":907},{"type":30,"tagName":48,"properties":2772,"children":2773},{"style":446},[2774],{"type":26,"value":2775}," l4",{"type":30,"tagName":48,"properties":2777,"children":2778},{"style":198},[2779],{"type":26,"value":917},{"type":30,"tagName":48,"properties":2781,"children":2782},{"style":425},[2783],{"type":26,"value":2784}," in_low_4h",{"type":30,"tagName":48,"properties":2786,"children":2787},{"style":204},[2788],{"type":26,"value":2789},"();",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2792,"children":2793},{"class":184},[2794,2798,2802,2807,2812,2817,2822,2827,2831,2836,2840,2844,2848,2853,2857,2861,2865,2870],{"type":30,"tagName":48,"properties":2795,"children":2796},{"style":198},[2797],{"type":26,"value":2283},{"type":30,"tagName":48,"properties":2799,"children":2800},{"style":204},[2801],{"type":26,"value":2203},{"type":30,"tagName":48,"properties":2803,"children":2804},{"style":198},[2805],{"type":26,"value":2806},"!",{"type":30,"tagName":48,"properties":2808,"children":2809},{"style":425},[2810],{"type":26,"value":2811},"isNaN",{"type":30,"tagName":48,"properties":2813,"children":2814},{"style":204},[2815],{"type":26,"value":2816},"(prevT) ",{"type":30,"tagName":48,"properties":2818,"children":2819},{"style":198},[2820],{"type":26,"value":2821},"&&",{"type":30,"tagName":48,"properties":2823,"children":2824},{"style":198},[2825],{"type":26,"value":2826}," !",{"type":30,"tagName":48,"properties":2828,"children":2829},{"style":425},[2830],{"type":26,"value":2811},{"type":30,"tagName":48,"properties":2832,"children":2833},{"style":204},[2834],{"type":26,"value":2835},"(c4) ",{"type":30,"tagName":48,"properties":2837,"children":2838},{"style":198},[2839],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":2841,"children":2842},{"style":198},[2843],{"type":26,"value":2826},{"type":30,"tagName":48,"properties":2845,"children":2846},{"style":425},[2847],{"type":26,"value":2811},{"type":30,"tagName":48,"properties":2849,"children":2850},{"style":204},[2851],{"type":26,"value":2852},"(h4) ",{"type":30,"tagName":48,"properties":2854,"children":2855},{"style":198},[2856],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":2858,"children":2859},{"style":198},[2860],{"type":26,"value":2826},{"type":30,"tagName":48,"properties":2862,"children":2863},{"style":425},[2864],{"type":26,"value":2811},{"type":30,"tagName":48,"properties":2866,"children":2867},{"style":204},[2868],{"type":26,"value":2869},"(l4)) { ",{"type":30,"tagName":48,"properties":2871,"children":2872},{"style":188},[2873],{"type":26,"value":2874},"// the first row has no width yet, and nothing has landed at the start of a grid: the ring waits",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2877,"children":2878},{"class":184},[2879,2884,2889,2893,2898,2903,2908,2912,2917,2922,2927,2932,2936,2941,2945,2949,2953],{"type":30,"tagName":48,"properties":2880,"children":2881},{"style":198},[2882],{"type":26,"value":2883},"    const",{"type":30,"tagName":48,"properties":2885,"children":2886},{"style":446},[2887],{"type":26,"value":2888}," id",{"type":30,"tagName":48,"properties":2890,"children":2891},{"style":198},[2892],{"type":26,"value":917},{"type":30,"tagName":48,"properties":2894,"children":2895},{"style":204},[2896],{"type":26,"value":2897}," Math.",{"type":30,"tagName":48,"properties":2899,"children":2900},{"style":425},[2901],{"type":26,"value":2902},"floor",{"type":30,"tagName":48,"properties":2904,"children":2905},{"style":204},[2906],{"type":26,"value":2907},"((t ",{"type":30,"tagName":48,"properties":2909,"children":2910},{"style":198},[2911],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":2913,"children":2914},{"style":204},[2915],{"type":26,"value":2916}," (t ",{"type":30,"tagName":48,"properties":2918,"children":2919},{"style":198},[2920],{"type":26,"value":2921},"-",{"type":30,"tagName":48,"properties":2923,"children":2924},{"style":204},[2925],{"type":26,"value":2926}," prevT)) ",{"type":30,"tagName":48,"properties":2928,"children":2929},{"style":198},[2930],{"type":26,"value":2931},"/",{"type":30,"tagName":48,"properties":2933,"children":2934},{"style":446},[2935],{"type":26,"value":1160},{"type":30,"tagName":48,"properties":2937,"children":2938},{"style":204},[2939],{"type":26,"value":2940},") ",{"type":30,"tagName":48,"properties":2942,"children":2943},{"style":198},[2944],{"type":26,"value":2921},{"type":30,"tagName":48,"properties":2946,"children":2947},{"style":446},[2948],{"type":26,"value":2138},{"type":30,"tagName":48,"properties":2950,"children":2951},{"style":204},[2952],{"type":26,"value":223},{"type":30,"tagName":48,"properties":2954,"children":2955},{"style":188},[2956],{"type":26,"value":2957},"// the candle that closed last as of this row's close; its open time is id * H4",{"type":26,"value":27},{"type":30,"tagName":48,"properties":2960,"children":2961},{"class":184},[2962,2967,2972,2977,2982,2986,2991,2995,3000,3004,3009,3013,3018,3022,3026,3031,3036,3040,3044,3049,3053,3057,3062,3066,3071,3075,3079],{"type":30,"tagName":48,"properties":2963,"children":2964},{"style":198},[2965],{"type":26,"value":2966},"    if",{"type":30,"tagName":48,"properties":2968,"children":2969},{"style":204},[2970],{"type":26,"value":2971}," (id ",{"type":30,"tagName":48,"properties":2973,"children":2974},{"style":198},[2975],{"type":26,"value":2976},"!=",{"type":30,"tagName":48,"properties":2978,"children":2979},{"style":204},[2980],{"type":26,"value":2981}," candle) { candle ",{"type":30,"tagName":48,"properties":2983,"children":2984},{"style":198},[2985],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2987,"children":2988},{"style":204},[2989],{"type":26,"value":2990}," id; head ",{"type":30,"tagName":48,"properties":2992,"children":2993},{"style":198},[2994],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":2996,"children":2997},{"style":204},[2998],{"type":26,"value":2999}," (head ",{"type":30,"tagName":48,"properties":3001,"children":3002},{"style":198},[3003],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":3005,"children":3006},{"style":446},[3007],{"type":26,"value":3008}," 1",{"type":30,"tagName":48,"properties":3010,"children":3011},{"style":204},[3012],{"type":26,"value":2940},{"type":30,"tagName":48,"properties":3014,"children":3015},{"style":198},[3016],{"type":26,"value":3017},"%",{"type":30,"tagName":48,"properties":3019,"children":3020},{"style":446},[3021],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":3023,"children":3024},{"style":204},[3025],{"type":26,"value":223},{"type":30,"tagName":48,"properties":3027,"children":3028},{"style":198},[3029],{"type":26,"value":3030},"if",{"type":30,"tagName":48,"properties":3032,"children":3033},{"style":204},[3034],{"type":26,"value":3035}," (count ",{"type":30,"tagName":48,"properties":3037,"children":3038},{"style":198},[3039],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3041,"children":3042},{"style":446},[3043],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":3045,"children":3046},{"style":204},[3047],{"type":26,"value":3048},") count ",{"type":30,"tagName":48,"properties":3050,"children":3051},{"style":198},[3052],{"type":26,"value":2342},{"type":30,"tagName":48,"properties":3054,"children":3055},{"style":446},[3056],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":3058,"children":3059},{"style":204},[3060],{"type":26,"value":3061},"; times[head] ",{"type":30,"tagName":48,"properties":3063,"children":3064},{"style":198},[3065],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3067,"children":3068},{"style":204},[3069],{"type":26,"value":3070}," id ",{"type":30,"tagName":48,"properties":3072,"children":3073},{"style":198},[3074],{"type":26,"value":2180},{"type":30,"tagName":48,"properties":3076,"children":3077},{"style":446},[3078],{"type":26,"value":1160},{"type":30,"tagName":48,"properties":3080,"children":3081},{"style":204},[3082],{"type":26,"value":3083},"; }",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3086,"children":3087},{"class":184},[3088,3093,3097,3102,3106,3111,3115,3120],{"type":30,"tagName":48,"properties":3089,"children":3090},{"style":204},[3091],{"type":26,"value":3092},"    closes[head] ",{"type":30,"tagName":48,"properties":3094,"children":3095},{"style":198},[3096],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3098,"children":3099},{"style":204},[3100],{"type":26,"value":3101}," c4; highs[head] ",{"type":30,"tagName":48,"properties":3103,"children":3104},{"style":198},[3105],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3107,"children":3108},{"style":204},[3109],{"type":26,"value":3110}," h4; lows[head] ",{"type":30,"tagName":48,"properties":3112,"children":3113},{"style":198},[3114],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3116,"children":3117},{"style":204},[3118],{"type":26,"value":3119}," l4; ",{"type":30,"tagName":48,"properties":3121,"children":3122},{"style":188},[3123],{"type":26,"value":3124},"// one closed candle per entry: the delivered values replace, nothing folds",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3127,"children":3128},{"class":184},[3129,3133,3138,3142,3146,3151,3155,3160,3164,3168,3172,3176,3180,3184,3188,3192,3197,3201,3205],{"type":30,"tagName":48,"properties":3130,"children":3131},{"style":198},[3132],{"type":26,"value":2883},{"type":30,"tagName":48,"properties":3134,"children":3135},{"style":446},[3136],{"type":26,"value":3137}," prev",{"type":30,"tagName":48,"properties":3139,"children":3140},{"style":198},[3141],{"type":26,"value":917},{"type":30,"tagName":48,"properties":3143,"children":3144},{"style":204},[3145],{"type":26,"value":1714},{"type":30,"tagName":48,"properties":3147,"children":3148},{"style":198},[3149],{"type":26,"value":3150},">",{"type":30,"tagName":48,"properties":3152,"children":3153},{"style":446},[3154],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":3156,"children":3157},{"style":198},[3158],{"type":26,"value":3159}," ?",{"type":30,"tagName":48,"properties":3161,"children":3162},{"style":204},[3163],{"type":26,"value":2999},{"type":30,"tagName":48,"properties":3165,"children":3166},{"style":198},[3167],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":3169,"children":3170},{"style":446},[3171],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":3173,"children":3174},{"style":198},[3175],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":3177,"children":3178},{"style":446},[3179],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":3181,"children":3182},{"style":204},[3183],{"type":26,"value":2940},{"type":30,"tagName":48,"properties":3185,"children":3186},{"style":198},[3187],{"type":26,"value":3017},{"type":30,"tagName":48,"properties":3189,"children":3190},{"style":446},[3191],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":3193,"children":3194},{"style":198},[3195],{"type":26,"value":3196}," :",{"type":30,"tagName":48,"properties":3198,"children":3199},{"style":198},[3200],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":3202,"children":3203},{"style":446},[3204],{"type":26,"value":1701},{"type":30,"tagName":48,"properties":3206,"children":3207},{"style":204},[3208],{"type":26,"value":3209},";",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3212,"children":3213},{"class":184},[3214,3219,3223,3227,3232,3236,3240,3244,3248,3252,3257,3262,3267,3271,3275,3279,3283,3287,3291,3295,3299,3304,3309],{"type":30,"tagName":48,"properties":3215,"children":3216},{"style":204},[3217],{"type":26,"value":3218},"    ema8s[head] ",{"type":30,"tagName":48,"properties":3220,"children":3221},{"style":198},[3222],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3224,"children":3225},{"style":425},[3226],{"type":26,"value":2030},{"type":30,"tagName":48,"properties":3228,"children":3229},{"style":204},[3230],{"type":26,"value":3231},"(prev ",{"type":30,"tagName":48,"properties":3233,"children":3234},{"style":198},[3235],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3237,"children":3238},{"style":446},[3239],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3241,"children":3242},{"style":198},[3243],{"type":26,"value":3159},{"type":30,"tagName":48,"properties":3245,"children":3246},{"style":446},[3247],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":3249,"children":3250},{"style":198},[3251],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":3253,"children":3254},{"style":204},[3255],{"type":26,"value":3256}," ema8s[prev], c4, ",{"type":30,"tagName":48,"properties":3258,"children":3259},{"style":446},[3260],{"type":26,"value":3261},"8.0",{"type":30,"tagName":48,"properties":3263,"children":3264},{"style":204},[3265],{"type":26,"value":3266},"); ema21s[head] ",{"type":30,"tagName":48,"properties":3268,"children":3269},{"style":198},[3270],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3272,"children":3273},{"style":425},[3274],{"type":26,"value":2030},{"type":30,"tagName":48,"properties":3276,"children":3277},{"style":204},[3278],{"type":26,"value":3231},{"type":30,"tagName":48,"properties":3280,"children":3281},{"style":198},[3282],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3284,"children":3285},{"style":446},[3286],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3288,"children":3289},{"style":198},[3290],{"type":26,"value":3159},{"type":30,"tagName":48,"properties":3292,"children":3293},{"style":446},[3294],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":3296,"children":3297},{"style":198},[3298],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":3300,"children":3301},{"style":204},[3302],{"type":26,"value":3303}," ema21s[prev], c4, ",{"type":30,"tagName":48,"properties":3305,"children":3306},{"style":446},[3307],{"type":26,"value":3308},"21.0",{"type":30,"tagName":48,"properties":3310,"children":3311},{"style":204},[3312],{"type":26,"value":1386},{"type":26,"value":27},{"type":30,"tagName":48,"properties":3315,"children":3316},{"class":184},[3317],{"type":30,"tagName":48,"properties":3318,"children":3319},{"style":204},[3320],{"type":26,"value":3321},"  }",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3324,"children":3325},{"class":184},[3326,3330,3335,3339,3343,3347,3351,3355,3360,3364,3368,3372,3376,3381,3385,3389,3393,3397,3401,3406,3410,3414,3418],{"type":30,"tagName":48,"properties":3327,"children":3328},{"style":198},[3329],{"type":26,"value":2725},{"type":30,"tagName":48,"properties":3331,"children":3332},{"style":446},[3333],{"type":26,"value":3334}," c4Now",{"type":30,"tagName":48,"properties":3336,"children":3337},{"style":198},[3338],{"type":26,"value":917},{"type":30,"tagName":48,"properties":3340,"children":3341},{"style":204},[3342],{"type":26,"value":1714},{"type":30,"tagName":48,"properties":3344,"children":3345},{"style":198},[3346],{"type":26,"value":3150},{"type":30,"tagName":48,"properties":3348,"children":3349},{"style":446},[3350],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3352,"children":3353},{"style":198},[3354],{"type":26,"value":3159},{"type":30,"tagName":48,"properties":3356,"children":3357},{"style":204},[3358],{"type":26,"value":3359}," closes[head] ",{"type":30,"tagName":48,"properties":3361,"children":3362},{"style":198},[3363],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":3365,"children":3366},{"style":446},[3367],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":3369,"children":3370},{"style":204},[3371],{"type":26,"value":223},{"type":30,"tagName":48,"properties":3373,"children":3374},{"style":198},[3375],{"type":26,"value":907},{"type":30,"tagName":48,"properties":3377,"children":3378},{"style":446},[3379],{"type":26,"value":3380}," e21Now",{"type":30,"tagName":48,"properties":3382,"children":3383},{"style":198},[3384],{"type":26,"value":917},{"type":30,"tagName":48,"properties":3386,"children":3387},{"style":204},[3388],{"type":26,"value":1714},{"type":30,"tagName":48,"properties":3390,"children":3391},{"style":198},[3392],{"type":26,"value":3150},{"type":30,"tagName":48,"properties":3394,"children":3395},{"style":446},[3396],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3398,"children":3399},{"style":198},[3400],{"type":26,"value":3159},{"type":30,"tagName":48,"properties":3402,"children":3403},{"style":204},[3404],{"type":26,"value":3405}," ema21s[head] ",{"type":30,"tagName":48,"properties":3407,"children":3408},{"style":198},[3409],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":3411,"children":3412},{"style":446},[3413],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":3415,"children":3416},{"style":204},[3417],{"type":26,"value":223},{"type":30,"tagName":48,"properties":3419,"children":3420},{"style":188},[3421],{"type":26,"value":3422},"// the newest 4h candle and its EMA 21",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3425,"children":3426},{"class":184},[3427,3432,3436,3440,3445,3450,3454,3459,3463,3467,3472,3476,3480,3484,3489,3493,3498,3502,3506,3510,3515,3519,3524,3528,3533,3537,3541,3545,3549,3553,3557,3561,3565,3569,3573,3577,3581,3585,3589,3593,3597,3601,3605,3609],{"type":30,"tagName":48,"properties":3428,"children":3429},{"style":204},[3430],{"type":26,"value":3431},"  bias ",{"type":30,"tagName":48,"properties":3433,"children":3434},{"style":198},[3435],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3437,"children":3438},{"style":425},[3439],{"type":26,"value":2152},{"type":30,"tagName":48,"properties":3441,"children":3442},{"style":204},[3443],{"type":26,"value":3444},"(fast) ",{"type":30,"tagName":48,"properties":3446,"children":3447},{"style":198},[3448],{"type":26,"value":3449},"||",{"type":30,"tagName":48,"properties":3451,"children":3452},{"style":425},[3453],{"type":26,"value":2152},{"type":30,"tagName":48,"properties":3455,"children":3456},{"style":204},[3457],{"type":26,"value":3458},"(slow) ",{"type":30,"tagName":48,"properties":3460,"children":3461},{"style":198},[3462],{"type":26,"value":3449},{"type":30,"tagName":48,"properties":3464,"children":3465},{"style":425},[3466],{"type":26,"value":2152},{"type":30,"tagName":48,"properties":3468,"children":3469},{"style":204},[3470],{"type":26,"value":3471},"(e21Now) ",{"type":30,"tagName":48,"properties":3473,"children":3474},{"style":198},[3475],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":3477,"children":3478},{"style":446},[3479],{"type":26,"value":2003},{"type":30,"tagName":48,"properties":3481,"children":3482},{"style":198},[3483],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":3485,"children":3486},{"style":204},[3487],{"type":26,"value":3488}," close ",{"type":30,"tagName":48,"properties":3490,"children":3491},{"style":198},[3492],{"type":26,"value":3150},{"type":30,"tagName":48,"properties":3494,"children":3495},{"style":204},[3496],{"type":26,"value":3497}," fast ",{"type":30,"tagName":48,"properties":3499,"children":3500},{"style":198},[3501],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":3503,"children":3504},{"style":204},[3505],{"type":26,"value":3488},{"type":30,"tagName":48,"properties":3507,"children":3508},{"style":198},[3509],{"type":26,"value":3150},{"type":30,"tagName":48,"properties":3511,"children":3512},{"style":204},[3513],{"type":26,"value":3514}," slow ",{"type":30,"tagName":48,"properties":3516,"children":3517},{"style":198},[3518],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":3520,"children":3521},{"style":204},[3522],{"type":26,"value":3523}," c4Now ",{"type":30,"tagName":48,"properties":3525,"children":3526},{"style":198},[3527],{"type":26,"value":3150},{"type":30,"tagName":48,"properties":3529,"children":3530},{"style":204},[3531],{"type":26,"value":3532}," e21Now ",{"type":30,"tagName":48,"properties":3534,"children":3535},{"style":198},[3536],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":3538,"children":3539},{"style":446},[3540],{"type":26,"value":2138},{"type":30,"tagName":48,"properties":3542,"children":3543},{"style":198},[3544],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":3546,"children":3547},{"style":204},[3548],{"type":26,"value":3488},{"type":30,"tagName":48,"properties":3550,"children":3551},{"style":198},[3552],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3554,"children":3555},{"style":204},[3556],{"type":26,"value":3497},{"type":30,"tagName":48,"properties":3558,"children":3559},{"style":198},[3560],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":3562,"children":3563},{"style":204},[3564],{"type":26,"value":3488},{"type":30,"tagName":48,"properties":3566,"children":3567},{"style":198},[3568],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3570,"children":3571},{"style":204},[3572],{"type":26,"value":3514},{"type":30,"tagName":48,"properties":3574,"children":3575},{"style":198},[3576],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":3578,"children":3579},{"style":204},[3580],{"type":26,"value":3523},{"type":30,"tagName":48,"properties":3582,"children":3583},{"style":198},[3584],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3586,"children":3587},{"style":204},[3588],{"type":26,"value":3532},{"type":30,"tagName":48,"properties":3590,"children":3591},{"style":198},[3592],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":3594,"children":3595},{"style":198},[3596],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":3598,"children":3599},{"style":446},[3600],{"type":26,"value":2208},{"type":30,"tagName":48,"properties":3602,"children":3603},{"style":198},[3604],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":3606,"children":3607},{"style":446},[3608],{"type":26,"value":2003},{"type":30,"tagName":48,"properties":3610,"children":3611},{"style":204},[3612],{"type":26,"value":3209},{"type":26,"value":27},{"type":30,"tagName":48,"properties":3615,"children":3616},{"class":184},[3617,3622,3626,3630,3634,3638,3642,3646],{"type":30,"tagName":48,"properties":3618,"children":3619},{"style":198},[3620],{"type":26,"value":3621},"  return",{"type":30,"tagName":48,"properties":3623,"children":3624},{"style":425},[3625],{"type":26,"value":2152},{"type":30,"tagName":48,"properties":3627,"children":3628},{"style":204},[3629],{"type":26,"value":3458},{"type":30,"tagName":48,"properties":3631,"children":3632},{"style":198},[3633],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":3635,"children":3636},{"style":446},[3637],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3639,"children":3640},{"style":198},[3641],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":3643,"children":3644},{"style":446},[3645],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":3647,"children":3648},{"style":204},[3649],{"type":26,"value":3209},{"type":26,"value":27},{"type":30,"tagName":48,"properties":3652,"children":3653},{"class":184},[3654],{"type":30,"tagName":48,"properties":3655,"children":3656},{"style":204},[3657],{"type":26,"value":2431},{"type":26,"value":27},{"type":30,"tagName":48,"properties":3660,"children":3661},{"class":184},[3662],{"type":30,"tagName":48,"properties":3663,"children":3664},{"style":188},[3665],{"type":26,"value":3666},"// finalize() runs after state() returns 1: write the outputs, and on the live bar only, the two frames the side window and the",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3669,"children":3670},{"class":184},[3671],{"type":30,"tagName":48,"properties":3672,"children":3673},{"style":188},[3674],{"type":26,"value":3675},"// docked levels read. A frame is a snapshot of the run (its last write wins), so closed bars never pay for the JSON.",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3678,"children":3679},{"class":184},[3680,3684,3688,3693,3697,3701,3705],{"type":30,"tagName":48,"properties":3681,"children":3682},{"style":198},[3683],{"type":26,"value":2462},{"type":30,"tagName":48,"properties":3685,"children":3686},{"style":198},[3687],{"type":26,"value":2467},{"type":30,"tagName":48,"properties":3689,"children":3690},{"style":425},[3691],{"type":26,"value":3692}," finalize",{"type":30,"tagName":48,"properties":3694,"children":3695},{"style":204},[3696],{"type":26,"value":2477},{"type":30,"tagName":48,"properties":3698,"children":3699},{"style":198},[3700],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":3702,"children":3703},{"style":446},[3704],{"type":26,"value":2265},{"type":30,"tagName":48,"properties":3706,"children":3707},{"style":204},[3708],{"type":26,"value":2605},{"type":26,"value":27},{"type":30,"tagName":48,"properties":3711,"children":3712},{"class":184},[3713,3718,3723,3728,3733,3738],{"type":30,"tagName":48,"properties":3714,"children":3715},{"style":425},[3716],{"type":26,"value":3717},"  out_ema21",{"type":30,"tagName":48,"properties":3719,"children":3720},{"style":204},[3721],{"type":26,"value":3722},"(fast); ",{"type":30,"tagName":48,"properties":3724,"children":3725},{"style":425},[3726],{"type":26,"value":3727},"out_ema55",{"type":30,"tagName":48,"properties":3729,"children":3730},{"style":204},[3731],{"type":26,"value":3732},"(slow); ",{"type":30,"tagName":48,"properties":3734,"children":3735},{"style":425},[3736],{"type":26,"value":3737},"out_bias",{"type":30,"tagName":48,"properties":3739,"children":3740},{"style":204},[3741],{"type":26,"value":3742},"(bias);",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3745,"children":3746},{"class":184},[3747,3751,3756,3761,3766,3770,3774,3778,3782],{"type":30,"tagName":48,"properties":3748,"children":3749},{"style":198},[3750],{"type":26,"value":2283},{"type":30,"tagName":48,"properties":3752,"children":3753},{"style":204},[3754],{"type":26,"value":3755}," (bar.",{"type":30,"tagName":48,"properties":3757,"children":3758},{"style":425},[3759],{"type":26,"value":3760},"isLast",{"type":30,"tagName":48,"properties":3762,"children":3763},{"style":204},[3764],{"type":26,"value":3765},"() ",{"type":30,"tagName":48,"properties":3767,"children":3768},{"style":198},[3769],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":3771,"children":3772},{"style":204},[3773],{"type":26,"value":1714},{"type":30,"tagName":48,"properties":3775,"children":3776},{"style":198},[3777],{"type":26,"value":3150},{"type":30,"tagName":48,"properties":3779,"children":3780},{"style":446},[3781],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3783,"children":3784},{"style":204},[3785],{"type":26,"value":3786},") {",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3789,"children":3790},{"class":184},[3791,3795,3800,3804,3809,3813,3817,3821,3826,3830,3834,3838,3842,3847],{"type":30,"tagName":48,"properties":3792,"children":3793},{"style":198},[3794],{"type":26,"value":2883},{"type":30,"tagName":48,"properties":3796,"children":3797},{"style":446},[3798],{"type":26,"value":3799}," from",{"type":30,"tagName":48,"properties":3801,"children":3802},{"style":198},[3803],{"type":26,"value":917},{"type":30,"tagName":48,"properties":3805,"children":3806},{"style":204},[3807],{"type":26,"value":3808}," t ",{"type":30,"tagName":48,"properties":3810,"children":3811},{"style":198},[3812],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":3814,"children":3815},{"style":204},[3816],{"type":26,"value":2916},{"type":30,"tagName":48,"properties":3818,"children":3819},{"style":198},[3820],{"type":26,"value":2921},{"type":30,"tagName":48,"properties":3822,"children":3823},{"style":204},[3824],{"type":26,"value":3825}," prevT) ",{"type":30,"tagName":48,"properties":3827,"children":3828},{"style":198},[3829],{"type":26,"value":2180},{"type":30,"tagName":48,"properties":3831,"children":3832},{"style":204},[3833],{"type":26,"value":2203},{"type":30,"tagName":48,"properties":3835,"children":3836},{"style":446},[3837],{"type":26,"value":2208},{"type":30,"tagName":48,"properties":3839,"children":3840},{"style":198},[3841],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":3843,"children":3844},{"style":204},[3845],{"type":26,"value":3846}," span); ",{"type":30,"tagName":48,"properties":3848,"children":3849},{"style":188},[3850],{"type":26,"value":3851},"// the span's start: this row's close minus span bar widths; the window lists the candles closed after it",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3854,"children":3855},{"class":184},[3856,3861,3866,3870,3874,3878,3883,3888,3892,3896,3900,3905,3909,3913,3917,3922,3926,3930,3935,3939,3943,3948,3953,3957,3961,3965],{"type":30,"tagName":48,"properties":3857,"children":3858},{"style":198},[3859],{"type":26,"value":3860},"    let",{"type":30,"tagName":48,"properties":3862,"children":3863},{"style":204},[3864],{"type":26,"value":3865}," shown ",{"type":30,"tagName":48,"properties":3867,"children":3868},{"style":198},[3869],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3871,"children":3872},{"style":446},[3873],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3875,"children":3876},{"style":204},[3877],{"type":26,"value":223},{"type":30,"tagName":48,"properties":3879,"children":3880},{"style":198},[3881],{"type":26,"value":3882},"while",{"type":30,"tagName":48,"properties":3884,"children":3885},{"style":204},[3886],{"type":26,"value":3887}," (shown ",{"type":30,"tagName":48,"properties":3889,"children":3890},{"style":198},[3891],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":3893,"children":3894},{"style":204},[3895],{"type":26,"value":1714},{"type":30,"tagName":48,"properties":3897,"children":3898},{"style":198},[3899],{"type":26,"value":2821},{"type":30,"tagName":48,"properties":3901,"children":3902},{"style":204},[3903],{"type":26,"value":3904}," times[(head ",{"type":30,"tagName":48,"properties":3906,"children":3907},{"style":198},[3908],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":3910,"children":3911},{"style":446},[3912],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":3914,"children":3915},{"style":198},[3916],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":3918,"children":3919},{"style":204},[3920],{"type":26,"value":3921}," shown) ",{"type":30,"tagName":48,"properties":3923,"children":3924},{"style":198},[3925],{"type":26,"value":3017},{"type":30,"tagName":48,"properties":3927,"children":3928},{"style":446},[3929],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":3931,"children":3932},{"style":204},[3933],{"type":26,"value":3934},"] ",{"type":30,"tagName":48,"properties":3936,"children":3937},{"style":198},[3938],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":3940,"children":3941},{"style":446},[3942],{"type":26,"value":1160},{"type":30,"tagName":48,"properties":3944,"children":3945},{"style":198},[3946],{"type":26,"value":3947}," >",{"type":30,"tagName":48,"properties":3949,"children":3950},{"style":204},[3951],{"type":26,"value":3952}," from) shown ",{"type":30,"tagName":48,"properties":3954,"children":3955},{"style":198},[3956],{"type":26,"value":2342},{"type":30,"tagName":48,"properties":3958,"children":3959},{"style":446},[3960],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":3962,"children":3963},{"style":204},[3964],{"type":26,"value":223},{"type":30,"tagName":48,"properties":3966,"children":3967},{"style":188},[3968],{"type":26,"value":3969},"// newest first, stopping at the first candle closed before the span",{"type":26,"value":27},{"type":30,"tagName":48,"properties":3972,"children":3973},{"class":184},[3974,3979,3983,3987,3991,3996,4000,4005,4009],{"type":30,"tagName":48,"properties":3975,"children":3976},{"style":204},[3977],{"type":26,"value":3978},"    used ",{"type":30,"tagName":48,"properties":3980,"children":3981},{"style":198},[3982],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":3984,"children":3985},{"style":446},[3986],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":3988,"children":3989},{"style":204},[3990],{"type":26,"value":223},{"type":30,"tagName":48,"properties":3992,"children":3993},{"style":425},[3994],{"type":26,"value":3995},"put",{"type":30,"tagName":48,"properties":3997,"children":3998},{"style":204},[3999],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4001,"children":4002},{"style":215},[4003],{"type":26,"value":4004},"'{\"rows\":['",{"type":30,"tagName":48,"properties":4006,"children":4007},{"style":204},[4008],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":4010,"children":4011},{"style":188},[4012],{"type":26,"value":4013},"// oldest first: [the candle's open in epoch seconds, 4h close, 4h EMA 8, 4h EMA 21]",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4016,"children":4017},{"class":184},[4018,4023,4027,4031,4036,4040,4044,4048,4052,4057,4062,4066,4070,4075,4079],{"type":30,"tagName":48,"properties":4019,"children":4020},{"style":198},[4021],{"type":26,"value":4022},"    for",{"type":30,"tagName":48,"properties":4024,"children":4025},{"style":204},[4026],{"type":26,"value":2203},{"type":30,"tagName":48,"properties":4028,"children":4029},{"style":198},[4030],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":4032,"children":4033},{"style":204},[4034],{"type":26,"value":4035}," k ",{"type":30,"tagName":48,"properties":4037,"children":4038},{"style":198},[4039],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":4041,"children":4042},{"style":204},[4043],{"type":26,"value":3865},{"type":30,"tagName":48,"properties":4045,"children":4046},{"style":198},[4047],{"type":26,"value":2921},{"type":30,"tagName":48,"properties":4049,"children":4050},{"style":446},[4051],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":4053,"children":4054},{"style":204},[4055],{"type":26,"value":4056},"; k ",{"type":30,"tagName":48,"properties":4058,"children":4059},{"style":198},[4060],{"type":26,"value":4061},">=",{"type":30,"tagName":48,"properties":4063,"children":4064},{"style":446},[4065],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":4067,"children":4068},{"style":204},[4069],{"type":26,"value":4056},{"type":30,"tagName":48,"properties":4071,"children":4072},{"style":198},[4073],{"type":26,"value":4074},"-=",{"type":30,"tagName":48,"properties":4076,"children":4077},{"style":446},[4078],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":4080,"children":4081},{"style":204},[4082],{"type":26,"value":3786},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4085,"children":4086},{"class":184},[4087,4092,4097,4101,4105,4109,4113,4117,4122,4126,4130,4134,4138,4143,4148,4152,4156,4160,4164,4169,4173,4178],{"type":30,"tagName":48,"properties":4088,"children":4089},{"style":198},[4090],{"type":26,"value":4091},"      const",{"type":30,"tagName":48,"properties":4093,"children":4094},{"style":446},[4095],{"type":26,"value":4096}," i",{"type":30,"tagName":48,"properties":4098,"children":4099},{"style":198},[4100],{"type":26,"value":917},{"type":30,"tagName":48,"properties":4102,"children":4103},{"style":204},[4104],{"type":26,"value":2999},{"type":30,"tagName":48,"properties":4106,"children":4107},{"style":198},[4108],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":4110,"children":4111},{"style":446},[4112],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":4114,"children":4115},{"style":198},[4116],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":4118,"children":4119},{"style":204},[4120],{"type":26,"value":4121}," k) ",{"type":30,"tagName":48,"properties":4123,"children":4124},{"style":198},[4125],{"type":26,"value":3017},{"type":30,"tagName":48,"properties":4127,"children":4128},{"style":446},[4129],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":4131,"children":4132},{"style":204},[4133],{"type":26,"value":223},{"type":30,"tagName":48,"properties":4135,"children":4136},{"style":425},[4137],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4139,"children":4140},{"style":204},[4141],{"type":26,"value":4142},"(k ",{"type":30,"tagName":48,"properties":4144,"children":4145},{"style":198},[4146],{"type":26,"value":4147},"==",{"type":30,"tagName":48,"properties":4149,"children":4150},{"style":204},[4151],{"type":26,"value":3865},{"type":30,"tagName":48,"properties":4153,"children":4154},{"style":198},[4155],{"type":26,"value":2921},{"type":30,"tagName":48,"properties":4157,"children":4158},{"style":446},[4159],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":4161,"children":4162},{"style":198},[4163],{"type":26,"value":3159},{"type":30,"tagName":48,"properties":4165,"children":4166},{"style":215},[4167],{"type":26,"value":4168}," \"[\"",{"type":30,"tagName":48,"properties":4170,"children":4171},{"style":198},[4172],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":4174,"children":4175},{"style":215},[4176],{"type":26,"value":4177}," \",[\"",{"type":30,"tagName":48,"properties":4179,"children":4180},{"style":204},[4181],{"type":26,"value":1386},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4184,"children":4185},{"class":184},[4186,4191,4195,4200,4205,4210,4215,4219,4223,4228,4232,4236,4241,4245,4249,4253,4257,4261,4265,4269,4274,4278,4282,4286,4290,4294,4298,4302,4307,4311,4315,4319,4323,4328],{"type":30,"tagName":48,"properties":4187,"children":4188},{"style":425},[4189],{"type":26,"value":4190},"      put",{"type":30,"tagName":48,"properties":4192,"children":4193},{"style":204},[4194],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4196,"children":4197},{"style":425},[4198],{"type":26,"value":4199},"i64",{"type":30,"tagName":48,"properties":4201,"children":4202},{"style":204},[4203],{"type":26,"value":4204},"(times[i]).",{"type":30,"tagName":48,"properties":4206,"children":4207},{"style":425},[4208],{"type":26,"value":4209},"toString",{"type":30,"tagName":48,"properties":4211,"children":4212},{"style":204},[4213],{"type":26,"value":4214},"()); ",{"type":30,"tagName":48,"properties":4216,"children":4217},{"style":425},[4218],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4220,"children":4221},{"style":204},[4222],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4224,"children":4225},{"style":215},[4226],{"type":26,"value":4227},"\",\"",{"type":30,"tagName":48,"properties":4229,"children":4230},{"style":204},[4231],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":4233,"children":4234},{"style":425},[4235],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4237,"children":4238},{"style":204},[4239],{"type":26,"value":4240},"(closes[i].",{"type":30,"tagName":48,"properties":4242,"children":4243},{"style":425},[4244],{"type":26,"value":4209},{"type":30,"tagName":48,"properties":4246,"children":4247},{"style":204},[4248],{"type":26,"value":4214},{"type":30,"tagName":48,"properties":4250,"children":4251},{"style":425},[4252],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4254,"children":4255},{"style":204},[4256],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4258,"children":4259},{"style":215},[4260],{"type":26,"value":4227},{"type":30,"tagName":48,"properties":4262,"children":4263},{"style":204},[4264],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":4266,"children":4267},{"style":425},[4268],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4270,"children":4271},{"style":204},[4272],{"type":26,"value":4273},"(ema8s[i].",{"type":30,"tagName":48,"properties":4275,"children":4276},{"style":425},[4277],{"type":26,"value":4209},{"type":30,"tagName":48,"properties":4279,"children":4280},{"style":204},[4281],{"type":26,"value":4214},{"type":30,"tagName":48,"properties":4283,"children":4284},{"style":425},[4285],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4287,"children":4288},{"style":204},[4289],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4291,"children":4292},{"style":215},[4293],{"type":26,"value":4227},{"type":30,"tagName":48,"properties":4295,"children":4296},{"style":204},[4297],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":4299,"children":4300},{"style":425},[4301],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4303,"children":4304},{"style":204},[4305],{"type":26,"value":4306},"(ema21s[i].",{"type":30,"tagName":48,"properties":4308,"children":4309},{"style":425},[4310],{"type":26,"value":4209},{"type":30,"tagName":48,"properties":4312,"children":4313},{"style":204},[4314],{"type":26,"value":4214},{"type":30,"tagName":48,"properties":4316,"children":4317},{"style":425},[4318],{"type":26,"value":3995},{"type":30,"tagName":48,"properties":4320,"children":4321},{"style":204},[4322],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4324,"children":4325},{"style":215},[4326],{"type":26,"value":4327},"\"]\"",{"type":30,"tagName":48,"properties":4329,"children":4330},{"style":204},[4331],{"type":26,"value":1386},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4334,"children":4335},{"class":184},[4336],{"type":30,"tagName":48,"properties":4337,"children":4338},{"style":204},[4339],{"type":26,"value":4340},"    }",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4343,"children":4344},{"class":184},[4345,4350,4354,4359,4363,4368,4372,4377,4382,4386,4390,4395,4399,4403,4407,4411,4416],{"type":30,"tagName":48,"properties":4346,"children":4347},{"style":425},[4348],{"type":26,"value":4349},"    put",{"type":30,"tagName":48,"properties":4351,"children":4352},{"style":204},[4353],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4355,"children":4356},{"style":215},[4357],{"type":26,"value":4358},"\"]}\"",{"type":30,"tagName":48,"properties":4360,"children":4361},{"style":204},[4362],{"type":26,"value":1262},{"type":30,"tagName":48,"properties":4364,"children":4365},{"style":425},[4366],{"type":26,"value":4367},"writeFrame",{"type":30,"tagName":48,"properties":4369,"children":4370},{"style":204},[4371],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4373,"children":4374},{"style":446},[4375],{"type":26,"value":4376},"FRAME_CONTEXT",{"type":30,"tagName":48,"properties":4378,"children":4379},{"style":204},[4380],{"type":26,"value":4381},", String.",{"type":30,"tagName":48,"properties":4383,"children":4384},{"style":446},[4385],{"type":26,"value":2302},{"type":30,"tagName":48,"properties":4387,"children":4388},{"style":204},[4389],{"type":26,"value":2307},{"type":30,"tagName":48,"properties":4391,"children":4392},{"style":425},[4393],{"type":26,"value":4394},"decodeUnsafe",{"type":30,"tagName":48,"properties":4396,"children":4397},{"style":204},[4398],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4400,"children":4401},{"style":425},[4402],{"type":26,"value":2374},{"type":30,"tagName":48,"properties":4404,"children":4405},{"style":204},[4406],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":4408,"children":4409},{"style":425},[4410],{"type":26,"value":2383},{"type":30,"tagName":48,"properties":4412,"children":4413},{"style":204},[4414],{"type":26,"value":4415},">(bytes), used)); ",{"type":30,"tagName":48,"properties":4417,"children":4418},{"style":188},[4419],{"type":26,"value":4420},"// one string from the bytes, then the frame",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4423,"children":4424},{"class":184},[4425,4429,4434,4438,4442,4447,4451,4455,4460,4464,4469,4473,4477,4482,4486,4490,4494,4498,4502,4506,4510,4515],{"type":30,"tagName":48,"properties":4426,"children":4427},{"style":198},[4428],{"type":26,"value":3860},{"type":30,"tagName":48,"properties":4430,"children":4431},{"style":204},[4432],{"type":26,"value":4433}," hi ",{"type":30,"tagName":48,"properties":4435,"children":4436},{"style":198},[4437],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":4439,"children":4440},{"style":198},[4441],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":4443,"children":4444},{"style":446},[4445],{"type":26,"value":4446},"Infinity",{"type":30,"tagName":48,"properties":4448,"children":4449},{"style":204},[4450],{"type":26,"value":223},{"type":30,"tagName":48,"properties":4452,"children":4453},{"style":198},[4454],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":4456,"children":4457},{"style":204},[4458],{"type":26,"value":4459}," lo ",{"type":30,"tagName":48,"properties":4461,"children":4462},{"style":198},[4463],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":4465,"children":4466},{"style":446},[4467],{"type":26,"value":4468}," Infinity",{"type":30,"tagName":48,"properties":4470,"children":4471},{"style":204},[4472],{"type":26,"value":223},{"type":30,"tagName":48,"properties":4474,"children":4475},{"style":198},[4476],{"type":26,"value":907},{"type":30,"tagName":48,"properties":4478,"children":4479},{"style":446},[4480],{"type":26,"value":4481}," n",{"type":30,"tagName":48,"properties":4483,"children":4484},{"style":198},[4485],{"type":26,"value":917},{"type":30,"tagName":48,"properties":4487,"children":4488},{"style":204},[4489],{"type":26,"value":1665},{"type":30,"tagName":48,"properties":4491,"children":4492},{"style":198},[4493],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":4495,"children":4496},{"style":204},[4497],{"type":26,"value":1714},{"type":30,"tagName":48,"properties":4499,"children":4500},{"style":198},[4501],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":4503,"children":4504},{"style":204},[4505],{"type":26,"value":1665},{"type":30,"tagName":48,"properties":4507,"children":4508},{"style":198},[4509],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":4511,"children":4512},{"style":204},[4513],{"type":26,"value":4514}," count; ",{"type":30,"tagName":48,"properties":4516,"children":4517},{"style":188},[4518],{"type":26,"value":4519},"// the last lookback candles, newest first",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4522,"children":4523},{"class":184},[4524,4528,4532,4536,4540,4544,4548,4552,4556,4561,4565,4569,4574,4578,4582,4586,4590,4594,4598,4602,4606,4610,4614,4619,4623,4627,4632,4637,4641,4645,4650],{"type":30,"tagName":48,"properties":4525,"children":4526},{"style":198},[4527],{"type":26,"value":4022},{"type":30,"tagName":48,"properties":4529,"children":4530},{"style":204},[4531],{"type":26,"value":2203},{"type":30,"tagName":48,"properties":4533,"children":4534},{"style":198},[4535],{"type":26,"value":1528},{"type":30,"tagName":48,"properties":4537,"children":4538},{"style":204},[4539],{"type":26,"value":4035},{"type":30,"tagName":48,"properties":4541,"children":4542},{"style":198},[4543],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":4545,"children":4546},{"style":446},[4547],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":4549,"children":4550},{"style":204},[4551],{"type":26,"value":4056},{"type":30,"tagName":48,"properties":4553,"children":4554},{"style":198},[4555],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":4557,"children":4558},{"style":204},[4559],{"type":26,"value":4560}," n; k ",{"type":30,"tagName":48,"properties":4562,"children":4563},{"style":198},[4564],{"type":26,"value":2342},{"type":30,"tagName":48,"properties":4566,"children":4567},{"style":446},[4568],{"type":26,"value":3008},{"type":30,"tagName":48,"properties":4570,"children":4571},{"style":204},[4572],{"type":26,"value":4573},") { ",{"type":30,"tagName":48,"properties":4575,"children":4576},{"style":198},[4577],{"type":26,"value":907},{"type":30,"tagName":48,"properties":4579,"children":4580},{"style":446},[4581],{"type":26,"value":4096},{"type":30,"tagName":48,"properties":4583,"children":4584},{"style":198},[4585],{"type":26,"value":917},{"type":30,"tagName":48,"properties":4587,"children":4588},{"style":204},[4589],{"type":26,"value":2999},{"type":30,"tagName":48,"properties":4591,"children":4592},{"style":198},[4593],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":4595,"children":4596},{"style":446},[4597],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":4599,"children":4600},{"style":198},[4601],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":4603,"children":4604},{"style":204},[4605],{"type":26,"value":4121},{"type":30,"tagName":48,"properties":4607,"children":4608},{"style":198},[4609],{"type":26,"value":3017},{"type":30,"tagName":48,"properties":4611,"children":4612},{"style":446},[4613],{"type":26,"value":1192},{"type":30,"tagName":48,"properties":4615,"children":4616},{"style":204},[4617],{"type":26,"value":4618},"; hi ",{"type":30,"tagName":48,"properties":4620,"children":4621},{"style":198},[4622],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":4624,"children":4625},{"style":204},[4626],{"type":26,"value":2897},{"type":30,"tagName":48,"properties":4628,"children":4629},{"style":425},[4630],{"type":26,"value":4631},"max",{"type":30,"tagName":48,"properties":4633,"children":4634},{"style":204},[4635],{"type":26,"value":4636},"(hi, highs[i]); lo ",{"type":30,"tagName":48,"properties":4638,"children":4639},{"style":198},[4640],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":4642,"children":4643},{"style":204},[4644],{"type":26,"value":2897},{"type":30,"tagName":48,"properties":4646,"children":4647},{"style":425},[4648],{"type":26,"value":4649},"min",{"type":30,"tagName":48,"properties":4651,"children":4652},{"style":204},[4653],{"type":26,"value":4654},"(lo, lows[i]); }",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4657,"children":4658},{"class":184},[4659,4663,4668,4672,4677],{"type":30,"tagName":48,"properties":4660,"children":4661},{"style":198},[4662],{"type":26,"value":2966},{"type":30,"tagName":48,"properties":4664,"children":4665},{"style":204},[4666],{"type":26,"value":4667}," (lo ",{"type":30,"tagName":48,"properties":4669,"children":4670},{"style":198},[4671],{"type":26,"value":1242},{"type":30,"tagName":48,"properties":4673,"children":4674},{"style":204},[4675],{"type":26,"value":4676}," hi) { ",{"type":30,"tagName":48,"properties":4678,"children":4679},{"style":188},[4680],{"type":26,"value":4681},"// prices must be strictly increasing, so two equal levels skip the write and the last snapshot stands",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4684,"children":4685},{"class":184},[4686,4690,4695,4699,4704,4708,4712,4716,4721,4725,4730,4734,4738,4743,4747,4752,4756,4760,4764,4768,4772,4776,4780],{"type":30,"tagName":48,"properties":4687,"children":4688},{"style":198},[4689],{"type":26,"value":4091},{"type":30,"tagName":48,"properties":4691,"children":4692},{"style":446},[4693],{"type":26,"value":4694}," lowColor",{"type":30,"tagName":48,"properties":4696,"children":4697},{"style":198},[4698],{"type":26,"value":917},{"type":30,"tagName":48,"properties":4700,"children":4701},{"style":204},[4702],{"type":26,"value":4703}," low ",{"type":30,"tagName":48,"properties":4705,"children":4706},{"style":198},[4707],{"type":26,"value":2322},{"type":30,"tagName":48,"properties":4709,"children":4710},{"style":204},[4711],{"type":26,"value":4459},{"type":30,"tagName":48,"properties":4713,"children":4714},{"style":198},[4715],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":4717,"children":4718},{"style":215},[4719],{"type":26,"value":4720}," \"#f8fafc\"",{"type":30,"tagName":48,"properties":4722,"children":4723},{"style":198},[4724],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":4726,"children":4727},{"style":215},[4728],{"type":26,"value":4729}," \"#f5a623\"",{"type":30,"tagName":48,"properties":4731,"children":4732},{"style":204},[4733],{"type":26,"value":223},{"type":30,"tagName":48,"properties":4735,"children":4736},{"style":198},[4737],{"type":26,"value":907},{"type":30,"tagName":48,"properties":4739,"children":4740},{"style":446},[4741],{"type":26,"value":4742}," highColor",{"type":30,"tagName":48,"properties":4744,"children":4745},{"style":198},[4746],{"type":26,"value":917},{"type":30,"tagName":48,"properties":4748,"children":4749},{"style":204},[4750],{"type":26,"value":4751}," high ",{"type":30,"tagName":48,"properties":4753,"children":4754},{"style":198},[4755],{"type":26,"value":4061},{"type":30,"tagName":48,"properties":4757,"children":4758},{"style":204},[4759],{"type":26,"value":4433},{"type":30,"tagName":48,"properties":4761,"children":4762},{"style":198},[4763],{"type":26,"value":2162},{"type":30,"tagName":48,"properties":4765,"children":4766},{"style":215},[4767],{"type":26,"value":4720},{"type":30,"tagName":48,"properties":4769,"children":4770},{"style":198},[4771],{"type":26,"value":3196},{"type":30,"tagName":48,"properties":4773,"children":4774},{"style":215},[4775],{"type":26,"value":4729},{"type":30,"tagName":48,"properties":4777,"children":4778},{"style":204},[4779],{"type":26,"value":223},{"type":30,"tagName":48,"properties":4781,"children":4782},{"style":188},[4783],{"type":26,"value":4784},"// lit on the bar that tags the level",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4787,"children":4788},{"class":184},[4789,4794,4798,4803,4807,4812,4817,4822,4826,4830,4834,4839,4843,4848,4852,4856,4860,4865,4869,4874,4878,4883,4887,4892,4896,4901],{"type":30,"tagName":48,"properties":4790,"children":4791},{"style":425},[4792],{"type":26,"value":4793},"      writeFrame",{"type":30,"tagName":48,"properties":4795,"children":4796},{"style":204},[4797],{"type":26,"value":433},{"type":30,"tagName":48,"properties":4799,"children":4800},{"style":446},[4801],{"type":26,"value":4802},"FRAME_SWINGS",{"type":30,"tagName":48,"properties":4804,"children":4805},{"style":204},[4806],{"type":26,"value":443},{"type":30,"tagName":48,"properties":4808,"children":4809},{"style":215},[4810],{"type":26,"value":4811},"'{\"prices\":['",{"type":30,"tagName":48,"properties":4813,"children":4814},{"style":198},[4815],{"type":26,"value":4816}," +",{"type":30,"tagName":48,"properties":4818,"children":4819},{"style":204},[4820],{"type":26,"value":4821}," lo.",{"type":30,"tagName":48,"properties":4823,"children":4824},{"style":425},[4825],{"type":26,"value":4209},{"type":30,"tagName":48,"properties":4827,"children":4828},{"style":204},[4829],{"type":26,"value":3765},{"type":30,"tagName":48,"properties":4831,"children":4832},{"style":198},[4833],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":4835,"children":4836},{"style":215},[4837],{"type":26,"value":4838}," \",\"",{"type":30,"tagName":48,"properties":4840,"children":4841},{"style":198},[4842],{"type":26,"value":4816},{"type":30,"tagName":48,"properties":4844,"children":4845},{"style":204},[4846],{"type":26,"value":4847}," hi.",{"type":30,"tagName":48,"properties":4849,"children":4850},{"style":425},[4851],{"type":26,"value":4209},{"type":30,"tagName":48,"properties":4853,"children":4854},{"style":204},[4855],{"type":26,"value":3765},{"type":30,"tagName":48,"properties":4857,"children":4858},{"style":198},[4859],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":4861,"children":4862},{"style":215},[4863],{"type":26,"value":4864}," '],\"values\":[1,1],\"colors\":[\"'",{"type":30,"tagName":48,"properties":4866,"children":4867},{"style":198},[4868],{"type":26,"value":4816},{"type":30,"tagName":48,"properties":4870,"children":4871},{"style":204},[4872],{"type":26,"value":4873}," lowColor ",{"type":30,"tagName":48,"properties":4875,"children":4876},{"style":198},[4877],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":4879,"children":4880},{"style":215},[4881],{"type":26,"value":4882}," '\",\"'",{"type":30,"tagName":48,"properties":4884,"children":4885},{"style":198},[4886],{"type":26,"value":4816},{"type":30,"tagName":48,"properties":4888,"children":4889},{"style":204},[4890],{"type":26,"value":4891}," highColor ",{"type":30,"tagName":48,"properties":4893,"children":4894},{"style":198},[4895],{"type":26,"value":2133},{"type":30,"tagName":48,"properties":4897,"children":4898},{"style":215},[4899],{"type":26,"value":4900}," '\"]}'",{"type":30,"tagName":48,"properties":4902,"children":4903},{"style":204},[4904],{"type":26,"value":1386},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4907,"children":4908},{"class":184},[4909],{"type":30,"tagName":48,"properties":4910,"children":4911},{"style":204},[4912],{"type":26,"value":4340},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4915,"children":4916},{"class":184},[4917],{"type":30,"tagName":48,"properties":4918,"children":4919},{"style":204},[4920],{"type":26,"value":3321},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4923,"children":4924},{"class":184},[4925,4930],{"type":30,"tagName":48,"properties":4926,"children":4927},{"style":425},[4928],{"type":26,"value":4929},"  emitRow",{"type":30,"tagName":48,"properties":4931,"children":4932},{"style":204},[4933],{"type":26,"value":2789},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4936,"children":4937},{"class":184},[4938],{"type":30,"tagName":48,"properties":4939,"children":4940},{"style":204},[4941],{"type":26,"value":2431},{"type":26,"value":27},{"type":30,"tagName":48,"properties":4944,"children":4945},{"class":184},[4946],{"type":30,"tagName":48,"properties":4947,"children":4948},{"style":188},[4949],{"type":26,"value":4950},"// reset() runs when the chart restarts the series: back to what init() built, the ring emptied (its arrays need no clearing).",{"type":26,"value":27},{"type":30,"tagName":48,"properties":4953,"children":4954},{"class":184},[4955,4959,4963,4968,4972,4976,4980,4985,4990,4995,4999,5004,5008,5012,5016,5021,5025,5029,5034,5038,5042,5047,5051,5055,5060,5064,5068,5073,5077,5081,5086,5090,5094,5099,5103,5107,5112,5116,5120,5125,5129,5133,5138,5142,5146],{"type":30,"tagName":48,"properties":4956,"children":4957},{"style":198},[4958],{"type":26,"value":2462},{"type":30,"tagName":48,"properties":4960,"children":4961},{"style":198},[4962],{"type":26,"value":2467},{"type":30,"tagName":48,"properties":4964,"children":4965},{"style":425},[4966],{"type":26,"value":4967}," reset",{"type":30,"tagName":48,"properties":4969,"children":4970},{"style":204},[4971],{"type":26,"value":2477},{"type":30,"tagName":48,"properties":4973,"children":4974},{"style":198},[4975],{"type":26,"value":1165},{"type":30,"tagName":48,"properties":4977,"children":4978},{"style":446},[4979],{"type":26,"value":2265},{"type":30,"tagName":48,"properties":4981,"children":4982},{"style":204},[4983],{"type":26,"value":4984}," { ema21.",{"type":30,"tagName":48,"properties":4986,"children":4987},{"style":425},[4988],{"type":26,"value":4989},"reset",{"type":30,"tagName":48,"properties":4991,"children":4992},{"style":204},[4993],{"type":26,"value":4994},"(); ema55.",{"type":30,"tagName":48,"properties":4996,"children":4997},{"style":425},[4998],{"type":26,"value":4989},{"type":30,"tagName":48,"properties":5000,"children":5001},{"style":204},[5002],{"type":26,"value":5003},"(); head ",{"type":30,"tagName":48,"properties":5005,"children":5006},{"style":198},[5007],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5009,"children":5010},{"style":198},[5011],{"type":26,"value":1696},{"type":30,"tagName":48,"properties":5013,"children":5014},{"style":446},[5015],{"type":26,"value":1701},{"type":30,"tagName":48,"properties":5017,"children":5018},{"style":204},[5019],{"type":26,"value":5020},"; count ",{"type":30,"tagName":48,"properties":5022,"children":5023},{"style":198},[5024],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5026,"children":5027},{"style":446},[5028],{"type":26,"value":1543},{"type":30,"tagName":48,"properties":5030,"children":5031},{"style":204},[5032],{"type":26,"value":5033},"; candle ",{"type":30,"tagName":48,"properties":5035,"children":5036},{"style":198},[5037],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5039,"children":5040},{"style":446},[5041],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5043,"children":5044},{"style":204},[5045],{"type":26,"value":5046},"; t ",{"type":30,"tagName":48,"properties":5048,"children":5049},{"style":198},[5050],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5052,"children":5053},{"style":446},[5054],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5056,"children":5057},{"style":204},[5058],{"type":26,"value":5059},"; prevT ",{"type":30,"tagName":48,"properties":5061,"children":5062},{"style":198},[5063],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5065,"children":5066},{"style":446},[5067],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5069,"children":5070},{"style":204},[5071],{"type":26,"value":5072},"; close ",{"type":30,"tagName":48,"properties":5074,"children":5075},{"style":198},[5076],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5078,"children":5079},{"style":446},[5080],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5082,"children":5083},{"style":204},[5084],{"type":26,"value":5085},"; high ",{"type":30,"tagName":48,"properties":5087,"children":5088},{"style":198},[5089],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5091,"children":5092},{"style":446},[5093],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5095,"children":5096},{"style":204},[5097],{"type":26,"value":5098},"; low ",{"type":30,"tagName":48,"properties":5100,"children":5101},{"style":198},[5102],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5104,"children":5105},{"style":446},[5106],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5108,"children":5109},{"style":204},[5110],{"type":26,"value":5111},"; fast ",{"type":30,"tagName":48,"properties":5113,"children":5114},{"style":198},[5115],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5117,"children":5118},{"style":446},[5119],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5121,"children":5122},{"style":204},[5123],{"type":26,"value":5124},"; slow ",{"type":30,"tagName":48,"properties":5126,"children":5127},{"style":198},[5128],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5130,"children":5131},{"style":446},[5132],{"type":26,"value":1752},{"type":30,"tagName":48,"properties":5134,"children":5135},{"style":204},[5136],{"type":26,"value":5137},"; bias ",{"type":30,"tagName":48,"properties":5139,"children":5140},{"style":198},[5141],{"type":26,"value":1538},{"type":30,"tagName":48,"properties":5143,"children":5144},{"style":446},[5145],{"type":26,"value":2003},{"type":30,"tagName":48,"properties":5147,"children":5148},{"style":204},[5149],{"type":26,"value":3083},{"type":26,"value":27},{"type":30,"tagName":151,"properties":5152,"children":5154,"position":5164},{"id":5153},"how-it-works",[5155],{"type":26,"value":5156,"position":5157},"How it works",{"start":5158,"end":5161},{"line":5159,"column":160,"offset":5160},98,10376,{"line":5159,"column":5162,"offset":5163},16,10388,{"start":5165,"end":5167},{"line":5159,"column":20,"offset":5166},10373,{"line":5159,"column":5162,"offset":5163},{"type":26,"value":27},{"type":30,"tagName":31,"properties":5170,"children":5171,"position":5298},{},[5172,5192,5199,5212,5218,5231,5238,5251,5258,5271,5278,5291],{"type":30,"tagName":5173,"properties":5174,"children":5175,"position":5186},"strong",{},[5176],{"type":26,"value":5177,"position":5178},"Three inputs at 4h, one landing rule.",{"start":5179,"end":5183},{"line":5180,"column":5181,"offset":5182},100,3,10392,{"line":5180,"column":5184,"offset":5185},40,10429,{"start":5187,"end":5189},{"line":5180,"column":20,"offset":5188},10390,{"line":5180,"column":5190,"offset":5191},42,10431,{"type":26,"value":5193,"position":5194}," ",{"start":5195,"end":5196},{"line":5180,"column":5190,"offset":5191},{"line":5180,"column":5197,"offset":5198},43,10432,{"type":30,"tagName":44,"properties":5200,"children":5201,"position":5209},{},[5202],{"type":26,"value":5203,"position":5204},"close_4h",{"start":5205,"end":5206},{"line":5180,"column":5197,"offset":5198},{"line":5180,"column":5207,"offset":5208},53,10442,{"start":5210,"end":5211},{"line":5180,"column":5197,"offset":5198},{"line":5180,"column":5207,"offset":5208},{"type":26,"value":443,"position":5213},{"start":5214,"end":5215},{"line":5180,"column":5207,"offset":5208},{"line":5180,"column":5216,"offset":5217},55,10444,{"type":30,"tagName":44,"properties":5219,"children":5220,"position":5228},{},[5221],{"type":26,"value":5222,"position":5223},"high_4h",{"start":5224,"end":5225},{"line":5180,"column":5216,"offset":5217},{"line":5180,"column":5226,"offset":5227},64,10453,{"start":5229,"end":5230},{"line":5180,"column":5216,"offset":5217},{"line":5180,"column":5226,"offset":5227},{"type":26,"value":5232,"position":5233}," and ",{"start":5234,"end":5235},{"line":5180,"column":5226,"offset":5227},{"line":5180,"column":5236,"offset":5237},69,10458,{"type":30,"tagName":44,"properties":5239,"children":5240,"position":5248},{},[5241],{"type":26,"value":5242,"position":5243},"low_4h",{"start":5244,"end":5245},{"line":5180,"column":5236,"offset":5237},{"line":5180,"column":5246,"offset":5247},77,10466,{"start":5249,"end":5250},{"line":5180,"column":5236,"offset":5237},{"line":5180,"column":5246,"offset":5247},{"type":26,"value":5252,"position":5253}," are the chart's own market read at a coarser interval: ",{"start":5254,"end":5255},{"line":5180,"column":5246,"offset":5247},{"line":5180,"column":5256,"offset":5257},133,10522,{"type":30,"tagName":44,"properties":5259,"children":5260,"position":5268},{},[5261],{"type":26,"value":5262,"position":5263},"{ interval: \"4h\", missing: \"carry\" }",{"start":5264,"end":5265},{"line":5180,"column":5256,"offset":5257},{"line":5180,"column":5266,"offset":5267},171,10560,{"start":5269,"end":5270},{"line":5180,"column":5256,"offset":5257},{"line":5180,"column":5266,"offset":5267},{"type":26,"value":5272,"position":5273}," on each. The host fetches the real 4h feed and lands each candle's value on the first primary row whose close is at or after that candle's close, then carries it forward until the next candle lands, so inside a 4h period the three values hold one closed candle and never the forming one. On a 1h chart the candle that opened at 00:00 closes at 04:00, lands on the row that closes at 04:00 (the 03:00 row) and is carried across the 04:00, 05:00 and 06:00 rows; the 07:00 row brings the next one. The primary input ",{"start":5274,"end":5275},{"line":5180,"column":5266,"offset":5267},{"line":5180,"column":5276,"offset":5277},685,11074,{"type":30,"tagName":44,"properties":5279,"children":5280,"position":5288},{},[5281],{"type":26,"value":5282,"position":5283},"close",{"start":5284,"end":5285},{"line":5180,"column":5276,"offset":5277},{"line":5180,"column":5286,"offset":5287},692,11081,{"start":5289,"end":5290},{"line":5180,"column":5276,"offset":5277},{"line":5180,"column":5286,"offset":5287},{"type":26,"value":5292,"position":5293}," stays unpinned and selector-following, as always: it defines the grid the 4h values are projected onto.",{"start":5294,"end":5295},{"line":5180,"column":5286,"offset":5287},{"line":5180,"column":5296,"offset":5297},796,11185,{"start":5299,"end":5300},{"line":5180,"column":20,"offset":5188},{"line":5180,"column":5296,"offset":5297},{"type":26,"value":27},{"type":30,"tagName":31,"properties":5303,"children":5304,"position":5569},{},[5305,5323,5329,5341,5348,5361,5368,5381,5388,5401,5408,5421,5427,5440,5446,5459,5465,5478,5485,5498,5504,5517,5524,5542,5549,5562],{"type":30,"tagName":5173,"properties":5306,"children":5307,"position":5317},{},[5308],{"type":26,"value":5309,"position":5310},"One entry per closed candle.",{"start":5311,"end":5314},{"line":5312,"column":5181,"offset":5313},102,11189,{"line":5312,"column":5315,"offset":5316},31,11217,{"start":5318,"end":5320},{"line":5312,"column":20,"offset":5319},11187,{"line":5312,"column":5321,"offset":5322},33,11219,{"type":26,"value":5193,"position":5324},{"start":5325,"end":5326},{"line":5312,"column":5321,"offset":5322},{"line":5312,"column":5327,"offset":5328},34,11220,{"type":30,"tagName":44,"properties":5330,"children":5331,"position":5338},{},[5332],{"type":26,"value":5333,"position":5334},"t",{"start":5335,"end":5336},{"line":5312,"column":5327,"offset":5328},{"line":5312,"column":129,"offset":5337},11223,{"start":5339,"end":5340},{"line":5312,"column":5327,"offset":5328},{"line":5312,"column":129,"offset":5337},{"type":26,"value":5342,"position":5343}," is ",{"start":5344,"end":5345},{"line":5312,"column":129,"offset":5337},{"line":5312,"column":5346,"offset":5347},41,11227,{"type":30,"tagName":44,"properties":5349,"children":5350,"position":5358},{},[5351],{"type":26,"value":5352,"position":5353},"time.bar_open_sec",{"start":5354,"end":5355},{"line":5312,"column":5346,"offset":5347},{"line":5312,"column":5356,"offset":5357},60,11246,{"start":5359,"end":5360},{"line":5312,"column":5346,"offset":5347},{"line":5312,"column":5356,"offset":5357},{"type":26,"value":5362,"position":5363},", the bar's open time in epoch seconds; the gap between two consecutive readings is the bar's width, so ",{"start":5364,"end":5365},{"line":5312,"column":5356,"offset":5357},{"line":5312,"column":5366,"offset":5367},164,11350,{"type":30,"tagName":44,"properties":5369,"children":5370,"position":5378},{},[5371],{"type":26,"value":5372,"position":5373},"t + width",{"start":5374,"end":5375},{"line":5312,"column":5366,"offset":5367},{"line":5312,"column":5376,"offset":5377},175,11361,{"start":5379,"end":5380},{"line":5312,"column":5366,"offset":5367},{"line":5312,"column":5376,"offset":5377},{"type":26,"value":5382,"position":5383}," is the row's close and ",{"start":5384,"end":5385},{"line":5312,"column":5376,"offset":5377},{"line":5312,"column":5386,"offset":5387},199,11385,{"type":30,"tagName":44,"properties":5389,"children":5390,"position":5398},{},[5391],{"type":26,"value":5392,"position":5393},"floor((t + width) / 14400) - 1",{"start":5394,"end":5395},{"line":5312,"column":5386,"offset":5387},{"line":5312,"column":5396,"offset":5397},231,11417,{"start":5399,"end":5400},{"line":5312,"column":5386,"offset":5387},{"line":5312,"column":5396,"offset":5397},{"type":26,"value":5402,"position":5403}," is the id of the last 4h candle closed at or before it, the candle the landing rule delivers on that row. The ring is four module-level arrays (",{"start":5404,"end":5405},{"line":5312,"column":5396,"offset":5397},{"line":5312,"column":5406,"offset":5407},376,11562,{"type":30,"tagName":44,"properties":5409,"children":5410,"position":5418},{},[5411],{"type":26,"value":5412,"position":5413},"times",{"start":5414,"end":5415},{"line":5312,"column":5406,"offset":5407},{"line":5312,"column":5416,"offset":5417},383,11569,{"start":5419,"end":5420},{"line":5312,"column":5406,"offset":5407},{"line":5312,"column":5416,"offset":5417},{"type":26,"value":443,"position":5422},{"start":5423,"end":5424},{"line":5312,"column":5416,"offset":5417},{"line":5312,"column":5425,"offset":5426},385,11571,{"type":30,"tagName":44,"properties":5428,"children":5429,"position":5437},{},[5430],{"type":26,"value":5431,"position":5432},"closes",{"start":5433,"end":5434},{"line":5312,"column":5425,"offset":5426},{"line":5312,"column":5435,"offset":5436},393,11579,{"start":5438,"end":5439},{"line":5312,"column":5425,"offset":5426},{"line":5312,"column":5435,"offset":5436},{"type":26,"value":443,"position":5441},{"start":5442,"end":5443},{"line":5312,"column":5435,"offset":5436},{"line":5312,"column":5444,"offset":5445},395,11581,{"type":30,"tagName":44,"properties":5447,"children":5448,"position":5456},{},[5449],{"type":26,"value":5450,"position":5451},"highs",{"start":5452,"end":5453},{"line":5312,"column":5444,"offset":5445},{"line":5312,"column":5454,"offset":5455},402,11588,{"start":5457,"end":5458},{"line":5312,"column":5444,"offset":5445},{"line":5312,"column":5454,"offset":5455},{"type":26,"value":443,"position":5460},{"start":5461,"end":5462},{"line":5312,"column":5454,"offset":5455},{"line":5312,"column":5463,"offset":5464},404,11590,{"type":30,"tagName":44,"properties":5466,"children":5467,"position":5475},{},[5468],{"type":26,"value":5469,"position":5470},"lows",{"start":5471,"end":5472},{"line":5312,"column":5463,"offset":5464},{"line":5312,"column":5473,"offset":5474},410,11596,{"start":5476,"end":5477},{"line":5312,"column":5463,"offset":5464},{"line":5312,"column":5473,"offset":5474},{"type":26,"value":5479,"position":5480},") plus two for the 4h EMAs, 200 entries indexed by ",{"start":5481,"end":5482},{"line":5312,"column":5473,"offset":5474},{"line":5312,"column":5483,"offset":5484},461,11647,{"type":30,"tagName":44,"properties":5486,"children":5487,"position":5495},{},[5488],{"type":26,"value":5489,"position":5490},"head",{"start":5491,"end":5492},{"line":5312,"column":5483,"offset":5484},{"line":5312,"column":5493,"offset":5494},467,11653,{"start":5496,"end":5497},{"line":5312,"column":5483,"offset":5484},{"line":5312,"column":5493,"offset":5494},{"type":26,"value":5232,"position":5499},{"start":5500,"end":5501},{"line":5312,"column":5493,"offset":5494},{"line":5312,"column":5502,"offset":5503},472,11658,{"type":30,"tagName":44,"properties":5505,"children":5506,"position":5514},{},[5507],{"type":26,"value":5508,"position":5509},"count",{"start":5510,"end":5511},{"line":5312,"column":5502,"offset":5503},{"line":5312,"column":5512,"offset":5513},479,11665,{"start":5515,"end":5516},{"line":5312,"column":5502,"offset":5503},{"line":5312,"column":5512,"offset":5513},{"type":26,"value":5518,"position":5519},", so it survives from bar to bar exactly like the accumulator in ",{"start":5520,"end":5521},{"line":5312,"column":5512,"offset":5513},{"line":5312,"column":5522,"offset":5523},544,11730,{"type":30,"tagName":121,"properties":5525,"children":5527,"position":5537},{"href":5526},"aggregated-cvd.md",[5528],{"type":26,"value":5529,"position":5530},"Aggregated CVD",{"start":5531,"end":5534},{"line":5312,"column":5532,"offset":5533},545,11731,{"line":5312,"column":5535,"offset":5536},559,11745,{"start":5538,"end":5539},{"line":5312,"column":5522,"offset":5523},{"line":5312,"column":5540,"offset":5541},579,11765,{"type":26,"value":5543,"position":5544},". A row whose id differs from the newest entry's appends an entry keyed by the candle's open time (",{"start":5545,"end":5546},{"line":5312,"column":5540,"offset":5541},{"line":5312,"column":5547,"offset":5548},678,11864,{"type":30,"tagName":44,"properties":5550,"children":5551,"position":5559},{},[5552],{"type":26,"value":5553,"position":5554},"id * 14400",{"start":5555,"end":5556},{"line":5312,"column":5547,"offset":5548},{"line":5312,"column":5557,"offset":5558},690,11876,{"start":5560,"end":5561},{"line":5312,"column":5547,"offset":5548},{"line":5312,"column":5557,"offset":5558},{"type":26,"value":5563,"position":5564},"); a row with the same id replaces the newest entry's close, high and low with the delivered values, because the delivered candle is one closed candle and not a running fold. That is what keeps the ring honest under the carry: the four 1h rows that hold the 00:00 candle are one entry, never a second entry holding the same candle, and a value that lands a row late corrects the entry it belongs to instead of merging two candles' highs and lows. The first row of a run has no width yet and skips the ring; the next row appends the same candle.",{"start":5565,"end":5566},{"line":5312,"column":5557,"offset":5558},{"line":5312,"column":5567,"offset":5568},1234,12420,{"start":5570,"end":5571},{"line":5312,"column":20,"offset":5319},{"line":5312,"column":5567,"offset":5568},{"type":26,"value":27},{"type":30,"tagName":31,"properties":5574,"children":5575,"position":5699},{},[5576,5593,5600,5613,5620,5633,5640,5653,5660,5673,5680,5692],{"type":30,"tagName":5173,"properties":5577,"children":5578,"position":5587},{},[5579],{"type":26,"value":5580,"position":5581},"True 4h EMAs.",{"start":5582,"end":5585},{"line":5583,"column":5181,"offset":5584},104,12424,{"line":5583,"column":5162,"offset":5586},12437,{"start":5588,"end":5590},{"line":5583,"column":20,"offset":5589},12422,{"line":5583,"column":5591,"offset":5592},18,12439,{"type":26,"value":5594,"position":5595}," The 4h EMA 8 and EMA 21 in the side window are computed from the ring, not from primary bars: when an entry is appended, its EMA is one step from the entry before it (",{"start":5596,"end":5597},{"line":5583,"column":5591,"offset":5592},{"line":5583,"column":5598,"offset":5599},186,12607,{"type":30,"tagName":44,"properties":5601,"children":5602,"position":5610},{},[5603],{"type":26,"value":5604,"position":5605},"ema(prev, x, n)",{"start":5606,"end":5607},{"line":5583,"column":5598,"offset":5599},{"line":5583,"column":5608,"offset":5609},203,12624,{"start":5611,"end":5612},{"line":5583,"column":5598,"offset":5599},{"line":5583,"column":5608,"offset":5609},{"type":26,"value":5614,"position":5615},", seeded by the first candle), and a replaced close redoes that one step. They step once per 4h candle and never see a 1m close, which is what makes them 4h EMAs rather than resampled ones. The chart's own EMA 21 and EMA 55 are ordinary ",{"start":5616,"end":5617},{"line":5583,"column":5608,"offset":5609},{"line":5583,"column":5618,"offset":5619},440,12861,{"type":30,"tagName":44,"properties":5621,"children":5622,"position":5630},{},[5623],{"type":26,"value":5624,"position":5625},"Ema",{"start":5626,"end":5627},{"line":5583,"column":5618,"offset":5619},{"line":5583,"column":5628,"offset":5629},445,12866,{"start":5631,"end":5632},{"line":5583,"column":5618,"offset":5619},{"line":5583,"column":5628,"offset":5629},{"type":26,"value":5634,"position":5635}," helpers from ",{"start":5636,"end":5637},{"line":5583,"column":5628,"offset":5629},{"line":5583,"column":5638,"offset":5639},459,12880,{"type":30,"tagName":44,"properties":5641,"children":5642,"position":5650},{},[5643],{"type":26,"value":5644,"position":5645},"./sdk/ta",{"start":5646,"end":5647},{"line":5583,"column":5638,"offset":5639},{"line":5583,"column":5648,"offset":5649},469,12890,{"start":5651,"end":5652},{"line":5583,"column":5638,"offset":5639},{"line":5583,"column":5648,"offset":5649},{"type":26,"value":5654,"position":5655}," fed the primary close every bar, and ",{"start":5656,"end":5657},{"line":5583,"column":5648,"offset":5649},{"line":5583,"column":5658,"offset":5659},507,12928,{"type":30,"tagName":44,"properties":5661,"children":5662,"position":5670},{},[5663],{"type":26,"value":5664,"position":5665},"state()",{"start":5666,"end":5667},{"line":5583,"column":5658,"offset":5659},{"line":5583,"column":5668,"offset":5669},516,12937,{"start":5671,"end":5672},{"line":5583,"column":5658,"offset":5659},{"line":5583,"column":5668,"offset":5669},{"type":26,"value":5674,"position":5675}," returns ",{"start":5676,"end":5677},{"line":5583,"column":5668,"offset":5669},{"line":5583,"column":5678,"offset":5679},525,12946,{"type":30,"tagName":44,"properties":5681,"children":5682,"position":5689},{},[5683],{"type":26,"value":177,"position":5684},{"start":5685,"end":5686},{"line":5583,"column":5678,"offset":5679},{"line":5583,"column":5687,"offset":5688},528,12949,{"start":5690,"end":5691},{"line":5583,"column":5678,"offset":5679},{"line":5583,"column":5687,"offset":5688},{"type":26,"value":5693,"position":5694}," until the slower one has warmed up.",{"start":5695,"end":5696},{"line":5583,"column":5687,"offset":5688},{"line":5583,"column":5697,"offset":5698},564,12985,{"start":5700,"end":5701},{"line":5583,"column":20,"offset":5589},{"line":5583,"column":5697,"offset":5698},{"type":26,"value":27},{"type":30,"tagName":31,"properties":5704,"children":5705,"position":6102},{},[5706,5724,5730,5742,5749,5761,5768,5781,5788,5801,5808,5821,5827,5840,5847,5860,5867,5880,5887,5899,5906,5918,5925,5937,5944,5957,5964,5977,5984,5997,6004,6017,6023,6036,6043,6056,6063,6076,6082,6095],{"type":30,"tagName":5173,"properties":5707,"children":5708,"position":5718},{},[5709],{"type":26,"value":5710,"position":5711},"Two frames, two views.",{"start":5712,"end":5715},{"line":5713,"column":5181,"offset":5714},106,12989,{"line":5713,"column":5716,"offset":5717},25,13011,{"start":5719,"end":5721},{"line":5713,"column":20,"offset":5720},12987,{"line":5713,"column":5722,"offset":5723},27,13013,{"type":26,"value":5193,"position":5725},{"start":5726,"end":5727},{"line":5713,"column":5722,"offset":5723},{"line":5713,"column":5728,"offset":5729},28,13014,{"type":30,"tagName":44,"properties":5731,"children":5732,"position":5739},{},[5733],{"type":26,"value":5734,"position":5735},"context",{"start":5736,"end":5737},{"line":5713,"column":5728,"offset":5729},{"line":5713,"column":129,"offset":5738},13023,{"start":5740,"end":5741},{"line":5713,"column":5728,"offset":5729},{"line":5713,"column":129,"offset":5738},{"type":26,"value":5743,"position":5744}," (16 KiB) holds the side window: one row per candle closed inside the last ",{"start":5745,"end":5746},{"line":5713,"column":129,"offset":5738},{"line":5713,"column":5747,"offset":5748},112,13098,{"type":30,"tagName":44,"properties":5750,"children":5751,"position":5758},{},[5752],{"type":26,"value":48,"position":5753},{"start":5754,"end":5755},{"line":5713,"column":5747,"offset":5748},{"line":5713,"column":5756,"offset":5757},118,13104,{"start":5759,"end":5760},{"line":5713,"column":5747,"offset":5748},{"line":5713,"column":5756,"offset":5757},{"type":26,"value":5762,"position":5763}," chart bars (up to the ring's 200), oldest first, ",{"start":5764,"end":5765},{"line":5713,"column":5756,"offset":5757},{"line":5713,"column":5766,"offset":5767},168,13154,{"type":30,"tagName":44,"properties":5769,"children":5770,"position":5778},{},[5771],{"type":26,"value":5772,"position":5773},"[the candle's open in epoch seconds, 4h close, 4h EMA 8, 4h EMA 21]",{"start":5774,"end":5775},{"line":5713,"column":5766,"offset":5767},{"line":5713,"column":5776,"offset":5777},237,13223,{"start":5779,"end":5780},{"line":5713,"column":5766,"offset":5767},{"line":5713,"column":5776,"offset":5777},{"type":26,"value":5782,"position":5783},", and ",{"start":5784,"end":5785},{"line":5713,"column":5776,"offset":5777},{"line":5713,"column":5786,"offset":5787},243,13229,{"type":30,"tagName":44,"properties":5789,"children":5790,"position":5798},{},[5791],{"type":26,"value":5792,"position":5793},"panel.line",{"start":5794,"end":5795},{"line":5713,"column":5786,"offset":5787},{"line":5713,"column":5796,"offset":5797},255,13241,{"start":5799,"end":5800},{"line":5713,"column":5786,"offset":5787},{"line":5713,"column":5796,"offset":5797},{"type":26,"value":5802,"position":5803}," draws it beside the chart with ",{"start":5804,"end":5805},{"line":5713,"column":5796,"offset":5797},{"line":5713,"column":5806,"offset":5807},287,13273,{"type":30,"tagName":44,"properties":5809,"children":5810,"position":5818},{},[5811],{"type":26,"value":5812,"position":5813},"place: \"side\"",{"start":5814,"end":5815},{"line":5713,"column":5806,"offset":5807},{"line":5713,"column":5816,"offset":5817},302,13288,{"start":5819,"end":5820},{"line":5713,"column":5806,"offset":5807},{"line":5713,"column":5816,"offset":5817},{"type":26,"value":443,"position":5822},{"start":5823,"end":5824},{"line":5713,"column":5816,"offset":5817},{"line":5713,"column":5825,"offset":5826},304,13290,{"type":30,"tagName":44,"properties":5828,"children":5829,"position":5837},{},[5830],{"type":26,"value":5831,"position":5832},"x: \"time\"",{"start":5833,"end":5834},{"line":5713,"column":5825,"offset":5826},{"line":5713,"column":5835,"offset":5836},315,13301,{"start":5838,"end":5839},{"line":5713,"column":5825,"offset":5826},{"line":5713,"column":5835,"offset":5836},{"type":26,"value":5841,"position":5842}," and three named series. The rows are appended as UTF-8 bytes into one preallocated buffer through ",{"start":5843,"end":5844},{"line":5713,"column":5835,"offset":5836},{"line":5713,"column":5845,"offset":5846},414,13400,{"type":30,"tagName":44,"properties":5848,"children":5849,"position":5857},{},[5850],{"type":26,"value":5851,"position":5852},"put(...)",{"start":5853,"end":5854},{"line":5713,"column":5845,"offset":5846},{"line":5713,"column":5855,"offset":5856},424,13410,{"start":5858,"end":5859},{"line":5713,"column":5845,"offset":5846},{"line":5713,"column":5855,"offset":5856},{"type":26,"value":5861,"position":5862}," and decoded into a string once: the sandbox lets no memory grow after ",{"start":5863,"end":5864},{"line":5713,"column":5855,"offset":5856},{"line":5713,"column":5865,"offset":5866},495,13481,{"type":30,"tagName":44,"properties":5868,"children":5869,"position":5877},{},[5870],{"type":26,"value":5871,"position":5872},"init()",{"start":5873,"end":5874},{"line":5713,"column":5865,"offset":5866},{"line":5713,"column":5875,"offset":5876},503,13489,{"start":5878,"end":5879},{"line":5713,"column":5865,"offset":5866},{"line":5713,"column":5875,"offset":5876},{"type":26,"value":5881,"position":5882}," and the stub runtime never frees, so a string grown with ",{"start":5883,"end":5884},{"line":5713,"column":5875,"offset":5876},{"line":5713,"column":5885,"offset":5886},561,13547,{"type":30,"tagName":44,"properties":5888,"children":5889,"position":5896},{},[5890],{"type":26,"value":2342,"position":5891},{"start":5892,"end":5893},{"line":5713,"column":5885,"offset":5886},{"line":5713,"column":5894,"offset":5895},565,13551,{"start":5897,"end":5898},{"line":5713,"column":5885,"offset":5886},{"line":5713,"column":5894,"offset":5895},{"type":26,"value":5900,"position":5901}," or an ",{"start":5902,"end":5903},{"line":5713,"column":5894,"offset":5895},{"line":5713,"column":5904,"offset":5905},572,13558,{"type":30,"tagName":44,"properties":5907,"children":5908,"position":5915},{},[5909],{"type":26,"value":5910,"position":5911},"Array",{"start":5912,"end":5913},{"line":5713,"column":5904,"offset":5905},{"line":5713,"column":5540,"offset":5914},13565,{"start":5916,"end":5917},{"line":5713,"column":5904,"offset":5905},{"line":5713,"column":5540,"offset":5914},{"type":26,"value":5919,"position":5920}," join, which copies the whole text again for every row, would cost megabytes at 200 rows, while the buffer costs one short string per number, about 72 KiB in all, which the two pages ",{"start":5921,"end":5922},{"line":5713,"column":5540,"offset":5914},{"line":5713,"column":5923,"offset":5924},762,13748,{"type":30,"tagName":44,"properties":5926,"children":5927,"position":5934},{},[5928],{"type":26,"value":5871,"position":5929},{"start":5930,"end":5931},{"line":5713,"column":5923,"offset":5924},{"line":5713,"column":5932,"offset":5933},770,13756,{"start":5935,"end":5936},{"line":5713,"column":5923,"offset":5924},{"line":5713,"column":5932,"offset":5933},{"type":26,"value":5938,"position":5939}," reserves with ",{"start":5940,"end":5941},{"line":5713,"column":5932,"offset":5933},{"line":5713,"column":5942,"offset":5943},785,13771,{"type":30,"tagName":44,"properties":5945,"children":5946,"position":5954},{},[5947],{"type":26,"value":5948,"position":5949},"memory.grow(2)",{"start":5950,"end":5951},{"line":5713,"column":5942,"offset":5943},{"line":5713,"column":5952,"offset":5953},801,13787,{"start":5955,"end":5956},{"line":5713,"column":5942,"offset":5943},{"line":5713,"column":5952,"offset":5953},{"type":26,"value":5958,"position":5959}," pay for. ",{"start":5960,"end":5961},{"line":5713,"column":5952,"offset":5953},{"line":5713,"column":5962,"offset":5963},811,13797,{"type":30,"tagName":44,"properties":5965,"children":5966,"position":5974},{},[5967],{"type":26,"value":5968,"position":5969},"swings",{"start":5970,"end":5971},{"line":5713,"column":5962,"offset":5963},{"line":5713,"column":5972,"offset":5973},819,13805,{"start":5975,"end":5976},{"line":5713,"column":5962,"offset":5963},{"line":5713,"column":5972,"offset":5973},{"type":26,"value":5978,"position":5979}," (2 KiB) holds ",{"start":5980,"end":5981},{"line":5713,"column":5972,"offset":5973},{"line":5713,"column":5982,"offset":5983},834,13820,{"type":30,"tagName":44,"properties":5985,"children":5986,"position":5994},{},[5987],{"type":26,"value":5988,"position":5989},"{ prices: [low, high], values: [1, 1], colors: [...] }",{"start":5990,"end":5991},{"line":5713,"column":5982,"offset":5983},{"line":5713,"column":5992,"offset":5993},890,13876,{"start":5995,"end":5996},{"line":5713,"column":5982,"offset":5983},{"line":5713,"column":5992,"offset":5993},{"type":26,"value":5998,"position":5999},", the lowest 4h low and the highest 4h high over the last ",{"start":6000,"end":6001},{"line":5713,"column":5992,"offset":5993},{"line":5713,"column":6002,"offset":6003},948,13934,{"type":30,"tagName":44,"properties":6005,"children":6006,"position":6014},{},[6007],{"type":26,"value":6008,"position":6009},"lookback",{"start":6010,"end":6011},{"line":5713,"column":6002,"offset":6003},{"line":5713,"column":6012,"offset":6013},958,13944,{"start":6015,"end":6016},{"line":5713,"column":6002,"offset":6003},{"line":5713,"column":6012,"offset":6013},{"type":26,"value":6018,"position":6019}," entries, and ",{"start":6020,"end":6021},{"line":5713,"column":6012,"offset":6013},{"line":5713,"column":83,"offset":6022},13958,{"type":30,"tagName":44,"properties":6024,"children":6025,"position":6033},{},[6026],{"type":26,"value":6027,"position":6028},"plot.levels",{"start":6029,"end":6030},{"line":5713,"column":83,"offset":6022},{"line":5713,"column":6031,"offset":6032},985,13971,{"start":6034,"end":6035},{"line":5713,"column":83,"offset":6022},{"line":5713,"column":6031,"offset":6032},{"type":26,"value":6037,"position":6038}," docks it on the right price axis with labels. Both writes sit under ",{"start":6039,"end":6040},{"line":5713,"column":6031,"offset":6032},{"line":5713,"column":6041,"offset":6042},1054,14040,{"type":30,"tagName":44,"properties":6044,"children":6045,"position":6053},{},[6046],{"type":26,"value":6047,"position":6048},"bar.isLast()",{"start":6049,"end":6050},{"line":5713,"column":6041,"offset":6042},{"line":5713,"column":6051,"offset":6052},1068,14054,{"start":6054,"end":6055},{"line":5713,"column":6041,"offset":6042},{"line":5713,"column":6051,"offset":6052},{"type":26,"value":6057,"position":6058},": a frame is a snapshot of the run whose last write wins, so closed bars build no JSON at all. Level prices must be strictly increasing, so when the two are equal the write is skipped and the previous snapshot stands. The two colors come from the primary ",{"start":6059,"end":6060},{"line":5713,"column":6051,"offset":6052},{"line":5713,"column":6061,"offset":6062},1323,14309,{"type":30,"tagName":44,"properties":6064,"children":6065,"position":6073},{},[6066],{"type":26,"value":6067,"position":6068},"high",{"start":6069,"end":6070},{"line":5713,"column":6061,"offset":6062},{"line":5713,"column":6071,"offset":6072},1329,14315,{"start":6074,"end":6075},{"line":5713,"column":6061,"offset":6062},{"line":5713,"column":6071,"offset":6072},{"type":26,"value":5232,"position":6077},{"start":6078,"end":6079},{"line":5713,"column":6071,"offset":6072},{"line":5713,"column":6080,"offset":6081},1334,14320,{"type":30,"tagName":44,"properties":6083,"children":6084,"position":6092},{},[6085],{"type":26,"value":6086,"position":6087},"low",{"start":6088,"end":6089},{"line":5713,"column":6080,"offset":6081},{"line":5713,"column":6090,"offset":6091},1339,14325,{"start":6093,"end":6094},{"line":5713,"column":6080,"offset":6081},{"line":5713,"column":6090,"offset":6091},{"type":26,"value":6096,"position":6097},": a level turns white on the bar whose range reaches it, and amber otherwise.",{"start":6098,"end":6099},{"line":5713,"column":6090,"offset":6091},{"line":5713,"column":6100,"offset":6101},1416,14402,{"start":6103,"end":6104},{"line":5713,"column":20,"offset":5720},{"line":5713,"column":6100,"offset":6101},{"type":26,"value":27},{"type":30,"tagName":31,"properties":6107,"children":6108,"position":6209},{},[6109,6127,6133,6146,6151,6164,6170,6183,6190,6202],{"type":30,"tagName":5173,"properties":6110,"children":6111,"position":6121},{},[6112],{"type":26,"value":6113,"position":6114},"The bias.",{"start":6115,"end":6118},{"line":6116,"column":5181,"offset":6117},108,14406,{"line":6116,"column":6119,"offset":6120},12,14415,{"start":6122,"end":6124},{"line":6116,"column":20,"offset":6123},14404,{"line":6116,"column":6125,"offset":6126},14,14417,{"type":26,"value":5193,"position":6128},{"start":6129,"end":6130},{"line":6116,"column":6125,"offset":6126},{"line":6116,"column":6131,"offset":6132},15,14418,{"type":30,"tagName":44,"properties":6134,"children":6135,"position":6143},{},[6136],{"type":26,"value":6137,"position":6138},"bias",{"start":6139,"end":6140},{"line":6116,"column":6131,"offset":6132},{"line":6116,"column":6141,"offset":6142},21,14424,{"start":6144,"end":6145},{"line":6116,"column":6131,"offset":6132},{"line":6116,"column":6141,"offset":6142},{"type":26,"value":5342,"position":6147},{"start":6148,"end":6149},{"line":6116,"column":6141,"offset":6142},{"line":6116,"column":5716,"offset":6150},14428,{"type":30,"tagName":44,"properties":6152,"children":6153,"position":6161},{},[6154],{"type":26,"value":6155,"position":6156},"+1",{"start":6157,"end":6158},{"line":6116,"column":5716,"offset":6150},{"line":6116,"column":6159,"offset":6160},29,14432,{"start":6162,"end":6163},{"line":6116,"column":5716,"offset":6150},{"line":6116,"column":6159,"offset":6160},{"type":26,"value":6165,"position":6166}," when the close is above both EMAs and the newest 4h close is above its 4h EMA 21, ",{"start":6167,"end":6168},{"line":6116,"column":6159,"offset":6160},{"line":6116,"column":5747,"offset":6169},14515,{"type":30,"tagName":44,"properties":6171,"children":6172,"position":6180},{},[6173],{"type":26,"value":6174,"position":6175},"-1",{"start":6176,"end":6177},{"line":6116,"column":5747,"offset":6169},{"line":6116,"column":6178,"offset":6179},116,14519,{"start":6181,"end":6182},{"line":6116,"column":5747,"offset":6169},{"line":6116,"column":6178,"offset":6179},{"type":26,"value":6184,"position":6185}," when the close is below both and the 4h close is below its 4h EMA 21, and ",{"start":6186,"end":6187},{"line":6116,"column":6178,"offset":6179},{"line":6116,"column":6188,"offset":6189},191,14594,{"type":30,"tagName":44,"properties":6191,"children":6192,"position":6199},{},[6193],{"type":26,"value":177,"position":6194},{"start":6195,"end":6196},{"line":6116,"column":6188,"offset":6189},{"line":6116,"column":6197,"offset":6198},194,14597,{"start":6200,"end":6201},{"line":6116,"column":6188,"offset":6189},{"line":6116,"column":6197,"offset":6198},{"type":26,"value":6203,"position":6204}," for anything mixed. It is a histogram in the lower pane and a metric on your machine, so a watch can read it without the chart.",{"start":6205,"end":6206},{"line":6116,"column":6197,"offset":6198},{"line":6116,"column":6207,"offset":6208},322,14725,{"start":6210,"end":6211},{"line":6116,"column":20,"offset":6123},{"line":6116,"column":6207,"offset":6208},{"type":26,"value":27},{"type":30,"tagName":151,"properties":6214,"children":6216,"position":6226},{"id":6215},"what-kscript-legacy-could-not-do",[6217],{"type":26,"value":6218,"position":6219},"What kScript (legacy) could not do",{"start":6220,"end":6223},{"line":6221,"column":160,"offset":6222},110,14730,{"line":6221,"column":6224,"offset":6225},38,14764,{"start":6227,"end":6229},{"line":6221,"column":20,"offset":6228},14727,{"line":6221,"column":6224,"offset":6225},{"type":26,"value":27},{"type":30,"tagName":6232,"properties":6233,"children":6234,"position":6396},"ul",{},[6235,6236,6289,6290,6324,6325,6360,6361,6395],{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6238,"children":6239,"position":6285},"li",{},[6240,6248,6259,6266,6278],{"type":26,"value":6241,"position":6242},"No side window of another timeframe: every plot sat on the chart's own time axis, so a 4h series could only be stretched across 1m bars as an overlay. Here ",{"start":6243,"end":6245},{"line":5747,"column":5181,"offset":6244},14768,{"line":5747,"column":6246,"offset":6247},159,14924,{"type":30,"tagName":44,"properties":6249,"children":6250,"position":6256},{},[6251],{"type":26,"value":5792,"position":6252},{"start":6253,"end":6254},{"line":5747,"column":6246,"offset":6247},{"line":5747,"column":5266,"offset":6255},14936,{"start":6257,"end":6258},{"line":5747,"column":6246,"offset":6247},{"line":5747,"column":5266,"offset":6255},{"type":26,"value":6260,"position":6261}," with ",{"start":6262,"end":6263},{"line":5747,"column":5266,"offset":6255},{"line":5747,"column":6264,"offset":6265},177,14942,{"type":30,"tagName":44,"properties":6267,"children":6268,"position":6275},{},[6269],{"type":26,"value":5812,"position":6270},{"start":6271,"end":6272},{"line":5747,"column":6264,"offset":6265},{"line":5747,"column":6273,"offset":6274},192,14957,{"start":6276,"end":6277},{"line":5747,"column":6264,"offset":6265},{"line":5747,"column":6273,"offset":6274},{"type":26,"value":6279,"position":6280}," draws the ring on its own time axis, one point per 4h candle.",{"start":6281,"end":6282},{"line":5747,"column":6273,"offset":6274},{"line":5747,"column":6283,"offset":6284},254,15019,{"start":6286,"end":6288},{"line":5747,"column":20,"offset":6287},14766,{"line":5747,"column":6283,"offset":6284},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6291,"children":6292,"position":6320},{},[6293,6302,6313],{"type":26,"value":6294,"position":6295},"No docked levels on the price axis: a level was a horizontal line across the pane. Here ",{"start":6296,"end":6299},{"line":6297,"column":5181,"offset":6298},113,15022,{"line":6297,"column":6300,"offset":6301},91,15110,{"type":30,"tagName":44,"properties":6303,"children":6304,"position":6310},{},[6305],{"type":26,"value":6027,"position":6306},{"start":6307,"end":6308},{"line":6297,"column":6300,"offset":6301},{"line":6297,"column":5583,"offset":6309},15123,{"start":6311,"end":6312},{"line":6297,"column":6300,"offset":6301},{"line":6297,"column":5583,"offset":6309},{"type":26,"value":6314,"position":6315}," docks the two swing prices on the right axis with labels and a color per level.",{"start":6316,"end":6317},{"line":6297,"column":5583,"offset":6309},{"line":6297,"column":6318,"offset":6319},184,15203,{"start":6321,"end":6323},{"line":6297,"column":20,"offset":6322},15020,{"line":6297,"column":6318,"offset":6319},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6326,"children":6327,"position":6356},{},[6328,6337,6349],{"type":26,"value":6329,"position":6330},"No ring of coarse candles inside the script: ",{"start":6331,"end":6334},{"line":6332,"column":5181,"offset":6333},114,15206,{"line":6332,"column":6335,"offset":6336},48,15251,{"type":30,"tagName":44,"properties":6338,"children":6339,"position":6346},{},[6340],{"type":26,"value":6341,"position":6342},"htf()",{"start":6343,"end":6344},{"line":6332,"column":6335,"offset":6336},{"line":6332,"column":5216,"offset":6345},15258,{"start":6347,"end":6348},{"line":6332,"column":6335,"offset":6336},{"line":6332,"column":5216,"offset":6345},{"type":26,"value":6350,"position":6351}," handed back one value per bar. Here the module keeps the last 200 closed 4h candles itself and writes them as one snapshot.",{"start":6352,"end":6353},{"line":6332,"column":5216,"offset":6345},{"line":6332,"column":6354,"offset":6355},179,15382,{"start":6357,"end":6359},{"line":6332,"column":20,"offset":6358},15204,{"line":6332,"column":6354,"offset":6355},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6362,"children":6363,"position":6391},{},[6364,6373,6385],{"type":26,"value":6365,"position":6366},"No per-input interval: the script's inputs shared the chart's interval. Here ",{"start":6367,"end":6370},{"line":6368,"column":5181,"offset":6369},115,15385,{"line":6368,"column":6371,"offset":6372},80,15462,{"type":30,"tagName":44,"properties":6374,"children":6375,"position":6382},{},[6376],{"type":26,"value":6377,"position":6378},"{ interval: \"4h\" }",{"start":6379,"end":6380},{"line":6368,"column":6371,"offset":6372},{"line":6368,"column":5180,"offset":6381},15482,{"start":6383,"end":6384},{"line":6368,"column":6371,"offset":6372},{"line":6368,"column":5180,"offset":6381},{"type":26,"value":6386,"position":6387}," is a word on the input, honored as of each candle's close.",{"start":6388,"end":6389},{"line":6368,"column":5180,"offset":6381},{"line":6368,"column":6246,"offset":6390},15541,{"start":6392,"end":6394},{"line":6368,"column":20,"offset":6393},15383,{"line":6368,"column":6246,"offset":6390},{"type":26,"value":27},{"start":6397,"end":6398},{"line":5747,"column":20,"offset":6287},{"line":6368,"column":6246,"offset":6390},{"type":26,"value":27},{"type":30,"tagName":151,"properties":6401,"children":6403,"position":6412},{"id":6402},"customize-it",[6404],{"type":26,"value":6405,"position":6406},"Customize it",{"start":6407,"end":6410},{"line":6408,"column":160,"offset":6409},117,15546,{"line":6408,"column":5162,"offset":6411},15558,{"start":6413,"end":6415},{"line":6408,"column":20,"offset":6414},15543,{"line":6408,"column":5162,"offset":6411},{"type":26,"value":27},{"type":30,"tagName":6232,"properties":6418,"children":6419,"position":6992},{},[6420,6421,6564,6565,6708,6709,6798,6799,6904,6905,6991],{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6422,"children":6423,"position":6560},{},[6424,6441,6447,6459,6466,6478,6484,6495,6502,6514,6521,6534,6541,6553],{"type":30,"tagName":5173,"properties":6425,"children":6426,"position":6436},{},[6427],{"type":26,"value":6428,"position":6429},"Span and lookback.",{"start":6430,"end":6433},{"line":6431,"column":38,"offset":6432},119,15564,{"line":6431,"column":6434,"offset":6435},23,15582,{"start":6437,"end":6439},{"line":6431,"column":5181,"offset":6438},15562,{"line":6431,"column":5716,"offset":6440},15584,{"type":26,"value":5193,"position":6442},{"start":6443,"end":6444},{"line":6431,"column":5716,"offset":6440},{"line":6431,"column":6445,"offset":6446},26,15585,{"type":30,"tagName":44,"properties":6448,"children":6449,"position":6456},{},[6450],{"type":26,"value":48,"position":6451},{"start":6452,"end":6453},{"line":6431,"column":6445,"offset":6446},{"line":6431,"column":6454,"offset":6455},32,15591,{"start":6457,"end":6458},{"line":6431,"column":6445,"offset":6446},{"line":6431,"column":6454,"offset":6455},{"type":26,"value":6460,"position":6461}," (56 to 500) is how many chart bars a read covers: the side window lists every 4h candle closed inside them, up to the ring's 200 (480 bars of 1h hold 120 candles; a 4h chart fills the ring), and a metric read or a watch on your machine fetches ",{"start":6462,"end":6463},{"line":6431,"column":6454,"offset":6455},{"line":6431,"column":6464,"offset":6465},277,15836,{"type":30,"tagName":44,"properties":6467,"children":6468,"position":6475},{},[6469],{"type":26,"value":48,"position":6470},{"start":6471,"end":6472},{"line":6431,"column":6464,"offset":6465},{"line":6431,"column":6473,"offset":6474},283,15842,{"start":6476,"end":6477},{"line":6431,"column":6464,"offset":6465},{"line":6431,"column":6473,"offset":6474},{"type":26,"value":6479,"position":6480}," bars, so the primary EMA 55 is always warm (a read sizes itself to a window param up to 500 bars). ",{"start":6481,"end":6482},{"line":6431,"column":6473,"offset":6474},{"line":6431,"column":5416,"offset":6483},15942,{"type":30,"tagName":44,"properties":6485,"children":6486,"position":6492},{},[6487],{"type":26,"value":6008,"position":6488},{"start":6489,"end":6490},{"line":6431,"column":5416,"offset":6483},{"line":6431,"column":5435,"offset":6491},15952,{"start":6493,"end":6494},{"line":6431,"column":5416,"offset":6483},{"line":6431,"column":5435,"offset":6491},{"type":26,"value":6496,"position":6497}," (2 to 100) is how many candles the swing levels span. Both are params, so the chart user changes them without a rebuild. A ring above 200 needs a larger ",{"start":6498,"end":6499},{"line":6431,"column":5435,"offset":6491},{"line":6431,"column":6500,"offset":6501},547,16106,{"type":30,"tagName":44,"properties":6503,"children":6504,"position":6511},{},[6505],{"type":26,"value":1257,"position":6506},{"start":6507,"end":6508},{"line":6431,"column":6500,"offset":6501},{"line":6431,"column":6509,"offset":6510},552,16111,{"start":6512,"end":6513},{"line":6431,"column":6500,"offset":6501},{"line":6431,"column":6509,"offset":6510},{"type":26,"value":6515,"position":6516}," and a larger ",{"start":6517,"end":6518},{"line":6431,"column":6509,"offset":6510},{"line":6431,"column":6519,"offset":6520},566,16125,{"type":30,"tagName":44,"properties":6522,"children":6523,"position":6531},{},[6524],{"type":26,"value":6525,"position":6526},"bytes",{"start":6527,"end":6528},{"line":6431,"column":6519,"offset":6520},{"line":6431,"column":6529,"offset":6530},573,16132,{"start":6532,"end":6533},{"line":6431,"column":6519,"offset":6520},{"line":6431,"column":6529,"offset":6530},{"type":26,"value":6535,"position":6536}," buffer and ",{"start":6537,"end":6538},{"line":6431,"column":6529,"offset":6530},{"line":6431,"column":6539,"offset":6540},585,16144,{"type":30,"tagName":44,"properties":6542,"children":6543,"position":6550},{},[6544],{"type":26,"value":5734,"position":6545},{"start":6546,"end":6547},{"line":6431,"column":6539,"offset":6540},{"line":6431,"column":6548,"offset":6549},594,16153,{"start":6551,"end":6552},{"line":6431,"column":6539,"offset":6540},{"line":6431,"column":6548,"offset":6549},{"type":26,"value":6554,"position":6555}," frame: a row is about 65 bytes, so 200 rows fit the 16 KiB frame.",{"start":6556,"end":6557},{"line":6431,"column":6548,"offset":6549},{"line":6431,"column":6558,"offset":6559},660,16219,{"start":6561,"end":6563},{"line":6431,"column":20,"offset":6562},15560,{"line":6431,"column":6558,"offset":6559},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6566,"children":6567,"position":6704},{},[6568,6585,6591,6604,6610,6623,6630,6642,6647,6658,6665,6678,6685,6697],{"type":30,"tagName":5173,"properties":6569,"children":6570,"position":6579},{},[6571],{"type":26,"value":6572,"position":6573},"EMA lengths.",{"start":6574,"end":6577},{"line":6575,"column":38,"offset":6576},120,16224,{"line":6575,"column":163,"offset":6578},16236,{"start":6580,"end":6582},{"line":6575,"column":5181,"offset":6581},16222,{"line":6575,"column":6583,"offset":6584},19,16238,{"type":26,"value":6586,"position":6587}," The chart's EMAs are ",{"start":6588,"end":6589},{"line":6575,"column":6583,"offset":6584},{"line":6575,"column":5346,"offset":6590},16260,{"type":30,"tagName":44,"properties":6592,"children":6593,"position":6601},{},[6594],{"type":26,"value":6595,"position":6596},"new Ema(21)",{"start":6597,"end":6598},{"line":6575,"column":5346,"offset":6590},{"line":6575,"column":6599,"offset":6600},54,16273,{"start":6602,"end":6603},{"line":6575,"column":5346,"offset":6590},{"line":6575,"column":6599,"offset":6600},{"type":26,"value":5232,"position":6605},{"start":6606,"end":6607},{"line":6575,"column":6599,"offset":6600},{"line":6575,"column":6608,"offset":6609},59,16278,{"type":30,"tagName":44,"properties":6611,"children":6612,"position":6620},{},[6613],{"type":26,"value":6614,"position":6615},"new Ema(55)",{"start":6616,"end":6617},{"line":6575,"column":6608,"offset":6609},{"line":6575,"column":6618,"offset":6619},72,16291,{"start":6621,"end":6622},{"line":6575,"column":6608,"offset":6609},{"line":6575,"column":6618,"offset":6619},{"type":26,"value":6624,"position":6625},"; the 4h ones are the ",{"start":6626,"end":6627},{"line":6575,"column":6618,"offset":6619},{"line":6575,"column":6628,"offset":6629},94,16313,{"type":30,"tagName":44,"properties":6631,"children":6632,"position":6639},{},[6633],{"type":26,"value":3261,"position":6634},{"start":6635,"end":6636},{"line":6575,"column":6628,"offset":6629},{"line":6575,"column":6637,"offset":6638},99,16318,{"start":6640,"end":6641},{"line":6575,"column":6628,"offset":6629},{"line":6575,"column":6637,"offset":6638},{"type":26,"value":5232,"position":6643},{"start":6644,"end":6645},{"line":6575,"column":6637,"offset":6638},{"line":6575,"column":5583,"offset":6646},16323,{"type":30,"tagName":44,"properties":6648,"children":6649,"position":6655},{},[6650],{"type":26,"value":3308,"position":6651},{"start":6652,"end":6653},{"line":6575,"column":5583,"offset":6646},{"line":6575,"column":6221,"offset":6654},16329,{"start":6656,"end":6657},{"line":6575,"column":5583,"offset":6646},{"line":6575,"column":6221,"offset":6654},{"type":26,"value":6659,"position":6660}," passed to ",{"start":6661,"end":6662},{"line":6575,"column":6221,"offset":6654},{"line":6575,"column":6663,"offset":6664},121,16340,{"type":30,"tagName":44,"properties":6666,"children":6667,"position":6675},{},[6668],{"type":26,"value":6669,"position":6670},"ema(...)",{"start":6671,"end":6672},{"line":6575,"column":6663,"offset":6664},{"line":6575,"column":6673,"offset":6674},131,16350,{"start":6676,"end":6677},{"line":6575,"column":6663,"offset":6664},{"line":6575,"column":6673,"offset":6674},{"type":26,"value":6679,"position":6680}," in ",{"start":6681,"end":6682},{"line":6575,"column":6673,"offset":6674},{"line":6575,"column":6683,"offset":6684},135,16354,{"type":30,"tagName":44,"properties":6686,"children":6687,"position":6694},{},[6688],{"type":26,"value":5664,"position":6689},{"start":6690,"end":6691},{"line":6575,"column":6683,"offset":6684},{"line":6575,"column":6692,"offset":6693},144,16363,{"start":6695,"end":6696},{"line":6575,"column":6683,"offset":6684},{"line":6575,"column":6692,"offset":6693},{"type":26,"value":6698,"position":6699},". Rename the outputs and the series titles to match.",{"start":6700,"end":6701},{"line":6575,"column":6692,"offset":6693},{"line":6575,"column":6702,"offset":6703},196,16415,{"start":6705,"end":6707},{"line":6575,"column":20,"offset":6706},16220,{"line":6575,"column":6702,"offset":6703},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6710,"children":6711,"position":6794},{},[6712,6729,6736,6748,6754,6767,6774,6787],{"type":30,"tagName":5173,"properties":6713,"children":6714,"position":6723},{},[6715],{"type":26,"value":6716,"position":6717},"Another candle.",{"start":6718,"end":6720},{"line":6663,"column":38,"offset":6719},16420,{"line":6663,"column":6721,"offset":6722},20,16435,{"start":6724,"end":6726},{"line":6663,"column":5181,"offset":6725},16418,{"line":6663,"column":6727,"offset":6728},22,16437,{"type":26,"value":6730,"position":6731}," Change ",{"start":6732,"end":6733},{"line":6663,"column":6727,"offset":6728},{"line":6663,"column":6734,"offset":6735},30,16445,{"type":30,"tagName":44,"properties":6737,"children":6738,"position":6745},{},[6739],{"type":26,"value":6740,"position":6741},"H4",{"start":6742,"end":6743},{"line":6663,"column":6734,"offset":6735},{"line":6663,"column":5327,"offset":6744},16449,{"start":6746,"end":6747},{"line":6663,"column":6734,"offset":6735},{"line":6663,"column":5327,"offset":6744},{"type":26,"value":6749,"position":6750}," to ",{"start":6751,"end":6752},{"line":6663,"column":5327,"offset":6744},{"line":6663,"column":6224,"offset":6753},16453,{"type":30,"tagName":44,"properties":6755,"children":6756,"position":6764},{},[6757],{"type":26,"value":6758,"position":6759},"86400.0",{"start":6760,"end":6761},{"line":6663,"column":6224,"offset":6753},{"line":6663,"column":6762,"offset":6763},47,16462,{"start":6765,"end":6766},{"line":6663,"column":6224,"offset":6753},{"line":6663,"column":6762,"offset":6763},{"type":26,"value":6768,"position":6769}," and the interval to ",{"start":6770,"end":6771},{"line":6663,"column":6762,"offset":6763},{"line":6663,"column":6772,"offset":6773},68,16483,{"type":30,"tagName":44,"properties":6775,"children":6776,"position":6784},{},[6777],{"type":26,"value":6778,"position":6779},"\"1d\"",{"start":6780,"end":6781},{"line":6663,"column":6772,"offset":6773},{"line":6663,"column":6782,"offset":6783},74,16489,{"start":6785,"end":6786},{"line":6663,"column":6772,"offset":6773},{"line":6663,"column":6782,"offset":6783},{"type":26,"value":6788,"position":6789}," on the three pinned inputs for a daily window; the candle id and the ring stay the same.",{"start":6790,"end":6791},{"line":6663,"column":6782,"offset":6783},{"line":6663,"column":6792,"offset":6793},163,16578,{"start":6795,"end":6797},{"line":6663,"column":20,"offset":6796},16416,{"line":6663,"column":6792,"offset":6793},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6800,"children":6801,"position":6900},{},[6802,6818,6823,6836,6842,6854,6861,6873,6880,6893],{"type":30,"tagName":5173,"properties":6803,"children":6804,"position":6813},{},[6805],{"type":26,"value":6806,"position":6807},"Where the views sit.",{"start":6808,"end":6811},{"line":6809,"column":38,"offset":6810},122,16583,{"line":6809,"column":5716,"offset":6812},16603,{"start":6814,"end":6816},{"line":6809,"column":5181,"offset":6815},16581,{"line":6809,"column":5722,"offset":6817},16605,{"type":26,"value":5193,"position":6819},{"start":6820,"end":6821},{"line":6809,"column":5722,"offset":6817},{"line":6809,"column":5728,"offset":6822},16606,{"type":30,"tagName":44,"properties":6824,"children":6825,"position":6833},{},[6826],{"type":26,"value":6827,"position":6828},"place: \"below\"",{"start":6829,"end":6830},{"line":6809,"column":5728,"offset":6822},{"line":6809,"column":6831,"offset":6832},44,16622,{"start":6834,"end":6835},{"line":6809,"column":5728,"offset":6822},{"line":6809,"column":6831,"offset":6832},{"type":26,"value":6837,"position":6838}," puts the window under the chart instead of beside it; ",{"start":6839,"end":6840},{"line":6809,"column":6831,"offset":6832},{"line":6809,"column":6637,"offset":6841},16677,{"type":30,"tagName":44,"properties":6843,"children":6844,"position":6851},{},[6845],{"type":26,"value":6846,"position":6847},"dock: \"left\"",{"start":6848,"end":6849},{"line":6809,"column":6637,"offset":6841},{"line":6809,"column":6297,"offset":6850},16691,{"start":6852,"end":6853},{"line":6809,"column":6637,"offset":6841},{"line":6809,"column":6297,"offset":6850},{"type":26,"value":6855,"position":6856}," moves the levels; ",{"start":6857,"end":6858},{"line":6809,"column":6297,"offset":6850},{"line":6809,"column":6859,"offset":6860},132,16710,{"type":30,"tagName":44,"properties":6862,"children":6863,"position":6870},{},[6864],{"type":26,"value":6865,"position":6866},"width_frac",{"start":6867,"end":6868},{"line":6809,"column":6859,"offset":6860},{"line":6809,"column":6692,"offset":6869},16722,{"start":6871,"end":6872},{"line":6809,"column":6859,"offset":6860},{"line":6809,"column":6692,"offset":6869},{"type":26,"value":6874,"position":6875}," (0.05 to 0.5) widens the docked strip and ",{"start":6876,"end":6877},{"line":6809,"column":6692,"offset":6869},{"line":6809,"column":6878,"offset":6879},187,16765,{"type":30,"tagName":44,"properties":6881,"children":6882,"position":6890},{},[6883],{"type":26,"value":6884,"position":6885},"poc: true",{"start":6886,"end":6887},{"line":6809,"column":6878,"offset":6879},{"line":6809,"column":6888,"offset":6889},198,16776,{"start":6891,"end":6892},{"line":6809,"column":6878,"offset":6879},{"line":6809,"column":6888,"offset":6889},{"type":26,"value":6894,"position":6895}," marks the larger of the two values.",{"start":6896,"end":6897},{"line":6809,"column":6888,"offset":6889},{"line":6809,"column":6898,"offset":6899},234,16812,{"start":6901,"end":6903},{"line":6809,"column":20,"offset":6902},16579,{"line":6809,"column":6898,"offset":6899},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":6906,"children":6907,"position":6987},{},[6908,6924,6931,6943,6950,6962,6967,6980],{"type":30,"tagName":5173,"properties":6909,"children":6910,"position":6919},{},[6911],{"type":26,"value":6912,"position":6913},"A graded bias.",{"start":6914,"end":6917},{"line":6915,"column":38,"offset":6916},123,16817,{"line":6915,"column":6583,"offset":6918},16831,{"start":6920,"end":6922},{"line":6915,"column":5181,"offset":6921},16815,{"line":6915,"column":6141,"offset":6923},16833,{"type":26,"value":6925,"position":6926}," Count the three conditions instead of requiring all of them: ",{"start":6927,"end":6928},{"line":6915,"column":6141,"offset":6923},{"line":6915,"column":6929,"offset":6930},83,16895,{"type":30,"tagName":44,"properties":6932,"children":6933,"position":6940},{},[6934],{"type":26,"value":6935,"position":6936},"i32(close > fast) + i32(close > slow) + i32(c4Now > e21Now)",{"start":6937,"end":6938},{"line":6915,"column":6929,"offset":6930},{"line":6915,"column":6692,"offset":6939},16956,{"start":6941,"end":6942},{"line":6915,"column":6929,"offset":6930},{"line":6915,"column":6692,"offset":6939},{"type":26,"value":6944,"position":6945}," minus the same three for below gives a value from ",{"start":6946,"end":6947},{"line":6915,"column":6692,"offset":6939},{"line":6915,"column":6948,"offset":6949},195,17007,{"type":30,"tagName":44,"properties":6951,"children":6952,"position":6959},{},[6953],{"type":26,"value":6954,"position":6955},"-3",{"start":6956,"end":6957},{"line":6915,"column":6948,"offset":6949},{"line":6915,"column":5386,"offset":6958},17011,{"start":6960,"end":6961},{"line":6915,"column":6948,"offset":6949},{"line":6915,"column":5386,"offset":6958},{"type":26,"value":6749,"position":6963},{"start":6964,"end":6965},{"line":6915,"column":5386,"offset":6958},{"line":6915,"column":5608,"offset":6966},17015,{"type":30,"tagName":44,"properties":6968,"children":6969,"position":6977},{},[6970],{"type":26,"value":6971,"position":6972},"+3",{"start":6973,"end":6974},{"line":6915,"column":5608,"offset":6966},{"line":6915,"column":6975,"offset":6976},207,17019,{"start":6978,"end":6979},{"line":6915,"column":5608,"offset":6966},{"line":6915,"column":6975,"offset":6976},{"type":26,"value":6981,"position":6982},", and the histogram shows how much of the stack agrees.",{"start":6983,"end":6984},{"line":6915,"column":6975,"offset":6976},{"line":6915,"column":6985,"offset":6986},262,17074,{"start":6988,"end":6990},{"line":6915,"column":20,"offset":6989},16813,{"line":6915,"column":6985,"offset":6986},{"type":26,"value":27},{"start":6993,"end":6994},{"line":6431,"column":20,"offset":6562},{"line":6915,"column":6985,"offset":6986},{"type":26,"value":27},{"type":30,"tagName":31,"properties":6997,"children":6998,"position":7008},{},[6999],{"type":26,"value":7000,"position":7001},"Scaffold, build, install, and read the bias on your machine:",{"start":7002,"end":7005},{"line":7003,"column":20,"offset":7004},125,17076,{"line":7003,"column":7006,"offset":7007},61,17136,{"start":7009,"end":7010},{"line":7003,"column":20,"offset":7004},{"line":7003,"column":7006,"offset":7007},{"type":26,"value":27},{"type":13,"children":7013},[7014],{"type":30,"tagName":173,"properties":7015,"children":7016,"data":-1},{"class":175,"style":176,"tabindex":177},[7017],{"type":30,"tagName":44,"properties":7018,"children":7019},{},[7020,7058,7059,7079,7080,7105,7106],{"type":30,"tagName":48,"properties":7021,"children":7022},{"class":184},[7023,7028,7033,7038,7043,7048,7053],{"type":30,"tagName":48,"properties":7024,"children":7025},{"style":425},[7026],{"type":26,"value":7027},"om",{"type":30,"tagName":48,"properties":7029,"children":7030},{"style":215},[7031],{"type":26,"value":7032}," wrun",{"type":30,"tagName":48,"properties":7034,"children":7035},{"style":215},[7036],{"type":26,"value":7037}," create",{"type":30,"tagName":48,"properties":7039,"children":7040},{"style":215},[7041],{"type":26,"value":7042}," @you/multi-timeframe-terminal",{"type":30,"tagName":48,"properties":7044,"children":7045},{"style":215},[7046],{"type":26,"value":7047}," ./multi-timeframe-terminal",{"type":30,"tagName":48,"properties":7049,"children":7050},{"style":446},[7051],{"type":26,"value":7052}," --template",{"type":30,"tagName":48,"properties":7054,"children":7055},{"style":215},[7056],{"type":26,"value":7057}," multi-timeframe-terminal",{"type":26,"value":27},{"type":30,"tagName":48,"properties":7060,"children":7061},{"class":184},[7062,7066,7070,7075],{"type":30,"tagName":48,"properties":7063,"children":7064},{"style":425},[7065],{"type":26,"value":7027},{"type":30,"tagName":48,"properties":7067,"children":7068},{"style":215},[7069],{"type":26,"value":7032},{"type":30,"tagName":48,"properties":7071,"children":7072},{"style":215},[7073],{"type":26,"value":7074}," build",{"type":30,"tagName":48,"properties":7076,"children":7077},{"style":215},[7078],{"type":26,"value":7047},{"type":26,"value":27},{"type":30,"tagName":48,"properties":7081,"children":7082},{"class":184},[7083,7087,7091,7096,7100],{"type":30,"tagName":48,"properties":7084,"children":7085},{"style":425},[7086],{"type":26,"value":7027},{"type":30,"tagName":48,"properties":7088,"children":7089},{"style":215},[7090],{"type":26,"value":7032},{"type":30,"tagName":48,"properties":7092,"children":7093},{"style":215},[7094],{"type":26,"value":7095}," install",{"type":30,"tagName":48,"properties":7097,"children":7098},{"style":215},[7099],{"type":26,"value":7047},{"type":30,"tagName":48,"properties":7101,"children":7102},{"style":446},[7103],{"type":26,"value":7104}," --replace",{"type":26,"value":27},{"type":30,"tagName":48,"properties":7107,"children":7108},{"class":184},[7109,7113,7118,7123,7128,7133,7138,7143,7148,7153,7158],{"type":30,"tagName":48,"properties":7110,"children":7111},{"style":425},[7112],{"type":26,"value":7027},{"type":30,"tagName":48,"properties":7114,"children":7115},{"style":215},[7116],{"type":26,"value":7117}," metric",{"type":30,"tagName":48,"properties":7119,"children":7120},{"style":215},[7121],{"type":26,"value":7122}," series",{"type":30,"tagName":48,"properties":7124,"children":7125},{"style":446},[7126],{"type":26,"value":7127}," --metric",{"type":30,"tagName":48,"properties":7129,"children":7130},{"style":215},[7131],{"type":26,"value":7132}," wrun/@you/multi-timeframe-terminal/bias",{"type":30,"tagName":48,"properties":7134,"children":7135},{"style":446},[7136],{"type":26,"value":7137}," --symbol",{"type":30,"tagName":48,"properties":7139,"children":7140},{"style":215},[7141],{"type":26,"value":7142}," BTCUSDT",{"type":30,"tagName":48,"properties":7144,"children":7145},{"style":446},[7146],{"type":26,"value":7147}," --exchange",{"type":30,"tagName":48,"properties":7149,"children":7150},{"style":215},[7151],{"type":26,"value":7152}," BINANCE_FUTURES",{"type":30,"tagName":48,"properties":7154,"children":7155},{"style":446},[7156],{"type":26,"value":7157}," --bars",{"type":30,"tagName":48,"properties":7159,"children":7160},{"style":446},[7161],{"type":26,"value":7162}," 20",{"type":26,"value":27},{"type":30,"tagName":151,"properties":7165,"children":7167,"position":7176},{"id":7166},"concepts-used",[7168],{"type":26,"value":7169,"position":7170},"Concepts used",{"start":7171,"end":7174},{"line":7172,"column":160,"offset":7173},134,17476,{"line":7172,"column":163,"offset":7175},17489,{"start":7177,"end":7179},{"line":7172,"column":20,"offset":7178},17473,{"line":7172,"column":163,"offset":7175},{"type":26,"value":27},{"type":30,"tagName":6232,"properties":7182,"children":7183,"position":7438},{},[7184,7185,7245,7246,7277,7278,7327,7328,7357,7358,7387,7388,7437],{"type":26,"value":27},{"type":30,"tagName":6237,"properties":7186,"children":7187,"position":7241},{},[7188,7204,7210,7223,7229],{"type":30,"tagName":121,"properties":7189,"children":7190,"position":7198},{"href":123},[7191],{"type":26,"value":126,"position":7192},{"start":7193,"end":7196},{"line":7194,"column":160,"offset":7195},136,17494,{"line":7194,"column":6583,"offset":7197},17509,{"start":7199,"end":7201},{"line":7194,"column":5181,"offset":7200},17493,{"line":7194,"column":7202,"offset":7203},57,17547,{"type":26,"value":7205,"position":7206}," for the ",{"start":7207,"end":7208},{"line":7194,"column":7202,"offset":7203},{"line":7194,"column":9,"offset":7209},17556,{"type":30,"tagName":44,"properties":7211,"children":7212,"position":7220},{},[7213],{"type":26,"value":7214,"position":7215},"interval",{"start":7216,"end":7217},{"line":7194,"column":9,"offset":7209},{"line":7194,"column":7218,"offset":7219},76,17566,{"start":7221,"end":7222},{"line":7194,"column":9,"offset":7209},{"line":7194,"column":7218,"offset":7219},{"type":26,"value":7224,"position":7225}," pin, the as-of-close landing rule and the row's close from ",{"start":7226,"end":7227},{"line":7194,"column":7218,"offset":7219},{"line":7194,"column":7194,"offset":7228},17626,{"type":30,"tagName":44,"properties":7230,"children":7231,"position":7238},{},[7232],{"type":26,"value":5352,"position":7233},{"start":7234,"end":7235},{"line":7194,"column":7194,"offset":7228},{"line":7194,"column":7236,"offset":7237},155,17645,{"start":7239,"end":7240},{"line":7194,"column":7194,"offset":7228},{"line":7194,"column":7236,"offset":7237},{"start":7242,"end":7244},{"line":7194,"column":20,"offset":7243},17491,{"line":7194,"column":7236,"offset":7237},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":7247,"children":7248,"position":7273},{},[7249,7266],{"type":30,"tagName":121,"properties":7250,"children":7252,"position":7261},{"href":7251},"../functions/drawing-primitives.md",[7253],{"type":26,"value":7254,"position":7255},"Drawing primitives",{"start":7256,"end":7259},{"line":7257,"column":160,"offset":7258},137,17649,{"line":7257,"column":6727,"offset":7260},17667,{"start":7262,"end":7264},{"line":7257,"column":5181,"offset":7263},17648,{"line":7257,"column":6608,"offset":7265},17704,{"type":26,"value":7267,"position":7268}," for frames, side panels and docked levels",{"start":7269,"end":7270},{"line":7257,"column":6608,"offset":7265},{"line":7257,"column":7271,"offset":7272},101,17746,{"start":7274,"end":7276},{"line":7257,"column":20,"offset":7275},17646,{"line":7257,"column":7271,"offset":7272},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":7279,"children":7280,"position":7323},{},[7281,7298,7304,7316],{"type":30,"tagName":121,"properties":7282,"children":7284,"position":7293},{"href":7283},"../functions/moving-averages.md",[7285],{"type":26,"value":7286,"position":7287},"Moving averages",{"start":7288,"end":7291},{"line":7289,"column":160,"offset":7290},138,17750,{"line":7289,"column":6583,"offset":7292},17765,{"start":7294,"end":7296},{"line":7289,"column":5181,"offset":7295},17749,{"line":7289,"column":5207,"offset":7297},17799,{"type":26,"value":7205,"position":7299},{"start":7300,"end":7301},{"line":7289,"column":5207,"offset":7297},{"line":7289,"column":7302,"offset":7303},62,17808,{"type":30,"tagName":44,"properties":7305,"children":7306,"position":7313},{},[7307],{"type":26,"value":5624,"position":7308},{"start":7309,"end":7310},{"line":7289,"column":7302,"offset":7303},{"line":7289,"column":7311,"offset":7312},67,17813,{"start":7314,"end":7315},{"line":7289,"column":7302,"offset":7303},{"line":7289,"column":7311,"offset":7312},{"type":26,"value":7317,"position":7318}," helper behind the chart's own lines",{"start":7319,"end":7320},{"line":7289,"column":7311,"offset":7312},{"line":7289,"column":7321,"offset":7322},103,17849,{"start":7324,"end":7326},{"line":7289,"column":20,"offset":7325},17747,{"line":7289,"column":7321,"offset":7322},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":7329,"children":7330,"position":7353},{},[7331,7347],{"type":30,"tagName":121,"properties":7332,"children":7334,"position":7342},{"href":7333},"../core-concepts/time-and-sessions.md",[7335],{"type":26,"value":7336,"position":7337},"Time and sessions",{"start":7338,"end":7340},{"line":24,"column":160,"offset":7339},17853,{"line":24,"column":6141,"offset":7341},17870,{"start":7343,"end":7345},{"line":24,"column":5181,"offset":7344},17852,{"line":24,"column":7006,"offset":7346},17910,{"type":26,"value":7348,"position":7349}," for candle math on epoch seconds",{"start":7350,"end":7351},{"line":24,"column":7006,"offset":7346},{"line":24,"column":6628,"offset":7352},17943,{"start":7354,"end":7356},{"line":24,"column":20,"offset":7355},17850,{"line":24,"column":6628,"offset":7352},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":7359,"children":7360,"position":7383},{},[7361,7377],{"type":30,"tagName":121,"properties":7362,"children":7364,"position":7372},{"href":7363},"../core-concepts/execution-model.md",[7365],{"type":26,"value":7366,"position":7367},"Execution model",{"start":7368,"end":7370},{"line":23,"column":160,"offset":7369},17947,{"line":23,"column":6583,"offset":7371},17962,{"start":7373,"end":7375},{"line":23,"column":5181,"offset":7374},17946,{"line":23,"column":7202,"offset":7376},18000,{"type":26,"value":7378,"position":7379}," for module-level state and where the live bar is evaluated",{"start":7380,"end":7381},{"line":23,"column":7202,"offset":7376},{"line":23,"column":6178,"offset":7382},18059,{"start":7384,"end":7386},{"line":23,"column":20,"offset":7385},17944,{"line":23,"column":6178,"offset":7382},{"type":26,"value":27},{"type":30,"tagName":6237,"properties":7389,"children":7390,"position":7433},{},[7391,7409,7414,7426],{"type":30,"tagName":121,"properties":7392,"children":7394,"position":7403},{"href":7393},"../core-concepts/data-sources.md",[7395],{"type":26,"value":7396,"position":7397},"Data sources",{"start":7398,"end":7401},{"line":7399,"column":160,"offset":7400},141,18063,{"line":7399,"column":5162,"offset":7402},18075,{"start":7404,"end":7406},{"line":7399,"column":5181,"offset":7405},18062,{"line":7399,"column":7407,"offset":7408},51,18110,{"type":26,"value":7205,"position":7410},{"start":7411,"end":7412},{"line":7399,"column":7407,"offset":7408},{"line":7399,"column":5356,"offset":7413},18119,{"type":30,"tagName":44,"properties":7415,"children":7416,"position":7423},{},[7417],{"type":26,"value":7418,"position":7419},"missing",{"start":7420,"end":7421},{"line":7399,"column":5356,"offset":7413},{"line":7399,"column":5236,"offset":7422},18128,{"start":7424,"end":7425},{"line":7399,"column":5356,"offset":7413},{"line":7399,"column":5236,"offset":7422},{"type":26,"value":7427,"position":7428}," policies on a pinned input",{"start":7429,"end":7430},{"line":7399,"column":5236,"offset":7422},{"line":7399,"column":7431,"offset":7432},96,18155,{"start":7434,"end":7436},{"line":7399,"column":20,"offset":7435},18060,{"line":7399,"column":7431,"offset":7432},{"type":26,"value":27},{"start":7439,"end":7440},{"line":7194,"column":20,"offset":7243},{"line":7399,"column":7431,"offset":7432},{"quirksMode":7442},false,{"start":7444,"end":7445},{"line":20,"column":20,"offset":21},{"line":7446,"column":20,"offset":7447},142,18156,1790157167213]