[{"data":1,"prerenderedAt":15112},["ShallowReactive",2],{"kscript:releases/changelog":3},{"slug":4,"filePath":5,"frontmatter":6,"rawMarkdown":9,"tree":10},"releases/changelog","releases/changelog.md",{"title":7,"description":8},"Release Notes","kScript release history: features, fixes, and breaking changes, listed newest first with anchor links into full entries.","---\ntitle: Release Notes\ndescription: >-\n  kScript release history: features, fixes, and breaking changes, listed\n  newest first with anchor links into full entries.\n---\n\nAll notable changes to **kScript** are recorded here. Releases are sorted with the latest first.\n\n## Latest release\n\n> **v3.0.67**: Foreign-domain panes, perps backtesting, tape sources\n>\n> **July 2026** · Engine `@orangecharts/kscript` 3.0.67 (rolls up the 3.0.62–3.0.66 interim releases into the current build; each bullet notes the version that introduced it). Scripts can now emit **foreign-domain panes**: `plotMatrix()` (categorical grid), `plotCurve()` (numeric-X function pane), and `plotTiles()` (KPI card dashboard) render whole offchart panes whose X domain is pane-private instead of the shared time axis, including computed text tiles, `valueFormat`, `hideLegendValues`, and caps enforced as named errors. The strategy engine gains **perps mode** (`instrument=\"perps\"`: leveraged sizing on isolated margin, maker/taker fees, funding, a liquidation model with `onLiquidation`, and a set of new stats). Two **array-celled tape sources** (`trades`, `trade_volume_by_size`) bring real order-flow reading to scripts, `plotHistogram()` draws baseline-grown columns, `array.sort()` accepts a comparator, and the malformed-import error finally speaks human.\n\n### Added\n\n- **Foreign-domain panes: `plotMatrix` / `plotCurve` / `plotTiles`** (3.0.67). Three builtins that emit whole offchart PANES exempt from time pan/zoom and the crosshair. Ground rules, enforced at compile time with named errors: the script's `define` must be `position: \"offchart\"` (`plotMatrix requires define(position=\"offchart\") ...`), a script can emit only one foreign pane (`Only one foreign-domain pane output per script ...`), and the builtin is called once with the finished dataset from an `isLastBar` block (accumulate per-bar state in `static` arrays first).\n  - `plotMatrix(data, rowLabels, colLabels, format?, summary?, highlight?, gridHeight?)`: categorical grid of `[rowIdx, colIdx, value]` cells. `format=\"percent\"` renders `0.047` as `+4.7%`; up to 5 pinned `summary` rows sit under the grid (an `na` summary value renders blank); `highlight` emphasizes a row and/or column.\n  - `plotCurve(data, series?, style?, color?, fill?, markers?, valueFormat?, gridHeight?)`: numeric-X pane of `[x, v1, ...vn]` rows, up to 6 series. `na` series values are gaps, not zeros; rows must be strictly ascending in `x` (unsorted or duplicate `x` is a validation error). Vertical `markers` accept the literal `x: 'spot'`, which tracks the main series' last close live. **`valueFormat`** (`\"number\" | \"currency\" | \"percent\" | \"compact\"`) formats the Y axis and the hover card from one formatter, so they can never disagree.\n  - `plotTiles(tiles, data, texts?, columns?, gridHeight?)`: KPI cards. Card structure (labels, captions, formats, accents) is settings; card values arrive as `[tileIndex, value]` data rows. **Computed text tiles** (wire v1.2): `texts = [{ tile, text }]` sets a `format: \"text\"` tile's displayed string at run time, with the static `text` setting as the fallback; a `texts` entry targeting a non-text tile is an error. `accent: \"auto\"` colors by value sign; an `na` value drops the row and the tile renders as awaiting data.\n  - **`hideLegendValues`** (boolean) is accepted by all three builtins. **Caps are validated at the source as named errors, never silent truncation**, for example: `plotMatrix.rowLabels must have at most 64 entries, got 65`, `plotCurve supports at most 6 series, data[0] carries 7`, `plotTiles.tiles must have at most 24 entries, got 25`, `plotMatrix.data has duplicate cell (0, 0)`.\n- **Perps strategy mode** (3.0.63). `strategy(...)` accepts `instrument=\"spot\" | \"perps\"` plus `leverage` (> 0), `maintenanceMarginPercent`, `makerFeePercent`, `takerFeePercent`, `funding=\"data\" | \"off\"`, and `onLiquidation=\"continue\" | \"halt\"`; all are echoed in `output.strategy.declared`. With `instrument=\"perps\"`: every accepted entry commits isolated margin (`notional / leverage`), fees route maker/taker per fill, `funding=\"data\"` consumes host-supplied settlement events (bars where a position is open but no funding data is available are counted in `stats.fundingUnavailableCount` instead of silently zeroed; `funding=\"off\"` is an exact no-op), and an implicit liquidation exit closes the position when adverse movement erodes the committed margin (trade `exitReason: \"liquidation\"`). `onLiquidation=\"halt\"` latches after the first liquidation and rejects every later entry. New stats: `makerFeesPaid`, `takerFeesPaid`, `fundingPaid`, `fundingEventsApplied`, `fundingUnavailableCount`, `liquidationCount`, `liquidationHalted`, `bankruptcyDeficit`, plus two perps-only bar-aligned series in `output.strategy`: `committedMarginSeries` and `fundingPaidSeries`. Invalid declarations fail loudly (`strategy(): 'leverage' must be a number literal > 0`). See [Strategies](/kscript/strategies/overview).\n- **Tape sources: `trade_volume_by_size` and `trades`** (3.0.66). Two array-celled source types for tape reading. `trade_volume_by_size(symbol, exchange)` delivers cells `[bucketId, buyVolUsd, sellVolUsd, buyCount, sellCount]` over fixed USD order-size bands (bucket ids 1..7), so whale CVD comes from real order sizes instead of candle-geometry proxies. `trades(symbol, exchange, minSize?)` delivers each chart bar's individual trades as cells `[offsetMs, price, size, side]` with `side` `+1` (buy) or `-1` (sell); it is engine-complete but platform serving of wide raw-tape windows on liquid markets is still being rolled out, so the documented path today is the bucket source. Rows are dense: a quiet bar simply has zero cells. Both types count as 2 sources against the per-script source budget (the budget error spells it out: `trades sources count as 2 each`), and unknown params are rejected (`Unknown argument 'minSize' for 'trade_volume_by_size'`). See [Data Sources](/kscript/core-concepts/data-sources).\n- **`buy_sell_volume` gains a `currency` param** (3.0.66). `source(\"buy_sell_volume\", symbol, exchange, currency=\"USD\")` returns quote-notional (USD) volume; omitting `currency` keeps the base-coin default, so CVD scripts can match production magnitude without in-script `* close` pricing. See [Data Sources](/kscript/core-concepts/data-sources).\n- **`plotHistogram(value, base?, colors?, colorIndex?, width?)`** (3.0.66). Single-value columns grown from a `base` baseline (default 0), with the standard dynamic styling (`colors` + per-bar `colorIndex`, `width`) for MACD-style delta and pressure histograms. Arrays are rejected (`plotHistogram takes a single value series; use plotBar for [low, high] ranges`) and it cannot be batched (`plotBatches: 'plotHistogram' is not supported inside a plotBatches callback yet`). See [Plotting](/kscript/functions/plotting).\n- **`array.sort()` comparator** (3.0.67). `sort((a, b) => ...)` is accepted alongside the argless numeric sort (`.sort((a, b) => b - a)` sorts descending). The comparator must return a finite number: a comparator that statically returns a non-number is a compile error (`Array method 'sort' comparator must return a number, got string`), and one that returns `na` at run time is a named runtime error (`Array method 'sort' comparator must return a finite number`), never a silent no-op. See [Collections](/kscript/core-concepts/collections).\n\n### Changed\n\n- **Human import-name diagnostic** (3.0.64). A malformed library name in `import` no longer prints raw regexes. It now reads: `Invalid library name in import. Names are lowercase letters, digits, and underscores, starting with a letter, with an optional @x.y.z version pin. Examples: import \"my_lib\", import \"@owner/my_lib\", import \"@owner/my_lib@1.2.0\"`. A well-formed name that simply is not registered still fails as `Unknown library 'my_lib'`. See [Libraries](/kscript/functions/libraries).\n- **Version-header verdict.** `//@version=2` and `//@version=3` are interchangeable: the engine routes both to the same modern dialect, and every v3 feature runs under either line. `//@version=3` is the canonical header for new scripts; there is no downgrade. A missing marker or `//@version=1` routes to the deprecated legacy v1 engine. See [Migration (v2 vs v3)](/kscript/migrations/v2-vs-v3).\n\n## Previous releases\n\n> **v3.0.61** — Strategy backtesting framework\n>\n> **July 2026** · Engine `@orangecharts/kscript` 3.0.61 ships the strategy backtesting framework: `strategy(...)` script headers, `strategy.*` order methods against a deterministic lookahead-free broker emulator (market/limit/stop entries, bracket exits with trailing stops and OCA, sizing modes, commission and slippage), and `output.strategy` on the wire with trades, equity, drawdown, and locked performance stats. Results render in the Strategy Tester panel. See [Strategies](/kscript/strategies/overview) for the full guide.\n\n> **v3.0.54** — Statistics rows, sparse source alignment, and canonical registry release\n>\n> **July 2026** · Engine `@orangecharts/kscript` 3.0.54 is the canonical public build for the post-mini-chart engine line. It includes **per-bar statistics rows** through `plotStatRow()`, aligns sparse flow sources onto the candle timeline so missing buckets read as zero after coverage begins, and publishes the merged 3.0.52/3.0.53 work under one registry version for frontend, backend, alerts, and docs to consume.\n\n### Added\n\n- **`plotStatRow(value, title?, format?, polarity?, priority?, colors?)`**: adds a compact row to the per-bar statistics strip under the price pane. Use it for volume, delta, funding, liquidation totals, range, or custom scores without drawing a new series or owning a pane. [Docs](/kscript/functions/plotting#plotstatrow)\n\n### Fixed\n\n- **Sparse flow-source alignment**: sources that declare missing buckets as zero now align to the chart timeline before scripts read them. Missing post-coverage buckets become `0`; bars before the source's first real row stay `na`.\n- **`plotMiniChartGrid()` signature lockstep**: editor metadata and runtime signatures agree on the same tooltip-capable argument set.\n\n> **v3.0.49** — Viewport mini-charts, pinned request anchors & panel styling\n>\n> **July 2026** · Engine `@orangecharts/kscript` 3.0.49 (rolls up the unpublished 3.0.27–3.0.48 internal releases into one npm version). Scripts can now render **viewport-pinned mini-chart dashboards**: `plotMiniChartGrid()` draws a grid of small OHLC panels that stays at a fixed screen position while the chart pans, fed by `requestBars(..., { bars, anchor: \"latest\" })` so every panel tracks the **newest** market bars — historical panning never changes them, and they update live as bars form and close. Panels take five looks (`candleStyle`: candles, hollow, OHLC bars, line, area), an optional per-panel **% change badge** (`showChange`) and a **volume strip** (`showVolume`), plus fast/slow MAs and full color control. `requestBars` also gains composed intervals (`\"2h\"`, `\"3h\"`, `\"12h\"`, `\"2d\"` — aggregated from the largest natively-served divisor) and the explicit `anchor: \"window\"` default. See [Mini-chart grids](/kscript/functions/plotting#plotminichartgrid) and [Multi-source](/kscript/core-concepts/multi-source).\n\n### Added\n\n- **`plotMiniChartGrid(panels, ...)`**: viewport-anchored grid (up to 12 panels × 100 bars) with layout (`position`, `columns`, `panelWidth`/`panelHeight`/`gap`), colors, MA overlays, `candleStyle`, `showChange`, `showVolume`. Render-only — costs no source budget. [Docs](/kscript/functions/plotting#plotminichartgrid)\n- **`requestBars(..., { anchor: \"latest\" | \"window\" })`**: `\"latest\"` pins the returned rows to the newest native bars regardless of pan position or execution window; `\"window\"` spells the default. The literal must be static; an anchored and a window-relative request of the same symbol/timeframe are two distinct sources. [Docs](/kscript/core-concepts/multi-source)\n- **Composed intervals in `requestBars`**: `\"2h\"`, `\"3h\"`, `\"12h\"`, `\"2d\"`, `\"45m\"` and similar now return true bars at the requested timeframe, UTC-bucket-aggregated from the largest natively-served divisor (previously these silently fell back to chart-interval rows).\n\n> **v3.0.26** — Calendar timeframes & per-source deep HTF\n>\n> **June 2026** · Engine `@orangecharts/kscript` 3.0.26. Higher-timeframe `htf()` and `request()` gain **calendar-period tokens** `1D`/`1W`/`1M`/`1Q`/`1Y` (uppercase, UTC-anchored: `1W` = Monday week, `1M`/`1Q`/`1Y` = calendar month/quarter/year), distinct from rolling `Nm`/`Nh`/`Nd` epoch-floor buckets, and case-significant (`1m` minute vs `1M` month). Multi-count calendar tokens (`2W`) are rejected. An `opts` object `{ mode?, offset?, bars? }` adds `mode: \"developing\"` (current forming period), `offset: N` (N completed periods back, confirmed-only), and request-only `bars: N` (exact fetch depth); a bare opts object in the type/exchange slot is coerced to opts. **Correction:** a coarser-timeframe `request()` now fetches its **own deep history** scaled by the requested interval (daily/weekly/monthly/yearly levels resolve on a 1m chart), superseding the earlier \"bounded by the chart's loaded window\" behavior. Day/week/month aggregate from a deep daily backing source; quarter/year from a weekly one (quarter/year open/close can be off by up to ~1 week). See [Multi-Timeframe](/kscript/core-concepts/multi-timeframe).\n\n### Added\n\n- **`requestBars(symbol, timeframe, type?, exchange?, { bars })`**: returns the last N **native** bars of a symbol at a coarse interval as a plain `[time, open, high, low, close, volume]` array (oldest first), draw-only and independent of `maxBarsBack`. The drawing counterpart to `request()`: iterate the rows and draw (last N daily highs/lows, weekly ranges) instead of feeding a chart-aligned, TA-chainable series. [Docs](/kscript/core-concepts/multi-source)\n\n> **v3.0.15** — Deep-history anchoring & plot-label rules\n>\n> **June 2026** · Engine `@orangecharts/kscript` 3.0.15. `define(..., maxBarsBack=N)` opt-in deep-history declaration: the host preloads up to `N` bars (capped at 20000, and per viewer tier on the chart) so cumulative and anchored VWAPs stay fixed as the chart pans instead of re-anchoring to the newest loaded bar. Plot labels are now **required and unique** at publish, while `desc` is **optional and no longer validated**. A coarser-timeframe `request()` fetches that interval natively. (At 3.0.15 a higher-timeframe `request()` was still bounded by the chart's loaded window; engine 3.0.26 changed this so each higher-timeframe request fetches its own deep history. See the 3.0.26 entry above.)\n\n## Older releases\n\n> **v3.2.0** — Ergonomics & precision\n>\n> **June 2026** · Named streams on multi-output indicators (`bands.upper`, `macd.signal[1]`), calendar-anchored VWAP (`vwap(anchor=\"day\")` — stable under history loading, honest `na` for partial sessions), and methods on user-defined types (`func` in `type` blocks with `this`, instances stay clone-safe plain data).\n>\n> [Full notes →](#v3.2.0-june-2026)\n\n> **v3.0.7** — v2 compatibility hardening\n>\n> **June 2026** · Engine patch release (`@orangecharts/kscript` 3.0.7). No new features: v2 conveniences restored (`plotText` alignment synonyms, `plotShape` shape aliases incl. `star`, bare `NaN` as an alias of `na`) and two runtime sandbox ceilings raised to installed-base reality (data sources 8 → 20, output objects 20,000 → 50,000).\n>\n> [Full notes →](#v3.0.7-june-2026)\n\n> **v3.1.0** — Multi-source & data policy\n>\n> **June 2026** · Multi-symbol and multi-venue scripts get first-class tooling: `request()` (one-call other-symbol/HTF data), `ltf()` (lower-timeframe bars as cells on your chart's bars), a per-script source budget, machine-readable source catalog, and aggregation patterns (cross-exchange CVD, weighted OI) documented end to end.\n>\n> [Full notes →](#v3.1.0-june-2026)\n\n> **v3.0.0** — The flexibility release\n>\n> **June 2026** · Collections + lambdas, user-defined types, real `na`, stateful drawing objects with handles, multi-timeframe `htf()` (no-repaint by default), a reference-validated TA library (~40 indicators), value-driven styling, typed inputs (incl. `source` re-targeting), and importable libraries with versioning and hot reload.\n>\n> [Full notes →](#v3.0.0-june-2026)\n\n## All releases\n\n| Version                                                              | Date     | Highlights                                                                                                                                | Breaking changes                                                 |\n| -------------------------------------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------- |\n| **v3.0.67**                                                          | Jul 2026 | Foreign-domain panes (`plotMatrix`/`plotCurve`/`plotTiles` incl. computed text tiles, `valueFormat`, `hideLegendValues`, source-validated caps), perps strategy mode (isolated margin, maker/taker fees, funding, liquidation + new stats), tape sources (`trades`, `trade_volume_by_size`, `buy_sell_volume` `currency`), `plotHistogram`, `array.sort` comparator, human import diagnostic (rolls up 3.0.62–3.0.66) | None (additive) |\n| **v3.0.61**                                                          | Jul 2026 | Strategy backtesting framework: `strategy(...)` headers, `strategy.*` orders, deterministic lookahead-free broker emulator, `output.strategy` trades/equity/stats | None (additive) |\n| **v3.0.54**                                                          | Jul 2026 | `plotStatRow` per-bar statistics strip rows, sparse flow-source zero alignment, canonical registry release for the 3.0.52/3.0.53 work | None |\n| **v3.0.49**                                                          | Jul 2026 | Viewport mini-chart grids (`plotMiniChartGrid` with `candleStyle`/`showChange`/`showVolume`), `requestBars` `anchor: \"latest\"`/`\"window\"`, composed intervals (`2h`, `3h`, `12h`, `2d`) | None (additive; omitted options render identically) |\n| [**v3.0.7**](/kscript/releases/changelog#v3.0.7-june-2026)          | Jun 2026 | v2 compatibility hardening: `plotText`/`plotShape` enum synonyms restored (case-insensitive, `star` maps to `diamond`), bare `NaN` accepted as an alias of `na`, runtime source budget raised 8 → 20, output-object ceiling raised 20,000 → 50,000 | None (strictly widening) |\n| [**v3.2.0**](/kscript/releases/changelog#v3.2.0-june-2026)          | Jun 2026 | Named streams on multi-output TA (`.upper`/`.signal`/`.k`/`.line` + history indexing), `vwap(anchor)` calendar sessions, struct methods (`func` + `this` in `type` blocks), `fillBetween` works end to end on named streams | None (additive; unanchored `vwap()` and positional access unchanged) |\n| [**v3.1.0**](/kscript/releases/changelog#v3.1.0-june-2026)          | Jun 2026 | `request()` sugar, `ltf()` lower-timeframe cells, per-script runtime source budget (8 at release, 20 since v3.0.7), source catalog, multi-venue aggregation docs (cross-exchange CVD, weighted OI), feed eviction hardening | None (additive; `ltf()` requires a platform data-service update) |\n| [**v3.0.0**](/kscript/releases/changelog#v3.0.0-june-2026)          | Jun 2026 | Collections + lambdas/reducers, `type` structs, `na`/`isna`/`nz`, `color` type, drawing objects (`line.new`...`table.new` + handles), `htf()` MTF, ~40 reference-validated TA builtins, `switch`/`persist`/defaults/`format`, typed inputs, `library()`/`import`, sandbox limits manifest | Two corrections: 8 TA builtins to textbook formulas + strict `sma` warmup (early-bar values change; see [Migration (v2 vs v3)](/kscript/migrations/v2-vs-v3)) |\n| [**v2.2.0**](/kscript/releases/changelog#v2.2.0-june-2026)          | Jun 2026 | `plotPie` per-bar pie chart (auto-normalized slices, `display` text mode, batchable with per-element radius/colors); documented `volume_profile` row structure + raw bucket access | None (additive within v2) |\n| [**v2.1.0**](/kscript/releases/changelog#v2.1.0-may-2026)            | May 2026 | `plotPriceLabel` builtin, `glow` halo on chart-shape plots, `lineStyle` (solid/dashed/dotted), `opacity` on plotShape/plotText | None (additive within v2) |\n| [**v2.0.0**](/kscript/releases/changelog#v2.0.0-september-2025) | Sep 2025 | Per-bar execution model, kwargs, stronger compiler, dedicated data subscriptions, scalars from indicators, `func` + loops, extended plots | Yes (relative to **v1**; see [Migration (v1 vs v2)](/kscript/migrations/v1-vs-v2)) |\n\n---\n\n## v3.0.7 — June 2026\n\nEngine patch release (`@orangecharts/kscript` 3.0.7), focused on v2 compatibility hardening after the v3 rollout. Nothing here is a new feature: call forms that were legal on v2 are accepted again, and two sandbox ceilings move up to match how scripts are actually used.\n\n### Restored\n\n- **`plotText` alignment synonyms** — `yAlign` accepts `CENTER`/`ABOVE`/`BELOW` again, case-insensitively, normalized to `middle`/`top`/`bottom`.\n- **`plotShape` shape aliases** — shape names are case-insensitive and the v2 aliases are accepted, including `star` (maps to `diamond`).\n- **Bare `NaN`** — accepted again as an alias of `na`.\n\n### Raised\n\n- **Source budget** — runtime `MAX_SOURCES_PER_SCRIPT` moved 8 → **20** distinct data sources per script. Engine `3.0.11` unified the editor and runtime budgets at 20, so a 6-20 source aggregation script now passes both.\n- **Output objects** — 20,000 → **50,000** per run (`MAX_OUTPUT_OBJECTS`).\n\n### Compatibility\n\n- None breaking; every change strictly widens what is accepted. Scripts written against the stricter v3.0.0 surface run unchanged.\n\n---\n\n## v3.2.0 — June 2026\n\nThree quality-of-life walls came down: multi-output indicators grew names, VWAP grew anchors, and types grew methods.\n\n### Added\n\n- **Named streams.** `bb`/`keltner` expose `.basis`/`.upper`/`.lower`, `macd` exposes `.macd`/`.signal`/`.histogram` (alias `.hist`), `stoch` exposes `.k`/`.d`, `supertrend` exposes `.line`/`.direction`. Streams support history indexing (`macd.signal[1] > macd.signal[2]`) and feed `fillBetween(bands.upper, bands.lower, ...)` directly. Unknown stream names are compile errors listing the valid ones.\n- **Anchored VWAP.** `vwap(anchor=\"day\"|\"week\"|\"month\")` (or raw milliseconds) resets at UTC calendar boundaries. Anchored values are stable when older history lazy-loads (each session is self-contained); a leading partial session emits `na` instead of a wrong line. `vwap()` with no anchor keeps the cumulative behavior unchanged.\n- **Struct methods.** `func` declarations inside `type` blocks, dispatched from the type with `this` bound to the receiver (`this.field = x` mutates the struct). Instances remain plain clone-safe data; methods never collide with globals; library-exported types carry their methods.\n\n### Compatibility\n\n- Fully additive: positional stream access, unanchored `vwap()`, and field-only types behave byte-identically to v3.1.\n\n---\n\n## v3.1.0 — June 2026\n\nThe data layer opened up: one script can now combine symbols, venues, and data types with proper guard rails, and the docs gained a dedicated [Multi-Source & Aggregation](/kscript/core-concepts/multi-source) guide.\n\n### Added\n\n- **`request(symbol, timeframe?, type?, exchange?)`** — one call for the most common multi-symbol need; sugar over `source()` + `htf()` with the same no-repaint guarantee. [Docs](/kscript/core-concepts/multi-source)\n- **`ltf(interval, ...)`** — lower-timeframe bars delivered as **cells on the chart's own bars** (`ltf(\"15m\").cells` on a 1h chart = each bar's four 15m bars), composing with reducers and structs like any order-flow source. Requires the matching platform data-service update; intervals are literal strings, strictly finer than the chart.\n- **Source budget** — at most **8 distinct data sources per script** at release (identical calls dedupe; `htf()`/derived series free), joining the sandbox manifest with the usual loud line:column error and tier override. Raised to **20** in [v3.0.7](#v3.0.7-june-2026).\n- **Source catalog** — the platform now serves a machine-readable catalog of which source types and venues exist, and unavailable requests fail with the list of what does.\n- **Aggregation patterns documented** — cross-exchange CVD, venue-weighted open interest, dominance ratios, and HTF views of aggregates, all on the new multi-source page.\n\n### Changed\n\n- Live feeds for **non-OHLCV secondary sources** (funding, open interest, ratios) now merge ticks by their real data shape on the backend; secondary series on live charts become correct where they were previously merged as candles.\n- Idle feed eviction hardened platform-side (streams with zero registered consumers unsubscribe within one scan; failures keep streams alive rather than dropping them).\n\n### Compatibility\n\n- Fully additive language-side. `ltf()` errors clearly until the platform data services ship the matching update.\n\n---\n\n## v3.0.0 — June 2026\n\nThe largest upgrade kScript has had: the language grows from \"indicator scripting\" to a full charting language with data structures, your own types, stateful drawings, multi-timeframe access, and shareable libraries. Existing v2 scripts run unchanged (two narrow numeric corrections aside; see below). Full guides for everything here are linked throughout the docs; the migration page has the [adoption path](/kscript/migrations/v2-vs-v3).\n\n### Added\n\n- **Collections** — first-class arrays and maps with method-call syntax (`book.push(x)`, `levels.get(\"poc\")`), negative tail indexing, insertion-ordered maps, and compile-time element-type checking. [Docs](/kscript/core-concepts/collections)\n- **Lambdas & reducers** — `(x) => ...` with closures; `map`/`filter`/`reduce`/`forEach`/`find`/`some`/`every` replace most loops. [Docs](/kscript/core-concepts/lambdas-and-reducers)\n- **User-defined types** — `type Zone { top: number, bottom: number }`, `Zone.new(top=...)`, defaults, nesting, collections of structs, all field access compile-checked. [Docs](/kscript/core-concepts/user-defined-types)\n- **Real `na`** — falsy, propagating, structurally equal; `isna()`/`nz()`; a compiler warning on direct na-comparison; events never fire on `na`. [Docs](/kscript/core-concepts/na-and-scalar-types)\n- **`color` type** — validated `color.rgb(r, g, b, a?)`; strings remain valid everywhere.\n- **Multi-timeframe** — `htf(source, \"4h\")` base-aligned views with a **no-repaint default** (provably causal), `developing` mode, `offset`, scalar and footprint resampling. [Docs](/kscript/core-concepts/multi-timeframe)\n- **Stateful drawing objects** — `line.new`, `box.new`, `label.new`, `polyline.new`, `linefill.new`, `table.new` return mutable handles: move, restyle, `delete()`; store handles in collections and structs. [Docs](/kscript/functions/drawing-objects)\n- **Drawing primitives** — 10 `plotShape` shapes with `location` placement and `char` markers; `barcolor()`; `fillBetween()`; per-cell styled tables. [Docs](/kscript/functions/drawing-primitives)\n- **Styling** — size tiers, tooltips on every output, unified alignment, `zOrder`, `palette()`, and value-driven per-element gradients/opacity/glow. [Docs](/kscript/functions/styling)\n- **Control flow & ergonomics** — `switch` (no fallthrough), compound assignment, `persist` (the clearer spelling of `static`), default parameters, `format()`/`tostring()`/`tonumber()`. [Docs](/kscript/functions/control-flow)\n- **TA library** — ~40 indicators each validated bar-for-bar against independent textbook references (1e-6), including multi-output `bb`, `keltner`, `stoch`, `supertrend`, `macd`; uniform warmup and forward-fill conventions; everything composes (including over order-flow series). [Docs](/kscript/functions/ta-library)\n- **Typed inputs** — `int`, `float`, `source`, `timeframe`, `session`, `symbol`; constraints enforced (never silently clamped); `group`/`tooltip`/`inline`; settings changes apply with zero refetches; `source` inputs can point an indicator at microstructure data. [Docs](/kscript/functions/typed-inputs)\n- **Libraries** — `library(\"name\", \"1.0.0\")` + `import \"name\" as ta`, version pinning, script-wins precedence with warnings, hot reload in the playground. [Docs](/kscript/functions/libraries)\n- **Sandbox limits manifest** — every ceiling named and documented with exact numbers; all failures report line:column; runaway scripts are interrupted mid-loop. [Docs](/kscript/faq/limitations)\n\n### Changed\n\n- **Eight TA builtins corrected to textbook formulas** (`ema`, `rsi`, `macd`, `psar`, `adx`, `highest`, `lowest`, plus strict `sma` warmup): early-bar/warmup values change versus v2 (honest `na` warmup instead of fabricated early values; convergent thereafter). `stddev` and `rma` keep their legacy semantics, documented as such. Details and reasoning: [Migration (v2 vs v3)](/kscript/migrations/v2-vs-v3).\n\n### Compatibility\n\n- No new reserved words (`type`, `switch`, `persist`, `import` are contextual).\n- Script-defined functions always beat same-named new builtins.\n- Legacy call forms (positional inputs, scalar table cells, `static`, string colors, uppercase alignment) all keep working.\n\n---\n\n## v2.2.0 — June 2026\n\nPie plots and clearer volume-profile access: a new proportional pie builtin, plus first-class documentation of the `volume_profile` row structure and raw price-level bucket access.\n\n### Added\n\n- **`plotPie(value, price, radius?, colors?, opacity?, display?)`** — per-bar pie chart drawn as a proportional circle anchored to a price.\n  - `value` is an array of slice magnitudes, **normalized automatically** (`[60, 40]` → 60% / 40%; `[3, 1]` → 75% / 25%).\n  - `price` sets the vertical anchor; `radius` (px), `colors` (per slice), and `opacity` (0–1) control appearance.\n  - `display` — per-slice text mode: `\"percent\"` (default), `\"value\"`, or `\"none\"`. This is a single mode string, **not** the `label=[...]`/`desc=[...]` series-label arrays the other plots take.\n  - **Batchable** — works inside `plotBatches`, so you can draw one pie per price level (e.g. buy/sell split at every `volume_profile` bucket). Each batched pie carries its **own** `radius`, `colors`, and `opacity`.\n\n### Documented\n\n- **`volume_profile` data structure** — each bar is a row shaped `[timestamp, [priceLow, priceHigh, buyVol, sellVol], …]`: slot `0` is the timestamp and every later slot is one price-level bucket. The bucket count varies per bar.\n- **Raw bucket access** — alongside the scalar `vp*` accessors, you can iterate buckets directly: `vpa[0]` is the current row and `vpa[0][i + 1]` is the i-th bucket. Pairs naturally with `vpBucketCount` + `plotBatches` (e.g. a pie per bucket).\n- **Accessor functions** — `vpBuy`, `vpSell`, `vpDelta`, `vpTotal`, `vpPoc`, `vpPocVolume`, `vpBucketCount`, `vpPriceHigh`, `vpPriceLow` documented with parameter tables and examples.\n\n### Reference\n\n- [Plotting](/kscript/functions/plotting) — `plotPie` parameter table and examples.\n- [Volume Profile Functions](/kscript/functions/volume-profile) — data structure, raw bucket access, and the full `vp*` accessor reference.\n- Backward-compatible within v2; no migration required.\n\n---\n\n## v2.1.0 — May 2026\n\nPlotting refresh: a new per-bar label builtin and richer styling kwargs across the existing chart-shape plots.\n\n### Added\n\n- **`plotPriceLabel(price, text?, type?, position?, ...)`** — per-bar decorative label anchored at a price level. Three visual modes:\n  - `\"callout\"` (default): text box with a leader line and dot\n  - `\"simple\"`: centered text box\n  - `\"icon-only\"`: SVG path or image URL, with `iconSize`, `anchorX`, `anchorY` controls\n  - Text styling kwargs: `color`, `backgroundColor`, `fontFamily`, `fontWeight` (clamped 100–800), `size` (clamped 1–30), `opacity` (clamped 0–1)\n  - `tooltip` for hover text (supports `\\n` for line breaks)\n  - `icon-only` URLs support animated GIFs and WebP, so labels can render looping or animated icons\n- **`glow` kwarg** on `plotLine`, `plotBar`, `plotCandle`, `plotShape`, and `plot` — soft halo around the stroke. `true` enables a default blur in the series color; a number sets the blur radius in pixels (clamped 0–30, 0 disables).\n- **`lineStyle` kwarg** on `plotLine` and `plot` — `\"solid\"` (default), `\"dashed\"`, or `\"dotted\"`. No effect on bar / candle / point types.\n- **`opacity` kwarg** on `plotShape` — overall element opacity (0–1, clamped).\n- **`fontWeight` and `opacity` kwargs** on `plotText` — text weight 100–800 (clamped, rounded to nearest 100) and overall opacity 0–1 (clamped).\n\n### Changed\n\n- **`plotShape` shape catalog clarified** — `\"circle\"`, `\"triangle\"`, `\"cross\"`, and `\"diamond\"` are all supported. The reference previously documented circle-only.\n\n### Reference\n\n- [Plotting](/kscript/functions/plotting) — full parameter tables, including the new entries.\n- This release is backward-compatible within v2; no migration required.\n\n---\n\n## v2.0.0 — September 2025\n\nMajor release of **kScript v3** on the OpenMarket platform: new execution model, language features, and standard library—with intentional breaking differences from **v1** for long-term ergonomics and performance.\n\n### Added\n\n- **Per-bar execution** with clear phases for initialization, calculation, and plotting—see [Execution model](/kscript/core-concepts/execution-model).\n- **Keyword arguments** on builtins for clearer, order-independent calls ([Keyword arguments](/kscript/core-concepts/keyword-arguments)).\n- **`func` user-defined functions** and **`for` / `while` loops** (with the documented `var` restrictions) ([User functions](/kscript/core-concepts/user-functions)).\n- **Dedicated data subscriptions**: `ohlcv(...)`, `trades(...)`, `orderbook(...)` replacing the generic v1-only `source(...)` pattern in v2 docs.\n- **Reverse index access** on time series (`ts[0]` = latest bar) as described in the v1→v2 transition material.\n- **Extended plotting**: `plotCandle`, `plotShape`, and richer styling kwargs alongside existing line/bar plots ([Plotting](/kscript/functions/plotting)).\n\n### Changed\n\n- **Technical indicator helpers** now resolve to **scalar values per bar** instead of returning full composite series that required manual alignment in typical v1 usage.\n- **Compiler** performs stronger **static analysis** (syntax, scope, types) so more issues surface at edit time rather than at runtime.\n- **OHLCV field access** standardized via accessors such as `ohlcvTs.close`, `ohlcvTs.volume`, etc.\n\n### Fixed\n\n- Class of issues where v1 scripts could **run without obvious errors** yet mis-align series or misuse full-series returns; v2’s model and compile checks reduce this failure mode.\n\n### Breaking changes\n\n- Scripts written for **kScript v1** are **not** source-compatible with **v2** without migration (execution model, subscriptions, indicator return shapes, and keyword-only ergonomics). Use the [v1 vs v2 migration guide](/kscript/migrations/v1-vs-v2) together with this entry when porting.\n- Removal of reliance on **`buildTimeseries` / `mergeTimeseries` / `matchTimestamp`-style manual alignment** in favor of engine-driven per-bar evaluation for typical indicators.\n",{"type":11,"children":12,"data":15106,"position":15108},"root",[13,56,58,77,78,460,461,479,480,2709,2710,2725,2726,2968,2969,2985,2986,3146,3147,3269,3270,3284,3285,3345,3346,3361,3362,3478,3479,3912,3913,3927,3928,4340,4341,4935,4936,4950,4951,5088,5089,5306,5307,5323,5324,5542,5543,5740,5741,5864,5865,6006,6007,6023,6025,8188,8189,8198,8199,8214,8215,8245,8246,8261,8262,8560,8561,8576,8577,8737,8738,8753,8754,8776,8777,8785,8786,8802,8803,8816,8817,8831,8832,9355,9356,9370,9371,9410,9411,9419,9420,9435,9436,9470,9471,9486,9487,9809,9810,9824,9825,9883,9884,9899,9900,9939,9940,9948,9949,9964,9965,9999,10000,10014,10015,11610,11611,11625,11626,11870,11871,11885,11886,12022,12023,12031,12032,12047,12048,12078,12079,12093,12094,12569,12570,12585,12586,12966,12967,12982,12983,13096,13097,13105,13106,13121,13122,13136,13137,13152,13153,13915,13916,13930,13931,14047,14048,14062,14063,14113,14114,14122,14123,14139,14140,14193,14194,14208,14209,14664,14665,14680,14681,14850,14851,14865,14866,14908,14909,14923,14924],{"type":14,"tagName":15,"properties":16,"children":17,"position":53},"element","p",{},[18,28,46],{"type":19,"value":20,"position":21},"text","All notable changes to ",{"start":22,"end":25},{"line":23,"column":23,"offset":24},1,0,{"line":23,"column":26,"offset":27},24,23,{"type":14,"tagName":29,"properties":30,"children":31,"position":41},"strong",{},[32],{"type":19,"value":33,"position":34},"kScript",{"start":35,"end":38},{"line":23,"column":36,"offset":37},26,25,{"line":23,"column":39,"offset":40},33,32,{"start":42,"end":43},{"line":23,"column":26,"offset":27},{"line":23,"column":44,"offset":45},35,34,{"type":19,"value":47,"position":48}," are recorded here. Releases are sorted with the latest first.",{"start":49,"end":50},{"line":23,"column":44,"offset":45},{"line":23,"column":51,"offset":52},97,96,{"start":54,"end":55},{"line":23,"column":23,"offset":24},{"line":23,"column":51,"offset":52},{"type":19,"value":57},"\n",{"type":14,"tagName":59,"properties":60,"children":62,"position":73},"h2",{"id":61},"latest-release",[63],{"type":19,"value":64,"position":65},"Latest release",{"start":66,"end":70},{"line":67,"column":68,"offset":69},3,4,101,{"line":67,"column":71,"offset":72},18,115,{"start":74,"end":76},{"line":67,"column":23,"offset":75},98,{"line":67,"column":71,"offset":72},{"type":19,"value":57},{"type":14,"tagName":79,"properties":80,"children":81,"position":456},"blockquote",{},[82,83,114,115,455],{"type":19,"value":57},{"type":14,"tagName":15,"properties":84,"children":85,"position":111},{},[86,104],{"type":14,"tagName":29,"properties":87,"children":88,"position":98},{},[89],{"type":19,"value":90,"position":91},"v3.0.67",{"start":92,"end":95},{"line":93,"column":93,"offset":94},5,121,{"line":93,"column":96,"offset":97},12,128,{"start":99,"end":101},{"line":93,"column":67,"offset":100},119,{"line":93,"column":102,"offset":103},14,130,{"type":19,"value":105,"position":106},": Foreign-domain panes, perps backtesting, tape sources",{"start":107,"end":108},{"line":93,"column":102,"offset":103},{"line":93,"column":109,"offset":110},69,185,{"start":112,"end":113},{"line":93,"column":67,"offset":100},{"line":93,"column":109,"offset":110},{"type":19,"value":57},{"type":14,"tagName":15,"properties":116,"children":117,"position":452},{},[118,135,141,155,162,179,186,199,206,219,226,239,246,259,266,279,286,303,310,323,330,343,350,367,373,386,392,405,412,425,432,445],{"type":14,"tagName":29,"properties":119,"children":120,"position":129},{},[121],{"type":19,"value":122,"position":123},"July 2026",{"start":124,"end":127},{"line":125,"column":93,"offset":126},7,192,{"line":125,"column":102,"offset":128},201,{"start":130,"end":132},{"line":125,"column":67,"offset":131},190,{"line":125,"column":133,"offset":134},16,203,{"type":19,"value":136,"position":137}," · Engine ",{"start":138,"end":139},{"line":125,"column":133,"offset":134},{"line":125,"column":36,"offset":140},213,{"type":14,"tagName":142,"properties":143,"children":144,"position":152},"code",{},[145],{"type":19,"value":146,"position":147},"@orangecharts/kscript",{"start":148,"end":149},{"line":125,"column":36,"offset":140},{"line":125,"column":150,"offset":151},49,236,{"start":153,"end":154},{"line":125,"column":36,"offset":140},{"line":125,"column":150,"offset":151},{"type":19,"value":156,"position":157}," 3.0.67 (rolls up the 3.0.62–3.0.66 interim releases into the current build; each bullet notes the version that introduced it). Scripts can now emit ",{"start":158,"end":159},{"line":125,"column":150,"offset":151},{"line":125,"column":160,"offset":161},198,385,{"type":14,"tagName":29,"properties":163,"children":164,"position":174},{},[165],{"type":19,"value":166,"position":167},"foreign-domain panes",{"start":168,"end":171},{"line":125,"column":169,"offset":170},200,387,{"line":125,"column":172,"offset":173},220,407,{"start":175,"end":176},{"line":125,"column":160,"offset":161},{"line":125,"column":177,"offset":178},222,409,{"type":19,"value":180,"position":181},": ",{"start":182,"end":183},{"line":125,"column":177,"offset":178},{"line":125,"column":184,"offset":185},224,411,{"type":14,"tagName":142,"properties":187,"children":188,"position":196},{},[189],{"type":19,"value":190,"position":191},"plotMatrix()",{"start":192,"end":193},{"line":125,"column":184,"offset":185},{"line":125,"column":194,"offset":195},238,425,{"start":197,"end":198},{"line":125,"column":184,"offset":185},{"line":125,"column":194,"offset":195},{"type":19,"value":200,"position":201}," (categorical grid), ",{"start":202,"end":203},{"line":125,"column":194,"offset":195},{"line":125,"column":204,"offset":205},259,446,{"type":14,"tagName":142,"properties":207,"children":208,"position":216},{},[209],{"type":19,"value":210,"position":211},"plotCurve()",{"start":212,"end":213},{"line":125,"column":204,"offset":205},{"line":125,"column":214,"offset":215},272,459,{"start":217,"end":218},{"line":125,"column":204,"offset":205},{"line":125,"column":214,"offset":215},{"type":19,"value":220,"position":221}," (numeric-X function pane), and ",{"start":222,"end":223},{"line":125,"column":214,"offset":215},{"line":125,"column":224,"offset":225},304,491,{"type":14,"tagName":142,"properties":227,"children":228,"position":236},{},[229],{"type":19,"value":230,"position":231},"plotTiles()",{"start":232,"end":233},{"line":125,"column":224,"offset":225},{"line":125,"column":234,"offset":235},317,504,{"start":237,"end":238},{"line":125,"column":224,"offset":225},{"line":125,"column":234,"offset":235},{"type":19,"value":240,"position":241}," (KPI card dashboard) render whole offchart panes whose X domain is pane-private instead of the shared time axis, including computed text tiles, ",{"start":242,"end":243},{"line":125,"column":234,"offset":235},{"line":125,"column":244,"offset":245},462,649,{"type":14,"tagName":142,"properties":247,"children":248,"position":256},{},[249],{"type":19,"value":250,"position":251},"valueFormat",{"start":252,"end":253},{"line":125,"column":244,"offset":245},{"line":125,"column":254,"offset":255},475,662,{"start":257,"end":258},{"line":125,"column":244,"offset":245},{"line":125,"column":254,"offset":255},{"type":19,"value":260,"position":261},", ",{"start":262,"end":263},{"line":125,"column":254,"offset":255},{"line":125,"column":264,"offset":265},477,664,{"type":14,"tagName":142,"properties":267,"children":268,"position":276},{},[269],{"type":19,"value":270,"position":271},"hideLegendValues",{"start":272,"end":273},{"line":125,"column":264,"offset":265},{"line":125,"column":274,"offset":275},495,682,{"start":277,"end":278},{"line":125,"column":264,"offset":265},{"line":125,"column":274,"offset":275},{"type":19,"value":280,"position":281},", and caps enforced as named errors. The strategy engine gains ",{"start":282,"end":283},{"line":125,"column":274,"offset":275},{"line":125,"column":284,"offset":285},558,745,{"type":14,"tagName":29,"properties":287,"children":288,"position":298},{},[289],{"type":19,"value":290,"position":291},"perps mode",{"start":292,"end":295},{"line":125,"column":293,"offset":294},560,747,{"line":125,"column":296,"offset":297},570,757,{"start":299,"end":300},{"line":125,"column":284,"offset":285},{"line":125,"column":301,"offset":302},572,759,{"type":19,"value":304,"position":305}," (",{"start":306,"end":307},{"line":125,"column":301,"offset":302},{"line":125,"column":308,"offset":309},574,761,{"type":14,"tagName":142,"properties":311,"children":312,"position":320},{},[313],{"type":19,"value":314,"position":315},"instrument=\"perps\"",{"start":316,"end":317},{"line":125,"column":308,"offset":309},{"line":125,"column":318,"offset":319},594,781,{"start":321,"end":322},{"line":125,"column":308,"offset":309},{"line":125,"column":318,"offset":319},{"type":19,"value":324,"position":325},": leveraged sizing on isolated margin, maker/taker fees, funding, a liquidation model with ",{"start":326,"end":327},{"line":125,"column":318,"offset":319},{"line":125,"column":328,"offset":329},685,872,{"type":14,"tagName":142,"properties":331,"children":332,"position":340},{},[333],{"type":19,"value":334,"position":335},"onLiquidation",{"start":336,"end":337},{"line":125,"column":328,"offset":329},{"line":125,"column":338,"offset":339},700,887,{"start":341,"end":342},{"line":125,"column":328,"offset":329},{"line":125,"column":338,"offset":339},{"type":19,"value":344,"position":345},", and a set of new stats). Two ",{"start":346,"end":347},{"line":125,"column":338,"offset":339},{"line":125,"column":348,"offset":349},731,918,{"type":14,"tagName":29,"properties":351,"children":352,"position":362},{},[353],{"type":19,"value":354,"position":355},"array-celled tape sources",{"start":356,"end":359},{"line":125,"column":357,"offset":358},733,920,{"line":125,"column":360,"offset":361},758,945,{"start":363,"end":364},{"line":125,"column":348,"offset":349},{"line":125,"column":365,"offset":366},760,947,{"type":19,"value":304,"position":368},{"start":369,"end":370},{"line":125,"column":365,"offset":366},{"line":125,"column":371,"offset":372},762,949,{"type":14,"tagName":142,"properties":374,"children":375,"position":383},{},[376],{"type":19,"value":377,"position":378},"trades",{"start":379,"end":380},{"line":125,"column":371,"offset":372},{"line":125,"column":381,"offset":382},770,957,{"start":384,"end":385},{"line":125,"column":371,"offset":372},{"line":125,"column":381,"offset":382},{"type":19,"value":260,"position":387},{"start":388,"end":389},{"line":125,"column":381,"offset":382},{"line":125,"column":390,"offset":391},772,959,{"type":14,"tagName":142,"properties":393,"children":394,"position":402},{},[395],{"type":19,"value":396,"position":397},"trade_volume_by_size",{"start":398,"end":399},{"line":125,"column":390,"offset":391},{"line":125,"column":400,"offset":401},794,981,{"start":403,"end":404},{"line":125,"column":390,"offset":391},{"line":125,"column":400,"offset":401},{"type":19,"value":406,"position":407},") bring real order-flow reading to scripts, ",{"start":408,"end":409},{"line":125,"column":400,"offset":401},{"line":125,"column":410,"offset":411},838,1025,{"type":14,"tagName":142,"properties":413,"children":414,"position":422},{},[415],{"type":19,"value":416,"position":417},"plotHistogram()",{"start":418,"end":419},{"line":125,"column":410,"offset":411},{"line":125,"column":420,"offset":421},855,1042,{"start":423,"end":424},{"line":125,"column":410,"offset":411},{"line":125,"column":420,"offset":421},{"type":19,"value":426,"position":427}," draws baseline-grown columns, ",{"start":428,"end":429},{"line":125,"column":420,"offset":421},{"line":125,"column":430,"offset":431},886,1073,{"type":14,"tagName":142,"properties":433,"children":434,"position":442},{},[435],{"type":19,"value":436,"position":437},"array.sort()",{"start":438,"end":439},{"line":125,"column":430,"offset":431},{"line":125,"column":440,"offset":441},900,1087,{"start":443,"end":444},{"line":125,"column":430,"offset":431},{"line":125,"column":440,"offset":441},{"type":19,"value":446,"position":447}," accepts a comparator, and the malformed-import error finally speaks human.",{"start":448,"end":449},{"line":125,"column":440,"offset":441},{"line":125,"column":450,"offset":451},975,1162,{"start":453,"end":454},{"line":125,"column":67,"offset":131},{"line":125,"column":450,"offset":451},{"type":19,"value":57},{"start":457,"end":459},{"line":93,"column":23,"offset":458},117,{"line":125,"column":450,"offset":451},{"type":19,"value":57},{"type":14,"tagName":462,"properties":463,"children":465,"position":475},"h3",{"id":464},"added",[466],{"type":19,"value":467,"position":468},"Added",{"start":469,"end":472},{"line":470,"column":93,"offset":471},9,1168,{"line":470,"column":473,"offset":474},10,1173,{"start":476,"end":478},{"line":470,"column":23,"offset":477},1164,{"line":470,"column":473,"offset":474},{"type":19,"value":57},{"type":14,"tagName":481,"properties":482,"children":483,"position":2706},"ul",{},[484,485,1375,1376,1971,1972,2229,2230,2368,2369,2542,2543,2705],{"type":19,"value":57},{"type":14,"tagName":486,"properties":487,"children":488,"position":1371},"li",{},[489,558,565,578,584,597,603,616,623,636,643,656,663,676,680,1370],{"type":14,"tagName":29,"properties":490,"children":491,"position":553},{},[492,501,514,521,534,540],{"type":19,"value":493,"position":494},"Foreign-domain panes: ",{"start":495,"end":498},{"line":496,"column":93,"offset":497},11,1179,{"line":496,"column":499,"offset":500},27,1201,{"type":14,"tagName":142,"properties":502,"children":503,"position":511},{},[504],{"type":19,"value":505,"position":506},"plotMatrix",{"start":507,"end":508},{"line":496,"column":499,"offset":500},{"line":496,"column":509,"offset":510},39,1213,{"start":512,"end":513},{"line":496,"column":499,"offset":500},{"line":496,"column":509,"offset":510},{"type":19,"value":515,"position":516}," / ",{"start":517,"end":518},{"line":496,"column":509,"offset":510},{"line":496,"column":519,"offset":520},42,1216,{"type":14,"tagName":142,"properties":522,"children":523,"position":531},{},[524],{"type":19,"value":525,"position":526},"plotCurve",{"start":527,"end":528},{"line":496,"column":519,"offset":520},{"line":496,"column":529,"offset":530},53,1227,{"start":532,"end":533},{"line":496,"column":519,"offset":520},{"line":496,"column":529,"offset":530},{"type":19,"value":515,"position":535},{"start":536,"end":537},{"line":496,"column":529,"offset":530},{"line":496,"column":538,"offset":539},56,1230,{"type":14,"tagName":142,"properties":541,"children":542,"position":550},{},[543],{"type":19,"value":544,"position":545},"plotTiles",{"start":546,"end":547},{"line":496,"column":538,"offset":539},{"line":496,"column":548,"offset":549},67,1241,{"start":551,"end":552},{"line":496,"column":538,"offset":539},{"line":496,"column":548,"offset":549},{"start":554,"end":556},{"line":496,"column":67,"offset":555},1177,{"line":496,"column":109,"offset":557},1243,{"type":19,"value":559,"position":560}," (3.0.67). Three builtins that emit whole offchart PANES exempt from time pan/zoom and the crosshair. Ground rules, enforced at compile time with named errors: the script's ",{"start":561,"end":562},{"line":496,"column":109,"offset":557},{"line":496,"column":563,"offset":564},242,1416,{"type":14,"tagName":142,"properties":566,"children":567,"position":575},{},[568],{"type":19,"value":569,"position":570},"define",{"start":571,"end":572},{"line":496,"column":563,"offset":564},{"line":496,"column":573,"offset":574},250,1424,{"start":576,"end":577},{"line":496,"column":563,"offset":564},{"line":496,"column":573,"offset":574},{"type":19,"value":579,"position":580}," must be ",{"start":581,"end":582},{"line":496,"column":573,"offset":574},{"line":496,"column":204,"offset":583},1433,{"type":14,"tagName":142,"properties":585,"children":586,"position":594},{},[587],{"type":19,"value":588,"position":589},"position: \"offchart\"",{"start":590,"end":591},{"line":496,"column":204,"offset":583},{"line":496,"column":592,"offset":593},281,1455,{"start":595,"end":596},{"line":496,"column":204,"offset":583},{"line":496,"column":592,"offset":593},{"type":19,"value":304,"position":598},{"start":599,"end":600},{"line":496,"column":592,"offset":593},{"line":496,"column":601,"offset":602},283,1457,{"type":14,"tagName":142,"properties":604,"children":605,"position":613},{},[606],{"type":19,"value":607,"position":608},"plotMatrix requires define(position=\"offchart\") ...",{"start":609,"end":610},{"line":496,"column":601,"offset":602},{"line":496,"column":611,"offset":612},336,1510,{"start":614,"end":615},{"line":496,"column":601,"offset":602},{"line":496,"column":611,"offset":612},{"type":19,"value":617,"position":618},"), a script can emit only one foreign pane (",{"start":619,"end":620},{"line":496,"column":611,"offset":612},{"line":496,"column":621,"offset":622},380,1554,{"type":14,"tagName":142,"properties":624,"children":625,"position":633},{},[626],{"type":19,"value":627,"position":628},"Only one foreign-domain pane output per script ...",{"start":629,"end":630},{"line":496,"column":621,"offset":622},{"line":496,"column":631,"offset":632},432,1606,{"start":634,"end":635},{"line":496,"column":621,"offset":622},{"line":496,"column":631,"offset":632},{"type":19,"value":637,"position":638},"), and the builtin is called once with the finished dataset from an ",{"start":639,"end":640},{"line":496,"column":631,"offset":632},{"line":496,"column":641,"offset":642},500,1674,{"type":14,"tagName":142,"properties":644,"children":645,"position":653},{},[646],{"type":19,"value":647,"position":648},"isLastBar",{"start":649,"end":650},{"line":496,"column":641,"offset":642},{"line":496,"column":651,"offset":652},511,1685,{"start":654,"end":655},{"line":496,"column":641,"offset":642},{"line":496,"column":651,"offset":652},{"type":19,"value":657,"position":658}," block (accumulate per-bar state in ",{"start":659,"end":660},{"line":496,"column":651,"offset":652},{"line":496,"column":661,"offset":662},547,1721,{"type":14,"tagName":142,"properties":664,"children":665,"position":673},{},[666],{"type":19,"value":667,"position":668},"static",{"start":669,"end":670},{"line":496,"column":661,"offset":662},{"line":496,"column":671,"offset":672},555,1729,{"start":674,"end":675},{"line":496,"column":661,"offset":662},{"line":496,"column":671,"offset":672},{"type":19,"value":677,"position":678}," arrays first).\n",{"start":679,"end":-1},{"line":496,"column":671,"offset":672},{"type":14,"tagName":481,"properties":681,"children":682,"position":1367},{},[683,684,852,853,1046,1047,1231,1232,1366],{"type":19,"value":57},{"type":14,"tagName":486,"properties":685,"children":686,"position":848},{},[687,701,708,721,728,741,748,761,768,781,788,801,808,821,828,841],{"type":14,"tagName":142,"properties":688,"children":689,"position":698},{},[690],{"type":19,"value":691,"position":692},"plotMatrix(data, rowLabels, colLabels, format?, summary?, highlight?, gridHeight?)",{"start":693,"end":695},{"line":96,"column":93,"offset":694},1749,{"line":96,"column":696,"offset":697},89,1833,{"start":699,"end":700},{"line":96,"column":93,"offset":694},{"line":96,"column":696,"offset":697},{"type":19,"value":702,"position":703},": categorical grid of ",{"start":704,"end":705},{"line":96,"column":696,"offset":697},{"line":96,"column":706,"offset":707},111,1855,{"type":14,"tagName":142,"properties":709,"children":710,"position":718},{},[711],{"type":19,"value":712,"position":713},"[rowIdx, colIdx, value]",{"start":714,"end":715},{"line":96,"column":706,"offset":707},{"line":96,"column":716,"offset":717},136,1880,{"start":719,"end":720},{"line":96,"column":706,"offset":707},{"line":96,"column":716,"offset":717},{"type":19,"value":722,"position":723}," cells. ",{"start":724,"end":725},{"line":96,"column":716,"offset":717},{"line":96,"column":726,"offset":727},144,1888,{"type":14,"tagName":142,"properties":729,"children":730,"position":738},{},[731],{"type":19,"value":732,"position":733},"format=\"percent\"",{"start":734,"end":735},{"line":96,"column":726,"offset":727},{"line":96,"column":736,"offset":737},162,1906,{"start":739,"end":740},{"line":96,"column":726,"offset":727},{"line":96,"column":736,"offset":737},{"type":19,"value":742,"position":743}," renders ",{"start":744,"end":745},{"line":96,"column":736,"offset":737},{"line":96,"column":746,"offset":747},171,1915,{"type":14,"tagName":142,"properties":749,"children":750,"position":758},{},[751],{"type":19,"value":752,"position":753},"0.047",{"start":754,"end":755},{"line":96,"column":746,"offset":747},{"line":96,"column":756,"offset":757},178,1922,{"start":759,"end":760},{"line":96,"column":746,"offset":747},{"line":96,"column":756,"offset":757},{"type":19,"value":762,"position":763}," as ",{"start":764,"end":765},{"line":96,"column":756,"offset":757},{"line":96,"column":766,"offset":767},182,1926,{"type":14,"tagName":142,"properties":769,"children":770,"position":778},{},[771],{"type":19,"value":772,"position":773},"+4.7%",{"start":774,"end":775},{"line":96,"column":766,"offset":767},{"line":96,"column":776,"offset":777},189,1933,{"start":779,"end":780},{"line":96,"column":766,"offset":767},{"line":96,"column":776,"offset":777},{"type":19,"value":782,"position":783},"; up to 5 pinned ",{"start":784,"end":785},{"line":96,"column":776,"offset":777},{"line":96,"column":786,"offset":787},206,1950,{"type":14,"tagName":142,"properties":789,"children":790,"position":798},{},[791],{"type":19,"value":792,"position":793},"summary",{"start":794,"end":795},{"line":96,"column":786,"offset":787},{"line":96,"column":796,"offset":797},215,1959,{"start":799,"end":800},{"line":96,"column":786,"offset":787},{"line":96,"column":796,"offset":797},{"type":19,"value":802,"position":803}," rows sit under the grid (an ",{"start":804,"end":805},{"line":96,"column":796,"offset":797},{"line":96,"column":806,"offset":807},244,1988,{"type":14,"tagName":142,"properties":809,"children":810,"position":818},{},[811],{"type":19,"value":812,"position":813},"na",{"start":814,"end":815},{"line":96,"column":806,"offset":807},{"line":96,"column":816,"offset":817},248,1992,{"start":819,"end":820},{"line":96,"column":806,"offset":807},{"line":96,"column":816,"offset":817},{"type":19,"value":822,"position":823}," summary value renders blank); ",{"start":824,"end":825},{"line":96,"column":816,"offset":817},{"line":96,"column":826,"offset":827},279,2023,{"type":14,"tagName":142,"properties":829,"children":830,"position":838},{},[831],{"type":19,"value":832,"position":833},"highlight",{"start":834,"end":835},{"line":96,"column":826,"offset":827},{"line":96,"column":836,"offset":837},290,2034,{"start":839,"end":840},{"line":96,"column":826,"offset":827},{"line":96,"column":836,"offset":837},{"type":19,"value":842,"position":843}," emphasizes a row and/or column.",{"start":844,"end":845},{"line":96,"column":836,"offset":837},{"line":96,"column":846,"offset":847},322,2066,{"start":849,"end":851},{"line":96,"column":67,"offset":850},1747,{"line":96,"column":846,"offset":847},{"type":19,"value":57},{"type":14,"tagName":486,"properties":854,"children":855,"position":1042},{},[856,871,877,890,897,909,916,929,936,948,955,968,975,988,995,1016,1022,1035],{"type":14,"tagName":142,"properties":857,"children":858,"position":868},{},[859],{"type":19,"value":860,"position":861},"plotCurve(data, series?, style?, color?, fill?, markers?, valueFormat?, gridHeight?)",{"start":862,"end":865},{"line":863,"column":93,"offset":864},13,2071,{"line":863,"column":866,"offset":867},91,2157,{"start":869,"end":870},{"line":863,"column":93,"offset":864},{"line":863,"column":866,"offset":867},{"type":19,"value":872,"position":873},": numeric-X pane of ",{"start":874,"end":875},{"line":863,"column":866,"offset":867},{"line":863,"column":706,"offset":876},2177,{"type":14,"tagName":142,"properties":878,"children":879,"position":887},{},[880],{"type":19,"value":881,"position":882},"[x, v1, ...vn]",{"start":883,"end":884},{"line":863,"column":706,"offset":876},{"line":863,"column":885,"offset":886},127,2193,{"start":888,"end":889},{"line":863,"column":706,"offset":876},{"line":863,"column":885,"offset":886},{"type":19,"value":891,"position":892}," rows, up to 6 series. ",{"start":893,"end":894},{"line":863,"column":885,"offset":886},{"line":863,"column":895,"offset":896},150,2216,{"type":14,"tagName":142,"properties":898,"children":899,"position":906},{},[900],{"type":19,"value":812,"position":901},{"start":902,"end":903},{"line":863,"column":895,"offset":896},{"line":863,"column":904,"offset":905},154,2220,{"start":907,"end":908},{"line":863,"column":895,"offset":896},{"line":863,"column":904,"offset":905},{"type":19,"value":910,"position":911}," series values are gaps, not zeros; rows must be strictly ascending in ",{"start":912,"end":913},{"line":863,"column":904,"offset":905},{"line":863,"column":914,"offset":915},225,2291,{"type":14,"tagName":142,"properties":917,"children":918,"position":926},{},[919],{"type":19,"value":920,"position":921},"x",{"start":922,"end":923},{"line":863,"column":914,"offset":915},{"line":863,"column":924,"offset":925},228,2294,{"start":927,"end":928},{"line":863,"column":914,"offset":915},{"line":863,"column":924,"offset":925},{"type":19,"value":930,"position":931}," (unsorted or duplicate ",{"start":932,"end":933},{"line":863,"column":924,"offset":925},{"line":863,"column":934,"offset":935},252,2318,{"type":14,"tagName":142,"properties":937,"children":938,"position":945},{},[939],{"type":19,"value":920,"position":940},{"start":941,"end":942},{"line":863,"column":934,"offset":935},{"line":863,"column":943,"offset":944},255,2321,{"start":946,"end":947},{"line":863,"column":934,"offset":935},{"line":863,"column":943,"offset":944},{"type":19,"value":949,"position":950}," is a validation error). Vertical ",{"start":951,"end":952},{"line":863,"column":943,"offset":944},{"line":863,"column":953,"offset":954},289,2355,{"type":14,"tagName":142,"properties":956,"children":957,"position":965},{},[958],{"type":19,"value":959,"position":960},"markers",{"start":961,"end":962},{"line":863,"column":953,"offset":954},{"line":863,"column":963,"offset":964},298,2364,{"start":966,"end":967},{"line":863,"column":953,"offset":954},{"line":863,"column":963,"offset":964},{"type":19,"value":969,"position":970}," accept the literal ",{"start":971,"end":972},{"line":863,"column":963,"offset":964},{"line":863,"column":973,"offset":974},318,2384,{"type":14,"tagName":142,"properties":976,"children":977,"position":985},{},[978],{"type":19,"value":979,"position":980},"x: 'spot'",{"start":981,"end":982},{"line":863,"column":973,"offset":974},{"line":863,"column":983,"offset":984},329,2395,{"start":986,"end":987},{"line":863,"column":973,"offset":974},{"line":863,"column":983,"offset":984},{"type":19,"value":989,"position":990},", which tracks the main series' last close live. ",{"start":991,"end":992},{"line":863,"column":983,"offset":984},{"line":863,"column":993,"offset":994},378,2444,{"type":14,"tagName":29,"properties":996,"children":997,"position":1011},{},[998],{"type":14,"tagName":142,"properties":999,"children":1000,"position":1008},{},[1001],{"type":19,"value":250,"position":1002},{"start":1003,"end":1005},{"line":863,"column":621,"offset":1004},2446,{"line":863,"column":1006,"offset":1007},393,2459,{"start":1009,"end":1010},{"line":863,"column":621,"offset":1004},{"line":863,"column":1006,"offset":1007},{"start":1012,"end":1013},{"line":863,"column":993,"offset":994},{"line":863,"column":1014,"offset":1015},395,2461,{"type":19,"value":304,"position":1017},{"start":1018,"end":1019},{"line":863,"column":1014,"offset":1015},{"line":863,"column":1020,"offset":1021},397,2463,{"type":14,"tagName":142,"properties":1023,"children":1024,"position":1032},{},[1025],{"type":19,"value":1026,"position":1027},"\"number\" | \"currency\" | \"percent\" | \"compact\"",{"start":1028,"end":1029},{"line":863,"column":1020,"offset":1021},{"line":863,"column":1030,"offset":1031},444,2510,{"start":1033,"end":1034},{"line":863,"column":1020,"offset":1021},{"line":863,"column":1030,"offset":1031},{"type":19,"value":1036,"position":1037},") formats the Y axis and the hover card from one formatter, so they can never disagree.",{"start":1038,"end":1039},{"line":863,"column":1030,"offset":1031},{"line":863,"column":1040,"offset":1041},531,2597,{"start":1043,"end":1045},{"line":863,"column":67,"offset":1044},2069,{"line":863,"column":1040,"offset":1041},{"type":19,"value":57},{"type":14,"tagName":486,"properties":1048,"children":1049,"position":1227},{},[1050,1064,1071,1084,1090,1105,1112,1124,1131,1143,1150,1162,1169,1182,1189,1202,1208,1220],{"type":14,"tagName":142,"properties":1051,"children":1052,"position":1061},{},[1053],{"type":19,"value":1054,"position":1055},"plotTiles(tiles, data, texts?, columns?, gridHeight?)",{"start":1056,"end":1058},{"line":102,"column":93,"offset":1057},2602,{"line":102,"column":1059,"offset":1060},60,2657,{"start":1062,"end":1063},{"line":102,"column":93,"offset":1057},{"line":102,"column":1059,"offset":1060},{"type":19,"value":1065,"position":1066},": KPI cards. Card structure (labels, captions, formats, accents) is settings; card values arrive as ",{"start":1067,"end":1068},{"line":102,"column":1059,"offset":1060},{"line":102,"column":1069,"offset":1070},160,2757,{"type":14,"tagName":142,"properties":1072,"children":1073,"position":1081},{},[1074],{"type":19,"value":1075,"position":1076},"[tileIndex, value]",{"start":1077,"end":1078},{"line":102,"column":1069,"offset":1070},{"line":102,"column":1079,"offset":1080},180,2777,{"start":1082,"end":1083},{"line":102,"column":1069,"offset":1070},{"line":102,"column":1079,"offset":1080},{"type":19,"value":1085,"position":1086}," data rows. ",{"start":1087,"end":1088},{"line":102,"column":1079,"offset":1080},{"line":102,"column":126,"offset":1089},2789,{"type":14,"tagName":29,"properties":1091,"children":1092,"position":1101},{},[1093],{"type":19,"value":1094,"position":1095},"Computed text tiles",{"start":1096,"end":1099},{"line":102,"column":1097,"offset":1098},194,2791,{"line":102,"column":140,"offset":1100},2810,{"start":1102,"end":1103},{"line":102,"column":126,"offset":1089},{"line":102,"column":796,"offset":1104},2812,{"type":19,"value":1106,"position":1107}," (wire v1.2): ",{"start":1108,"end":1109},{"line":102,"column":796,"offset":1104},{"line":102,"column":1110,"offset":1111},229,2826,{"type":14,"tagName":142,"properties":1113,"children":1114,"position":1121},{},[1115],{"type":19,"value":1116,"position":1117},"texts = [{ tile, text }]",{"start":1118,"end":1119},{"line":102,"column":1110,"offset":1111},{"line":102,"column":943,"offset":1120},2852,{"start":1122,"end":1123},{"line":102,"column":1110,"offset":1111},{"line":102,"column":943,"offset":1120},{"type":19,"value":1125,"position":1126}," sets a ",{"start":1127,"end":1128},{"line":102,"column":943,"offset":1120},{"line":102,"column":1129,"offset":1130},263,2860,{"type":14,"tagName":142,"properties":1132,"children":1133,"position":1140},{},[1134],{"type":19,"value":1135,"position":1136},"format: \"text\"",{"start":1137,"end":1138},{"line":102,"column":1129,"offset":1130},{"line":102,"column":826,"offset":1139},2876,{"start":1141,"end":1142},{"line":102,"column":1129,"offset":1130},{"line":102,"column":826,"offset":1139},{"type":19,"value":1144,"position":1145}," tile's displayed string at run time, with the static ",{"start":1146,"end":1147},{"line":102,"column":826,"offset":1139},{"line":102,"column":1148,"offset":1149},333,2930,{"type":14,"tagName":142,"properties":1151,"children":1152,"position":1159},{},[1153],{"type":19,"value":19,"position":1154},{"start":1155,"end":1156},{"line":102,"column":1148,"offset":1149},{"line":102,"column":1157,"offset":1158},339,2936,{"start":1160,"end":1161},{"line":102,"column":1148,"offset":1149},{"line":102,"column":1157,"offset":1158},{"type":19,"value":1163,"position":1164}," setting as the fallback; a ",{"start":1165,"end":1166},{"line":102,"column":1157,"offset":1158},{"line":102,"column":1167,"offset":1168},367,2964,{"type":14,"tagName":142,"properties":1170,"children":1171,"position":1179},{},[1172],{"type":19,"value":1173,"position":1174},"texts",{"start":1175,"end":1176},{"line":102,"column":1167,"offset":1168},{"line":102,"column":1177,"offset":1178},374,2971,{"start":1180,"end":1181},{"line":102,"column":1167,"offset":1168},{"line":102,"column":1177,"offset":1178},{"type":19,"value":1183,"position":1184}," entry targeting a non-text tile is an error. ",{"start":1185,"end":1186},{"line":102,"column":1177,"offset":1178},{"line":102,"column":1187,"offset":1188},420,3017,{"type":14,"tagName":142,"properties":1190,"children":1191,"position":1199},{},[1192],{"type":19,"value":1193,"position":1194},"accent: \"auto\"",{"start":1195,"end":1196},{"line":102,"column":1187,"offset":1188},{"line":102,"column":1197,"offset":1198},436,3033,{"start":1200,"end":1201},{"line":102,"column":1187,"offset":1188},{"line":102,"column":1197,"offset":1198},{"type":19,"value":1203,"position":1204}," colors by value sign; an ",{"start":1205,"end":1206},{"line":102,"column":1197,"offset":1198},{"line":102,"column":244,"offset":1207},3059,{"type":14,"tagName":142,"properties":1209,"children":1210,"position":1217},{},[1211],{"type":19,"value":812,"position":1212},{"start":1213,"end":1214},{"line":102,"column":244,"offset":1207},{"line":102,"column":1215,"offset":1216},466,3063,{"start":1218,"end":1219},{"line":102,"column":244,"offset":1207},{"line":102,"column":1215,"offset":1216},{"type":19,"value":1221,"position":1222}," value drops the row and the tile renders as awaiting data.",{"start":1223,"end":1224},{"line":102,"column":1215,"offset":1216},{"line":102,"column":1225,"offset":1226},525,3122,{"start":1228,"end":1230},{"line":102,"column":67,"offset":1229},2600,{"line":102,"column":1225,"offset":1226},{"type":19,"value":57},{"type":14,"tagName":486,"properties":1233,"children":1234,"position":1362},{},[1235,1256,1263,1279,1286,1298,1304,1317,1323,1336,1342,1355],{"type":14,"tagName":29,"properties":1236,"children":1237,"position":1251},{},[1238],{"type":14,"tagName":142,"properties":1239,"children":1240,"position":1248},{},[1241],{"type":19,"value":270,"position":1242},{"start":1243,"end":1246},{"line":1244,"column":125,"offset":1245},15,3129,{"line":1244,"column":37,"offset":1247},3147,{"start":1249,"end":1250},{"line":1244,"column":125,"offset":1245},{"line":1244,"column":37,"offset":1247},{"start":1252,"end":1254},{"line":1244,"column":93,"offset":1253},3127,{"line":1244,"column":499,"offset":1255},3149,{"type":19,"value":1257,"position":1258}," (boolean) is accepted by all three builtins. ",{"start":1259,"end":1260},{"line":1244,"column":499,"offset":1255},{"line":1244,"column":1261,"offset":1262},73,3195,{"type":14,"tagName":29,"properties":1264,"children":1265,"position":1275},{},[1266],{"type":19,"value":1267,"position":1268},"Caps are validated at the source as named errors, never silent truncation",{"start":1269,"end":1272},{"line":1244,"column":1270,"offset":1271},75,3197,{"line":1244,"column":1273,"offset":1274},148,3270,{"start":1276,"end":1277},{"line":1244,"column":1261,"offset":1262},{"line":1244,"column":895,"offset":1278},3272,{"type":19,"value":1280,"position":1281},", for example: ",{"start":1282,"end":1283},{"line":1244,"column":895,"offset":1278},{"line":1244,"column":1284,"offset":1285},165,3287,{"type":14,"tagName":142,"properties":1287,"children":1288,"position":1295},{},[1289],{"type":19,"value":1290,"position":1291},"plotMatrix.rowLabels must have at most 64 entries, got 65",{"start":1292,"end":1293},{"line":1244,"column":1284,"offset":1285},{"line":1244,"column":184,"offset":1294},3346,{"start":1296,"end":1297},{"line":1244,"column":1284,"offset":1285},{"line":1244,"column":184,"offset":1294},{"type":19,"value":260,"position":1299},{"start":1300,"end":1301},{"line":1244,"column":184,"offset":1294},{"line":1244,"column":1302,"offset":1303},226,3348,{"type":14,"tagName":142,"properties":1305,"children":1306,"position":1314},{},[1307],{"type":19,"value":1308,"position":1309},"plotCurve supports at most 6 series, data[0] carries 7",{"start":1310,"end":1311},{"line":1244,"column":1302,"offset":1303},{"line":1244,"column":1312,"offset":1313},282,3404,{"start":1315,"end":1316},{"line":1244,"column":1302,"offset":1303},{"line":1244,"column":1312,"offset":1313},{"type":19,"value":260,"position":1318},{"start":1319,"end":1320},{"line":1244,"column":1312,"offset":1313},{"line":1244,"column":1321,"offset":1322},284,3406,{"type":14,"tagName":142,"properties":1324,"children":1325,"position":1333},{},[1326],{"type":19,"value":1327,"position":1328},"plotTiles.tiles must have at most 24 entries, got 25",{"start":1329,"end":1330},{"line":1244,"column":1321,"offset":1322},{"line":1244,"column":1331,"offset":1332},338,3460,{"start":1334,"end":1335},{"line":1244,"column":1321,"offset":1322},{"line":1244,"column":1331,"offset":1332},{"type":19,"value":260,"position":1337},{"start":1338,"end":1339},{"line":1244,"column":1331,"offset":1332},{"line":1244,"column":1340,"offset":1341},340,3462,{"type":14,"tagName":142,"properties":1343,"children":1344,"position":1352},{},[1345],{"type":19,"value":1346,"position":1347},"plotMatrix.data has duplicate cell (0, 0)",{"start":1348,"end":1349},{"line":1244,"column":1340,"offset":1341},{"line":1244,"column":1350,"offset":1351},383,3505,{"start":1353,"end":1354},{"line":1244,"column":1340,"offset":1341},{"line":1244,"column":1350,"offset":1351},{"type":19,"value":1356,"position":1357},".",{"start":1358,"end":1359},{"line":1244,"column":1350,"offset":1351},{"line":1244,"column":1360,"offset":1361},384,3506,{"start":1363,"end":1365},{"line":1244,"column":67,"offset":1364},3125,{"line":1244,"column":1360,"offset":1361},{"type":19,"value":57},{"start":1368,"end":1369},{"line":96,"column":67,"offset":850},{"line":1244,"column":1360,"offset":1361},{"type":19,"value":57},{"start":1372,"end":1374},{"line":496,"column":23,"offset":1373},1175,{"line":1244,"column":1360,"offset":1361},{"type":19,"value":57},{"type":14,"tagName":486,"properties":1377,"children":1378,"position":1967},{},[1379,1394,1401,1414,1421,1434,1440,1453,1460,1473,1479,1492,1498,1510,1515,1528,1535,1548,1555,1568,1574,1585,1592,1604,1611,1624,1630,1643,1650,1663,1670,1683,1690,1703,1710,1723,1729,1742,1748,1761,1767,1780,1786,1799,1805,1818,1824,1837,1843,1856,1863,1876,1882,1895,1902,1915,1922,1935,1942,1961],{"type":14,"tagName":29,"properties":1380,"children":1381,"position":1389},{},[1382],{"type":19,"value":1383,"position":1384},"Perps strategy mode",{"start":1385,"end":1387},{"line":133,"column":93,"offset":1386},3511,{"line":133,"column":26,"offset":1388},3530,{"start":1390,"end":1392},{"line":133,"column":67,"offset":1391},3509,{"line":133,"column":36,"offset":1393},3532,{"type":19,"value":1395,"position":1396}," (3.0.63). ",{"start":1397,"end":1398},{"line":133,"column":36,"offset":1393},{"line":133,"column":1399,"offset":1400},37,3543,{"type":14,"tagName":142,"properties":1402,"children":1403,"position":1411},{},[1404],{"type":19,"value":1405,"position":1406},"strategy(...)",{"start":1407,"end":1408},{"line":133,"column":1399,"offset":1400},{"line":133,"column":1409,"offset":1410},52,3558,{"start":1412,"end":1413},{"line":133,"column":1399,"offset":1400},{"line":133,"column":1409,"offset":1410},{"type":19,"value":1415,"position":1416}," accepts ",{"start":1417,"end":1418},{"line":133,"column":1409,"offset":1410},{"line":133,"column":1419,"offset":1420},61,3567,{"type":14,"tagName":142,"properties":1422,"children":1423,"position":1431},{},[1424],{"type":19,"value":1425,"position":1426},"instrument=\"spot\" | \"perps\"",{"start":1427,"end":1428},{"line":133,"column":1419,"offset":1420},{"line":133,"column":1429,"offset":1430},90,3596,{"start":1432,"end":1433},{"line":133,"column":1419,"offset":1420},{"line":133,"column":1429,"offset":1430},{"type":19,"value":1435,"position":1436}," plus ",{"start":1437,"end":1438},{"line":133,"column":1429,"offset":1430},{"line":133,"column":52,"offset":1439},3602,{"type":14,"tagName":142,"properties":1441,"children":1442,"position":1450},{},[1443],{"type":19,"value":1444,"position":1445},"leverage",{"start":1446,"end":1447},{"line":133,"column":52,"offset":1439},{"line":133,"column":1448,"offset":1449},106,3612,{"start":1451,"end":1452},{"line":133,"column":52,"offset":1439},{"line":133,"column":1448,"offset":1449},{"type":19,"value":1454,"position":1455}," (> 0), ",{"start":1456,"end":1457},{"line":133,"column":1448,"offset":1449},{"line":133,"column":1458,"offset":1459},114,3620,{"type":14,"tagName":142,"properties":1461,"children":1462,"position":1470},{},[1463],{"type":19,"value":1464,"position":1465},"maintenanceMarginPercent",{"start":1466,"end":1467},{"line":133,"column":1458,"offset":1459},{"line":133,"column":1468,"offset":1469},140,3646,{"start":1471,"end":1472},{"line":133,"column":1458,"offset":1459},{"line":133,"column":1468,"offset":1469},{"type":19,"value":260,"position":1474},{"start":1475,"end":1476},{"line":133,"column":1468,"offset":1469},{"line":133,"column":1477,"offset":1478},142,3648,{"type":14,"tagName":142,"properties":1480,"children":1481,"position":1489},{},[1482],{"type":19,"value":1483,"position":1484},"makerFeePercent",{"start":1485,"end":1486},{"line":133,"column":1477,"offset":1478},{"line":133,"column":1487,"offset":1488},159,3665,{"start":1490,"end":1491},{"line":133,"column":1477,"offset":1478},{"line":133,"column":1487,"offset":1488},{"type":19,"value":260,"position":1493},{"start":1494,"end":1495},{"line":133,"column":1487,"offset":1488},{"line":133,"column":1496,"offset":1497},161,3667,{"type":14,"tagName":142,"properties":1499,"children":1500,"position":1507},{},[1501],{"type":19,"value":1502,"position":1503},"takerFeePercent",{"start":1504,"end":1505},{"line":133,"column":1496,"offset":1497},{"line":133,"column":756,"offset":1506},3684,{"start":1508,"end":1509},{"line":133,"column":1496,"offset":1497},{"line":133,"column":756,"offset":1506},{"type":19,"value":260,"position":1511},{"start":1512,"end":1513},{"line":133,"column":756,"offset":1506},{"line":133,"column":1079,"offset":1514},3686,{"type":14,"tagName":142,"properties":1516,"children":1517,"position":1525},{},[1518],{"type":19,"value":1519,"position":1520},"funding=\"data\" | \"off\"",{"start":1521,"end":1522},{"line":133,"column":1079,"offset":1514},{"line":133,"column":1523,"offset":1524},204,3710,{"start":1526,"end":1527},{"line":133,"column":1079,"offset":1514},{"line":133,"column":1523,"offset":1524},{"type":19,"value":1529,"position":1530},", and ",{"start":1531,"end":1532},{"line":133,"column":1523,"offset":1524},{"line":133,"column":1533,"offset":1534},210,3716,{"type":14,"tagName":142,"properties":1536,"children":1537,"position":1545},{},[1538],{"type":19,"value":1539,"position":1540},"onLiquidation=\"continue\" | \"halt\"",{"start":1541,"end":1542},{"line":133,"column":1533,"offset":1534},{"line":133,"column":1543,"offset":1544},245,3751,{"start":1546,"end":1547},{"line":133,"column":1533,"offset":1534},{"line":133,"column":1543,"offset":1544},{"type":19,"value":1549,"position":1550},"; all are echoed in ",{"start":1551,"end":1552},{"line":133,"column":1543,"offset":1544},{"line":133,"column":1553,"offset":1554},265,3771,{"type":14,"tagName":142,"properties":1556,"children":1557,"position":1565},{},[1558],{"type":19,"value":1559,"position":1560},"output.strategy.declared",{"start":1561,"end":1562},{"line":133,"column":1553,"offset":1554},{"line":133,"column":1563,"offset":1564},291,3797,{"start":1566,"end":1567},{"line":133,"column":1553,"offset":1554},{"line":133,"column":1563,"offset":1564},{"type":19,"value":1569,"position":1570},". With ",{"start":1571,"end":1572},{"line":133,"column":1563,"offset":1564},{"line":133,"column":963,"offset":1573},3804,{"type":14,"tagName":142,"properties":1575,"children":1576,"position":1582},{},[1577],{"type":19,"value":314,"position":1578},{"start":1579,"end":1580},{"line":133,"column":963,"offset":1573},{"line":133,"column":973,"offset":1581},3824,{"start":1583,"end":1584},{"line":133,"column":963,"offset":1573},{"line":133,"column":973,"offset":1581},{"type":19,"value":1586,"position":1587},": every accepted entry commits isolated margin (",{"start":1588,"end":1589},{"line":133,"column":973,"offset":1581},{"line":133,"column":1590,"offset":1591},366,3872,{"type":14,"tagName":142,"properties":1593,"children":1594,"position":1601},{},[1595],{"type":19,"value":1596,"position":1597},"notional / leverage",{"start":1598,"end":1599},{"line":133,"column":1590,"offset":1591},{"line":133,"column":170,"offset":1600},3893,{"start":1602,"end":1603},{"line":133,"column":1590,"offset":1591},{"line":133,"column":170,"offset":1600},{"type":19,"value":1605,"position":1606},"), fees route maker/taker per fill, ",{"start":1607,"end":1608},{"line":133,"column":170,"offset":1600},{"line":133,"column":1609,"offset":1610},423,3929,{"type":14,"tagName":142,"properties":1612,"children":1613,"position":1621},{},[1614],{"type":19,"value":1615,"position":1616},"funding=\"data\"",{"start":1617,"end":1618},{"line":133,"column":1609,"offset":1610},{"line":133,"column":1619,"offset":1620},439,3945,{"start":1622,"end":1623},{"line":133,"column":1609,"offset":1610},{"line":133,"column":1619,"offset":1620},{"type":19,"value":1625,"position":1626}," consumes host-supplied settlement events (bars where a position is open but no funding data is available are counted in ",{"start":1627,"end":1628},{"line":133,"column":1619,"offset":1620},{"line":133,"column":293,"offset":1629},4066,{"type":14,"tagName":142,"properties":1631,"children":1632,"position":1640},{},[1633],{"type":19,"value":1634,"position":1635},"stats.fundingUnavailableCount",{"start":1636,"end":1637},{"line":133,"column":293,"offset":1629},{"line":133,"column":1638,"offset":1639},591,4097,{"start":1641,"end":1642},{"line":133,"column":293,"offset":1629},{"line":133,"column":1638,"offset":1639},{"type":19,"value":1644,"position":1645}," instead of silently zeroed; ",{"start":1646,"end":1647},{"line":133,"column":1638,"offset":1639},{"line":133,"column":1648,"offset":1649},620,4126,{"type":14,"tagName":142,"properties":1651,"children":1652,"position":1660},{},[1653],{"type":19,"value":1654,"position":1655},"funding=\"off\"",{"start":1656,"end":1657},{"line":133,"column":1648,"offset":1649},{"line":133,"column":1658,"offset":1659},635,4141,{"start":1661,"end":1662},{"line":133,"column":1648,"offset":1649},{"line":133,"column":1658,"offset":1659},{"type":19,"value":1664,"position":1665}," is an exact no-op), and an implicit liquidation exit closes the position when adverse movement erodes the committed margin (trade ",{"start":1666,"end":1667},{"line":133,"column":1658,"offset":1659},{"line":133,"column":1668,"offset":1669},766,4272,{"type":14,"tagName":142,"properties":1671,"children":1672,"position":1680},{},[1673],{"type":19,"value":1674,"position":1675},"exitReason: \"liquidation\"",{"start":1676,"end":1677},{"line":133,"column":1668,"offset":1669},{"line":133,"column":1678,"offset":1679},793,4299,{"start":1681,"end":1682},{"line":133,"column":1668,"offset":1669},{"line":133,"column":1678,"offset":1679},{"type":19,"value":1684,"position":1685},"). ",{"start":1686,"end":1687},{"line":133,"column":1678,"offset":1679},{"line":133,"column":1688,"offset":1689},796,4302,{"type":14,"tagName":142,"properties":1691,"children":1692,"position":1700},{},[1693],{"type":19,"value":1694,"position":1695},"onLiquidation=\"halt\"",{"start":1696,"end":1697},{"line":133,"column":1688,"offset":1689},{"line":133,"column":1698,"offset":1699},818,4324,{"start":1701,"end":1702},{"line":133,"column":1688,"offset":1689},{"line":133,"column":1698,"offset":1699},{"type":19,"value":1704,"position":1705}," latches after the first liquidation and rejects every later entry. New stats: ",{"start":1706,"end":1707},{"line":133,"column":1698,"offset":1699},{"line":133,"column":1708,"offset":1709},897,4403,{"type":14,"tagName":142,"properties":1711,"children":1712,"position":1720},{},[1713],{"type":19,"value":1714,"position":1715},"makerFeesPaid",{"start":1716,"end":1717},{"line":133,"column":1708,"offset":1709},{"line":133,"column":1718,"offset":1719},912,4418,{"start":1721,"end":1722},{"line":133,"column":1708,"offset":1709},{"line":133,"column":1718,"offset":1719},{"type":19,"value":260,"position":1724},{"start":1725,"end":1726},{"line":133,"column":1718,"offset":1719},{"line":133,"column":1727,"offset":1728},914,4420,{"type":14,"tagName":142,"properties":1730,"children":1731,"position":1739},{},[1732],{"type":19,"value":1733,"position":1734},"takerFeesPaid",{"start":1735,"end":1736},{"line":133,"column":1727,"offset":1728},{"line":133,"column":1737,"offset":1738},929,4435,{"start":1740,"end":1741},{"line":133,"column":1727,"offset":1728},{"line":133,"column":1737,"offset":1738},{"type":19,"value":260,"position":1743},{"start":1744,"end":1745},{"line":133,"column":1737,"offset":1738},{"line":133,"column":1746,"offset":1747},931,4437,{"type":14,"tagName":142,"properties":1749,"children":1750,"position":1758},{},[1751],{"type":19,"value":1752,"position":1753},"fundingPaid",{"start":1754,"end":1755},{"line":133,"column":1746,"offset":1747},{"line":133,"column":1756,"offset":1757},944,4450,{"start":1759,"end":1760},{"line":133,"column":1746,"offset":1747},{"line":133,"column":1756,"offset":1757},{"type":19,"value":260,"position":1762},{"start":1763,"end":1764},{"line":133,"column":1756,"offset":1757},{"line":133,"column":1765,"offset":1766},946,4452,{"type":14,"tagName":142,"properties":1768,"children":1769,"position":1777},{},[1770],{"type":19,"value":1771,"position":1772},"fundingEventsApplied",{"start":1773,"end":1774},{"line":133,"column":1765,"offset":1766},{"line":133,"column":1775,"offset":1776},968,4474,{"start":1778,"end":1779},{"line":133,"column":1765,"offset":1766},{"line":133,"column":1775,"offset":1776},{"type":19,"value":260,"position":1781},{"start":1782,"end":1783},{"line":133,"column":1775,"offset":1776},{"line":133,"column":1784,"offset":1785},970,4476,{"type":14,"tagName":142,"properties":1787,"children":1788,"position":1796},{},[1789],{"type":19,"value":1790,"position":1791},"fundingUnavailableCount",{"start":1792,"end":1793},{"line":133,"column":1784,"offset":1785},{"line":133,"column":1794,"offset":1795},995,4501,{"start":1797,"end":1798},{"line":133,"column":1784,"offset":1785},{"line":133,"column":1794,"offset":1795},{"type":19,"value":260,"position":1800},{"start":1801,"end":1802},{"line":133,"column":1794,"offset":1795},{"line":133,"column":1803,"offset":1804},997,4503,{"type":14,"tagName":142,"properties":1806,"children":1807,"position":1815},{},[1808],{"type":19,"value":1809,"position":1810},"liquidationCount",{"start":1811,"end":1812},{"line":133,"column":1803,"offset":1804},{"line":133,"column":1813,"offset":1814},1015,4521,{"start":1816,"end":1817},{"line":133,"column":1803,"offset":1804},{"line":133,"column":1813,"offset":1814},{"type":19,"value":260,"position":1819},{"start":1820,"end":1821},{"line":133,"column":1813,"offset":1814},{"line":133,"column":1822,"offset":1823},1017,4523,{"type":14,"tagName":142,"properties":1825,"children":1826,"position":1834},{},[1827],{"type":19,"value":1828,"position":1829},"liquidationHalted",{"start":1830,"end":1831},{"line":133,"column":1822,"offset":1823},{"line":133,"column":1832,"offset":1833},1036,4542,{"start":1835,"end":1836},{"line":133,"column":1822,"offset":1823},{"line":133,"column":1832,"offset":1833},{"type":19,"value":260,"position":1838},{"start":1839,"end":1840},{"line":133,"column":1832,"offset":1833},{"line":133,"column":1841,"offset":1842},1038,4544,{"type":14,"tagName":142,"properties":1844,"children":1845,"position":1853},{},[1846],{"type":19,"value":1847,"position":1848},"bankruptcyDeficit",{"start":1849,"end":1850},{"line":133,"column":1841,"offset":1842},{"line":133,"column":1851,"offset":1852},1057,4563,{"start":1854,"end":1855},{"line":133,"column":1841,"offset":1842},{"line":133,"column":1851,"offset":1852},{"type":19,"value":1857,"position":1858},", plus two perps-only bar-aligned series in ",{"start":1859,"end":1860},{"line":133,"column":1851,"offset":1852},{"line":133,"column":1861,"offset":1862},1101,4607,{"type":14,"tagName":142,"properties":1864,"children":1865,"position":1873},{},[1866],{"type":19,"value":1867,"position":1868},"output.strategy",{"start":1869,"end":1870},{"line":133,"column":1861,"offset":1862},{"line":133,"column":1871,"offset":1872},1118,4624,{"start":1874,"end":1875},{"line":133,"column":1861,"offset":1862},{"line":133,"column":1871,"offset":1872},{"type":19,"value":180,"position":1877},{"start":1878,"end":1879},{"line":133,"column":1871,"offset":1872},{"line":133,"column":1880,"offset":1881},1120,4626,{"type":14,"tagName":142,"properties":1883,"children":1884,"position":1892},{},[1885],{"type":19,"value":1886,"position":1887},"committedMarginSeries",{"start":1888,"end":1889},{"line":133,"column":1880,"offset":1881},{"line":133,"column":1890,"offset":1891},1143,4649,{"start":1893,"end":1894},{"line":133,"column":1880,"offset":1881},{"line":133,"column":1890,"offset":1891},{"type":19,"value":1896,"position":1897}," and ",{"start":1898,"end":1899},{"line":133,"column":1890,"offset":1891},{"line":133,"column":1900,"offset":1901},1148,4654,{"type":14,"tagName":142,"properties":1903,"children":1904,"position":1912},{},[1905],{"type":19,"value":1906,"position":1907},"fundingPaidSeries",{"start":1908,"end":1909},{"line":133,"column":1900,"offset":1901},{"line":133,"column":1910,"offset":1911},1167,4673,{"start":1913,"end":1914},{"line":133,"column":1900,"offset":1901},{"line":133,"column":1910,"offset":1911},{"type":19,"value":1916,"position":1917},". Invalid declarations fail loudly (",{"start":1918,"end":1919},{"line":133,"column":1910,"offset":1911},{"line":133,"column":1920,"offset":1921},1203,4709,{"type":14,"tagName":142,"properties":1923,"children":1924,"position":1932},{},[1925],{"type":19,"value":1926,"position":1927},"strategy(): 'leverage' must be a number literal > 0",{"start":1928,"end":1929},{"line":133,"column":1920,"offset":1921},{"line":133,"column":1930,"offset":1931},1256,4762,{"start":1933,"end":1934},{"line":133,"column":1920,"offset":1921},{"line":133,"column":1930,"offset":1931},{"type":19,"value":1936,"position":1937},"). See ",{"start":1938,"end":1939},{"line":133,"column":1930,"offset":1931},{"line":133,"column":1940,"offset":1941},1263,4769,{"type":14,"tagName":1943,"properties":1944,"children":1946,"position":1956},"a",{"href":1945},"/kscript/strategies/overview",[1947],{"type":19,"value":1948,"position":1949},"Strategies",{"start":1950,"end":1953},{"line":133,"column":1951,"offset":1952},1264,4770,{"line":133,"column":1954,"offset":1955},1274,4780,{"start":1957,"end":1958},{"line":133,"column":1940,"offset":1941},{"line":133,"column":1959,"offset":1960},1305,4811,{"type":19,"value":1356,"position":1962},{"start":1963,"end":1964},{"line":133,"column":1959,"offset":1960},{"line":133,"column":1965,"offset":1966},1306,4812,{"start":1968,"end":1970},{"line":133,"column":23,"offset":1969},3507,{"line":133,"column":1965,"offset":1966},{"type":19,"value":57},{"type":14,"tagName":486,"properties":1973,"children":1974,"position":2225},{},[1975,2022,2028,2041,2047,2060,2067,2080,2086,2098,2105,2118,2125,2138,2144,2157,2164,2177,2183,2196,2202,2219],{"type":14,"tagName":29,"properties":1976,"children":1977,"position":2017},{},[1978,1987,1999,2005],{"type":19,"value":1979,"position":1980},"Tape sources: ",{"start":1981,"end":1984},{"line":1982,"column":93,"offset":1983},17,4817,{"line":1982,"column":1985,"offset":1986},19,4831,{"type":14,"tagName":142,"properties":1988,"children":1989,"position":1996},{},[1990],{"type":19,"value":396,"position":1991},{"start":1992,"end":1993},{"line":1982,"column":1985,"offset":1986},{"line":1982,"column":1994,"offset":1995},41,4853,{"start":1997,"end":1998},{"line":1982,"column":1985,"offset":1986},{"line":1982,"column":1994,"offset":1995},{"type":19,"value":1896,"position":2000},{"start":2001,"end":2002},{"line":1982,"column":1994,"offset":1995},{"line":1982,"column":2003,"offset":2004},46,4858,{"type":14,"tagName":142,"properties":2006,"children":2007,"position":2014},{},[2008],{"type":19,"value":377,"position":2009},{"start":2010,"end":2011},{"line":1982,"column":2003,"offset":2004},{"line":1982,"column":2012,"offset":2013},54,4866,{"start":2015,"end":2016},{"line":1982,"column":2003,"offset":2004},{"line":1982,"column":2012,"offset":2013},{"start":2018,"end":2020},{"line":1982,"column":67,"offset":2019},4815,{"line":1982,"column":538,"offset":2021},4868,{"type":19,"value":2023,"position":2024}," (3.0.66). Two array-celled source types for tape reading. ",{"start":2025,"end":2026},{"line":1982,"column":538,"offset":2021},{"line":1982,"column":72,"offset":2027},4927,{"type":14,"tagName":142,"properties":2029,"children":2030,"position":2038},{},[2031],{"type":19,"value":2032,"position":2033},"trade_volume_by_size(symbol, exchange)",{"start":2034,"end":2035},{"line":1982,"column":72,"offset":2027},{"line":1982,"column":2036,"offset":2037},155,4967,{"start":2039,"end":2040},{"line":1982,"column":72,"offset":2027},{"line":1982,"column":2036,"offset":2037},{"type":19,"value":2042,"position":2043}," delivers cells ",{"start":2044,"end":2045},{"line":1982,"column":2036,"offset":2037},{"line":1982,"column":746,"offset":2046},4983,{"type":14,"tagName":142,"properties":2048,"children":2049,"position":2057},{},[2050],{"type":19,"value":2051,"position":2052},"[bucketId, buyVolUsd, sellVolUsd, buyCount, sellCount]",{"start":2053,"end":2054},{"line":1982,"column":746,"offset":2046},{"line":1982,"column":2055,"offset":2056},227,5039,{"start":2058,"end":2059},{"line":1982,"column":746,"offset":2046},{"line":1982,"column":2055,"offset":2056},{"type":19,"value":2061,"position":2062}," over fixed USD order-size bands (bucket ids 1..7), so whale CVD comes from real order sizes instead of candle-geometry proxies. ",{"start":2063,"end":2064},{"line":1982,"column":2055,"offset":2056},{"line":1982,"column":2065,"offset":2066},356,5168,{"type":14,"tagName":142,"properties":2068,"children":2069,"position":2077},{},[2070],{"type":19,"value":2071,"position":2072},"trades(symbol, exchange, minSize?)",{"start":2073,"end":2074},{"line":1982,"column":2065,"offset":2066},{"line":1982,"column":2075,"offset":2076},392,5204,{"start":2078,"end":2079},{"line":1982,"column":2065,"offset":2066},{"line":1982,"column":2075,"offset":2076},{"type":19,"value":2081,"position":2082}," delivers each chart bar's individual trades as cells ",{"start":2083,"end":2084},{"line":1982,"column":2075,"offset":2076},{"line":1982,"column":205,"offset":2085},5258,{"type":14,"tagName":142,"properties":2087,"children":2088,"position":2095},{},[2089],{"type":19,"value":2090,"position":2091},"[offsetMs, price, size, side]",{"start":2092,"end":2093},{"line":1982,"column":205,"offset":2085},{"line":1982,"column":264,"offset":2094},5289,{"start":2096,"end":2097},{"line":1982,"column":205,"offset":2085},{"line":1982,"column":264,"offset":2094},{"type":19,"value":2099,"position":2100}," with ",{"start":2101,"end":2102},{"line":1982,"column":264,"offset":2094},{"line":1982,"column":2103,"offset":2104},483,5295,{"type":14,"tagName":142,"properties":2106,"children":2107,"position":2115},{},[2108],{"type":19,"value":2109,"position":2110},"side",{"start":2111,"end":2112},{"line":1982,"column":2103,"offset":2104},{"line":1982,"column":2113,"offset":2114},489,5301,{"start":2116,"end":2117},{"line":1982,"column":2103,"offset":2104},{"line":1982,"column":2113,"offset":2114},{"type":19,"value":2119,"position":2120}," ",{"start":2121,"end":2122},{"line":1982,"column":2113,"offset":2114},{"line":1982,"column":2123,"offset":2124},490,5302,{"type":14,"tagName":142,"properties":2126,"children":2127,"position":2135},{},[2128],{"type":19,"value":2129,"position":2130},"+1",{"start":2131,"end":2132},{"line":1982,"column":2123,"offset":2124},{"line":1982,"column":2133,"offset":2134},494,5306,{"start":2136,"end":2137},{"line":1982,"column":2123,"offset":2124},{"line":1982,"column":2133,"offset":2134},{"type":19,"value":2139,"position":2140}," (buy) or ",{"start":2141,"end":2142},{"line":1982,"column":2133,"offset":2134},{"line":1982,"column":235,"offset":2143},5316,{"type":14,"tagName":142,"properties":2145,"children":2146,"position":2154},{},[2147],{"type":19,"value":2148,"position":2149},"-1",{"start":2150,"end":2151},{"line":1982,"column":235,"offset":2143},{"line":1982,"column":2152,"offset":2153},508,5320,{"start":2155,"end":2156},{"line":1982,"column":235,"offset":2143},{"line":1982,"column":2152,"offset":2153},{"type":19,"value":2158,"position":2159}," (sell); it is engine-complete but platform serving of wide raw-tape windows on liquid markets is still being rolled out, so the documented path today is the bucket source. Rows are dense: a quiet bar simply has zero cells. Both types count as 2 sources against the per-script source budget (the budget error spells it out: ",{"start":2160,"end":2161},{"line":1982,"column":2152,"offset":2153},{"line":1982,"column":2162,"offset":2163},832,5644,{"type":14,"tagName":142,"properties":2165,"children":2166,"position":2174},{},[2167],{"type":19,"value":2168,"position":2169},"trades sources count as 2 each",{"start":2170,"end":2171},{"line":1982,"column":2162,"offset":2163},{"line":1982,"column":2172,"offset":2173},864,5676,{"start":2175,"end":2176},{"line":1982,"column":2162,"offset":2163},{"line":1982,"column":2172,"offset":2173},{"type":19,"value":2178,"position":2179},"), and unknown params are rejected (",{"start":2180,"end":2181},{"line":1982,"column":2172,"offset":2173},{"line":1982,"column":440,"offset":2182},5712,{"type":14,"tagName":142,"properties":2184,"children":2185,"position":2193},{},[2186],{"type":19,"value":2187,"position":2188},"Unknown argument 'minSize' for 'trade_volume_by_size'",{"start":2189,"end":2190},{"line":1982,"column":440,"offset":2182},{"line":1982,"column":2191,"offset":2192},955,5767,{"start":2194,"end":2195},{"line":1982,"column":440,"offset":2182},{"line":1982,"column":2191,"offset":2192},{"type":19,"value":1936,"position":2197},{"start":2198,"end":2199},{"line":1982,"column":2191,"offset":2192},{"line":1982,"column":2200,"offset":2201},962,5774,{"type":14,"tagName":1943,"properties":2203,"children":2205,"position":2214},{"href":2204},"/kscript/core-concepts/data-sources",[2206],{"type":19,"value":2207,"position":2208},"Data Sources",{"start":2209,"end":2212},{"line":1982,"column":2210,"offset":2211},963,5775,{"line":1982,"column":450,"offset":2213},5787,{"start":2215,"end":2216},{"line":1982,"column":2200,"offset":2201},{"line":1982,"column":2217,"offset":2218},1013,5825,{"type":19,"value":1356,"position":2220},{"start":2221,"end":2222},{"line":1982,"column":2217,"offset":2218},{"line":1982,"column":2223,"offset":2224},1014,5826,{"start":2226,"end":2228},{"line":1982,"column":23,"offset":2227},4813,{"line":1982,"column":2223,"offset":2224},{"type":19,"value":57},{"type":14,"tagName":486,"properties":2231,"children":2232,"position":2364},{},[2233,2281,2287,2299,2306,2317,2323,2335,2342,2358],{"type":14,"tagName":29,"properties":2234,"children":2235,"position":2276},{},[2236,2250,2257,2269],{"type":14,"tagName":142,"properties":2237,"children":2238,"position":2247},{},[2239],{"type":19,"value":2240,"position":2241},"buy_sell_volume",{"start":2242,"end":2244},{"line":71,"column":93,"offset":2243},5831,{"line":71,"column":2245,"offset":2246},22,5848,{"start":2248,"end":2249},{"line":71,"column":93,"offset":2243},{"line":71,"column":2245,"offset":2246},{"type":19,"value":2251,"position":2252}," gains a ",{"start":2253,"end":2254},{"line":71,"column":2245,"offset":2246},{"line":71,"column":2255,"offset":2256},31,5857,{"type":14,"tagName":142,"properties":2258,"children":2259,"position":2266},{},[2260],{"type":19,"value":2261,"position":2262},"currency",{"start":2263,"end":2264},{"line":71,"column":2255,"offset":2256},{"line":71,"column":1994,"offset":2265},5867,{"start":2267,"end":2268},{"line":71,"column":2255,"offset":2256},{"line":71,"column":1994,"offset":2265},{"type":19,"value":2270,"position":2271}," param",{"start":2272,"end":2273},{"line":71,"column":1994,"offset":2265},{"line":71,"column":2274,"offset":2275},47,5873,{"start":2277,"end":2279},{"line":71,"column":67,"offset":2278},5829,{"line":71,"column":150,"offset":2280},5875,{"type":19,"value":2282,"position":2283}," (3.0.66). ",{"start":2284,"end":2285},{"line":71,"column":150,"offset":2280},{"line":71,"column":1059,"offset":2286},5886,{"type":14,"tagName":142,"properties":2288,"children":2289,"position":2296},{},[2290],{"type":19,"value":2291,"position":2292},"source(\"buy_sell_volume\", symbol, exchange, currency=\"USD\")",{"start":2293,"end":2294},{"line":71,"column":1059,"offset":2286},{"line":71,"column":94,"offset":2295},5947,{"start":2297,"end":2298},{"line":71,"column":1059,"offset":2286},{"line":71,"column":94,"offset":2295},{"type":19,"value":2300,"position":2301}," returns quote-notional (USD) volume; omitting ",{"start":2302,"end":2303},{"line":71,"column":94,"offset":2295},{"line":71,"column":2304,"offset":2305},168,5994,{"type":14,"tagName":142,"properties":2307,"children":2308,"position":2314},{},[2309],{"type":19,"value":2261,"position":2310},{"start":2311,"end":2312},{"line":71,"column":2304,"offset":2305},{"line":71,"column":756,"offset":2313},6004,{"start":2315,"end":2316},{"line":71,"column":2304,"offset":2305},{"line":71,"column":756,"offset":2313},{"type":19,"value":2318,"position":2319}," keeps the base-coin default, so CVD scripts can match production magnitude without in-script ",{"start":2320,"end":2321},{"line":71,"column":756,"offset":2313},{"line":71,"column":214,"offset":2322},6098,{"type":14,"tagName":142,"properties":2324,"children":2325,"position":2332},{},[2326],{"type":19,"value":2327,"position":2328},"* close",{"start":2329,"end":2330},{"line":71,"column":214,"offset":2322},{"line":71,"column":592,"offset":2331},6107,{"start":2333,"end":2334},{"line":71,"column":214,"offset":2322},{"line":71,"column":592,"offset":2331},{"type":19,"value":2336,"position":2337}," pricing. See ",{"start":2338,"end":2339},{"line":71,"column":592,"offset":2331},{"line":71,"column":2340,"offset":2341},295,6121,{"type":14,"tagName":1943,"properties":2343,"children":2344,"position":2353},{"href":2204},[2345],{"type":19,"value":2207,"position":2346},{"start":2347,"end":2350},{"line":71,"column":2348,"offset":2349},296,6122,{"line":71,"column":2351,"offset":2352},308,6134,{"start":2354,"end":2355},{"line":71,"column":2340,"offset":2341},{"line":71,"column":2356,"offset":2357},346,6172,{"type":19,"value":1356,"position":2359},{"start":2360,"end":2361},{"line":71,"column":2356,"offset":2357},{"line":71,"column":2362,"offset":2363},347,6173,{"start":2365,"end":2367},{"line":71,"column":23,"offset":2366},5827,{"line":71,"column":2362,"offset":2363},{"type":19,"value":57},{"type":14,"tagName":486,"properties":2370,"children":2371,"position":2538},{},[2372,2395,2401,2413,2420,2433,2439,2451,2457,2469,2475,2488,2495,2508,2514,2532],{"type":14,"tagName":29,"properties":2373,"children":2374,"position":2389},{},[2375],{"type":14,"tagName":142,"properties":2376,"children":2377,"position":2386},{},[2378],{"type":19,"value":2379,"position":2380},"plotHistogram(value, base?, colors?, colorIndex?, width?)",{"start":2381,"end":2383},{"line":1985,"column":93,"offset":2382},6178,{"line":1985,"column":2384,"offset":2385},64,6237,{"start":2387,"end":2388},{"line":1985,"column":93,"offset":2382},{"line":1985,"column":2384,"offset":2385},{"start":2390,"end":2392},{"line":1985,"column":67,"offset":2391},6176,{"line":1985,"column":2393,"offset":2394},66,6239,{"type":19,"value":2396,"position":2397}," (3.0.66). Single-value columns grown from a ",{"start":2398,"end":2399},{"line":1985,"column":2393,"offset":2394},{"line":1985,"column":706,"offset":2400},6284,{"type":14,"tagName":142,"properties":2402,"children":2403,"position":2410},{},[2404],{"type":19,"value":2405,"position":2406},"base",{"start":2407,"end":2408},{"line":1985,"column":706,"offset":2400},{"line":1985,"column":458,"offset":2409},6290,{"start":2411,"end":2412},{"line":1985,"column":706,"offset":2400},{"line":1985,"column":458,"offset":2409},{"type":19,"value":2414,"position":2415}," baseline (default 0), with the standard dynamic styling (",{"start":2416,"end":2417},{"line":1985,"column":458,"offset":2409},{"line":1985,"column":2418,"offset":2419},175,6348,{"type":14,"tagName":142,"properties":2421,"children":2422,"position":2430},{},[2423],{"type":19,"value":2424,"position":2425},"colors",{"start":2426,"end":2427},{"line":1985,"column":2418,"offset":2419},{"line":1985,"column":2428,"offset":2429},183,6356,{"start":2431,"end":2432},{"line":1985,"column":2418,"offset":2419},{"line":1985,"column":2428,"offset":2429},{"type":19,"value":2434,"position":2435}," + per-bar ",{"start":2436,"end":2437},{"line":1985,"column":2428,"offset":2429},{"line":1985,"column":1097,"offset":2438},6367,{"type":14,"tagName":142,"properties":2440,"children":2441,"position":2448},{},[2442],{"type":19,"value":2443,"position":2444},"colorIndex",{"start":2445,"end":2446},{"line":1985,"column":1097,"offset":2438},{"line":1985,"column":786,"offset":2447},6379,{"start":2449,"end":2450},{"line":1985,"column":1097,"offset":2438},{"line":1985,"column":786,"offset":2447},{"type":19,"value":260,"position":2452},{"start":2453,"end":2454},{"line":1985,"column":786,"offset":2447},{"line":1985,"column":2455,"offset":2456},208,6381,{"type":14,"tagName":142,"properties":2458,"children":2459,"position":2466},{},[2460],{"type":19,"value":2461,"position":2462},"width",{"start":2463,"end":2464},{"line":1985,"column":2455,"offset":2456},{"line":1985,"column":796,"offset":2465},6388,{"start":2467,"end":2468},{"line":1985,"column":2455,"offset":2456},{"line":1985,"column":796,"offset":2465},{"type":19,"value":2470,"position":2471},") for MACD-style delta and pressure histograms. Arrays are rejected (",{"start":2472,"end":2473},{"line":1985,"column":796,"offset":2465},{"line":1985,"column":1321,"offset":2474},6457,{"type":14,"tagName":142,"properties":2476,"children":2477,"position":2485},{},[2478],{"type":19,"value":2479,"position":2480},"plotHistogram takes a single value series; use plotBar for [low, high] ranges",{"start":2481,"end":2482},{"line":1985,"column":1321,"offset":2474},{"line":1985,"column":2483,"offset":2484},363,6536,{"start":2486,"end":2487},{"line":1985,"column":1321,"offset":2474},{"line":1985,"column":2483,"offset":2484},{"type":19,"value":2489,"position":2490},") and it cannot be batched (",{"start":2491,"end":2492},{"line":1985,"column":2483,"offset":2484},{"line":1985,"column":2493,"offset":2494},391,6564,{"type":14,"tagName":142,"properties":2496,"children":2497,"position":2505},{},[2498],{"type":19,"value":2499,"position":2500},"plotBatches: 'plotHistogram' is not supported inside a plotBatches callback yet",{"start":2501,"end":2502},{"line":1985,"column":2493,"offset":2494},{"line":1985,"column":2503,"offset":2504},472,6645,{"start":2506,"end":2507},{"line":1985,"column":2493,"offset":2494},{"line":1985,"column":2503,"offset":2504},{"type":19,"value":1936,"position":2509},{"start":2510,"end":2511},{"line":1985,"column":2503,"offset":2504},{"line":1985,"column":2512,"offset":2513},479,6652,{"type":14,"tagName":1943,"properties":2515,"children":2517,"position":2527},{"href":2516},"/kscript/functions/plotting",[2518],{"type":19,"value":2519,"position":2520},"Plotting",{"start":2521,"end":2524},{"line":1985,"column":2522,"offset":2523},480,6653,{"line":1985,"column":2525,"offset":2526},488,6661,{"start":2528,"end":2529},{"line":1985,"column":2512,"offset":2513},{"line":1985,"column":2530,"offset":2531},518,6691,{"type":19,"value":1356,"position":2533},{"start":2534,"end":2535},{"line":1985,"column":2530,"offset":2531},{"line":1985,"column":2536,"offset":2537},519,6692,{"start":2539,"end":2541},{"line":1985,"column":23,"offset":2540},6174,{"line":1985,"column":2536,"offset":2537},{"type":19,"value":57},{"type":14,"tagName":486,"properties":2544,"children":2545,"position":2701},{},[2546,2574,2581,2593,2600,2613,2620,2632,2639,2651,2658,2671,2678,2695],{"type":14,"tagName":29,"properties":2547,"children":2548,"position":2569},{},[2549,2562],{"type":14,"tagName":142,"properties":2550,"children":2551,"position":2559},{},[2552],{"type":19,"value":436,"position":2553},{"start":2554,"end":2557},{"line":2555,"column":93,"offset":2556},20,6697,{"line":2555,"column":1985,"offset":2558},6711,{"start":2560,"end":2561},{"line":2555,"column":93,"offset":2556},{"line":2555,"column":1985,"offset":2558},{"type":19,"value":2563,"position":2564}," comparator",{"start":2565,"end":2566},{"line":2555,"column":1985,"offset":2558},{"line":2555,"column":2567,"offset":2568},30,6722,{"start":2570,"end":2572},{"line":2555,"column":67,"offset":2571},6695,{"line":2555,"column":40,"offset":2573},6724,{"type":19,"value":2575,"position":2576}," (3.0.67). ",{"start":2577,"end":2578},{"line":2555,"column":40,"offset":2573},{"line":2555,"column":2579,"offset":2580},43,6735,{"type":14,"tagName":142,"properties":2582,"children":2583,"position":2590},{},[2584],{"type":19,"value":2585,"position":2586},"sort((a, b) => ...)",{"start":2587,"end":2588},{"line":2555,"column":2579,"offset":2580},{"line":2555,"column":2384,"offset":2589},6756,{"start":2591,"end":2592},{"line":2555,"column":2579,"offset":2580},{"line":2555,"column":2384,"offset":2589},{"type":19,"value":2594,"position":2595}," is accepted alongside the argless numeric sort (",{"start":2596,"end":2597},{"line":2555,"column":2384,"offset":2589},{"line":2555,"column":2598,"offset":2599},113,6805,{"type":14,"tagName":142,"properties":2601,"children":2602,"position":2610},{},[2603],{"type":19,"value":2604,"position":2605},".sort((a, b) => b - a)",{"start":2606,"end":2607},{"line":2555,"column":2598,"offset":2599},{"line":2555,"column":2608,"offset":2609},137,6829,{"start":2611,"end":2612},{"line":2555,"column":2598,"offset":2599},{"line":2555,"column":2608,"offset":2609},{"type":19,"value":2614,"position":2615}," sorts descending). The comparator must return a finite number: a comparator that statically returns a non-number is a compile error (",{"start":2616,"end":2617},{"line":2555,"column":2608,"offset":2609},{"line":2555,"column":2618,"offset":2619},271,6963,{"type":14,"tagName":142,"properties":2621,"children":2622,"position":2629},{},[2623],{"type":19,"value":2624,"position":2625},"Array method 'sort' comparator must return a number, got string",{"start":2626,"end":2627},{"line":2555,"column":2618,"offset":2619},{"line":2555,"column":611,"offset":2628},7028,{"start":2630,"end":2631},{"line":2555,"column":2618,"offset":2619},{"line":2555,"column":611,"offset":2628},{"type":19,"value":2633,"position":2634},"), and one that returns ",{"start":2635,"end":2636},{"line":2555,"column":611,"offset":2628},{"line":2555,"column":2637,"offset":2638},360,7052,{"type":14,"tagName":142,"properties":2640,"children":2641,"position":2648},{},[2642],{"type":19,"value":812,"position":2643},{"start":2644,"end":2645},{"line":2555,"column":2637,"offset":2638},{"line":2555,"column":2646,"offset":2647},364,7056,{"start":2649,"end":2650},{"line":2555,"column":2637,"offset":2638},{"line":2555,"column":2646,"offset":2647},{"type":19,"value":2652,"position":2653}," at run time is a named runtime error (",{"start":2654,"end":2655},{"line":2555,"column":2646,"offset":2647},{"line":2555,"column":2656,"offset":2657},403,7095,{"type":14,"tagName":142,"properties":2659,"children":2660,"position":2668},{},[2661],{"type":19,"value":2662,"position":2663},"Array method 'sort' comparator must return a finite number",{"start":2664,"end":2665},{"line":2555,"column":2656,"offset":2657},{"line":2555,"column":2666,"offset":2667},463,7155,{"start":2669,"end":2670},{"line":2555,"column":2656,"offset":2657},{"line":2555,"column":2666,"offset":2667},{"type":19,"value":2672,"position":2673},"), never a silent no-op. See ",{"start":2674,"end":2675},{"line":2555,"column":2666,"offset":2667},{"line":2555,"column":2676,"offset":2677},492,7184,{"type":14,"tagName":1943,"properties":2679,"children":2681,"position":2690},{"href":2680},"/kscript/core-concepts/collections",[2682],{"type":19,"value":2683,"position":2684},"Collections",{"start":2685,"end":2688},{"line":2555,"column":2686,"offset":2687},493,7185,{"line":2555,"column":235,"offset":2689},7196,{"start":2691,"end":2692},{"line":2555,"column":2676,"offset":2677},{"line":2555,"column":2693,"offset":2694},541,7233,{"type":19,"value":1356,"position":2696},{"start":2697,"end":2698},{"line":2555,"column":2693,"offset":2694},{"line":2555,"column":2699,"offset":2700},542,7234,{"start":2702,"end":2704},{"line":2555,"column":23,"offset":2703},6693,{"line":2555,"column":2699,"offset":2700},{"type":19,"value":57},{"start":2707,"end":2708},{"line":496,"column":23,"offset":1373},{"line":2555,"column":2699,"offset":2700},{"type":19,"value":57},{"type":14,"tagName":462,"properties":2711,"children":2713,"position":2721},{"id":2712},"changed",[2714],{"type":19,"value":2715,"position":2716},"Changed",{"start":2717,"end":2719},{"line":2245,"column":93,"offset":2718},7240,{"line":2245,"column":96,"offset":2720},7247,{"start":2722,"end":2724},{"line":2245,"column":23,"offset":2723},7236,{"line":2245,"column":96,"offset":2720},{"type":19,"value":57},{"type":14,"tagName":481,"properties":2727,"children":2728,"position":2965},{},[2729,2730,2839,2840,2964],{"type":19,"value":57},{"type":14,"tagName":486,"properties":2731,"children":2732,"position":2835},{},[2733,2748,2755,2768,2774,2787,2794,2807,2814,2830],{"type":14,"tagName":29,"properties":2734,"children":2735,"position":2743},{},[2736],{"type":19,"value":2737,"position":2738},"Human import-name diagnostic",{"start":2739,"end":2741},{"line":26,"column":93,"offset":2740},7253,{"line":26,"column":39,"offset":2742},7281,{"start":2744,"end":2746},{"line":26,"column":67,"offset":2745},7251,{"line":26,"column":44,"offset":2747},7283,{"type":19,"value":2749,"position":2750}," (3.0.64). A malformed library name in ",{"start":2751,"end":2752},{"line":26,"column":44,"offset":2747},{"line":26,"column":2753,"offset":2754},74,7322,{"type":14,"tagName":142,"properties":2756,"children":2757,"position":2765},{},[2758],{"type":19,"value":2759,"position":2760},"import",{"start":2761,"end":2762},{"line":26,"column":2753,"offset":2754},{"line":26,"column":2763,"offset":2764},82,7330,{"start":2766,"end":2767},{"line":26,"column":2753,"offset":2754},{"line":26,"column":2763,"offset":2764},{"type":19,"value":2769,"position":2770}," no longer prints raw regexes. It now reads: ",{"start":2771,"end":2772},{"line":26,"column":2763,"offset":2764},{"line":26,"column":885,"offset":2773},7375,{"type":14,"tagName":142,"properties":2775,"children":2776,"position":2784},{},[2777],{"type":19,"value":2778,"position":2779},"Invalid library name in import. Names are lowercase letters, digits, and underscores, starting with a letter, with an optional @x.y.z version pin. Examples: import \"my_lib\", import \"@owner/my_lib\", import \"@owner/my_lib@1.2.0\"",{"start":2780,"end":2781},{"line":26,"column":885,"offset":2773},{"line":26,"column":2782,"offset":2783},355,7603,{"start":2785,"end":2786},{"line":26,"column":885,"offset":2773},{"line":26,"column":2782,"offset":2783},{"type":19,"value":2788,"position":2789},". A well-formed name that simply is not registered still fails as ",{"start":2790,"end":2791},{"line":26,"column":2782,"offset":2783},{"line":26,"column":2792,"offset":2793},421,7669,{"type":14,"tagName":142,"properties":2795,"children":2796,"position":2804},{},[2797],{"type":19,"value":2798,"position":2799},"Unknown library 'my_lib'",{"start":2800,"end":2801},{"line":26,"column":2792,"offset":2793},{"line":26,"column":2802,"offset":2803},447,7695,{"start":2805,"end":2806},{"line":26,"column":2792,"offset":2793},{"line":26,"column":2802,"offset":2803},{"type":19,"value":2808,"position":2809},". See ",{"start":2810,"end":2811},{"line":26,"column":2802,"offset":2803},{"line":26,"column":2812,"offset":2813},453,7701,{"type":14,"tagName":1943,"properties":2815,"children":2817,"position":2826},{"href":2816},"/kscript/functions/libraries",[2818],{"type":19,"value":2819,"position":2820},"Libraries",{"start":2821,"end":2824},{"line":26,"column":2822,"offset":2823},454,7702,{"line":26,"column":2666,"offset":2825},7711,{"start":2827,"end":2828},{"line":26,"column":2812,"offset":2813},{"line":26,"column":2133,"offset":2829},7742,{"type":19,"value":1356,"position":2831},{"start":2832,"end":2833},{"line":26,"column":2133,"offset":2829},{"line":26,"column":274,"offset":2834},7743,{"start":2836,"end":2838},{"line":26,"column":23,"offset":2837},7249,{"line":26,"column":274,"offset":2834},{"type":19,"value":57},{"type":14,"tagName":486,"properties":2841,"children":2842,"position":2960},{},[2843,2859,2864,2877,2883,2895,2901,2913,2919,2931,2938,2954],{"type":14,"tagName":29,"properties":2844,"children":2845,"position":2854},{},[2846],{"type":19,"value":2847,"position":2848},"Version-header verdict.",{"start":2849,"end":2851},{"line":37,"column":93,"offset":2850},7748,{"line":37,"column":2852,"offset":2853},28,7771,{"start":2855,"end":2857},{"line":37,"column":67,"offset":2856},7746,{"line":37,"column":2567,"offset":2858},7773,{"type":19,"value":2119,"position":2860},{"start":2861,"end":2862},{"line":37,"column":2567,"offset":2858},{"line":37,"column":2255,"offset":2863},7774,{"type":14,"tagName":142,"properties":2865,"children":2866,"position":2874},{},[2867],{"type":19,"value":2868,"position":2869},"//@version=2",{"start":2870,"end":2871},{"line":37,"column":2255,"offset":2863},{"line":37,"column":2872,"offset":2873},45,7788,{"start":2875,"end":2876},{"line":37,"column":2255,"offset":2863},{"line":37,"column":2872,"offset":2873},{"type":19,"value":1896,"position":2878},{"start":2879,"end":2880},{"line":37,"column":2872,"offset":2873},{"line":37,"column":2881,"offset":2882},50,7793,{"type":14,"tagName":142,"properties":2884,"children":2885,"position":2892},{},[2886],{"type":19,"value":2887,"position":2888},"//@version=3",{"start":2889,"end":2890},{"line":37,"column":2881,"offset":2882},{"line":37,"column":2384,"offset":2891},7807,{"start":2893,"end":2894},{"line":37,"column":2881,"offset":2882},{"line":37,"column":2384,"offset":2891},{"type":19,"value":2896,"position":2897}," are interchangeable: the engine routes both to the same modern dialect, and every v3 feature runs under either line. ",{"start":2898,"end":2899},{"line":37,"column":2384,"offset":2891},{"line":37,"column":766,"offset":2900},7925,{"type":14,"tagName":142,"properties":2902,"children":2903,"position":2910},{},[2904],{"type":19,"value":2887,"position":2905},{"start":2906,"end":2907},{"line":37,"column":766,"offset":2900},{"line":37,"column":2908,"offset":2909},196,7939,{"start":2911,"end":2912},{"line":37,"column":766,"offset":2900},{"line":37,"column":2908,"offset":2909},{"type":19,"value":2914,"position":2915}," is the canonical header for new scripts; there is no downgrade. A missing marker or ",{"start":2916,"end":2917},{"line":37,"column":2908,"offset":2909},{"line":37,"column":592,"offset":2918},8024,{"type":14,"tagName":142,"properties":2920,"children":2921,"position":2928},{},[2922],{"type":19,"value":2923,"position":2924},"//@version=1",{"start":2925,"end":2926},{"line":37,"column":592,"offset":2918},{"line":37,"column":2340,"offset":2927},8038,{"start":2929,"end":2930},{"line":37,"column":592,"offset":2918},{"line":37,"column":2340,"offset":2927},{"type":19,"value":2932,"position":2933}," routes to the deprecated legacy v1 engine. See ",{"start":2934,"end":2935},{"line":37,"column":2340,"offset":2927},{"line":37,"column":2936,"offset":2937},343,8086,{"type":14,"tagName":1943,"properties":2939,"children":2941,"position":2950},{"href":2940},"/kscript/migrations/v2-vs-v3",[2942],{"type":19,"value":2943,"position":2944},"Migration (v2 vs v3)",{"start":2945,"end":2948},{"line":37,"column":2946,"offset":2947},344,8087,{"line":37,"column":2646,"offset":2949},8107,{"start":2951,"end":2952},{"line":37,"column":2936,"offset":2937},{"line":37,"column":1014,"offset":2953},8138,{"type":19,"value":1356,"position":2955},{"start":2956,"end":2957},{"line":37,"column":1014,"offset":2953},{"line":37,"column":2958,"offset":2959},396,8139,{"start":2961,"end":2963},{"line":37,"column":23,"offset":2962},7744,{"line":37,"column":2958,"offset":2959},{"type":19,"value":57},{"start":2966,"end":2967},{"line":26,"column":23,"offset":2837},{"line":37,"column":2958,"offset":2959},{"type":19,"value":57},{"type":14,"tagName":59,"properties":2970,"children":2972,"position":2981},{"id":2971},"previous-releases",[2973],{"type":19,"value":2974,"position":2975},"Previous releases",{"start":2976,"end":2978},{"line":499,"column":68,"offset":2977},8144,{"line":499,"column":2979,"offset":2980},21,8161,{"start":2982,"end":2984},{"line":499,"column":23,"offset":2983},8141,{"line":499,"column":2979,"offset":2980},{"type":19,"value":57},{"type":14,"tagName":79,"properties":2987,"children":2988,"position":3142},{},[2989,2990,3018,3019,3141],{"type":19,"value":57},{"type":14,"tagName":15,"properties":2991,"children":2992,"position":3015},{},[2993,3009],{"type":14,"tagName":29,"properties":2994,"children":2995,"position":3004},{},[2996],{"type":19,"value":2997,"position":2998},"v3.0.61",{"start":2999,"end":3002},{"line":3000,"column":93,"offset":3001},29,8167,{"line":3000,"column":96,"offset":3003},8174,{"start":3005,"end":3007},{"line":3000,"column":67,"offset":3006},8165,{"line":3000,"column":102,"offset":3008},8176,{"type":19,"value":3010,"position":3011}," — Strategy backtesting framework",{"start":3012,"end":3013},{"line":3000,"column":102,"offset":3008},{"line":3000,"column":2274,"offset":3014},8209,{"start":3016,"end":3017},{"line":3000,"column":67,"offset":3006},{"line":3000,"column":2274,"offset":3014},{"type":19,"value":57},{"type":14,"tagName":15,"properties":3020,"children":3021,"position":3138},{},[3022,3036,3041,3052,3059,3070,3077,3090,3097,3109,3116,3131],{"type":14,"tagName":29,"properties":3023,"children":3024,"position":3031},{},[3025],{"type":19,"value":122,"position":3026},{"start":3027,"end":3029},{"line":2255,"column":93,"offset":3028},8216,{"line":2255,"column":102,"offset":3030},8225,{"start":3032,"end":3034},{"line":2255,"column":67,"offset":3033},8214,{"line":2255,"column":133,"offset":3035},8227,{"type":19,"value":136,"position":3037},{"start":3038,"end":3039},{"line":2255,"column":133,"offset":3035},{"line":2255,"column":36,"offset":3040},8237,{"type":14,"tagName":142,"properties":3042,"children":3043,"position":3049},{},[3044],{"type":19,"value":146,"position":3045},{"start":3046,"end":3047},{"line":2255,"column":36,"offset":3040},{"line":2255,"column":150,"offset":3048},8260,{"start":3050,"end":3051},{"line":2255,"column":36,"offset":3040},{"line":2255,"column":150,"offset":3048},{"type":19,"value":3053,"position":3054}," 3.0.61 ships the strategy backtesting framework: ",{"start":3055,"end":3056},{"line":2255,"column":150,"offset":3048},{"line":2255,"column":3057,"offset":3058},99,8310,{"type":14,"tagName":142,"properties":3060,"children":3061,"position":3067},{},[3062],{"type":19,"value":1405,"position":3063},{"start":3064,"end":3065},{"line":2255,"column":3057,"offset":3058},{"line":2255,"column":1458,"offset":3066},8325,{"start":3068,"end":3069},{"line":2255,"column":3057,"offset":3058},{"line":2255,"column":1458,"offset":3066},{"type":19,"value":3071,"position":3072}," script headers, ",{"start":3073,"end":3074},{"line":2255,"column":1458,"offset":3066},{"line":2255,"column":3075,"offset":3076},131,8342,{"type":14,"tagName":142,"properties":3078,"children":3079,"position":3087},{},[3080],{"type":19,"value":3081,"position":3082},"strategy.*",{"start":3083,"end":3084},{"line":2255,"column":3075,"offset":3076},{"line":2255,"column":3085,"offset":3086},143,8354,{"start":3088,"end":3089},{"line":2255,"column":3075,"offset":3076},{"line":2255,"column":3085,"offset":3086},{"type":19,"value":3091,"position":3092}," order methods against a deterministic lookahead-free broker emulator (market/limit/stop entries, bracket exits with trailing stops and OCA, sizing modes, commission and slippage), and ",{"start":3093,"end":3094},{"line":2255,"column":3085,"offset":3086},{"line":2255,"column":3095,"offset":3096},328,8539,{"type":14,"tagName":142,"properties":3098,"children":3099,"position":3106},{},[3100],{"type":19,"value":1867,"position":3101},{"start":3102,"end":3103},{"line":2255,"column":3095,"offset":3096},{"line":2255,"column":3104,"offset":3105},345,8556,{"start":3107,"end":3108},{"line":2255,"column":3095,"offset":3096},{"line":2255,"column":3104,"offset":3105},{"type":19,"value":3110,"position":3111}," on the wire with trades, equity, drawdown, and locked performance stats. Results render in the Strategy Tester panel. See ",{"start":3112,"end":3113},{"line":2255,"column":3104,"offset":3105},{"line":2255,"column":3114,"offset":3115},468,8679,{"type":14,"tagName":1943,"properties":3117,"children":3118,"position":3126},{"href":1945},[3119],{"type":19,"value":1948,"position":3120},{"start":3121,"end":3124},{"line":2255,"column":3122,"offset":3123},469,8680,{"line":2255,"column":2512,"offset":3125},8690,{"start":3127,"end":3128},{"line":2255,"column":3114,"offset":3115},{"line":2255,"column":3129,"offset":3130},510,8721,{"type":19,"value":3132,"position":3133}," for the full guide.",{"start":3134,"end":3135},{"line":2255,"column":3129,"offset":3130},{"line":2255,"column":3136,"offset":3137},530,8741,{"start":3139,"end":3140},{"line":2255,"column":67,"offset":3033},{"line":2255,"column":3136,"offset":3137},{"type":19,"value":57},{"start":3143,"end":3145},{"line":3000,"column":23,"offset":3144},8163,{"line":2255,"column":3136,"offset":3137},{"type":19,"value":57},{"type":14,"tagName":79,"properties":3148,"children":3149,"position":3265},{},[3150,3151,3178,3179,3264],{"type":19,"value":57},{"type":14,"tagName":15,"properties":3152,"children":3153,"position":3175},{},[3154,3169],{"type":14,"tagName":29,"properties":3155,"children":3156,"position":3164},{},[3157],{"type":19,"value":3158,"position":3159},"v3.0.54",{"start":3160,"end":3162},{"line":39,"column":93,"offset":3161},8747,{"line":39,"column":96,"offset":3163},8754,{"start":3165,"end":3167},{"line":39,"column":67,"offset":3166},8745,{"line":39,"column":102,"offset":3168},8756,{"type":19,"value":3170,"position":3171}," — Statistics rows, sparse source alignment, and canonical registry release",{"start":3172,"end":3173},{"line":39,"column":102,"offset":3168},{"line":39,"column":696,"offset":3174},8831,{"start":3176,"end":3177},{"line":39,"column":67,"offset":3166},{"line":39,"column":696,"offset":3174},{"type":19,"value":57},{"type":14,"tagName":15,"properties":3180,"children":3181,"position":3261},{},[3182,3196,3201,3212,3218,3234,3241,3254],{"type":14,"tagName":29,"properties":3183,"children":3184,"position":3191},{},[3185],{"type":19,"value":122,"position":3186},{"start":3187,"end":3189},{"line":44,"column":93,"offset":3188},8838,{"line":44,"column":102,"offset":3190},8847,{"start":3192,"end":3194},{"line":44,"column":67,"offset":3193},8836,{"line":44,"column":133,"offset":3195},8849,{"type":19,"value":136,"position":3197},{"start":3198,"end":3199},{"line":44,"column":133,"offset":3195},{"line":44,"column":36,"offset":3200},8859,{"type":14,"tagName":142,"properties":3202,"children":3203,"position":3209},{},[3204],{"type":19,"value":146,"position":3205},{"start":3206,"end":3207},{"line":44,"column":36,"offset":3200},{"line":44,"column":150,"offset":3208},8882,{"start":3210,"end":3211},{"line":44,"column":36,"offset":3200},{"line":44,"column":150,"offset":3208},{"type":19,"value":3213,"position":3214}," 3.0.54 is the canonical public build for the post-mini-chart engine line. It includes ",{"start":3215,"end":3216},{"line":44,"column":150,"offset":3208},{"line":44,"column":716,"offset":3217},8969,{"type":14,"tagName":29,"properties":3219,"children":3220,"position":3229},{},[3221],{"type":19,"value":3222,"position":3223},"per-bar statistics rows",{"start":3224,"end":3227},{"line":44,"column":3225,"offset":3226},138,8971,{"line":44,"column":1496,"offset":3228},8994,{"start":3230,"end":3231},{"line":44,"column":716,"offset":3217},{"line":44,"column":3232,"offset":3233},163,8996,{"type":19,"value":3235,"position":3236}," through ",{"start":3237,"end":3238},{"line":44,"column":3232,"offset":3233},{"line":44,"column":3239,"offset":3240},172,9005,{"type":14,"tagName":142,"properties":3242,"children":3243,"position":3251},{},[3244],{"type":19,"value":3245,"position":3246},"plotStatRow()",{"start":3247,"end":3248},{"line":44,"column":3239,"offset":3240},{"line":44,"column":3249,"offset":3250},187,9020,{"start":3252,"end":3253},{"line":44,"column":3239,"offset":3240},{"line":44,"column":3249,"offset":3250},{"type":19,"value":3255,"position":3256},", aligns sparse flow sources onto the candle timeline so missing buckets read as zero after coverage begins, and publishes the merged 3.0.52/3.0.53 work under one registry version for frontend, backend, alerts, and docs to consume.",{"start":3257,"end":3258},{"line":44,"column":3249,"offset":3250},{"line":44,"column":3259,"offset":3260},418,9251,{"start":3262,"end":3263},{"line":44,"column":67,"offset":3193},{"line":44,"column":3259,"offset":3260},{"type":19,"value":57},{"start":3266,"end":3268},{"line":39,"column":23,"offset":3267},8743,{"line":44,"column":3259,"offset":3260},{"type":19,"value":57},{"type":14,"tagName":462,"properties":3271,"children":3273,"position":3280},{"id":3272},"added-2",[3274],{"type":19,"value":467,"position":3275},{"start":3276,"end":3278},{"line":1399,"column":93,"offset":3277},9257,{"line":1399,"column":473,"offset":3279},9262,{"start":3281,"end":3283},{"line":1399,"column":23,"offset":3282},9253,{"line":1399,"column":473,"offset":3279},{"type":19,"value":57},{"type":14,"tagName":481,"properties":3286,"children":3287,"position":3342},{},[3288,3289,3341],{"type":19,"value":57},{"type":14,"tagName":486,"properties":3290,"children":3291,"position":3337},{},[3292,3313,3320],{"type":14,"tagName":29,"properties":3293,"children":3294,"position":3308},{},[3295],{"type":14,"tagName":142,"properties":3296,"children":3297,"position":3305},{},[3298],{"type":19,"value":3299,"position":3300},"plotStatRow(value, title?, format?, polarity?, priority?, colors?)",{"start":3301,"end":3303},{"line":509,"column":93,"offset":3302},9268,{"line":509,"column":1261,"offset":3304},9336,{"start":3306,"end":3307},{"line":509,"column":93,"offset":3302},{"line":509,"column":1261,"offset":3304},{"start":3309,"end":3311},{"line":509,"column":67,"offset":3310},9266,{"line":509,"column":1270,"offset":3312},9338,{"type":19,"value":3314,"position":3315},": adds a compact row to the per-bar statistics strip under the price pane. Use it for volume, delta, funding, liquidation totals, range, or custom scores without drawing a new series or owning a pane. ",{"start":3316,"end":3317},{"line":509,"column":1270,"offset":3312},{"line":509,"column":3318,"offset":3319},276,9539,{"type":14,"tagName":1943,"properties":3321,"children":3323,"position":3332},{"href":3322},"/kscript/functions/plotting#plotstatrow",[3324],{"type":19,"value":3325,"position":3326},"Docs",{"start":3327,"end":3330},{"line":509,"column":3328,"offset":3329},277,9540,{"line":509,"column":592,"offset":3331},9544,{"start":3333,"end":3334},{"line":509,"column":3318,"offset":3319},{"line":509,"column":3335,"offset":3336},323,9586,{"start":3338,"end":3340},{"line":509,"column":23,"offset":3339},9264,{"line":509,"column":3335,"offset":3336},{"type":19,"value":57},{"start":3343,"end":3344},{"line":509,"column":23,"offset":3339},{"line":509,"column":3335,"offset":3336},{"type":19,"value":57},{"type":14,"tagName":462,"properties":3347,"children":3349,"position":3357},{"id":3348},"fixed",[3350],{"type":19,"value":3351,"position":3352},"Fixed",{"start":3353,"end":3355},{"line":1994,"column":93,"offset":3354},9592,{"line":1994,"column":473,"offset":3356},9597,{"start":3358,"end":3360},{"line":1994,"column":23,"offset":3359},9588,{"line":1994,"column":473,"offset":3356},{"type":19,"value":57},{"type":14,"tagName":481,"properties":3363,"children":3364,"position":3475},{},[3365,3366,3431,3432,3474],{"type":19,"value":57},{"type":14,"tagName":486,"properties":3367,"children":3368,"position":3427},{},[3369,3384,3391,3403,3409,3421],{"type":14,"tagName":29,"properties":3370,"children":3371,"position":3379},{},[3372],{"type":19,"value":3373,"position":3374},"Sparse flow-source alignment",{"start":3375,"end":3377},{"line":2579,"column":93,"offset":3376},9603,{"line":2579,"column":39,"offset":3378},9631,{"start":3380,"end":3382},{"line":2579,"column":67,"offset":3381},9601,{"line":2579,"column":44,"offset":3383},9633,{"type":19,"value":3385,"position":3386},": sources that declare missing buckets as zero now align to the chart timeline before scripts read them. Missing post-coverage buckets become ",{"start":3387,"end":3388},{"line":2579,"column":44,"offset":3383},{"line":2579,"column":3389,"offset":3390},177,9775,{"type":14,"tagName":142,"properties":3392,"children":3393,"position":3400},{},[3394],{"type":19,"value":3395,"position":3396},"0",{"start":3397,"end":3398},{"line":2579,"column":3389,"offset":3390},{"line":2579,"column":1079,"offset":3399},9778,{"start":3401,"end":3402},{"line":2579,"column":3389,"offset":3390},{"line":2579,"column":1079,"offset":3399},{"type":19,"value":3404,"position":3405},"; bars before the source's first real row stay ",{"start":3406,"end":3407},{"line":2579,"column":1079,"offset":3399},{"line":2579,"column":2055,"offset":3408},9825,{"type":14,"tagName":142,"properties":3410,"children":3411,"position":3418},{},[3412],{"type":19,"value":812,"position":3413},{"start":3414,"end":3415},{"line":2579,"column":2055,"offset":3408},{"line":2579,"column":3416,"offset":3417},231,9829,{"start":3419,"end":3420},{"line":2579,"column":2055,"offset":3408},{"line":2579,"column":3416,"offset":3417},{"type":19,"value":1356,"position":3422},{"start":3423,"end":3424},{"line":2579,"column":3416,"offset":3417},{"line":2579,"column":3425,"offset":3426},232,9830,{"start":3428,"end":3430},{"line":2579,"column":23,"offset":3429},9599,{"line":2579,"column":3425,"offset":3426},{"type":19,"value":57},{"type":14,"tagName":486,"properties":3433,"children":3434,"position":3470},{},[3435,3463],{"type":14,"tagName":29,"properties":3436,"children":3437,"position":3458},{},[3438,3452],{"type":14,"tagName":142,"properties":3439,"children":3440,"position":3449},{},[3441],{"type":19,"value":3442,"position":3443},"plotMiniChartGrid()",{"start":3444,"end":3447},{"line":3445,"column":93,"offset":3446},44,9835,{"line":3445,"column":36,"offset":3448},9856,{"start":3450,"end":3451},{"line":3445,"column":93,"offset":3446},{"line":3445,"column":36,"offset":3448},{"type":19,"value":3453,"position":3454}," signature lockstep",{"start":3455,"end":3456},{"line":3445,"column":36,"offset":3448},{"line":3445,"column":2872,"offset":3457},9875,{"start":3459,"end":3461},{"line":3445,"column":67,"offset":3460},9833,{"line":3445,"column":2274,"offset":3462},9877,{"type":19,"value":3464,"position":3465},": editor metadata and runtime signatures agree on the same tooltip-capable argument set.",{"start":3466,"end":3467},{"line":3445,"column":2274,"offset":3462},{"line":3445,"column":3468,"offset":3469},135,9965,{"start":3471,"end":3473},{"line":3445,"column":23,"offset":3472},9831,{"line":3445,"column":3468,"offset":3469},{"type":19,"value":57},{"start":3476,"end":3477},{"line":2579,"column":23,"offset":3429},{"line":3445,"column":3468,"offset":3469},{"type":19,"value":57},{"type":14,"tagName":79,"properties":3480,"children":3481,"position":3908},{},[3482,3483,3511,3512,3907],{"type":19,"value":57},{"type":14,"tagName":15,"properties":3484,"children":3485,"position":3508},{},[3486,3501],{"type":14,"tagName":29,"properties":3487,"children":3488,"position":3496},{},[3489],{"type":19,"value":3490,"position":3491},"v3.0.49",{"start":3492,"end":3494},{"line":2003,"column":93,"offset":3493},9971,{"line":2003,"column":96,"offset":3495},9978,{"start":3497,"end":3499},{"line":2003,"column":67,"offset":3498},9969,{"line":2003,"column":102,"offset":3500},9980,{"type":19,"value":3502,"position":3503}," — Viewport mini-charts, pinned request anchors & panel styling",{"start":3504,"end":3505},{"line":2003,"column":102,"offset":3500},{"line":2003,"column":3506,"offset":3507},77,10043,{"start":3509,"end":3510},{"line":2003,"column":67,"offset":3498},{"line":2003,"column":3506,"offset":3507},{"type":19,"value":57},{"type":14,"tagName":15,"properties":3513,"children":3514,"position":3904},{},[3515,3530,3535,3546,3552,3567,3572,3583,3590,3603,3610,3627,3634,3647,3654,3671,3677,3690,3697,3714,3720,3733,3740,3753,3759,3772,3778,3791,3797,3810,3816,3829,3836,3849,3856,3874,3880,3898],{"type":14,"tagName":29,"properties":3516,"children":3517,"position":3525},{},[3518],{"type":19,"value":122,"position":3519},{"start":3520,"end":3523},{"line":3521,"column":93,"offset":3522},48,10050,{"line":3521,"column":102,"offset":3524},10059,{"start":3526,"end":3528},{"line":3521,"column":67,"offset":3527},10048,{"line":3521,"column":133,"offset":3529},10061,{"type":19,"value":136,"position":3531},{"start":3532,"end":3533},{"line":3521,"column":133,"offset":3529},{"line":3521,"column":36,"offset":3534},10071,{"type":14,"tagName":142,"properties":3536,"children":3537,"position":3543},{},[3538],{"type":19,"value":146,"position":3539},{"start":3540,"end":3541},{"line":3521,"column":36,"offset":3534},{"line":3521,"column":150,"offset":3542},10094,{"start":3544,"end":3545},{"line":3521,"column":36,"offset":3534},{"line":3521,"column":150,"offset":3542},{"type":19,"value":3547,"position":3548}," 3.0.49 (rolls up the unpublished 3.0.27–3.0.48 internal releases into one npm version). Scripts can now render ",{"start":3549,"end":3550},{"line":3521,"column":150,"offset":3542},{"line":3521,"column":1496,"offset":3551},10206,{"type":14,"tagName":29,"properties":3553,"children":3554,"position":3562},{},[3555],{"type":19,"value":3556,"position":3557},"viewport-pinned mini-chart dashboards",{"start":3558,"end":3560},{"line":3521,"column":3232,"offset":3559},10208,{"line":3521,"column":169,"offset":3561},10245,{"start":3563,"end":3564},{"line":3521,"column":1496,"offset":3551},{"line":3521,"column":3565,"offset":3566},202,10247,{"type":19,"value":180,"position":3568},{"start":3569,"end":3570},{"line":3521,"column":3565,"offset":3566},{"line":3521,"column":1523,"offset":3571},10249,{"type":14,"tagName":142,"properties":3573,"children":3574,"position":3580},{},[3575],{"type":19,"value":3442,"position":3576},{"start":3577,"end":3578},{"line":3521,"column":1523,"offset":3571},{"line":3521,"column":914,"offset":3579},10270,{"start":3581,"end":3582},{"line":3521,"column":1523,"offset":3571},{"line":3521,"column":914,"offset":3579},{"type":19,"value":3584,"position":3585}," draws a grid of small OHLC panels that stays at a fixed screen position while the chart pans, fed by ",{"start":3586,"end":3587},{"line":3521,"column":914,"offset":3579},{"line":3521,"column":3588,"offset":3589},327,10372,{"type":14,"tagName":142,"properties":3591,"children":3592,"position":3600},{},[3593],{"type":19,"value":3594,"position":3595},"requestBars(..., { bars, anchor: \"latest\" })",{"start":3596,"end":3597},{"line":3521,"column":3588,"offset":3589},{"line":3521,"column":3598,"offset":3599},373,10418,{"start":3601,"end":3602},{"line":3521,"column":3588,"offset":3589},{"line":3521,"column":3598,"offset":3599},{"type":19,"value":3604,"position":3605}," so every panel tracks the ",{"start":3606,"end":3607},{"line":3521,"column":3598,"offset":3599},{"line":3521,"column":3608,"offset":3609},400,10445,{"type":14,"tagName":29,"properties":3611,"children":3612,"position":3622},{},[3613],{"type":19,"value":3614,"position":3615},"newest",{"start":3616,"end":3619},{"line":3521,"column":3617,"offset":3618},402,10447,{"line":3521,"column":3620,"offset":3621},408,10453,{"start":3623,"end":3624},{"line":3521,"column":3608,"offset":3609},{"line":3521,"column":3625,"offset":3626},410,10455,{"type":19,"value":3628,"position":3629}," market bars — historical panning never changes them, and they update live as bars form and close. Panels take five looks (",{"start":3630,"end":3631},{"line":3521,"column":3625,"offset":3626},{"line":3521,"column":3632,"offset":3633},533,10578,{"type":14,"tagName":142,"properties":3635,"children":3636,"position":3644},{},[3637],{"type":19,"value":3638,"position":3639},"candleStyle",{"start":3640,"end":3641},{"line":3521,"column":3632,"offset":3633},{"line":3521,"column":3642,"offset":3643},546,10591,{"start":3645,"end":3646},{"line":3521,"column":3632,"offset":3633},{"line":3521,"column":3642,"offset":3643},{"type":19,"value":3648,"position":3649},": candles, hollow, OHLC bars, line, area), an optional per-panel ",{"start":3650,"end":3651},{"line":3521,"column":3642,"offset":3643},{"line":3521,"column":3652,"offset":3653},611,10656,{"type":14,"tagName":29,"properties":3655,"children":3656,"position":3666},{},[3657],{"type":19,"value":3658,"position":3659},"% change badge",{"start":3660,"end":3663},{"line":3521,"column":3661,"offset":3662},613,10658,{"line":3521,"column":3664,"offset":3665},627,10672,{"start":3667,"end":3668},{"line":3521,"column":3652,"offset":3653},{"line":3521,"column":3669,"offset":3670},629,10674,{"type":19,"value":304,"position":3672},{"start":3673,"end":3674},{"line":3521,"column":3669,"offset":3670},{"line":3521,"column":3675,"offset":3676},631,10676,{"type":14,"tagName":142,"properties":3678,"children":3679,"position":3687},{},[3680],{"type":19,"value":3681,"position":3682},"showChange",{"start":3683,"end":3684},{"line":3521,"column":3675,"offset":3676},{"line":3521,"column":3685,"offset":3686},643,10688,{"start":3688,"end":3689},{"line":3521,"column":3675,"offset":3676},{"line":3521,"column":3685,"offset":3686},{"type":19,"value":3691,"position":3692},") and a ",{"start":3693,"end":3694},{"line":3521,"column":3685,"offset":3686},{"line":3521,"column":3695,"offset":3696},651,10696,{"type":14,"tagName":29,"properties":3698,"children":3699,"position":3709},{},[3700],{"type":19,"value":3701,"position":3702},"volume strip",{"start":3703,"end":3706},{"line":3521,"column":3704,"offset":3705},653,10698,{"line":3521,"column":3707,"offset":3708},665,10710,{"start":3710,"end":3711},{"line":3521,"column":3695,"offset":3696},{"line":3521,"column":3712,"offset":3713},667,10712,{"type":19,"value":304,"position":3715},{"start":3716,"end":3717},{"line":3521,"column":3712,"offset":3713},{"line":3521,"column":3718,"offset":3719},669,10714,{"type":14,"tagName":142,"properties":3721,"children":3722,"position":3730},{},[3723],{"type":19,"value":3724,"position":3725},"showVolume",{"start":3726,"end":3727},{"line":3521,"column":3718,"offset":3719},{"line":3521,"column":3728,"offset":3729},681,10726,{"start":3731,"end":3732},{"line":3521,"column":3718,"offset":3719},{"line":3521,"column":3728,"offset":3729},{"type":19,"value":3734,"position":3735},"), plus fast/slow MAs and full color control. ",{"start":3736,"end":3737},{"line":3521,"column":3728,"offset":3729},{"line":3521,"column":3738,"offset":3739},727,10772,{"type":14,"tagName":142,"properties":3741,"children":3742,"position":3750},{},[3743],{"type":19,"value":3744,"position":3745},"requestBars",{"start":3746,"end":3747},{"line":3521,"column":3738,"offset":3739},{"line":3521,"column":3748,"offset":3749},740,10785,{"start":3751,"end":3752},{"line":3521,"column":3738,"offset":3739},{"line":3521,"column":3748,"offset":3749},{"type":19,"value":3754,"position":3755}," also gains composed intervals (",{"start":3756,"end":3757},{"line":3521,"column":3748,"offset":3749},{"line":3521,"column":390,"offset":3758},10817,{"type":14,"tagName":142,"properties":3760,"children":3761,"position":3769},{},[3762],{"type":19,"value":3763,"position":3764},"\"2h\"",{"start":3765,"end":3766},{"line":3521,"column":390,"offset":3758},{"line":3521,"column":3767,"offset":3768},778,10823,{"start":3770,"end":3771},{"line":3521,"column":390,"offset":3758},{"line":3521,"column":3767,"offset":3768},{"type":19,"value":260,"position":3773},{"start":3774,"end":3775},{"line":3521,"column":3767,"offset":3768},{"line":3521,"column":3776,"offset":3777},780,10825,{"type":14,"tagName":142,"properties":3779,"children":3780,"position":3788},{},[3781],{"type":19,"value":3782,"position":3783},"\"3h\"",{"start":3784,"end":3785},{"line":3521,"column":3776,"offset":3777},{"line":3521,"column":3786,"offset":3787},786,10831,{"start":3789,"end":3790},{"line":3521,"column":3776,"offset":3777},{"line":3521,"column":3786,"offset":3787},{"type":19,"value":260,"position":3792},{"start":3793,"end":3794},{"line":3521,"column":3786,"offset":3787},{"line":3521,"column":3795,"offset":3796},788,10833,{"type":14,"tagName":142,"properties":3798,"children":3799,"position":3807},{},[3800],{"type":19,"value":3801,"position":3802},"\"12h\"",{"start":3803,"end":3804},{"line":3521,"column":3795,"offset":3796},{"line":3521,"column":3805,"offset":3806},795,10840,{"start":3808,"end":3809},{"line":3521,"column":3795,"offset":3796},{"line":3521,"column":3805,"offset":3806},{"type":19,"value":260,"position":3811},{"start":3812,"end":3813},{"line":3521,"column":3805,"offset":3806},{"line":3521,"column":3814,"offset":3815},797,10842,{"type":14,"tagName":142,"properties":3817,"children":3818,"position":3826},{},[3819],{"type":19,"value":3820,"position":3821},"\"2d\"",{"start":3822,"end":3823},{"line":3521,"column":3814,"offset":3815},{"line":3521,"column":3824,"offset":3825},803,10848,{"start":3827,"end":3828},{"line":3521,"column":3814,"offset":3815},{"line":3521,"column":3824,"offset":3825},{"type":19,"value":3830,"position":3831}," — aggregated from the largest natively-served divisor) and the explicit ",{"start":3832,"end":3833},{"line":3521,"column":3824,"offset":3825},{"line":3521,"column":3834,"offset":3835},876,10921,{"type":14,"tagName":142,"properties":3837,"children":3838,"position":3846},{},[3839],{"type":19,"value":3840,"position":3841},"anchor: \"window\"",{"start":3842,"end":3843},{"line":3521,"column":3834,"offset":3835},{"line":3521,"column":3844,"offset":3845},894,10939,{"start":3847,"end":3848},{"line":3521,"column":3834,"offset":3835},{"line":3521,"column":3844,"offset":3845},{"type":19,"value":3850,"position":3851}," default. See ",{"start":3852,"end":3853},{"line":3521,"column":3844,"offset":3845},{"line":3521,"column":3854,"offset":3855},908,10953,{"type":14,"tagName":1943,"properties":3857,"children":3859,"position":3869},{"href":3858},"/kscript/functions/plotting#plotminichartgrid",[3860],{"type":19,"value":3861,"position":3862},"Mini-chart grids",{"start":3863,"end":3866},{"line":3521,"column":3864,"offset":3865},909,10954,{"line":3521,"column":3867,"offset":3868},925,10970,{"start":3870,"end":3871},{"line":3521,"column":3854,"offset":3855},{"line":3521,"column":3872,"offset":3873},973,11018,{"type":19,"value":1896,"position":3875},{"start":3876,"end":3877},{"line":3521,"column":3872,"offset":3873},{"line":3521,"column":3878,"offset":3879},978,11023,{"type":14,"tagName":1943,"properties":3881,"children":3883,"position":3893},{"href":3882},"/kscript/core-concepts/multi-source",[3884],{"type":19,"value":3885,"position":3886},"Multi-source",{"start":3887,"end":3890},{"line":3521,"column":3888,"offset":3889},979,11024,{"line":3521,"column":3891,"offset":3892},991,11036,{"start":3894,"end":3895},{"line":3521,"column":3878,"offset":3879},{"line":3521,"column":3896,"offset":3897},1029,11074,{"type":19,"value":1356,"position":3899},{"start":3900,"end":3901},{"line":3521,"column":3896,"offset":3897},{"line":3521,"column":3902,"offset":3903},1030,11075,{"start":3905,"end":3906},{"line":3521,"column":67,"offset":3527},{"line":3521,"column":3902,"offset":3903},{"type":19,"value":57},{"start":3909,"end":3911},{"line":2003,"column":23,"offset":3910},9967,{"line":3521,"column":3902,"offset":3903},{"type":19,"value":57},{"type":14,"tagName":462,"properties":3914,"children":3916,"position":3923},{"id":3915},"added-3",[3917],{"type":19,"value":467,"position":3918},{"start":3919,"end":3921},{"line":2881,"column":93,"offset":3920},11081,{"line":2881,"column":473,"offset":3922},11086,{"start":3924,"end":3926},{"line":2881,"column":23,"offset":3925},11077,{"line":2881,"column":473,"offset":3922},{"type":19,"value":57},{"type":14,"tagName":481,"properties":3929,"children":3930,"position":4337},{},[3931,3932,4125,4126,4212,4213,4336],{"type":19,"value":57},{"type":14,"tagName":486,"properties":3933,"children":3934,"position":4121},{},[3935,3956,3962,3975,3981,3993,3999,4012,4018,4030,4036,4048,4054,4065,4070,4082,4088,4099,4106],{"type":14,"tagName":29,"properties":3936,"children":3937,"position":3951},{},[3938],{"type":14,"tagName":142,"properties":3939,"children":3940,"position":3948},{},[3941],{"type":19,"value":3942,"position":3943},"plotMiniChartGrid(panels, ...)",{"start":3944,"end":3946},{"line":1409,"column":93,"offset":3945},11092,{"line":1409,"column":1399,"offset":3947},11124,{"start":3949,"end":3950},{"line":1409,"column":93,"offset":3945},{"line":1409,"column":1399,"offset":3947},{"start":3952,"end":3954},{"line":1409,"column":67,"offset":3953},11090,{"line":1409,"column":509,"offset":3955},11126,{"type":19,"value":3957,"position":3958},": viewport-anchored grid (up to 12 panels × 100 bars) with layout (",{"start":3959,"end":3960},{"line":1409,"column":509,"offset":3955},{"line":1409,"column":1448,"offset":3961},11193,{"type":14,"tagName":142,"properties":3963,"children":3964,"position":3972},{},[3965],{"type":19,"value":3966,"position":3967},"position",{"start":3968,"end":3969},{"line":1409,"column":1448,"offset":3961},{"line":1409,"column":3970,"offset":3971},116,11203,{"start":3973,"end":3974},{"line":1409,"column":1448,"offset":3961},{"line":1409,"column":3970,"offset":3971},{"type":19,"value":260,"position":3976},{"start":3977,"end":3978},{"line":1409,"column":3970,"offset":3971},{"line":1409,"column":3979,"offset":3980},118,11205,{"type":14,"tagName":142,"properties":3982,"children":3983,"position":3990},{},[3984],{"type":19,"value":3985,"position":3986},"columns",{"start":3987,"end":3988},{"line":1409,"column":3979,"offset":3980},{"line":1409,"column":885,"offset":3989},11214,{"start":3991,"end":3992},{"line":1409,"column":3979,"offset":3980},{"line":1409,"column":885,"offset":3989},{"type":19,"value":260,"position":3994},{"start":3995,"end":3996},{"line":1409,"column":885,"offset":3989},{"line":1409,"column":3997,"offset":3998},129,11216,{"type":14,"tagName":142,"properties":4000,"children":4001,"position":4009},{},[4002],{"type":19,"value":4003,"position":4004},"panelWidth",{"start":4005,"end":4006},{"line":1409,"column":3997,"offset":3998},{"line":1409,"column":4007,"offset":4008},141,11228,{"start":4010,"end":4011},{"line":1409,"column":3997,"offset":3998},{"line":1409,"column":4007,"offset":4008},{"type":19,"value":4013,"position":4014},"/",{"start":4015,"end":4016},{"line":1409,"column":4007,"offset":4008},{"line":1409,"column":1477,"offset":4017},11229,{"type":14,"tagName":142,"properties":4019,"children":4020,"position":4027},{},[4021],{"type":19,"value":4022,"position":4023},"panelHeight",{"start":4024,"end":4025},{"line":1409,"column":1477,"offset":4017},{"line":1409,"column":2036,"offset":4026},11242,{"start":4028,"end":4029},{"line":1409,"column":1477,"offset":4017},{"line":1409,"column":2036,"offset":4026},{"type":19,"value":4013,"position":4031},{"start":4032,"end":4033},{"line":1409,"column":2036,"offset":4026},{"line":1409,"column":4034,"offset":4035},156,11243,{"type":14,"tagName":142,"properties":4037,"children":4038,"position":4045},{},[4039],{"type":19,"value":4040,"position":4041},"gap",{"start":4042,"end":4043},{"line":1409,"column":4034,"offset":4035},{"line":1409,"column":1496,"offset":4044},11248,{"start":4046,"end":4047},{"line":1409,"column":4034,"offset":4035},{"line":1409,"column":1496,"offset":4044},{"type":19,"value":4049,"position":4050},"), colors, MA overlays, ",{"start":4051,"end":4052},{"line":1409,"column":1496,"offset":4044},{"line":1409,"column":110,"offset":4053},11272,{"type":14,"tagName":142,"properties":4055,"children":4056,"position":4062},{},[4057],{"type":19,"value":3638,"position":4058},{"start":4059,"end":4060},{"line":1409,"column":110,"offset":4053},{"line":1409,"column":160,"offset":4061},11285,{"start":4063,"end":4064},{"line":1409,"column":110,"offset":4053},{"line":1409,"column":160,"offset":4061},{"type":19,"value":260,"position":4066},{"start":4067,"end":4068},{"line":1409,"column":160,"offset":4061},{"line":1409,"column":169,"offset":4069},11287,{"type":14,"tagName":142,"properties":4071,"children":4072,"position":4079},{},[4073],{"type":19,"value":3681,"position":4074},{"start":4075,"end":4076},{"line":1409,"column":169,"offset":4069},{"line":1409,"column":4077,"offset":4078},212,11299,{"start":4080,"end":4081},{"line":1409,"column":169,"offset":4069},{"line":1409,"column":4077,"offset":4078},{"type":19,"value":260,"position":4083},{"start":4084,"end":4085},{"line":1409,"column":4077,"offset":4078},{"line":1409,"column":4086,"offset":4087},214,11301,{"type":14,"tagName":142,"properties":4089,"children":4090,"position":4096},{},[4091],{"type":19,"value":3724,"position":4092},{"start":4093,"end":4094},{"line":1409,"column":4086,"offset":4087},{"line":1409,"column":1302,"offset":4095},11313,{"start":4097,"end":4098},{"line":1409,"column":4086,"offset":4087},{"line":1409,"column":1302,"offset":4095},{"type":19,"value":4100,"position":4101},". Render-only — costs no source budget. ",{"start":4102,"end":4103},{"line":1409,"column":1302,"offset":4095},{"line":1409,"column":4104,"offset":4105},266,11353,{"type":14,"tagName":1943,"properties":4107,"children":4108,"position":4116},{"href":3858},[4109],{"type":19,"value":3325,"position":4110},{"start":4111,"end":4114},{"line":1409,"column":4112,"offset":4113},267,11354,{"line":1409,"column":2618,"offset":4115},11358,{"start":4117,"end":4118},{"line":1409,"column":4104,"offset":4105},{"line":1409,"column":4119,"offset":4120},319,11406,{"start":4122,"end":4124},{"line":1409,"column":23,"offset":4123},11088,{"line":1409,"column":4119,"offset":4120},{"type":19,"value":57},{"type":14,"tagName":486,"properties":4127,"children":4128,"position":4208},{},[4129,4151,4156,4169,4175,4187,4194],{"type":14,"tagName":29,"properties":4130,"children":4131,"position":4145},{},[4132],{"type":14,"tagName":142,"properties":4133,"children":4134,"position":4142},{},[4135],{"type":19,"value":4136,"position":4137},"requestBars(..., { anchor: \"latest\" | \"window\" })",{"start":4138,"end":4140},{"line":529,"column":93,"offset":4139},11411,{"line":529,"column":538,"offset":4141},11462,{"start":4143,"end":4144},{"line":529,"column":93,"offset":4139},{"line":529,"column":538,"offset":4141},{"start":4146,"end":4148},{"line":529,"column":67,"offset":4147},11409,{"line":529,"column":4149,"offset":4150},58,11464,{"type":19,"value":180,"position":4152},{"start":4153,"end":4154},{"line":529,"column":4149,"offset":4150},{"line":529,"column":1059,"offset":4155},11466,{"type":14,"tagName":142,"properties":4157,"children":4158,"position":4166},{},[4159],{"type":19,"value":4160,"position":4161},"\"latest\"",{"start":4162,"end":4163},{"line":529,"column":1059,"offset":4155},{"line":529,"column":4164,"offset":4165},70,11476,{"start":4167,"end":4168},{"line":529,"column":1059,"offset":4155},{"line":529,"column":4164,"offset":4165},{"type":19,"value":4170,"position":4171}," pins the returned rows to the newest native bars regardless of pan position or execution window; ",{"start":4172,"end":4173},{"line":529,"column":4164,"offset":4165},{"line":529,"column":2304,"offset":4174},11574,{"type":14,"tagName":142,"properties":4176,"children":4177,"position":4184},{},[4178],{"type":19,"value":4179,"position":4180},"\"window\"",{"start":4181,"end":4182},{"line":529,"column":2304,"offset":4174},{"line":529,"column":756,"offset":4183},11584,{"start":4185,"end":4186},{"line":529,"column":2304,"offset":4174},{"line":529,"column":756,"offset":4183},{"type":19,"value":4188,"position":4189}," spells the default. The literal must be static; an anchored and a window-relative request of the same symbol/timeframe are two distinct sources. ",{"start":4190,"end":4191},{"line":529,"column":756,"offset":4183},{"line":529,"column":4192,"offset":4193},324,11730,{"type":14,"tagName":1943,"properties":4195,"children":4196,"position":4204},{"href":3882},[4197],{"type":19,"value":3325,"position":4198},{"start":4199,"end":4202},{"line":529,"column":4200,"offset":4201},325,11731,{"line":529,"column":983,"offset":4203},11735,{"start":4205,"end":4206},{"line":529,"column":4192,"offset":4193},{"line":529,"column":1167,"offset":4207},11773,{"start":4209,"end":4211},{"line":529,"column":23,"offset":4210},11407,{"line":529,"column":1167,"offset":4207},{"type":19,"value":57},{"type":14,"tagName":486,"properties":4214,"children":4215,"position":4332},{},[4216,4243,4248,4259,4264,4275,4280,4291,4296,4307,4312,4325],{"type":14,"tagName":29,"properties":4217,"children":4218,"position":4238},{},[4219,4226],{"type":19,"value":4220,"position":4221},"Composed intervals in ",{"start":4222,"end":4224},{"line":2012,"column":93,"offset":4223},11778,{"line":2012,"column":499,"offset":4225},11800,{"type":14,"tagName":142,"properties":4227,"children":4228,"position":4235},{},[4229],{"type":19,"value":3744,"position":4230},{"start":4231,"end":4232},{"line":2012,"column":499,"offset":4225},{"line":2012,"column":4233,"offset":4234},40,11813,{"start":4236,"end":4237},{"line":2012,"column":499,"offset":4225},{"line":2012,"column":4233,"offset":4234},{"start":4239,"end":4241},{"line":2012,"column":67,"offset":4240},11776,{"line":2012,"column":519,"offset":4242},11815,{"type":19,"value":180,"position":4244},{"start":4245,"end":4246},{"line":2012,"column":519,"offset":4242},{"line":2012,"column":3445,"offset":4247},11817,{"type":14,"tagName":142,"properties":4249,"children":4250,"position":4256},{},[4251],{"type":19,"value":3763,"position":4252},{"start":4253,"end":4254},{"line":2012,"column":3445,"offset":4247},{"line":2012,"column":2881,"offset":4255},11823,{"start":4257,"end":4258},{"line":2012,"column":3445,"offset":4247},{"line":2012,"column":2881,"offset":4255},{"type":19,"value":260,"position":4260},{"start":4261,"end":4262},{"line":2012,"column":2881,"offset":4255},{"line":2012,"column":1409,"offset":4263},11825,{"type":14,"tagName":142,"properties":4265,"children":4266,"position":4272},{},[4267],{"type":19,"value":3782,"position":4268},{"start":4269,"end":4270},{"line":2012,"column":1409,"offset":4263},{"line":2012,"column":4149,"offset":4271},11831,{"start":4273,"end":4274},{"line":2012,"column":1409,"offset":4263},{"line":2012,"column":4149,"offset":4271},{"type":19,"value":260,"position":4276},{"start":4277,"end":4278},{"line":2012,"column":4149,"offset":4271},{"line":2012,"column":1059,"offset":4279},11833,{"type":14,"tagName":142,"properties":4281,"children":4282,"position":4288},{},[4283],{"type":19,"value":3801,"position":4284},{"start":4285,"end":4286},{"line":2012,"column":1059,"offset":4279},{"line":2012,"column":548,"offset":4287},11840,{"start":4289,"end":4290},{"line":2012,"column":1059,"offset":4279},{"line":2012,"column":548,"offset":4287},{"type":19,"value":260,"position":4292},{"start":4293,"end":4294},{"line":2012,"column":548,"offset":4287},{"line":2012,"column":109,"offset":4295},11842,{"type":14,"tagName":142,"properties":4297,"children":4298,"position":4304},{},[4299],{"type":19,"value":3820,"position":4300},{"start":4301,"end":4302},{"line":2012,"column":109,"offset":4295},{"line":2012,"column":1270,"offset":4303},11848,{"start":4305,"end":4306},{"line":2012,"column":109,"offset":4295},{"line":2012,"column":1270,"offset":4303},{"type":19,"value":260,"position":4308},{"start":4309,"end":4310},{"line":2012,"column":1270,"offset":4303},{"line":2012,"column":3506,"offset":4311},11850,{"type":14,"tagName":142,"properties":4313,"children":4314,"position":4322},{},[4315],{"type":19,"value":4316,"position":4317},"\"45m\"",{"start":4318,"end":4319},{"line":2012,"column":3506,"offset":4311},{"line":2012,"column":4320,"offset":4321},84,11857,{"start":4323,"end":4324},{"line":2012,"column":3506,"offset":4311},{"line":2012,"column":4320,"offset":4321},{"type":19,"value":4326,"position":4327}," and similar now return true bars at the requested timeframe, UTC-bucket-aggregated from the largest natively-served divisor (previously these silently fell back to chart-interval rows).",{"start":4328,"end":4329},{"line":2012,"column":4320,"offset":4321},{"line":2012,"column":4330,"offset":4331},270,12043,{"start":4333,"end":4335},{"line":2012,"column":23,"offset":4334},11774,{"line":2012,"column":4330,"offset":4331},{"type":19,"value":57},{"start":4338,"end":4339},{"line":1409,"column":23,"offset":4123},{"line":2012,"column":4330,"offset":4331},{"type":19,"value":57},{"type":14,"tagName":79,"properties":4342,"children":4343,"position":4931},{},[4344,4345,4372,4373,4930],{"type":19,"value":57},{"type":14,"tagName":15,"properties":4346,"children":4347,"position":4369},{},[4348,4363],{"type":14,"tagName":29,"properties":4349,"children":4350,"position":4358},{},[4351],{"type":19,"value":4352,"position":4353},"v3.0.26",{"start":4354,"end":4356},{"line":538,"column":93,"offset":4355},12049,{"line":538,"column":96,"offset":4357},12056,{"start":4359,"end":4361},{"line":538,"column":67,"offset":4360},12047,{"line":538,"column":102,"offset":4362},12058,{"type":19,"value":4364,"position":4365}," — Calendar timeframes & per-source deep HTF",{"start":4366,"end":4367},{"line":538,"column":102,"offset":4362},{"line":538,"column":4149,"offset":4368},12102,{"start":4370,"end":4371},{"line":538,"column":67,"offset":4360},{"line":538,"column":4149,"offset":4368},{"type":19,"value":57},{"type":14,"tagName":15,"properties":4374,"children":4375,"position":4927},{},[4376,4391,4396,4407,4413,4425,4431,4443,4450,4464,4469,4481,4486,4498,4503,4516,4522,4534,4540,4552,4558,4570,4576,4587,4593,4605,4610,4622,4628,4641,4646,4659,4664,4677,4683,4695,4701,4713,4720,4733,4739,4752,4758,4771,4778,4791,4798,4811,4818,4831,4838,4854,4861,4873,4880,4897,4904,4921],{"type":14,"tagName":29,"properties":4377,"children":4378,"position":4386},{},[4379],{"type":19,"value":4380,"position":4381},"June 2026",{"start":4382,"end":4384},{"line":4149,"column":93,"offset":4383},12109,{"line":4149,"column":102,"offset":4385},12118,{"start":4387,"end":4389},{"line":4149,"column":67,"offset":4388},12107,{"line":4149,"column":133,"offset":4390},12120,{"type":19,"value":136,"position":4392},{"start":4393,"end":4394},{"line":4149,"column":133,"offset":4390},{"line":4149,"column":36,"offset":4395},12130,{"type":14,"tagName":142,"properties":4397,"children":4398,"position":4404},{},[4399],{"type":19,"value":146,"position":4400},{"start":4401,"end":4402},{"line":4149,"column":36,"offset":4395},{"line":4149,"column":150,"offset":4403},12153,{"start":4405,"end":4406},{"line":4149,"column":36,"offset":4395},{"line":4149,"column":150,"offset":4403},{"type":19,"value":4408,"position":4409}," 3.0.26. Higher-timeframe ",{"start":4410,"end":4411},{"line":4149,"column":150,"offset":4403},{"line":4149,"column":1270,"offset":4412},12179,{"type":14,"tagName":142,"properties":4414,"children":4415,"position":4422},{},[4416],{"type":19,"value":4417,"position":4418},"htf()",{"start":4419,"end":4420},{"line":4149,"column":1270,"offset":4412},{"line":4149,"column":2763,"offset":4421},12186,{"start":4423,"end":4424},{"line":4149,"column":1270,"offset":4412},{"line":4149,"column":2763,"offset":4421},{"type":19,"value":1896,"position":4426},{"start":4427,"end":4428},{"line":4149,"column":2763,"offset":4421},{"line":4149,"column":4429,"offset":4430},87,12191,{"type":14,"tagName":142,"properties":4432,"children":4433,"position":4440},{},[4434],{"type":19,"value":4435,"position":4436},"request()",{"start":4437,"end":4438},{"line":4149,"column":4429,"offset":4430},{"line":4149,"column":75,"offset":4439},12202,{"start":4441,"end":4442},{"line":4149,"column":4429,"offset":4430},{"line":4149,"column":75,"offset":4439},{"type":19,"value":4444,"position":4445}," gain ",{"start":4446,"end":4447},{"line":4149,"column":75,"offset":4439},{"line":4149,"column":4448,"offset":4449},104,12208,{"type":14,"tagName":29,"properties":4451,"children":4452,"position":4460},{},[4453],{"type":19,"value":4454,"position":4455},"calendar-period tokens",{"start":4456,"end":4458},{"line":4149,"column":1448,"offset":4457},12210,{"line":4149,"column":97,"offset":4459},12232,{"start":4461,"end":4462},{"line":4149,"column":4448,"offset":4449},{"line":4149,"column":103,"offset":4463},12234,{"type":19,"value":2119,"position":4465},{"start":4466,"end":4467},{"line":4149,"column":103,"offset":4463},{"line":4149,"column":3075,"offset":4468},12235,{"type":14,"tagName":142,"properties":4470,"children":4471,"position":4478},{},[4472],{"type":19,"value":4473,"position":4474},"1D",{"start":4475,"end":4476},{"line":4149,"column":3075,"offset":4468},{"line":4149,"column":3468,"offset":4477},12239,{"start":4479,"end":4480},{"line":4149,"column":3075,"offset":4468},{"line":4149,"column":3468,"offset":4477},{"type":19,"value":4013,"position":4482},{"start":4483,"end":4484},{"line":4149,"column":3468,"offset":4477},{"line":4149,"column":716,"offset":4485},12240,{"type":14,"tagName":142,"properties":4487,"children":4488,"position":4495},{},[4489],{"type":19,"value":4490,"position":4491},"1W",{"start":4492,"end":4493},{"line":4149,"column":716,"offset":4485},{"line":4149,"column":1468,"offset":4494},12244,{"start":4496,"end":4497},{"line":4149,"column":716,"offset":4485},{"line":4149,"column":1468,"offset":4494},{"type":19,"value":4013,"position":4499},{"start":4500,"end":4501},{"line":4149,"column":1468,"offset":4494},{"line":4149,"column":4007,"offset":4502},12245,{"type":14,"tagName":142,"properties":4504,"children":4505,"position":4513},{},[4506],{"type":19,"value":4507,"position":4508},"1M",{"start":4509,"end":4510},{"line":4149,"column":4007,"offset":4502},{"line":4149,"column":4511,"offset":4512},145,12249,{"start":4514,"end":4515},{"line":4149,"column":4007,"offset":4502},{"line":4149,"column":4511,"offset":4512},{"type":19,"value":4013,"position":4517},{"start":4518,"end":4519},{"line":4149,"column":4511,"offset":4512},{"line":4149,"column":4520,"offset":4521},146,12250,{"type":14,"tagName":142,"properties":4523,"children":4524,"position":4531},{},[4525],{"type":19,"value":4526,"position":4527},"1Q",{"start":4528,"end":4529},{"line":4149,"column":4520,"offset":4521},{"line":4149,"column":895,"offset":4530},12254,{"start":4532,"end":4533},{"line":4149,"column":4520,"offset":4521},{"line":4149,"column":895,"offset":4530},{"type":19,"value":4013,"position":4535},{"start":4536,"end":4537},{"line":4149,"column":895,"offset":4530},{"line":4149,"column":4538,"offset":4539},151,12255,{"type":14,"tagName":142,"properties":4541,"children":4542,"position":4549},{},[4543],{"type":19,"value":4544,"position":4545},"1Y",{"start":4546,"end":4547},{"line":4149,"column":4538,"offset":4539},{"line":4149,"column":2036,"offset":4548},12259,{"start":4550,"end":4551},{"line":4149,"column":4538,"offset":4539},{"line":4149,"column":2036,"offset":4548},{"type":19,"value":4553,"position":4554}," (uppercase, UTC-anchored: ",{"start":4555,"end":4556},{"line":4149,"column":2036,"offset":4548},{"line":4149,"column":766,"offset":4557},12286,{"type":14,"tagName":142,"properties":4559,"children":4560,"position":4567},{},[4561],{"type":19,"value":4490,"position":4562},{"start":4563,"end":4564},{"line":4149,"column":766,"offset":4557},{"line":4149,"column":4565,"offset":4566},186,12290,{"start":4568,"end":4569},{"line":4149,"column":766,"offset":4557},{"line":4149,"column":4565,"offset":4566},{"type":19,"value":4571,"position":4572}," = Monday week, ",{"start":4573,"end":4574},{"line":4149,"column":4565,"offset":4566},{"line":4149,"column":3565,"offset":4575},12306,{"type":14,"tagName":142,"properties":4577,"children":4578,"position":4584},{},[4579],{"type":19,"value":4507,"position":4580},{"start":4581,"end":4582},{"line":4149,"column":3565,"offset":4575},{"line":4149,"column":786,"offset":4583},12310,{"start":4585,"end":4586},{"line":4149,"column":3565,"offset":4575},{"line":4149,"column":786,"offset":4583},{"type":19,"value":4013,"position":4588},{"start":4589,"end":4590},{"line":4149,"column":786,"offset":4583},{"line":4149,"column":4591,"offset":4592},207,12311,{"type":14,"tagName":142,"properties":4594,"children":4595,"position":4602},{},[4596],{"type":19,"value":4526,"position":4597},{"start":4598,"end":4599},{"line":4149,"column":4591,"offset":4592},{"line":4149,"column":4600,"offset":4601},211,12315,{"start":4603,"end":4604},{"line":4149,"column":4591,"offset":4592},{"line":4149,"column":4600,"offset":4601},{"type":19,"value":4013,"position":4606},{"start":4607,"end":4608},{"line":4149,"column":4600,"offset":4601},{"line":4149,"column":4077,"offset":4609},12316,{"type":14,"tagName":142,"properties":4611,"children":4612,"position":4619},{},[4613],{"type":19,"value":4544,"position":4614},{"start":4615,"end":4616},{"line":4149,"column":4077,"offset":4609},{"line":4149,"column":4617,"offset":4618},216,12320,{"start":4620,"end":4621},{"line":4149,"column":4077,"offset":4609},{"line":4149,"column":4617,"offset":4618},{"type":19,"value":4623,"position":4624}," = calendar month/quarter/year), distinct from rolling ",{"start":4625,"end":4626},{"line":4149,"column":4617,"offset":4618},{"line":4149,"column":2618,"offset":4627},12375,{"type":14,"tagName":142,"properties":4629,"children":4630,"position":4638},{},[4631],{"type":19,"value":4632,"position":4633},"Nm",{"start":4634,"end":4635},{"line":4149,"column":2618,"offset":4627},{"line":4149,"column":4636,"offset":4637},275,12379,{"start":4639,"end":4640},{"line":4149,"column":2618,"offset":4627},{"line":4149,"column":4636,"offset":4637},{"type":19,"value":4013,"position":4642},{"start":4643,"end":4644},{"line":4149,"column":4636,"offset":4637},{"line":4149,"column":3318,"offset":4645},12380,{"type":14,"tagName":142,"properties":4647,"children":4648,"position":4656},{},[4649],{"type":19,"value":4650,"position":4651},"Nh",{"start":4652,"end":4653},{"line":4149,"column":3318,"offset":4645},{"line":4149,"column":4654,"offset":4655},280,12384,{"start":4657,"end":4658},{"line":4149,"column":3318,"offset":4645},{"line":4149,"column":4654,"offset":4655},{"type":19,"value":4013,"position":4660},{"start":4661,"end":4662},{"line":4149,"column":4654,"offset":4655},{"line":4149,"column":592,"offset":4663},12385,{"type":14,"tagName":142,"properties":4665,"children":4666,"position":4674},{},[4667],{"type":19,"value":4668,"position":4669},"Nd",{"start":4670,"end":4671},{"line":4149,"column":592,"offset":4663},{"line":4149,"column":4672,"offset":4673},285,12389,{"start":4675,"end":4676},{"line":4149,"column":592,"offset":4663},{"line":4149,"column":4672,"offset":4673},{"type":19,"value":4678,"position":4679}," epoch-floor buckets, and case-significant (",{"start":4680,"end":4681},{"line":4149,"column":4672,"offset":4673},{"line":4149,"column":983,"offset":4682},12433,{"type":14,"tagName":142,"properties":4684,"children":4685,"position":4692},{},[4686],{"type":19,"value":4687,"position":4688},"1m",{"start":4689,"end":4690},{"line":4149,"column":983,"offset":4682},{"line":4149,"column":1148,"offset":4691},12437,{"start":4693,"end":4694},{"line":4149,"column":983,"offset":4682},{"line":4149,"column":1148,"offset":4691},{"type":19,"value":4696,"position":4697}," minute vs ",{"start":4698,"end":4699},{"line":4149,"column":1148,"offset":4691},{"line":4149,"column":2946,"offset":4700},12448,{"type":14,"tagName":142,"properties":4702,"children":4703,"position":4710},{},[4704],{"type":19,"value":4507,"position":4705},{"start":4706,"end":4707},{"line":4149,"column":2946,"offset":4700},{"line":4149,"column":4708,"offset":4709},348,12452,{"start":4711,"end":4712},{"line":4149,"column":2946,"offset":4700},{"line":4149,"column":4708,"offset":4709},{"type":19,"value":4714,"position":4715}," month). Multi-count calendar tokens (",{"start":4716,"end":4717},{"line":4149,"column":4708,"offset":4709},{"line":4149,"column":4718,"offset":4719},386,12490,{"type":14,"tagName":142,"properties":4721,"children":4722,"position":4730},{},[4723],{"type":19,"value":4724,"position":4725},"2W",{"start":4726,"end":4727},{"line":4149,"column":4718,"offset":4719},{"line":4149,"column":4728,"offset":4729},390,12494,{"start":4731,"end":4732},{"line":4149,"column":4718,"offset":4719},{"line":4149,"column":4728,"offset":4729},{"type":19,"value":4734,"position":4735},") are rejected. An ",{"start":4736,"end":4737},{"line":4149,"column":4728,"offset":4729},{"line":4149,"column":178,"offset":4738},12513,{"type":14,"tagName":142,"properties":4740,"children":4741,"position":4749},{},[4742],{"type":19,"value":4743,"position":4744},"opts",{"start":4745,"end":4746},{"line":4149,"column":178,"offset":4738},{"line":4149,"column":4747,"offset":4748},415,12519,{"start":4750,"end":4751},{"line":4149,"column":178,"offset":4738},{"line":4149,"column":4747,"offset":4748},{"type":19,"value":4753,"position":4754}," object ",{"start":4755,"end":4756},{"line":4149,"column":4747,"offset":4748},{"line":4149,"column":1609,"offset":4757},12527,{"type":14,"tagName":142,"properties":4759,"children":4760,"position":4768},{},[4761],{"type":19,"value":4762,"position":4763},"{ mode?, offset?, bars? }",{"start":4764,"end":4765},{"line":4149,"column":1609,"offset":4757},{"line":4149,"column":4766,"offset":4767},450,12554,{"start":4769,"end":4770},{"line":4149,"column":1609,"offset":4757},{"line":4149,"column":4766,"offset":4767},{"type":19,"value":4772,"position":4773}," adds ",{"start":4774,"end":4775},{"line":4149,"column":4766,"offset":4767},{"line":4149,"column":4776,"offset":4777},456,12560,{"type":14,"tagName":142,"properties":4779,"children":4780,"position":4788},{},[4781],{"type":19,"value":4782,"position":4783},"mode: \"developing\"",{"start":4784,"end":4785},{"line":4149,"column":4776,"offset":4777},{"line":4149,"column":4786,"offset":4787},476,12580,{"start":4789,"end":4790},{"line":4149,"column":4776,"offset":4777},{"line":4149,"column":4786,"offset":4787},{"type":19,"value":4792,"position":4793}," (current forming period), ",{"start":4794,"end":4795},{"line":4149,"column":4786,"offset":4787},{"line":4149,"column":4796,"offset":4797},503,12607,{"type":14,"tagName":142,"properties":4799,"children":4800,"position":4808},{},[4801],{"type":19,"value":4802,"position":4803},"offset: N",{"start":4804,"end":4805},{"line":4149,"column":4796,"offset":4797},{"line":4149,"column":4806,"offset":4807},514,12618,{"start":4809,"end":4810},{"line":4149,"column":4796,"offset":4797},{"line":4149,"column":4806,"offset":4807},{"type":19,"value":4812,"position":4813}," (N completed periods back, confirmed-only), and request-only ",{"start":4814,"end":4815},{"line":4149,"column":4806,"offset":4807},{"line":4149,"column":4816,"offset":4817},576,12680,{"type":14,"tagName":142,"properties":4819,"children":4820,"position":4828},{},[4821],{"type":19,"value":4822,"position":4823},"bars: N",{"start":4824,"end":4825},{"line":4149,"column":4816,"offset":4817},{"line":4149,"column":4826,"offset":4827},585,12689,{"start":4829,"end":4830},{"line":4149,"column":4816,"offset":4817},{"line":4149,"column":4826,"offset":4827},{"type":19,"value":4832,"position":4833}," (exact fetch depth); a bare opts object in the type/exchange slot is coerced to opts. ",{"start":4834,"end":4835},{"line":4149,"column":4826,"offset":4827},{"line":4149,"column":4836,"offset":4837},672,12776,{"type":14,"tagName":29,"properties":4839,"children":4840,"position":4849},{},[4841],{"type":19,"value":4842,"position":4843},"Correction:",{"start":4844,"end":4847},{"line":4149,"column":4845,"offset":4846},674,12778,{"line":4149,"column":328,"offset":4848},12789,{"start":4850,"end":4851},{"line":4149,"column":4836,"offset":4837},{"line":4149,"column":4852,"offset":4853},687,12791,{"type":19,"value":4855,"position":4856}," a coarser-timeframe ",{"start":4857,"end":4858},{"line":4149,"column":4852,"offset":4853},{"line":4149,"column":4859,"offset":4860},708,12812,{"type":14,"tagName":142,"properties":4862,"children":4863,"position":4870},{},[4864],{"type":19,"value":4435,"position":4865},{"start":4866,"end":4867},{"line":4149,"column":4859,"offset":4860},{"line":4149,"column":4868,"offset":4869},719,12823,{"start":4871,"end":4872},{"line":4149,"column":4859,"offset":4860},{"line":4149,"column":4868,"offset":4869},{"type":19,"value":4874,"position":4875}," now fetches its ",{"start":4876,"end":4877},{"line":4149,"column":4868,"offset":4869},{"line":4149,"column":4878,"offset":4879},736,12840,{"type":14,"tagName":29,"properties":4881,"children":4882,"position":4892},{},[4883],{"type":19,"value":4884,"position":4885},"own deep history",{"start":4886,"end":4889},{"line":4149,"column":4887,"offset":4888},738,12842,{"line":4149,"column":4890,"offset":4891},754,12858,{"start":4893,"end":4894},{"line":4149,"column":4878,"offset":4879},{"line":4149,"column":4895,"offset":4896},756,12860,{"type":19,"value":4898,"position":4899}," scaled by the requested interval (daily/weekly/monthly/yearly levels resolve on a 1m chart), superseding the earlier \"bounded by the chart's loaded window\" behavior. Day/week/month aggregate from a deep daily backing source; quarter/year from a weekly one (quarter/year open/close can be off by up to ~1 week). See ",{"start":4900,"end":4901},{"line":4149,"column":4895,"offset":4896},{"line":4149,"column":4902,"offset":4903},1072,13176,{"type":14,"tagName":1943,"properties":4905,"children":4907,"position":4916},{"href":4906},"/kscript/core-concepts/multi-timeframe",[4908],{"type":19,"value":4909,"position":4910},"Multi-Timeframe",{"start":4911,"end":4913},{"line":4149,"column":431,"offset":4912},13177,{"line":4149,"column":4914,"offset":4915},1088,13192,{"start":4917,"end":4918},{"line":4149,"column":4902,"offset":4903},{"line":4149,"column":4919,"offset":4920},1129,13233,{"type":19,"value":1356,"position":4922},{"start":4923,"end":4924},{"line":4149,"column":4919,"offset":4920},{"line":4149,"column":4925,"offset":4926},1130,13234,{"start":4928,"end":4929},{"line":4149,"column":67,"offset":4388},{"line":4149,"column":4925,"offset":4926},{"type":19,"value":57},{"start":4932,"end":4934},{"line":538,"column":23,"offset":4933},12045,{"line":4149,"column":4925,"offset":4926},{"type":19,"value":57},{"type":14,"tagName":462,"properties":4937,"children":4939,"position":4946},{"id":4938},"added-4",[4940],{"type":19,"value":467,"position":4941},{"start":4942,"end":4944},{"line":1059,"column":93,"offset":4943},13240,{"line":1059,"column":473,"offset":4945},13245,{"start":4947,"end":4949},{"line":1059,"column":23,"offset":4948},13236,{"line":1059,"column":473,"offset":4945},{"type":19,"value":57},{"type":14,"tagName":481,"properties":4952,"children":4953,"position":5085},{},[4954,4955,5084],{"type":19,"value":57},{"type":14,"tagName":486,"properties":4956,"children":4957,"position":5080},{},[4958,4981,4988,5002,5008,5021,5028,5041,5047,5059,5066],{"type":14,"tagName":29,"properties":4959,"children":4960,"position":4976},{},[4961],{"type":14,"tagName":142,"properties":4962,"children":4963,"position":4973},{},[4964],{"type":19,"value":4965,"position":4966},"requestBars(symbol, timeframe, type?, exchange?, { bars })",{"start":4967,"end":4970},{"line":4968,"column":93,"offset":4969},62,13251,{"line":4968,"column":4971,"offset":4972},65,13311,{"start":4974,"end":4975},{"line":4968,"column":93,"offset":4969},{"line":4968,"column":4971,"offset":4972},{"start":4977,"end":4979},{"line":4968,"column":67,"offset":4978},13249,{"line":4968,"column":548,"offset":4980},13313,{"type":19,"value":4982,"position":4983},": returns the last N ",{"start":4984,"end":4985},{"line":4968,"column":548,"offset":4980},{"line":4968,"column":4986,"offset":4987},88,13334,{"type":14,"tagName":29,"properties":4989,"children":4990,"position":4998},{},[4991],{"type":19,"value":4992,"position":4993},"native",{"start":4994,"end":4996},{"line":4968,"column":1429,"offset":4995},13336,{"line":4968,"column":52,"offset":4997},13342,{"start":4999,"end":5000},{"line":4968,"column":4986,"offset":4987},{"line":4968,"column":75,"offset":5001},13344,{"type":19,"value":5003,"position":5004}," bars of a symbol at a coarse interval as a plain ",{"start":5005,"end":5006},{"line":4968,"column":75,"offset":5001},{"line":4968,"column":1273,"offset":5007},13394,{"type":14,"tagName":142,"properties":5009,"children":5010,"position":5018},{},[5011],{"type":19,"value":5012,"position":5013},"[time, open, high, low, close, volume]",{"start":5014,"end":5015},{"line":4968,"column":1273,"offset":5007},{"line":4968,"column":5016,"offset":5017},188,13434,{"start":5019,"end":5020},{"line":4968,"column":1273,"offset":5007},{"line":4968,"column":5016,"offset":5017},{"type":19,"value":5022,"position":5023}," array (oldest first), draw-only and independent of ",{"start":5024,"end":5025},{"line":4968,"column":5016,"offset":5017},{"line":4968,"column":5026,"offset":5027},240,13486,{"type":14,"tagName":142,"properties":5029,"children":5030,"position":5038},{},[5031],{"type":19,"value":5032,"position":5033},"maxBarsBack",{"start":5034,"end":5035},{"line":4968,"column":5026,"offset":5027},{"line":4968,"column":5036,"offset":5037},253,13499,{"start":5039,"end":5040},{"line":4968,"column":5026,"offset":5027},{"line":4968,"column":5036,"offset":5037},{"type":19,"value":5042,"position":5043},". The drawing counterpart to ",{"start":5044,"end":5045},{"line":4968,"column":5036,"offset":5037},{"line":4968,"column":1312,"offset":5046},13528,{"type":14,"tagName":142,"properties":5048,"children":5049,"position":5056},{},[5050],{"type":19,"value":4435,"position":5051},{"start":5052,"end":5053},{"line":4968,"column":1312,"offset":5046},{"line":4968,"column":5054,"offset":5055},293,13539,{"start":5057,"end":5058},{"line":4968,"column":1312,"offset":5046},{"line":4968,"column":5054,"offset":5055},{"type":19,"value":5060,"position":5061},": iterate the rows and draw (last N daily highs/lows, weekly ranges) instead of feeding a chart-aligned, TA-chainable series. ",{"start":5062,"end":5063},{"line":4968,"column":5054,"offset":5055},{"line":4968,"column":5064,"offset":5065},419,13665,{"type":14,"tagName":1943,"properties":5067,"children":5068,"position":5076},{"href":3882},[5069],{"type":19,"value":3325,"position":5070},{"start":5071,"end":5073},{"line":4968,"column":1187,"offset":5072},13666,{"line":4968,"column":5074,"offset":5075},424,13670,{"start":5077,"end":5078},{"line":4968,"column":5064,"offset":5065},{"line":4968,"column":244,"offset":5079},13708,{"start":5081,"end":5083},{"line":4968,"column":23,"offset":5082},13247,{"line":4968,"column":244,"offset":5079},{"type":19,"value":57},{"start":5086,"end":5087},{"line":4968,"column":23,"offset":5082},{"line":4968,"column":244,"offset":5079},{"type":19,"value":57},{"type":14,"tagName":79,"properties":5090,"children":5091,"position":5302},{},[5092,5093,5120,5121,5301],{"type":19,"value":57},{"type":14,"tagName":15,"properties":5094,"children":5095,"position":5117},{},[5096,5111],{"type":14,"tagName":29,"properties":5097,"children":5098,"position":5106},{},[5099],{"type":19,"value":5100,"position":5101},"v3.0.15",{"start":5102,"end":5104},{"line":2384,"column":93,"offset":5103},13714,{"line":2384,"column":96,"offset":5105},13721,{"start":5107,"end":5109},{"line":2384,"column":67,"offset":5108},13712,{"line":2384,"column":102,"offset":5110},13723,{"type":19,"value":5112,"position":5113}," — Deep-history anchoring & plot-label rules",{"start":5114,"end":5115},{"line":2384,"column":102,"offset":5110},{"line":2384,"column":4149,"offset":5116},13767,{"start":5118,"end":5119},{"line":2384,"column":67,"offset":5108},{"line":2384,"column":4149,"offset":5116},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5122,"children":5123,"position":5298},{},[5124,5138,5143,5154,5160,5173,5179,5192,5199,5214,5221,5233,5240,5254,5260,5272,5279,5291],{"type":14,"tagName":29,"properties":5125,"children":5126,"position":5133},{},[5127],{"type":19,"value":4380,"position":5128},{"start":5129,"end":5131},{"line":2393,"column":93,"offset":5130},13774,{"line":2393,"column":102,"offset":5132},13783,{"start":5134,"end":5136},{"line":2393,"column":67,"offset":5135},13772,{"line":2393,"column":133,"offset":5137},13785,{"type":19,"value":136,"position":5139},{"start":5140,"end":5141},{"line":2393,"column":133,"offset":5137},{"line":2393,"column":36,"offset":5142},13795,{"type":14,"tagName":142,"properties":5144,"children":5145,"position":5151},{},[5146],{"type":19,"value":146,"position":5147},{"start":5148,"end":5149},{"line":2393,"column":36,"offset":5142},{"line":2393,"column":150,"offset":5150},13818,{"start":5152,"end":5153},{"line":2393,"column":36,"offset":5142},{"line":2393,"column":150,"offset":5150},{"type":19,"value":5155,"position":5156}," 3.0.15. ",{"start":5157,"end":5158},{"line":2393,"column":150,"offset":5150},{"line":2393,"column":4149,"offset":5159},13827,{"type":14,"tagName":142,"properties":5161,"children":5162,"position":5170},{},[5163],{"type":19,"value":5164,"position":5165},"define(..., maxBarsBack=N)",{"start":5166,"end":5167},{"line":2393,"column":4149,"offset":5159},{"line":2393,"column":5168,"offset":5169},86,13855,{"start":5171,"end":5172},{"line":2393,"column":4149,"offset":5159},{"line":2393,"column":5168,"offset":5169},{"type":19,"value":5174,"position":5175}," opt-in deep-history declaration: the host preloads up to ",{"start":5176,"end":5177},{"line":2393,"column":5168,"offset":5169},{"line":2393,"column":726,"offset":5178},13913,{"type":14,"tagName":142,"properties":5180,"children":5181,"position":5189},{},[5182],{"type":19,"value":5183,"position":5184},"N",{"start":5185,"end":5186},{"line":2393,"column":726,"offset":5178},{"line":2393,"column":5187,"offset":5188},147,13916,{"start":5190,"end":5191},{"line":2393,"column":726,"offset":5178},{"line":2393,"column":5187,"offset":5188},{"type":19,"value":5193,"position":5194}," bars (capped at 20000, and per viewer tier on the chart) so cumulative and anchored VWAPs stay fixed as the chart pans instead of re-anchoring to the newest loaded bar. Plot labels are now ",{"start":5195,"end":5196},{"line":2393,"column":5187,"offset":5188},{"line":2393,"column":5197,"offset":5198},337,14106,{"type":14,"tagName":29,"properties":5200,"children":5201,"position":5210},{},[5202],{"type":19,"value":5203,"position":5204},"required and unique",{"start":5205,"end":5207},{"line":2393,"column":1157,"offset":5206},14108,{"line":2393,"column":5208,"offset":5209},358,14127,{"start":5211,"end":5212},{"line":2393,"column":5197,"offset":5198},{"line":2393,"column":2637,"offset":5213},14129,{"type":19,"value":5215,"position":5216}," at publish, while ",{"start":5217,"end":5218},{"line":2393,"column":2637,"offset":5213},{"line":2393,"column":5219,"offset":5220},379,14148,{"type":14,"tagName":142,"properties":5222,"children":5223,"position":5230},{},[5224],{"type":19,"value":5225,"position":5226},"desc",{"start":5227,"end":5228},{"line":2393,"column":5219,"offset":5220},{"line":2393,"column":161,"offset":5229},14154,{"start":5231,"end":5232},{"line":2393,"column":5219,"offset":5220},{"line":2393,"column":161,"offset":5229},{"type":19,"value":5234,"position":5235}," is ",{"start":5236,"end":5237},{"line":2393,"column":161,"offset":5229},{"line":2393,"column":5238,"offset":5239},389,14158,{"type":14,"tagName":29,"properties":5241,"children":5242,"position":5250},{},[5243],{"type":19,"value":5244,"position":5245},"optional and no longer validated",{"start":5246,"end":5248},{"line":2393,"column":2493,"offset":5247},14160,{"line":2393,"column":1609,"offset":5249},14192,{"start":5251,"end":5252},{"line":2393,"column":5238,"offset":5239},{"line":2393,"column":195,"offset":5253},14194,{"type":19,"value":5255,"position":5256},". A coarser-timeframe ",{"start":5257,"end":5258},{"line":2393,"column":195,"offset":5253},{"line":2393,"column":2802,"offset":5259},14216,{"type":14,"tagName":142,"properties":5261,"children":5262,"position":5269},{},[5263],{"type":19,"value":4435,"position":5264},{"start":5265,"end":5266},{"line":2393,"column":2802,"offset":5259},{"line":2393,"column":5267,"offset":5268},458,14227,{"start":5270,"end":5271},{"line":2393,"column":2802,"offset":5259},{"line":2393,"column":5267,"offset":5268},{"type":19,"value":5273,"position":5274}," fetches that interval natively. (At 3.0.15 a higher-timeframe ",{"start":5275,"end":5276},{"line":2393,"column":5267,"offset":5268},{"line":2393,"column":5277,"offset":5278},521,14290,{"type":14,"tagName":142,"properties":5280,"children":5281,"position":5288},{},[5282],{"type":19,"value":4435,"position":5283},{"start":5284,"end":5285},{"line":2393,"column":5277,"offset":5278},{"line":2393,"column":5286,"offset":5287},532,14301,{"start":5289,"end":5290},{"line":2393,"column":5277,"offset":5278},{"line":2393,"column":5286,"offset":5287},{"type":19,"value":5292,"position":5293}," was still bounded by the chart's loaded window; engine 3.0.26 changed this so each higher-timeframe request fetches its own deep history. See the 3.0.26 entry above.)",{"start":5294,"end":5295},{"line":2393,"column":5286,"offset":5287},{"line":2393,"column":5296,"offset":5297},699,14468,{"start":5299,"end":5300},{"line":2393,"column":67,"offset":5135},{"line":2393,"column":5296,"offset":5297},{"type":19,"value":57},{"start":5303,"end":5305},{"line":2384,"column":23,"offset":5304},13710,{"line":2393,"column":5296,"offset":5297},{"type":19,"value":57},{"type":14,"tagName":59,"properties":5308,"children":5310,"position":5319},{"id":5309},"older-releases",[5311],{"type":19,"value":5312,"position":5313},"Older releases",{"start":5314,"end":5317},{"line":5315,"column":68,"offset":5316},68,14473,{"line":5315,"column":71,"offset":5318},14487,{"start":5320,"end":5322},{"line":5315,"column":23,"offset":5321},14470,{"line":5315,"column":71,"offset":5318},{"type":19,"value":57},{"type":14,"tagName":79,"properties":5325,"children":5326,"position":5538},{},[5327,5328,5356,5357,5513,5514,5537],{"type":19,"value":57},{"type":14,"tagName":15,"properties":5329,"children":5330,"position":5353},{},[5331,5346],{"type":14,"tagName":29,"properties":5332,"children":5333,"position":5341},{},[5334],{"type":19,"value":5335,"position":5336},"v3.2.0",{"start":5337,"end":5339},{"line":4164,"column":93,"offset":5338},14493,{"line":4164,"column":496,"offset":5340},14499,{"start":5342,"end":5344},{"line":4164,"column":67,"offset":5343},14491,{"line":4164,"column":863,"offset":5345},14501,{"type":19,"value":5347,"position":5348}," — Ergonomics & precision",{"start":5349,"end":5350},{"line":4164,"column":863,"offset":5345},{"line":4164,"column":5351,"offset":5352},38,14526,{"start":5354,"end":5355},{"line":4164,"column":67,"offset":5343},{"line":4164,"column":5351,"offset":5352},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5358,"children":5359,"position":5510},{},[5360,5375,5381,5393,5399,5412,5418,5431,5438,5449,5455,5467,5473,5486,5492,5504],{"type":14,"tagName":29,"properties":5361,"children":5362,"position":5370},{},[5363],{"type":19,"value":4380,"position":5364},{"start":5365,"end":5368},{"line":5366,"column":93,"offset":5367},72,14533,{"line":5366,"column":102,"offset":5369},14542,{"start":5371,"end":5373},{"line":5366,"column":67,"offset":5372},14531,{"line":5366,"column":133,"offset":5374},14544,{"type":19,"value":5376,"position":5377}," · Named streams on multi-output indicators (",{"start":5378,"end":5379},{"line":5366,"column":133,"offset":5374},{"line":5366,"column":1419,"offset":5380},14589,{"type":14,"tagName":142,"properties":5382,"children":5383,"position":5390},{},[5384],{"type":19,"value":5385,"position":5386},"bands.upper",{"start":5387,"end":5388},{"line":5366,"column":1419,"offset":5380},{"line":5366,"column":2753,"offset":5389},14602,{"start":5391,"end":5392},{"line":5366,"column":1419,"offset":5380},{"line":5366,"column":2753,"offset":5389},{"type":19,"value":260,"position":5394},{"start":5395,"end":5396},{"line":5366,"column":2753,"offset":5389},{"line":5366,"column":5397,"offset":5398},76,14604,{"type":14,"tagName":142,"properties":5400,"children":5401,"position":5409},{},[5402],{"type":19,"value":5403,"position":5404},"macd.signal[1]",{"start":5405,"end":5406},{"line":5366,"column":5397,"offset":5398},{"line":5366,"column":5407,"offset":5408},92,14620,{"start":5410,"end":5411},{"line":5366,"column":5397,"offset":5398},{"line":5366,"column":5407,"offset":5408},{"type":19,"value":5413,"position":5414},"), calendar-anchored VWAP (",{"start":5415,"end":5416},{"line":5366,"column":5407,"offset":5408},{"line":5366,"column":100,"offset":5417},14647,{"type":14,"tagName":142,"properties":5419,"children":5420,"position":5428},{},[5421],{"type":19,"value":5422,"position":5423},"vwap(anchor=\"day\")",{"start":5424,"end":5425},{"line":5366,"column":100,"offset":5417},{"line":5366,"column":5426,"offset":5427},139,14667,{"start":5429,"end":5430},{"line":5366,"column":100,"offset":5417},{"line":5366,"column":5426,"offset":5427},{"type":19,"value":5432,"position":5433}," — stable under history loading, honest ",{"start":5434,"end":5435},{"line":5366,"column":5426,"offset":5427},{"line":5366,"column":5436,"offset":5437},179,14707,{"type":14,"tagName":142,"properties":5439,"children":5440,"position":5446},{},[5441],{"type":19,"value":812,"position":5442},{"start":5443,"end":5444},{"line":5366,"column":5436,"offset":5437},{"line":5366,"column":2428,"offset":5445},14711,{"start":5447,"end":5448},{"line":5366,"column":5436,"offset":5437},{"line":5366,"column":2428,"offset":5445},{"type":19,"value":5450,"position":5451}," for partial sessions), and methods on user-defined types (",{"start":5452,"end":5453},{"line":5366,"column":2428,"offset":5445},{"line":5366,"column":563,"offset":5454},14770,{"type":14,"tagName":142,"properties":5456,"children":5457,"position":5464},{},[5458],{"type":19,"value":5459,"position":5460},"func",{"start":5461,"end":5462},{"line":5366,"column":563,"offset":5454},{"line":5366,"column":816,"offset":5463},14776,{"start":5465,"end":5466},{"line":5366,"column":563,"offset":5454},{"line":5366,"column":816,"offset":5463},{"type":19,"value":5468,"position":5469}," in ",{"start":5470,"end":5471},{"line":5366,"column":816,"offset":5463},{"line":5366,"column":934,"offset":5472},14780,{"type":14,"tagName":142,"properties":5474,"children":5475,"position":5483},{},[5476],{"type":19,"value":5477,"position":5478},"type",{"start":5479,"end":5480},{"line":5366,"column":934,"offset":5472},{"line":5366,"column":5481,"offset":5482},258,14786,{"start":5484,"end":5485},{"line":5366,"column":934,"offset":5472},{"line":5366,"column":5481,"offset":5482},{"type":19,"value":5487,"position":5488}," blocks with ",{"start":5489,"end":5490},{"line":5366,"column":5481,"offset":5482},{"line":5366,"column":2618,"offset":5491},14799,{"type":14,"tagName":142,"properties":5493,"children":5494,"position":5501},{},[5495],{"type":19,"value":5496,"position":5497},"this",{"start":5498,"end":5499},{"line":5366,"column":2618,"offset":5491},{"line":5366,"column":3328,"offset":5500},14805,{"start":5502,"end":5503},{"line":5366,"column":2618,"offset":5491},{"line":5366,"column":3328,"offset":5500},{"type":19,"value":5505,"position":5506},", instances stay clone-safe plain data).",{"start":5507,"end":5508},{"line":5366,"column":3328,"offset":5500},{"line":5366,"column":234,"offset":5509},14845,{"start":5511,"end":5512},{"line":5366,"column":67,"offset":5372},{"line":5366,"column":234,"offset":5509},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5515,"children":5516,"position":5534},{},[5517],{"type":14,"tagName":1943,"properties":5518,"children":5520,"position":5528},{"href":5519},"#v3.2.0-june-2026",[5521],{"type":19,"value":5522,"position":5523},"Full notes →",{"start":5524,"end":5526},{"line":2753,"column":68,"offset":5525},14851,{"line":2753,"column":133,"offset":5527},14863,{"start":5529,"end":5531},{"line":2753,"column":67,"offset":5530},14850,{"line":2753,"column":5532,"offset":5533},36,14883,{"start":5535,"end":5536},{"line":2753,"column":67,"offset":5530},{"line":2753,"column":5532,"offset":5533},{"type":19,"value":57},{"start":5539,"end":5541},{"line":4164,"column":23,"offset":5540},14489,{"line":2753,"column":5532,"offset":5533},{"type":19,"value":57},{"type":14,"tagName":79,"properties":5544,"children":5545,"position":5736},{},[5546,5547,5574,5575,5712,5713,5735],{"type":19,"value":57},{"type":14,"tagName":15,"properties":5548,"children":5549,"position":5571},{},[5550,5565],{"type":14,"tagName":29,"properties":5551,"children":5552,"position":5560},{},[5553],{"type":19,"value":5554,"position":5555},"v3.0.7",{"start":5556,"end":5558},{"line":5397,"column":93,"offset":5557},14889,{"line":5397,"column":496,"offset":5559},14895,{"start":5561,"end":5563},{"line":5397,"column":67,"offset":5562},14887,{"line":5397,"column":863,"offset":5564},14897,{"type":19,"value":5566,"position":5567}," — v2 compatibility hardening",{"start":5568,"end":5569},{"line":5397,"column":863,"offset":5564},{"line":5397,"column":519,"offset":5570},14926,{"start":5572,"end":5573},{"line":5397,"column":67,"offset":5562},{"line":5397,"column":519,"offset":5570},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5576,"children":5577,"position":5709},{},[5578,5593,5599,5610,5616,5629,5635,5648,5654,5666,5672,5685,5691,5703],{"type":14,"tagName":29,"properties":5579,"children":5580,"position":5588},{},[5581],{"type":19,"value":4380,"position":5582},{"start":5583,"end":5586},{"line":5584,"column":93,"offset":5585},78,14933,{"line":5584,"column":102,"offset":5587},14942,{"start":5589,"end":5591},{"line":5584,"column":67,"offset":5590},14931,{"line":5584,"column":133,"offset":5592},14944,{"type":19,"value":5594,"position":5595}," · Engine patch release (",{"start":5596,"end":5597},{"line":5584,"column":133,"offset":5592},{"line":5584,"column":1994,"offset":5598},14969,{"type":14,"tagName":142,"properties":5600,"children":5601,"position":5607},{},[5602],{"type":19,"value":146,"position":5603},{"start":5604,"end":5605},{"line":5584,"column":1994,"offset":5598},{"line":5584,"column":2384,"offset":5606},14992,{"start":5608,"end":5609},{"line":5584,"column":1994,"offset":5598},{"line":5584,"column":2384,"offset":5606},{"type":19,"value":5611,"position":5612}," 3.0.7). No new features: v2 conveniences restored (",{"start":5613,"end":5614},{"line":5584,"column":2384,"offset":5606},{"line":5584,"column":3970,"offset":5615},15044,{"type":14,"tagName":142,"properties":5617,"children":5618,"position":5626},{},[5619],{"type":19,"value":5620,"position":5621},"plotText",{"start":5622,"end":5623},{"line":5584,"column":3970,"offset":5615},{"line":5584,"column":5624,"offset":5625},126,15054,{"start":5627,"end":5628},{"line":5584,"column":3970,"offset":5615},{"line":5584,"column":5624,"offset":5625},{"type":19,"value":5630,"position":5631}," alignment synonyms, ",{"start":5632,"end":5633},{"line":5584,"column":5624,"offset":5625},{"line":5584,"column":5187,"offset":5634},15075,{"type":14,"tagName":142,"properties":5636,"children":5637,"position":5645},{},[5638],{"type":19,"value":5639,"position":5640},"plotShape",{"start":5641,"end":5642},{"line":5584,"column":5187,"offset":5634},{"line":5584,"column":5643,"offset":5644},158,15086,{"start":5646,"end":5647},{"line":5584,"column":5187,"offset":5634},{"line":5584,"column":5643,"offset":5644},{"type":19,"value":5649,"position":5650}," shape aliases incl. ",{"start":5651,"end":5652},{"line":5584,"column":5643,"offset":5644},{"line":5584,"column":5436,"offset":5653},15107,{"type":14,"tagName":142,"properties":5655,"children":5656,"position":5663},{},[5657],{"type":19,"value":5658,"position":5659},"star",{"start":5660,"end":5661},{"line":5584,"column":5436,"offset":5653},{"line":5584,"column":110,"offset":5662},15113,{"start":5664,"end":5665},{"line":5584,"column":5436,"offset":5653},{"line":5584,"column":110,"offset":5662},{"type":19,"value":5667,"position":5668},", bare ",{"start":5669,"end":5670},{"line":5584,"column":110,"offset":5662},{"line":5584,"column":126,"offset":5671},15120,{"type":14,"tagName":142,"properties":5673,"children":5674,"position":5682},{},[5675],{"type":19,"value":5676,"position":5677},"NaN",{"start":5678,"end":5679},{"line":5584,"column":126,"offset":5671},{"line":5584,"column":5680,"offset":5681},197,15125,{"start":5683,"end":5684},{"line":5584,"column":126,"offset":5671},{"line":5584,"column":5680,"offset":5681},{"type":19,"value":5686,"position":5687}," as an alias of ",{"start":5688,"end":5689},{"line":5584,"column":5680,"offset":5681},{"line":5584,"column":140,"offset":5690},15141,{"type":14,"tagName":142,"properties":5692,"children":5693,"position":5700},{},[5694],{"type":19,"value":812,"position":5695},{"start":5696,"end":5697},{"line":5584,"column":140,"offset":5690},{"line":5584,"column":5698,"offset":5699},217,15145,{"start":5701,"end":5702},{"line":5584,"column":140,"offset":5690},{"line":5584,"column":5698,"offset":5699},{"type":19,"value":5704,"position":5705},") and two runtime sandbox ceilings raised to installed-base reality (data sources 8 → 20, output objects 20,000 → 50,000).",{"start":5706,"end":5707},{"line":5584,"column":5698,"offset":5699},{"line":5584,"column":1157,"offset":5708},15267,{"start":5710,"end":5711},{"line":5584,"column":67,"offset":5590},{"line":5584,"column":1157,"offset":5708},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5714,"children":5715,"position":5732},{},[5716],{"type":14,"tagName":1943,"properties":5717,"children":5719,"position":5727},{"href":5718},"#v3.0.7-june-2026",[5720],{"type":19,"value":5522,"position":5721},{"start":5722,"end":5725},{"line":5723,"column":68,"offset":5724},80,15273,{"line":5723,"column":133,"offset":5726},15285,{"start":5728,"end":5730},{"line":5723,"column":67,"offset":5729},15272,{"line":5723,"column":5532,"offset":5731},15305,{"start":5733,"end":5734},{"line":5723,"column":67,"offset":5729},{"line":5723,"column":5532,"offset":5731},{"type":19,"value":57},{"start":5737,"end":5739},{"line":5397,"column":23,"offset":5738},14885,{"line":5723,"column":5532,"offset":5731},{"type":19,"value":57},{"type":14,"tagName":79,"properties":5742,"children":5743,"position":5860},{},[5744,5745,5772,5773,5837,5838,5859],{"type":19,"value":57},{"type":14,"tagName":15,"properties":5746,"children":5747,"position":5769},{},[5748,5763],{"type":14,"tagName":29,"properties":5749,"children":5750,"position":5758},{},[5751],{"type":19,"value":5752,"position":5753},"v3.1.0",{"start":5754,"end":5756},{"line":2763,"column":93,"offset":5755},15311,{"line":2763,"column":496,"offset":5757},15317,{"start":5759,"end":5761},{"line":2763,"column":67,"offset":5760},15309,{"line":2763,"column":863,"offset":5762},15319,{"type":19,"value":5764,"position":5765}," — Multi-source & data policy",{"start":5766,"end":5767},{"line":2763,"column":863,"offset":5762},{"line":2763,"column":519,"offset":5768},15348,{"start":5770,"end":5771},{"line":2763,"column":67,"offset":5760},{"line":2763,"column":519,"offset":5768},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5774,"children":5775,"position":5834},{},[5776,5790,5797,5808,5814,5827],{"type":14,"tagName":29,"properties":5777,"children":5778,"position":5785},{},[5779],{"type":19,"value":4380,"position":5780},{"start":5781,"end":5783},{"line":4320,"column":93,"offset":5782},15355,{"line":4320,"column":102,"offset":5784},15364,{"start":5786,"end":5788},{"line":4320,"column":67,"offset":5787},15353,{"line":4320,"column":133,"offset":5789},15366,{"type":19,"value":5791,"position":5792}," · Multi-symbol and multi-venue scripts get first-class tooling: ",{"start":5793,"end":5794},{"line":4320,"column":133,"offset":5789},{"line":4320,"column":5795,"offset":5796},81,15431,{"type":14,"tagName":142,"properties":5798,"children":5799,"position":5805},{},[5800],{"type":19,"value":4435,"position":5801},{"start":5802,"end":5803},{"line":4320,"column":5795,"offset":5796},{"line":4320,"column":5407,"offset":5804},15442,{"start":5806,"end":5807},{"line":4320,"column":5795,"offset":5796},{"line":4320,"column":5407,"offset":5804},{"type":19,"value":5809,"position":5810}," (one-call other-symbol/HTF data), ",{"start":5811,"end":5812},{"line":4320,"column":5407,"offset":5804},{"line":4320,"column":885,"offset":5813},15477,{"type":14,"tagName":142,"properties":5815,"children":5816,"position":5824},{},[5817],{"type":19,"value":5818,"position":5819},"ltf()",{"start":5820,"end":5821},{"line":4320,"column":885,"offset":5813},{"line":4320,"column":5822,"offset":5823},134,15484,{"start":5825,"end":5826},{"line":4320,"column":885,"offset":5813},{"line":4320,"column":5822,"offset":5823},{"type":19,"value":5828,"position":5829}," (lower-timeframe bars as cells on your chart's bars), a per-script source budget, machine-readable source catalog, and aggregation patterns (cross-exchange CVD, weighted OI) documented end to end.",{"start":5830,"end":5831},{"line":4320,"column":5822,"offset":5823},{"line":4320,"column":5832,"offset":5833},331,15681,{"start":5835,"end":5836},{"line":4320,"column":67,"offset":5787},{"line":4320,"column":5832,"offset":5833},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5839,"children":5840,"position":5856},{},[5841],{"type":14,"tagName":1943,"properties":5842,"children":5844,"position":5851},{"href":5843},"#v3.1.0-june-2026",[5845],{"type":19,"value":5522,"position":5846},{"start":5847,"end":5849},{"line":5168,"column":68,"offset":5848},15687,{"line":5168,"column":133,"offset":5850},15699,{"start":5852,"end":5854},{"line":5168,"column":67,"offset":5853},15686,{"line":5168,"column":5532,"offset":5855},15719,{"start":5857,"end":5858},{"line":5168,"column":67,"offset":5853},{"line":5168,"column":5532,"offset":5855},{"type":19,"value":57},{"start":5861,"end":5863},{"line":2763,"column":23,"offset":5862},15307,{"line":5168,"column":5532,"offset":5855},{"type":19,"value":57},{"type":14,"tagName":79,"properties":5866,"children":5867,"position":6002},{},[5868,5869,5896,5897,5979,5980,6001],{"type":19,"value":57},{"type":14,"tagName":15,"properties":5870,"children":5871,"position":5893},{},[5872,5887],{"type":14,"tagName":29,"properties":5873,"children":5874,"position":5882},{},[5875],{"type":19,"value":5876,"position":5877},"v3.0.0",{"start":5878,"end":5880},{"line":4986,"column":93,"offset":5879},15725,{"line":4986,"column":496,"offset":5881},15731,{"start":5883,"end":5885},{"line":4986,"column":67,"offset":5884},15723,{"line":4986,"column":863,"offset":5886},15733,{"type":19,"value":5888,"position":5889}," — The flexibility release",{"start":5890,"end":5891},{"line":4986,"column":863,"offset":5886},{"line":4986,"column":509,"offset":5892},15759,{"start":5894,"end":5895},{"line":4986,"column":67,"offset":5884},{"line":4986,"column":509,"offset":5892},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5898,"children":5899,"position":5976},{},[5900,5914,5920,5932,5938,5949,5956,5969],{"type":14,"tagName":29,"properties":5901,"children":5902,"position":5909},{},[5903],{"type":19,"value":4380,"position":5904},{"start":5905,"end":5907},{"line":1429,"column":93,"offset":5906},15766,{"line":1429,"column":102,"offset":5908},15775,{"start":5910,"end":5912},{"line":1429,"column":67,"offset":5911},15764,{"line":1429,"column":133,"offset":5913},15777,{"type":19,"value":5915,"position":5916}," · Collections + lambdas, user-defined types, real ",{"start":5917,"end":5918},{"line":1429,"column":133,"offset":5913},{"line":1429,"column":548,"offset":5919},15828,{"type":14,"tagName":142,"properties":5921,"children":5922,"position":5929},{},[5923],{"type":19,"value":812,"position":5924},{"start":5925,"end":5926},{"line":1429,"column":548,"offset":5919},{"line":1429,"column":5927,"offset":5928},71,15832,{"start":5930,"end":5931},{"line":1429,"column":548,"offset":5919},{"line":1429,"column":5927,"offset":5928},{"type":19,"value":5933,"position":5934},", stateful drawing objects with handles, multi-timeframe ",{"start":5935,"end":5936},{"line":1429,"column":5927,"offset":5928},{"line":1429,"column":97,"offset":5937},15889,{"type":14,"tagName":142,"properties":5939,"children":5940,"position":5946},{},[5941],{"type":19,"value":4417,"position":5942},{"start":5943,"end":5944},{"line":1429,"column":97,"offset":5937},{"line":1429,"column":3468,"offset":5945},15896,{"start":5947,"end":5948},{"line":1429,"column":97,"offset":5937},{"line":1429,"column":3468,"offset":5945},{"type":19,"value":5950,"position":5951}," (no-repaint by default), a reference-validated TA library (~40 indicators), value-driven styling, typed inputs (incl. ",{"start":5952,"end":5953},{"line":1429,"column":3468,"offset":5945},{"line":1429,"column":5954,"offset":5955},254,16015,{"type":14,"tagName":142,"properties":5957,"children":5958,"position":5966},{},[5959],{"type":19,"value":5960,"position":5961},"source",{"start":5962,"end":5963},{"line":1429,"column":5954,"offset":5955},{"line":1429,"column":5964,"offset":5965},262,16023,{"start":5967,"end":5968},{"line":1429,"column":5954,"offset":5955},{"line":1429,"column":5964,"offset":5965},{"type":19,"value":5970,"position":5971}," re-targeting), and importable libraries with versioning and hot reload.",{"start":5972,"end":5973},{"line":1429,"column":5964,"offset":5965},{"line":1429,"column":5974,"offset":5975},334,16095,{"start":5977,"end":5978},{"line":1429,"column":67,"offset":5911},{"line":1429,"column":5974,"offset":5975},{"type":19,"value":57},{"type":14,"tagName":15,"properties":5981,"children":5982,"position":5998},{},[5983],{"type":14,"tagName":1943,"properties":5984,"children":5986,"position":5993},{"href":5985},"#v3.0.0-june-2026",[5987],{"type":19,"value":5522,"position":5988},{"start":5989,"end":5991},{"line":5407,"column":68,"offset":5990},16101,{"line":5407,"column":133,"offset":5992},16113,{"start":5994,"end":5996},{"line":5407,"column":67,"offset":5995},16100,{"line":5407,"column":5532,"offset":5997},16133,{"start":5999,"end":6000},{"line":5407,"column":67,"offset":5995},{"line":5407,"column":5532,"offset":5997},{"type":19,"value":57},{"start":6003,"end":6005},{"line":4986,"column":23,"offset":6004},15721,{"line":5407,"column":5532,"offset":5997},{"type":19,"value":57},{"type":14,"tagName":59,"properties":6008,"children":6010,"position":6019},{"id":6009},"all-releases",[6011],{"type":19,"value":6012,"position":6013},"All releases",{"start":6014,"end":6017},{"line":6015,"column":68,"offset":6016},94,16138,{"line":6015,"column":133,"offset":6018},16150,{"start":6020,"end":6022},{"line":6015,"column":23,"offset":6021},16135,{"line":6015,"column":133,"offset":6018},{"type":19,"value":6024},"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",{"type":14,"tagName":6026,"properties":6027,"children":6028,"position":8185},"table",{},[6029,6106],{"type":14,"tagName":6030,"properties":6031,"children":6032,"position":6103},"thead",{},[6033],{"type":14,"tagName":6034,"properties":6035,"children":6036,"position":6100},"tr",{},[6037,6053,6068,6085],{"type":14,"tagName":6038,"properties":6039,"children":6040,"position":6048},"th",{},[6041],{"type":19,"value":6042,"position":6043},"Version",{"start":6044,"end":6046},{"line":52,"column":67,"offset":6045},16154,{"line":52,"column":473,"offset":6047},16161,{"start":6049,"end":6051},{"line":52,"column":23,"offset":6050},16152,{"line":52,"column":5366,"offset":6052},16223,{"type":14,"tagName":6038,"properties":6054,"children":6055,"position":6063},{},[6056],{"type":19,"value":6057,"position":6058},"Date",{"start":6059,"end":6061},{"line":52,"column":2753,"offset":6060},16225,{"line":52,"column":5584,"offset":6062},16229,{"start":6064,"end":6065},{"line":52,"column":5366,"offset":6052},{"line":52,"column":6066,"offset":6067},83,16234,{"type":14,"tagName":6038,"properties":6069,"children":6070,"position":6080},{},[6071],{"type":19,"value":6072,"position":6073},"Highlights",{"start":6074,"end":6077},{"line":52,"column":6075,"offset":6076},85,16236,{"line":52,"column":6078,"offset":6079},95,16246,{"start":6081,"end":6082},{"line":52,"column":6066,"offset":6067},{"line":52,"column":6083,"offset":6084},223,16374,{"type":14,"tagName":6038,"properties":6086,"children":6087,"position":6096},{},[6088],{"type":19,"value":6089,"position":6090},"Breaking changes",{"start":6091,"end":6093},{"line":52,"column":914,"offset":6092},16376,{"line":52,"column":6094,"offset":6095},241,16392,{"start":6097,"end":6098},{"line":52,"column":6083,"offset":6084},{"line":52,"column":1563,"offset":6099},16442,{"start":6101,"end":6102},{"line":52,"column":23,"offset":6050},{"line":52,"column":1563,"offset":6099},{"start":6104,"end":6105},{"line":52,"column":23,"offset":6050},{"line":52,"column":1563,"offset":6099},{"type":14,"tagName":6107,"properties":6108,"children":6109,"position":8182},"tbody",{},[6110,6371,6495,6580,6841,7030,7288,7414,7767,7896,8041],{"type":14,"tagName":6034,"properties":6111,"children":6112,"position":6368},{},[6113,6136,6150,6354],{"type":14,"tagName":6114,"properties":6115,"children":6116,"position":6131},"td",{},[6117],{"type":14,"tagName":29,"properties":6118,"children":6119,"position":6126},{},[6120],{"type":19,"value":90,"position":6121},{"start":6122,"end":6124},{"line":75,"column":93,"offset":6123},16738,{"line":75,"column":96,"offset":6125},16745,{"start":6127,"end":6129},{"line":75,"column":67,"offset":6128},16736,{"line":75,"column":102,"offset":6130},16747,{"start":6132,"end":6134},{"line":75,"column":23,"offset":6133},16734,{"line":75,"column":5366,"offset":6135},16805,{"type":14,"tagName":6114,"properties":6137,"children":6138,"position":6146},{},[6139],{"type":19,"value":6140,"position":6141},"Jul 2026",{"start":6142,"end":6144},{"line":75,"column":2753,"offset":6143},16807,{"line":75,"column":2763,"offset":6145},16815,{"start":6147,"end":6148},{"line":75,"column":5366,"offset":6135},{"line":75,"column":6066,"offset":6149},16816,{"type":14,"tagName":6114,"properties":6151,"children":6152,"position":6350},{},[6153,6161,6172,6178,6189,6195,6206,6212,6224,6229,6240,6247,6258,6263,6274,6280,6291,6296,6307,6313,6325,6331,6344],{"type":19,"value":6154,"position":6155},"Foreign-domain panes (",{"start":6156,"end":6158},{"line":75,"column":6075,"offset":6157},16818,{"line":75,"column":6159,"offset":6160},107,16840,{"type":14,"tagName":142,"properties":6162,"children":6163,"position":6169},{},[6164],{"type":19,"value":505,"position":6165},{"start":6166,"end":6167},{"line":75,"column":6159,"offset":6160},{"line":75,"column":100,"offset":6168},16852,{"start":6170,"end":6171},{"line":75,"column":6159,"offset":6160},{"line":75,"column":100,"offset":6168},{"type":19,"value":4013,"position":6173},{"start":6174,"end":6175},{"line":75,"column":100,"offset":6168},{"line":75,"column":6176,"offset":6177},120,16853,{"type":14,"tagName":142,"properties":6179,"children":6180,"position":6186},{},[6181],{"type":19,"value":525,"position":6182},{"start":6183,"end":6184},{"line":75,"column":6176,"offset":6177},{"line":75,"column":3075,"offset":6185},16864,{"start":6187,"end":6188},{"line":75,"column":6176,"offset":6177},{"line":75,"column":3075,"offset":6185},{"type":19,"value":4013,"position":6190},{"start":6191,"end":6192},{"line":75,"column":3075,"offset":6185},{"line":75,"column":6193,"offset":6194},132,16865,{"type":14,"tagName":142,"properties":6196,"children":6197,"position":6203},{},[6198],{"type":19,"value":544,"position":6199},{"start":6200,"end":6201},{"line":75,"column":6193,"offset":6194},{"line":75,"column":3085,"offset":6202},16876,{"start":6204,"end":6205},{"line":75,"column":6193,"offset":6194},{"line":75,"column":3085,"offset":6202},{"type":19,"value":6207,"position":6208}," incl. computed text tiles, ",{"start":6209,"end":6210},{"line":75,"column":3085,"offset":6202},{"line":75,"column":746,"offset":6211},16904,{"type":14,"tagName":142,"properties":6213,"children":6214,"position":6221},{},[6215],{"type":19,"value":250,"position":6216},{"start":6217,"end":6218},{"line":75,"column":746,"offset":6211},{"line":75,"column":6219,"offset":6220},184,16917,{"start":6222,"end":6223},{"line":75,"column":746,"offset":6211},{"line":75,"column":6219,"offset":6220},{"type":19,"value":260,"position":6225},{"start":6226,"end":6227},{"line":75,"column":6219,"offset":6220},{"line":75,"column":4565,"offset":6228},16919,{"type":14,"tagName":142,"properties":6230,"children":6231,"position":6237},{},[6232],{"type":19,"value":270,"position":6233},{"start":6234,"end":6235},{"line":75,"column":4565,"offset":6228},{"line":75,"column":1523,"offset":6236},16937,{"start":6238,"end":6239},{"line":75,"column":4565,"offset":6228},{"line":75,"column":1523,"offset":6236},{"type":19,"value":6241,"position":6242},", source-validated caps), perps strategy mode (isolated margin, maker/taker fees, funding, liquidation + new stats), tape sources (",{"start":6243,"end":6244},{"line":75,"column":1523,"offset":6236},{"line":75,"column":6245,"offset":6246},335,17068,{"type":14,"tagName":142,"properties":6248,"children":6249,"position":6255},{},[6250],{"type":19,"value":377,"position":6251},{"start":6252,"end":6253},{"line":75,"column":6245,"offset":6246},{"line":75,"column":2936,"offset":6254},17076,{"start":6256,"end":6257},{"line":75,"column":6245,"offset":6246},{"line":75,"column":2936,"offset":6254},{"type":19,"value":260,"position":6259},{"start":6260,"end":6261},{"line":75,"column":2936,"offset":6254},{"line":75,"column":3104,"offset":6262},17078,{"type":14,"tagName":142,"properties":6264,"children":6265,"position":6271},{},[6266],{"type":19,"value":396,"position":6267},{"start":6268,"end":6269},{"line":75,"column":3104,"offset":6262},{"line":75,"column":1167,"offset":6270},17100,{"start":6272,"end":6273},{"line":75,"column":3104,"offset":6262},{"line":75,"column":1167,"offset":6270},{"type":19,"value":260,"position":6275},{"start":6276,"end":6277},{"line":75,"column":1167,"offset":6270},{"line":75,"column":6278,"offset":6279},369,17102,{"type":14,"tagName":142,"properties":6281,"children":6282,"position":6288},{},[6283],{"type":19,"value":2240,"position":6284},{"start":6285,"end":6286},{"line":75,"column":6278,"offset":6279},{"line":75,"column":4718,"offset":6287},17119,{"start":6289,"end":6290},{"line":75,"column":6278,"offset":6279},{"line":75,"column":4718,"offset":6287},{"type":19,"value":2119,"position":6292},{"start":6293,"end":6294},{"line":75,"column":4718,"offset":6287},{"line":75,"column":170,"offset":6295},17120,{"type":14,"tagName":142,"properties":6297,"children":6298,"position":6304},{},[6299],{"type":19,"value":2261,"position":6300},{"start":6301,"end":6302},{"line":75,"column":170,"offset":6295},{"line":75,"column":1020,"offset":6303},17130,{"start":6305,"end":6306},{"line":75,"column":170,"offset":6295},{"line":75,"column":1020,"offset":6303},{"type":19,"value":6308,"position":6309},"), ",{"start":6310,"end":6311},{"line":75,"column":1020,"offset":6303},{"line":75,"column":3608,"offset":6312},17133,{"type":14,"tagName":142,"properties":6314,"children":6315,"position":6322},{},[6316],{"type":19,"value":6317,"position":6318},"plotHistogram",{"start":6319,"end":6320},{"line":75,"column":3608,"offset":6312},{"line":75,"column":4747,"offset":6321},17148,{"start":6323,"end":6324},{"line":75,"column":3608,"offset":6312},{"line":75,"column":4747,"offset":6321},{"type":19,"value":260,"position":6326},{"start":6327,"end":6328},{"line":75,"column":4747,"offset":6321},{"line":75,"column":6329,"offset":6330},417,17150,{"type":14,"tagName":142,"properties":6332,"children":6333,"position":6341},{},[6334],{"type":19,"value":6335,"position":6336},"array.sort",{"start":6337,"end":6338},{"line":75,"column":6329,"offset":6330},{"line":75,"column":6339,"offset":6340},429,17162,{"start":6342,"end":6343},{"line":75,"column":6329,"offset":6330},{"line":75,"column":6339,"offset":6340},{"type":19,"value":6345,"position":6346}," comparator, human import diagnostic (rolls up 3.0.62–3.0.66)",{"start":6347,"end":6348},{"line":75,"column":6339,"offset":6340},{"line":75,"column":2123,"offset":6349},17223,{"start":6351,"end":6352},{"line":75,"column":6066,"offset":6149},{"line":75,"column":225,"offset":6353},17224,{"type":14,"tagName":6114,"properties":6355,"children":6356,"position":6364},{},[6357],{"type":19,"value":6358,"position":6359},"None (additive)",{"start":6360,"end":6362},{"line":75,"column":2686,"offset":6361},17226,{"line":75,"column":2152,"offset":6363},17241,{"start":6365,"end":6366},{"line":75,"column":225,"offset":6353},{"line":75,"column":3129,"offset":6367},17243,{"start":6369,"end":6370},{"line":75,"column":23,"offset":6133},{"line":75,"column":3129,"offset":6367},{"type":14,"tagName":6034,"properties":6372,"children":6373,"position":6492},{},[6374,6396,6409,6477],{"type":14,"tagName":6114,"properties":6375,"children":6376,"position":6391},{},[6377],{"type":14,"tagName":29,"properties":6378,"children":6379,"position":6386},{},[6380],{"type":19,"value":2997,"position":6381},{"start":6382,"end":6384},{"line":3057,"column":93,"offset":6383},17248,{"line":3057,"column":96,"offset":6385},17255,{"start":6387,"end":6389},{"line":3057,"column":67,"offset":6388},17246,{"line":3057,"column":102,"offset":6390},17257,{"start":6392,"end":6394},{"line":3057,"column":23,"offset":6393},17244,{"line":3057,"column":5366,"offset":6395},17315,{"type":14,"tagName":6114,"properties":6397,"children":6398,"position":6405},{},[6399],{"type":19,"value":6140,"position":6400},{"start":6401,"end":6403},{"line":3057,"column":2753,"offset":6402},17317,{"line":3057,"column":2763,"offset":6404},17325,{"start":6406,"end":6407},{"line":3057,"column":5366,"offset":6395},{"line":3057,"column":6066,"offset":6408},17326,{"type":14,"tagName":6114,"properties":6410,"children":6411,"position":6472},{},[6412,6419,6430,6436,6447,6454,6465],{"type":19,"value":6413,"position":6414},"Strategy backtesting framework: ",{"start":6415,"end":6417},{"line":3057,"column":6075,"offset":6416},17328,{"line":3057,"column":458,"offset":6418},17360,{"type":14,"tagName":142,"properties":6420,"children":6421,"position":6427},{},[6422],{"type":19,"value":1405,"position":6423},{"start":6424,"end":6425},{"line":3057,"column":458,"offset":6418},{"line":3057,"column":6193,"offset":6426},17375,{"start":6428,"end":6429},{"line":3057,"column":458,"offset":6418},{"line":3057,"column":6193,"offset":6426},{"type":19,"value":6431,"position":6432}," headers, ",{"start":6433,"end":6434},{"line":3057,"column":6193,"offset":6426},{"line":3057,"column":1477,"offset":6435},17385,{"type":14,"tagName":142,"properties":6437,"children":6438,"position":6444},{},[6439],{"type":19,"value":3081,"position":6440},{"start":6441,"end":6442},{"line":3057,"column":1477,"offset":6435},{"line":3057,"column":904,"offset":6443},17397,{"start":6445,"end":6446},{"line":3057,"column":1477,"offset":6435},{"line":3057,"column":904,"offset":6443},{"type":19,"value":6448,"position":6449}," orders, deterministic lookahead-free broker emulator, ",{"start":6450,"end":6451},{"line":3057,"column":904,"offset":6443},{"line":3057,"column":6452,"offset":6453},209,17452,{"type":14,"tagName":142,"properties":6455,"children":6456,"position":6462},{},[6457],{"type":19,"value":1867,"position":6458},{"start":6459,"end":6460},{"line":3057,"column":6452,"offset":6453},{"line":3057,"column":1302,"offset":6461},17469,{"start":6463,"end":6464},{"line":3057,"column":6452,"offset":6453},{"line":3057,"column":1302,"offset":6461},{"type":19,"value":6466,"position":6467}," trades/equity/stats",{"start":6468,"end":6469},{"line":3057,"column":1302,"offset":6461},{"line":3057,"column":6470,"offset":6471},246,17489,{"start":6473,"end":6474},{"line":3057,"column":6066,"offset":6408},{"line":3057,"column":6475,"offset":6476},247,17490,{"type":14,"tagName":6114,"properties":6478,"children":6479,"position":6488},{},[6480],{"type":19,"value":6358,"position":6481},{"start":6482,"end":6485},{"line":3057,"column":6483,"offset":6484},249,17492,{"line":3057,"column":6486,"offset":6487},264,17507,{"start":6489,"end":6490},{"line":3057,"column":6475,"offset":6476},{"line":3057,"column":4104,"offset":6491},17509,{"start":6493,"end":6494},{"line":3057,"column":23,"offset":6393},{"line":3057,"column":4104,"offset":6491},{"type":14,"tagName":6034,"properties":6496,"children":6497,"position":6577},{},[6498,6521,6534,6562],{"type":14,"tagName":6114,"properties":6499,"children":6500,"position":6516},{},[6501],{"type":14,"tagName":29,"properties":6502,"children":6503,"position":6511},{},[6504],{"type":19,"value":3158,"position":6505},{"start":6506,"end":6509},{"line":6507,"column":93,"offset":6508},100,17514,{"line":6507,"column":96,"offset":6510},17521,{"start":6512,"end":6514},{"line":6507,"column":67,"offset":6513},17512,{"line":6507,"column":102,"offset":6515},17523,{"start":6517,"end":6519},{"line":6507,"column":23,"offset":6518},17510,{"line":6507,"column":5366,"offset":6520},17581,{"type":14,"tagName":6114,"properties":6522,"children":6523,"position":6530},{},[6524],{"type":19,"value":6140,"position":6525},{"start":6526,"end":6528},{"line":6507,"column":2753,"offset":6527},17583,{"line":6507,"column":2763,"offset":6529},17591,{"start":6531,"end":6532},{"line":6507,"column":5366,"offset":6520},{"line":6507,"column":6066,"offset":6533},17592,{"type":14,"tagName":6114,"properties":6535,"children":6536,"position":6557},{},[6537,6550],{"type":14,"tagName":142,"properties":6538,"children":6539,"position":6547},{},[6540],{"type":19,"value":6541,"position":6542},"plotStatRow",{"start":6543,"end":6545},{"line":6507,"column":6075,"offset":6544},17594,{"line":6507,"column":75,"offset":6546},17607,{"start":6548,"end":6549},{"line":6507,"column":6075,"offset":6544},{"line":6507,"column":75,"offset":6546},{"type":19,"value":6551,"position":6552}," per-bar statistics strip rows, sparse flow-source zero alignment, canonical registry release for the 3.0.52/3.0.53 work",{"start":6553,"end":6554},{"line":6507,"column":75,"offset":6546},{"line":6507,"column":6555,"offset":6556},218,17727,{"start":6558,"end":6559},{"line":6507,"column":6066,"offset":6533},{"line":6507,"column":6560,"offset":6561},219,17728,{"type":14,"tagName":6114,"properties":6563,"children":6564,"position":6573},{},[6565],{"type":19,"value":6566,"position":6567},"None",{"start":6568,"end":6571},{"line":6507,"column":6569,"offset":6570},221,17730,{"line":6507,"column":914,"offset":6572},17734,{"start":6574,"end":6575},{"line":6507,"column":6560,"offset":6561},{"line":6507,"column":2055,"offset":6576},17736,{"start":6578,"end":6579},{"line":6507,"column":23,"offset":6518},{"line":6507,"column":2055,"offset":6576},{"type":14,"tagName":6034,"properties":6581,"children":6582,"position":6838},{},[6583,6605,6618,6824],{"type":14,"tagName":6114,"properties":6584,"children":6585,"position":6600},{},[6586],{"type":14,"tagName":29,"properties":6587,"children":6588,"position":6595},{},[6589],{"type":19,"value":3490,"position":6590},{"start":6591,"end":6593},{"line":69,"column":93,"offset":6592},17741,{"line":69,"column":96,"offset":6594},17748,{"start":6596,"end":6598},{"line":69,"column":67,"offset":6597},17739,{"line":69,"column":102,"offset":6599},17750,{"start":6601,"end":6603},{"line":69,"column":23,"offset":6602},17737,{"line":69,"column":5366,"offset":6604},17808,{"type":14,"tagName":6114,"properties":6606,"children":6607,"position":6614},{},[6608],{"type":19,"value":6140,"position":6609},{"start":6610,"end":6612},{"line":69,"column":2753,"offset":6611},17810,{"line":69,"column":2763,"offset":6613},17818,{"start":6615,"end":6616},{"line":69,"column":5366,"offset":6604},{"line":69,"column":6066,"offset":6617},17819,{"type":14,"tagName":6114,"properties":6619,"children":6620,"position":6819},{},[6621,6629,6641,6646,6657,6662,6673,6679,6691,6696,6707,6713,6725,6730,6741,6747,6759,6764,6776,6782,6795,6800,6812],{"type":19,"value":6622,"position":6623},"Viewport mini-chart grids (",{"start":6624,"end":6626},{"line":69,"column":6075,"offset":6625},17821,{"line":69,"column":6627,"offset":6628},112,17848,{"type":14,"tagName":142,"properties":6630,"children":6631,"position":6638},{},[6632],{"type":19,"value":6633,"position":6634},"plotMiniChartGrid",{"start":6635,"end":6636},{"line":69,"column":6627,"offset":6628},{"line":69,"column":3075,"offset":6637},17867,{"start":6639,"end":6640},{"line":69,"column":6627,"offset":6628},{"line":69,"column":3075,"offset":6637},{"type":19,"value":2099,"position":6642},{"start":6643,"end":6644},{"line":69,"column":3075,"offset":6637},{"line":69,"column":2608,"offset":6645},17873,{"type":14,"tagName":142,"properties":6647,"children":6648,"position":6654},{},[6649],{"type":19,"value":3638,"position":6650},{"start":6651,"end":6652},{"line":69,"column":2608,"offset":6645},{"line":69,"column":895,"offset":6653},17886,{"start":6655,"end":6656},{"line":69,"column":2608,"offset":6645},{"line":69,"column":895,"offset":6653},{"type":19,"value":4013,"position":6658},{"start":6659,"end":6660},{"line":69,"column":895,"offset":6653},{"line":69,"column":4538,"offset":6661},17887,{"type":14,"tagName":142,"properties":6663,"children":6664,"position":6670},{},[6665],{"type":19,"value":3681,"position":6666},{"start":6667,"end":6668},{"line":69,"column":4538,"offset":6661},{"line":69,"column":3232,"offset":6669},17899,{"start":6671,"end":6672},{"line":69,"column":4538,"offset":6661},{"line":69,"column":3232,"offset":6669},{"type":19,"value":4013,"position":6674},{"start":6675,"end":6676},{"line":69,"column":3232,"offset":6669},{"line":69,"column":6677,"offset":6678},164,17900,{"type":14,"tagName":142,"properties":6680,"children":6681,"position":6688},{},[6682],{"type":19,"value":3724,"position":6683},{"start":6684,"end":6685},{"line":69,"column":6677,"offset":6678},{"line":69,"column":6686,"offset":6687},176,17912,{"start":6689,"end":6690},{"line":69,"column":6677,"offset":6678},{"line":69,"column":6686,"offset":6687},{"type":19,"value":6308,"position":6692},{"start":6693,"end":6694},{"line":69,"column":6686,"offset":6687},{"line":69,"column":5436,"offset":6695},17915,{"type":14,"tagName":142,"properties":6697,"children":6698,"position":6704},{},[6699],{"type":19,"value":3744,"position":6700},{"start":6701,"end":6702},{"line":69,"column":5436,"offset":6695},{"line":69,"column":126,"offset":6703},17928,{"start":6705,"end":6706},{"line":69,"column":5436,"offset":6695},{"line":69,"column":126,"offset":6703},{"type":19,"value":2119,"position":6708},{"start":6709,"end":6710},{"line":69,"column":126,"offset":6703},{"line":69,"column":6711,"offset":6712},193,17929,{"type":14,"tagName":142,"properties":6714,"children":6715,"position":6722},{},[6716],{"type":19,"value":6717,"position":6718},"anchor: \"latest\"",{"start":6719,"end":6720},{"line":69,"column":6711,"offset":6712},{"line":69,"column":4600,"offset":6721},17947,{"start":6723,"end":6724},{"line":69,"column":6711,"offset":6712},{"line":69,"column":4600,"offset":6721},{"type":19,"value":4013,"position":6726},{"start":6727,"end":6728},{"line":69,"column":4600,"offset":6721},{"line":69,"column":4077,"offset":6729},17948,{"type":14,"tagName":142,"properties":6731,"children":6732,"position":6738},{},[6733],{"type":19,"value":4179,"position":6734},{"start":6735,"end":6736},{"line":69,"column":4077,"offset":6729},{"line":69,"column":177,"offset":6737},17958,{"start":6739,"end":6740},{"line":69,"column":4077,"offset":6729},{"line":69,"column":177,"offset":6737},{"type":19,"value":6742,"position":6743},", composed intervals (",{"start":6744,"end":6745},{"line":69,"column":177,"offset":6737},{"line":69,"column":806,"offset":6746},17980,{"type":14,"tagName":142,"properties":6748,"children":6749,"position":6756},{},[6750],{"type":19,"value":6751,"position":6752},"2h",{"start":6753,"end":6754},{"line":69,"column":806,"offset":6746},{"line":69,"column":816,"offset":6755},17984,{"start":6757,"end":6758},{"line":69,"column":806,"offset":6746},{"line":69,"column":816,"offset":6755},{"type":19,"value":260,"position":6760},{"start":6761,"end":6762},{"line":69,"column":816,"offset":6755},{"line":69,"column":573,"offset":6763},17986,{"type":14,"tagName":142,"properties":6765,"children":6766,"position":6773},{},[6767],{"type":19,"value":6768,"position":6769},"3h",{"start":6770,"end":6771},{"line":69,"column":573,"offset":6763},{"line":69,"column":5954,"offset":6772},17990,{"start":6774,"end":6775},{"line":69,"column":573,"offset":6763},{"line":69,"column":5954,"offset":6772},{"type":19,"value":260,"position":6777},{"start":6778,"end":6779},{"line":69,"column":5954,"offset":6772},{"line":69,"column":6780,"offset":6781},256,17992,{"type":14,"tagName":142,"properties":6783,"children":6784,"position":6792},{},[6785],{"type":19,"value":6786,"position":6787},"12h",{"start":6788,"end":6789},{"line":69,"column":6780,"offset":6781},{"line":69,"column":6790,"offset":6791},261,17997,{"start":6793,"end":6794},{"line":69,"column":6780,"offset":6781},{"line":69,"column":6790,"offset":6791},{"type":19,"value":260,"position":6796},{"start":6797,"end":6798},{"line":69,"column":6790,"offset":6791},{"line":69,"column":1129,"offset":6799},17999,{"type":14,"tagName":142,"properties":6801,"children":6802,"position":6809},{},[6803],{"type":19,"value":6804,"position":6805},"2d",{"start":6806,"end":6807},{"line":69,"column":1129,"offset":6799},{"line":69,"column":4112,"offset":6808},18003,{"start":6810,"end":6811},{"line":69,"column":1129,"offset":6799},{"line":69,"column":4112,"offset":6808},{"type":19,"value":6813,"position":6814},")",{"start":6815,"end":6816},{"line":69,"column":4112,"offset":6808},{"line":69,"column":6817,"offset":6818},268,18004,{"start":6820,"end":6821},{"line":69,"column":6066,"offset":6617},{"line":69,"column":6822,"offset":6823},269,18005,{"type":14,"tagName":6114,"properties":6825,"children":6826,"position":6834},{},[6827],{"type":19,"value":6828,"position":6829},"None (additive; omitted options render identically)",{"start":6830,"end":6832},{"line":69,"column":2618,"offset":6831},18007,{"line":69,"column":846,"offset":6833},18058,{"start":6835,"end":6836},{"line":69,"column":6822,"offset":6823},{"line":69,"column":4192,"offset":6837},18060,{"start":6839,"end":6840},{"line":69,"column":23,"offset":6602},{"line":69,"column":4192,"offset":6837},{"type":14,"tagName":6034,"properties":6842,"children":6843,"position":7027},{},[6844,6877,6891,7012],{"type":14,"tagName":6114,"properties":6845,"children":6846,"position":6872},{},[6847],{"type":14,"tagName":1943,"properties":6848,"children":6850,"position":6867},{"href":6849},"/kscript/releases/changelog#v3.0.7-june-2026",[6851],{"type":14,"tagName":29,"properties":6852,"children":6853,"position":6862},{},[6854],{"type":19,"value":5554,"position":6855},{"start":6856,"end":6860},{"line":6857,"column":6858,"offset":6859},102,6,18066,{"line":6857,"column":96,"offset":6861},18072,{"start":6863,"end":6865},{"line":6857,"column":68,"offset":6864},18064,{"line":6857,"column":102,"offset":6866},18074,{"start":6868,"end":6870},{"line":6857,"column":67,"offset":6869},18063,{"line":6857,"column":1419,"offset":6871},18121,{"start":6873,"end":6875},{"line":6857,"column":23,"offset":6874},18061,{"line":6857,"column":5927,"offset":6876},18131,{"type":14,"tagName":6114,"properties":6878,"children":6879,"position":6887},{},[6880],{"type":19,"value":6881,"position":6882},"Jun 2026",{"start":6883,"end":6885},{"line":6857,"column":1261,"offset":6884},18133,{"line":6857,"column":5795,"offset":6886},18141,{"start":6888,"end":6889},{"line":6857,"column":5927,"offset":6876},{"line":6857,"column":2763,"offset":6890},18142,{"type":14,"tagName":6114,"properties":6892,"children":6893,"position":7008},{},[6894,6901,6913,6919,6930,6936,6947,6953,6965,6971,6982,6989,7001],{"type":19,"value":6895,"position":6896},"v2 compatibility hardening: ",{"start":6897,"end":6899},{"line":6857,"column":4320,"offset":6898},18144,{"line":6857,"column":6627,"offset":6900},18172,{"type":14,"tagName":142,"properties":6902,"children":6903,"position":6910},{},[6904],{"type":19,"value":5620,"position":6905},{"start":6906,"end":6907},{"line":6857,"column":6627,"offset":6900},{"line":6857,"column":6908,"offset":6909},122,18182,{"start":6911,"end":6912},{"line":6857,"column":6627,"offset":6900},{"line":6857,"column":6908,"offset":6909},{"type":19,"value":4013,"position":6914},{"start":6915,"end":6916},{"line":6857,"column":6908,"offset":6909},{"line":6857,"column":6917,"offset":6918},123,18183,{"type":14,"tagName":142,"properties":6920,"children":6921,"position":6927},{},[6922],{"type":19,"value":5639,"position":6923},{"start":6924,"end":6925},{"line":6857,"column":6917,"offset":6918},{"line":6857,"column":5822,"offset":6926},18194,{"start":6928,"end":6929},{"line":6857,"column":6917,"offset":6918},{"line":6857,"column":5822,"offset":6926},{"type":19,"value":6931,"position":6932}," enum synonyms restored (case-insensitive, ",{"start":6933,"end":6934},{"line":6857,"column":5822,"offset":6926},{"line":6857,"column":3389,"offset":6935},18237,{"type":14,"tagName":142,"properties":6937,"children":6938,"position":6944},{},[6939],{"type":19,"value":5658,"position":6940},{"start":6941,"end":6942},{"line":6857,"column":3389,"offset":6935},{"line":6857,"column":2428,"offset":6943},18243,{"start":6945,"end":6946},{"line":6857,"column":3389,"offset":6935},{"line":6857,"column":2428,"offset":6943},{"type":19,"value":6948,"position":6949}," maps to ",{"start":6950,"end":6951},{"line":6857,"column":2428,"offset":6943},{"line":6857,"column":126,"offset":6952},18252,{"type":14,"tagName":142,"properties":6954,"children":6955,"position":6962},{},[6956],{"type":19,"value":6957,"position":6958},"diamond",{"start":6959,"end":6960},{"line":6857,"column":126,"offset":6952},{"line":6857,"column":128,"offset":6961},18261,{"start":6963,"end":6964},{"line":6857,"column":126,"offset":6952},{"line":6857,"column":128,"offset":6961},{"type":19,"value":6966,"position":6967},"), bare ",{"start":6968,"end":6969},{"line":6857,"column":128,"offset":6961},{"line":6857,"column":6452,"offset":6970},18269,{"type":14,"tagName":142,"properties":6972,"children":6973,"position":6979},{},[6974],{"type":19,"value":5676,"position":6975},{"start":6976,"end":6977},{"line":6857,"column":6452,"offset":6970},{"line":6857,"column":4086,"offset":6978},18274,{"start":6980,"end":6981},{"line":6857,"column":6452,"offset":6970},{"line":6857,"column":4086,"offset":6978},{"type":19,"value":6983,"position":6984}," accepted as an alias of ",{"start":6985,"end":6986},{"line":6857,"column":4086,"offset":6978},{"line":6857,"column":6987,"offset":6988},239,18299,{"type":14,"tagName":142,"properties":6990,"children":6991,"position":6998},{},[6992],{"type":19,"value":812,"position":6993},{"start":6994,"end":6995},{"line":6857,"column":6987,"offset":6988},{"line":6857,"column":6996,"offset":6997},243,18303,{"start":6999,"end":7000},{"line":6857,"column":6987,"offset":6988},{"line":6857,"column":6996,"offset":6997},{"type":19,"value":7002,"position":7003},", runtime source budget raised 8 → 20, output-object ceiling raised 20,000 → 50,000",{"start":7004,"end":7005},{"line":6857,"column":6996,"offset":6997},{"line":6857,"column":7006,"offset":7007},326,18386,{"start":7009,"end":7010},{"line":6857,"column":2763,"offset":6890},{"line":6857,"column":3588,"offset":7011},18387,{"type":14,"tagName":6114,"properties":7013,"children":7014,"position":7023},{},[7015],{"type":19,"value":7016,"position":7017},"None (strictly widening)",{"start":7018,"end":7020},{"line":6857,"column":983,"offset":7019},18389,{"line":6857,"column":7021,"offset":7022},353,18413,{"start":7024,"end":7025},{"line":6857,"column":3588,"offset":7011},{"line":6857,"column":2782,"offset":7026},18415,{"start":7028,"end":7029},{"line":6857,"column":23,"offset":6874},{"line":6857,"column":2782,"offset":7026},{"type":14,"tagName":6034,"properties":7031,"children":7032,"position":7285},{},[7033,7065,7078,7250],{"type":14,"tagName":6114,"properties":7034,"children":7035,"position":7060},{},[7036],{"type":14,"tagName":1943,"properties":7037,"children":7039,"position":7055},{"href":7038},"/kscript/releases/changelog#v3.2.0-june-2026",[7040],{"type":14,"tagName":29,"properties":7041,"children":7042,"position":7050},{},[7043],{"type":19,"value":5335,"position":7044},{"start":7045,"end":7048},{"line":7046,"column":6858,"offset":7047},103,18421,{"line":7046,"column":96,"offset":7049},18427,{"start":7051,"end":7053},{"line":7046,"column":68,"offset":7052},18419,{"line":7046,"column":102,"offset":7054},18429,{"start":7056,"end":7058},{"line":7046,"column":67,"offset":7057},18418,{"line":7046,"column":1419,"offset":7059},18476,{"start":7061,"end":7063},{"line":7046,"column":23,"offset":7062},18416,{"line":7046,"column":5927,"offset":7064},18486,{"type":14,"tagName":6114,"properties":7066,"children":7067,"position":7074},{},[7068],{"type":19,"value":6881,"position":7069},{"start":7070,"end":7072},{"line":7046,"column":1261,"offset":7071},18488,{"line":7046,"column":5795,"offset":7073},18496,{"start":7075,"end":7076},{"line":7046,"column":5927,"offset":7064},{"line":7046,"column":2763,"offset":7077},18497,{"type":14,"tagName":6114,"properties":7079,"children":7080,"position":7246},{},[7081,7088,7100,7105,7117,7122,7134,7139,7152,7158,7170,7176,7187,7194,7205,7210,7221,7227,7239],{"type":19,"value":7082,"position":7083},"Named streams on multi-output TA (",{"start":7084,"end":7086},{"line":7046,"column":4320,"offset":7085},18499,{"line":7046,"column":3979,"offset":7087},18533,{"type":14,"tagName":142,"properties":7089,"children":7090,"position":7097},{},[7091],{"type":19,"value":7092,"position":7093},".upper",{"start":7094,"end":7095},{"line":7046,"column":3979,"offset":7087},{"line":7046,"column":5624,"offset":7096},18541,{"start":7098,"end":7099},{"line":7046,"column":3979,"offset":7087},{"line":7046,"column":5624,"offset":7096},{"type":19,"value":4013,"position":7101},{"start":7102,"end":7103},{"line":7046,"column":5624,"offset":7096},{"line":7046,"column":885,"offset":7104},18542,{"type":14,"tagName":142,"properties":7106,"children":7107,"position":7114},{},[7108],{"type":19,"value":7109,"position":7110},".signal",{"start":7111,"end":7112},{"line":7046,"column":885,"offset":7104},{"line":7046,"column":716,"offset":7113},18551,{"start":7115,"end":7116},{"line":7046,"column":885,"offset":7104},{"line":7046,"column":716,"offset":7113},{"type":19,"value":4013,"position":7118},{"start":7119,"end":7120},{"line":7046,"column":716,"offset":7113},{"line":7046,"column":2608,"offset":7121},18552,{"type":14,"tagName":142,"properties":7123,"children":7124,"position":7131},{},[7125],{"type":19,"value":7126,"position":7127},".k",{"start":7128,"end":7129},{"line":7046,"column":2608,"offset":7121},{"line":7046,"column":4007,"offset":7130},18556,{"start":7132,"end":7133},{"line":7046,"column":2608,"offset":7121},{"line":7046,"column":4007,"offset":7130},{"type":19,"value":4013,"position":7135},{"start":7136,"end":7137},{"line":7046,"column":4007,"offset":7130},{"line":7046,"column":1477,"offset":7138},18557,{"type":14,"tagName":142,"properties":7140,"children":7141,"position":7149},{},[7142],{"type":19,"value":7143,"position":7144},".line",{"start":7145,"end":7146},{"line":7046,"column":1477,"offset":7138},{"line":7046,"column":7147,"offset":7148},149,18564,{"start":7150,"end":7151},{"line":7046,"column":1477,"offset":7138},{"line":7046,"column":7147,"offset":7148},{"type":19,"value":7153,"position":7154}," + history indexing), ",{"start":7155,"end":7156},{"line":7046,"column":7147,"offset":7148},{"line":7046,"column":746,"offset":7157},18586,{"type":14,"tagName":142,"properties":7159,"children":7160,"position":7167},{},[7161],{"type":19,"value":7162,"position":7163},"vwap(anchor)",{"start":7164,"end":7165},{"line":7046,"column":746,"offset":7157},{"line":7046,"column":110,"offset":7166},18600,{"start":7168,"end":7169},{"line":7046,"column":746,"offset":7157},{"line":7046,"column":110,"offset":7166},{"type":19,"value":7171,"position":7172}," calendar sessions, struct methods (",{"start":7173,"end":7174},{"line":7046,"column":110,"offset":7166},{"line":7046,"column":6569,"offset":7175},18636,{"type":14,"tagName":142,"properties":7177,"children":7178,"position":7184},{},[7179],{"type":19,"value":5459,"position":7180},{"start":7181,"end":7182},{"line":7046,"column":6569,"offset":7175},{"line":7046,"column":2055,"offset":7183},18642,{"start":7185,"end":7186},{"line":7046,"column":6569,"offset":7175},{"line":7046,"column":2055,"offset":7183},{"type":19,"value":7188,"position":7189}," + ",{"start":7190,"end":7191},{"line":7046,"column":2055,"offset":7183},{"line":7046,"column":7192,"offset":7193},230,18645,{"type":14,"tagName":142,"properties":7195,"children":7196,"position":7202},{},[7197],{"type":19,"value":5496,"position":7198},{"start":7199,"end":7200},{"line":7046,"column":7192,"offset":7193},{"line":7046,"column":151,"offset":7201},18651,{"start":7203,"end":7204},{"line":7046,"column":7192,"offset":7193},{"line":7046,"column":151,"offset":7201},{"type":19,"value":5468,"position":7206},{"start":7207,"end":7208},{"line":7046,"column":151,"offset":7201},{"line":7046,"column":5026,"offset":7209},18655,{"type":14,"tagName":142,"properties":7211,"children":7212,"position":7218},{},[7213],{"type":19,"value":5477,"position":7214},{"start":7215,"end":7216},{"line":7046,"column":5026,"offset":7209},{"line":7046,"column":6470,"offset":7217},18661,{"start":7219,"end":7220},{"line":7046,"column":5026,"offset":7209},{"line":7046,"column":6470,"offset":7217},{"type":19,"value":7222,"position":7223}," blocks), ",{"start":7224,"end":7225},{"line":7046,"column":6470,"offset":7217},{"line":7046,"column":6780,"offset":7226},18671,{"type":14,"tagName":142,"properties":7228,"children":7229,"position":7236},{},[7230],{"type":19,"value":7231,"position":7232},"fillBetween",{"start":7233,"end":7234},{"line":7046,"column":6780,"offset":7226},{"line":7046,"column":6822,"offset":7235},18684,{"start":7237,"end":7238},{"line":7046,"column":6780,"offset":7226},{"line":7046,"column":6822,"offset":7235},{"type":19,"value":7240,"position":7241}," works end to end on named streams",{"start":7242,"end":7243},{"line":7046,"column":6822,"offset":7235},{"line":7046,"column":7244,"offset":7245},303,18718,{"start":7247,"end":7248},{"line":7046,"column":2763,"offset":7077},{"line":7046,"column":224,"offset":7249},18719,{"type":14,"tagName":6114,"properties":7251,"children":7252,"position":7280},{},[7253,7261,7274],{"type":19,"value":7254,"position":7255},"None (additive; unanchored ",{"start":7256,"end":7259},{"line":7046,"column":7257,"offset":7258},306,18721,{"line":7046,"column":1148,"offset":7260},18748,{"type":14,"tagName":142,"properties":7262,"children":7263,"position":7271},{},[7264],{"type":19,"value":7265,"position":7266},"vwap()",{"start":7267,"end":7268},{"line":7046,"column":1148,"offset":7260},{"line":7046,"column":7269,"offset":7270},341,18756,{"start":7272,"end":7273},{"line":7046,"column":1148,"offset":7260},{"line":7046,"column":7269,"offset":7270},{"type":19,"value":7275,"position":7276}," and positional access unchanged)",{"start":7277,"end":7278},{"line":7046,"column":7269,"offset":7270},{"line":7046,"column":1177,"offset":7279},18789,{"start":7281,"end":7282},{"line":7046,"column":224,"offset":7249},{"line":7046,"column":7283,"offset":7284},376,18791,{"start":7286,"end":7287},{"line":7046,"column":23,"offset":7062},{"line":7046,"column":7283,"offset":7284},{"type":14,"tagName":6034,"properties":7289,"children":7290,"position":7411},{},[7291,7322,7335,7378],{"type":14,"tagName":6114,"properties":7292,"children":7293,"position":7317},{},[7294],{"type":14,"tagName":1943,"properties":7295,"children":7297,"position":7312},{"href":7296},"/kscript/releases/changelog#v3.1.0-june-2026",[7298],{"type":14,"tagName":29,"properties":7299,"children":7300,"position":7307},{},[7301],{"type":19,"value":5752,"position":7302},{"start":7303,"end":7305},{"line":4448,"column":6858,"offset":7304},18797,{"line":4448,"column":96,"offset":7306},18803,{"start":7308,"end":7310},{"line":4448,"column":68,"offset":7309},18795,{"line":4448,"column":102,"offset":7311},18805,{"start":7313,"end":7315},{"line":4448,"column":67,"offset":7314},18794,{"line":4448,"column":1419,"offset":7316},18852,{"start":7318,"end":7320},{"line":4448,"column":23,"offset":7319},18792,{"line":4448,"column":5927,"offset":7321},18862,{"type":14,"tagName":6114,"properties":7323,"children":7324,"position":7331},{},[7325],{"type":19,"value":6881,"position":7326},{"start":7327,"end":7329},{"line":4448,"column":1261,"offset":7328},18864,{"line":4448,"column":5795,"offset":7330},18872,{"start":7332,"end":7333},{"line":4448,"column":5927,"offset":7321},{"line":4448,"column":2763,"offset":7334},18873,{"type":14,"tagName":6114,"properties":7336,"children":7337,"position":7374},{},[7338,7350,7356,7368],{"type":14,"tagName":142,"properties":7339,"children":7340,"position":7347},{},[7341],{"type":19,"value":4435,"position":7342},{"start":7343,"end":7345},{"line":4448,"column":4320,"offset":7344},18875,{"line":4448,"column":6078,"offset":7346},18886,{"start":7348,"end":7349},{"line":4448,"column":4320,"offset":7344},{"line":4448,"column":6078,"offset":7346},{"type":19,"value":7351,"position":7352}," sugar, ",{"start":7353,"end":7354},{"line":4448,"column":6078,"offset":7346},{"line":4448,"column":7046,"offset":7355},18894,{"type":14,"tagName":142,"properties":7357,"children":7358,"position":7365},{},[7359],{"type":19,"value":5818,"position":7360},{"start":7361,"end":7362},{"line":4448,"column":7046,"offset":7355},{"line":4448,"column":7363,"offset":7364},110,18901,{"start":7366,"end":7367},{"line":4448,"column":7046,"offset":7355},{"line":4448,"column":7363,"offset":7364},{"type":19,"value":7369,"position":7370}," lower-timeframe cells, per-script runtime source budget (8 at release, 20 since v3.0.7), source catalog, multi-venue aggregation docs (cross-exchange CVD, weighted OI), feed eviction hardening",{"start":7371,"end":7372},{"line":4448,"column":7363,"offset":7364},{"line":4448,"column":7244,"offset":7373},19094,{"start":7375,"end":7376},{"line":4448,"column":2763,"offset":7334},{"line":4448,"column":224,"offset":7377},19095,{"type":14,"tagName":6114,"properties":7379,"children":7380,"position":7406},{},[7381,7388,7399],{"type":19,"value":7382,"position":7383},"None (additive; ",{"start":7384,"end":7386},{"line":4448,"column":7257,"offset":7385},19097,{"line":4448,"column":846,"offset":7387},19113,{"type":14,"tagName":142,"properties":7389,"children":7390,"position":7396},{},[7391],{"type":19,"value":5818,"position":7392},{"start":7393,"end":7394},{"line":4448,"column":846,"offset":7387},{"line":4448,"column":983,"offset":7395},19120,{"start":7397,"end":7398},{"line":4448,"column":846,"offset":7387},{"line":4448,"column":983,"offset":7395},{"type":19,"value":7400,"position":7401}," requires a platform data-service update)",{"start":7402,"end":7403},{"line":4448,"column":983,"offset":7395},{"line":4448,"column":7404,"offset":7405},370,19161,{"start":7407,"end":7408},{"line":4448,"column":224,"offset":7377},{"line":4448,"column":7409,"offset":7410},372,19163,{"start":7412,"end":7413},{"line":4448,"column":23,"offset":7319},{"line":4448,"column":7409,"offset":7410},{"type":14,"tagName":6034,"properties":7415,"children":7416,"position":7764},{},[7417,7449,7462,7709],{"type":14,"tagName":6114,"properties":7418,"children":7419,"position":7444},{},[7420],{"type":14,"tagName":1943,"properties":7421,"children":7423,"position":7439},{"href":7422},"/kscript/releases/changelog#v3.0.0-june-2026",[7424],{"type":14,"tagName":29,"properties":7425,"children":7426,"position":7434},{},[7427],{"type":19,"value":5876,"position":7428},{"start":7429,"end":7432},{"line":7430,"column":6858,"offset":7431},105,19169,{"line":7430,"column":96,"offset":7433},19175,{"start":7435,"end":7437},{"line":7430,"column":68,"offset":7436},19167,{"line":7430,"column":102,"offset":7438},19177,{"start":7440,"end":7442},{"line":7430,"column":67,"offset":7441},19166,{"line":7430,"column":1419,"offset":7443},19224,{"start":7445,"end":7447},{"line":7430,"column":23,"offset":7446},19164,{"line":7430,"column":5927,"offset":7448},19234,{"type":14,"tagName":6114,"properties":7450,"children":7451,"position":7458},{},[7452],{"type":19,"value":6881,"position":7453},{"start":7454,"end":7456},{"line":7430,"column":1261,"offset":7455},19236,{"line":7430,"column":5795,"offset":7457},19244,{"start":7459,"end":7460},{"line":7430,"column":5927,"offset":7448},{"line":7430,"column":2763,"offset":7461},19245,{"type":14,"tagName":6114,"properties":7463,"children":7464,"position":7705},{},[7465,7472,7483,7489,7500,7505,7517,7522,7534,7539,7552,7559,7572,7578,7591,7597,7608,7614,7626,7631,7644,7650,7662,7669,7681,7687,7698],{"type":19,"value":7466,"position":7467},"Collections + lambdas/reducers, ",{"start":7468,"end":7470},{"line":7430,"column":4320,"offset":7469},19247,{"line":7430,"column":3970,"offset":7471},19279,{"type":14,"tagName":142,"properties":7473,"children":7474,"position":7480},{},[7475],{"type":19,"value":5477,"position":7476},{"start":7477,"end":7478},{"line":7430,"column":3970,"offset":7471},{"line":7430,"column":6908,"offset":7479},19285,{"start":7481,"end":7482},{"line":7430,"column":3970,"offset":7471},{"line":7430,"column":6908,"offset":7479},{"type":19,"value":7484,"position":7485}," structs, ",{"start":7486,"end":7487},{"line":7430,"column":6908,"offset":7479},{"line":7430,"column":6193,"offset":7488},19295,{"type":14,"tagName":142,"properties":7490,"children":7491,"position":7497},{},[7492],{"type":19,"value":812,"position":7493},{"start":7494,"end":7495},{"line":7430,"column":6193,"offset":7488},{"line":7430,"column":716,"offset":7496},19299,{"start":7498,"end":7499},{"line":7430,"column":6193,"offset":7488},{"line":7430,"column":716,"offset":7496},{"type":19,"value":4013,"position":7501},{"start":7502,"end":7503},{"line":7430,"column":716,"offset":7496},{"line":7430,"column":2608,"offset":7504},19300,{"type":14,"tagName":142,"properties":7506,"children":7507,"position":7514},{},[7508],{"type":19,"value":7509,"position":7510},"isna",{"start":7511,"end":7512},{"line":7430,"column":2608,"offset":7504},{"line":7430,"column":3085,"offset":7513},19306,{"start":7515,"end":7516},{"line":7430,"column":2608,"offset":7504},{"line":7430,"column":3085,"offset":7513},{"type":19,"value":4013,"position":7518},{"start":7519,"end":7520},{"line":7430,"column":3085,"offset":7513},{"line":7430,"column":726,"offset":7521},19307,{"type":14,"tagName":142,"properties":7523,"children":7524,"position":7531},{},[7525],{"type":19,"value":7526,"position":7527},"nz",{"start":7528,"end":7529},{"line":7430,"column":726,"offset":7521},{"line":7430,"column":1273,"offset":7530},19311,{"start":7532,"end":7533},{"line":7430,"column":726,"offset":7521},{"line":7430,"column":1273,"offset":7530},{"type":19,"value":260,"position":7535},{"start":7536,"end":7537},{"line":7430,"column":1273,"offset":7530},{"line":7430,"column":895,"offset":7538},19313,{"type":14,"tagName":142,"properties":7540,"children":7541,"position":7549},{},[7542],{"type":19,"value":7543,"position":7544},"color",{"start":7545,"end":7546},{"line":7430,"column":895,"offset":7538},{"line":7430,"column":7547,"offset":7548},157,19320,{"start":7550,"end":7551},{"line":7430,"column":895,"offset":7538},{"line":7430,"column":7547,"offset":7548},{"type":19,"value":7553,"position":7554}," type, drawing objects (",{"start":7555,"end":7556},{"line":7430,"column":7547,"offset":7548},{"line":7430,"column":7557,"offset":7558},181,19344,{"type":14,"tagName":142,"properties":7560,"children":7561,"position":7569},{},[7562],{"type":19,"value":7563,"position":7564},"line.new",{"start":7565,"end":7566},{"line":7430,"column":7557,"offset":7558},{"line":7430,"column":7567,"offset":7568},191,19354,{"start":7570,"end":7571},{"line":7430,"column":7557,"offset":7558},{"line":7430,"column":7567,"offset":7568},{"type":19,"value":7573,"position":7574},"...",{"start":7575,"end":7576},{"line":7430,"column":7567,"offset":7568},{"line":7430,"column":1097,"offset":7577},19357,{"type":14,"tagName":142,"properties":7579,"children":7580,"position":7588},{},[7581],{"type":19,"value":7582,"position":7583},"table.new",{"start":7584,"end":7585},{"line":7430,"column":1097,"offset":7577},{"line":7430,"column":7586,"offset":7587},205,19368,{"start":7589,"end":7590},{"line":7430,"column":1097,"offset":7577},{"line":7430,"column":7586,"offset":7587},{"type":19,"value":7592,"position":7593}," + handles), ",{"start":7594,"end":7595},{"line":7430,"column":7586,"offset":7587},{"line":7430,"column":6555,"offset":7596},19381,{"type":14,"tagName":142,"properties":7598,"children":7599,"position":7605},{},[7600],{"type":19,"value":4417,"position":7601},{"start":7602,"end":7603},{"line":7430,"column":6555,"offset":7596},{"line":7430,"column":914,"offset":7604},19388,{"start":7606,"end":7607},{"line":7430,"column":6555,"offset":7596},{"line":7430,"column":914,"offset":7604},{"type":19,"value":7609,"position":7610}," MTF, ~40 reference-validated TA builtins, ",{"start":7611,"end":7612},{"line":7430,"column":914,"offset":7604},{"line":7430,"column":6817,"offset":7613},19431,{"type":14,"tagName":142,"properties":7615,"children":7616,"position":7623},{},[7617],{"type":19,"value":7618,"position":7619},"switch",{"start":7620,"end":7621},{"line":7430,"column":6817,"offset":7613},{"line":7430,"column":3318,"offset":7622},19439,{"start":7624,"end":7625},{"line":7430,"column":6817,"offset":7613},{"line":7430,"column":3318,"offset":7622},{"type":19,"value":4013,"position":7627},{"start":7628,"end":7629},{"line":7430,"column":3318,"offset":7622},{"line":7430,"column":3328,"offset":7630},19440,{"type":14,"tagName":142,"properties":7632,"children":7633,"position":7641},{},[7634],{"type":19,"value":7635,"position":7636},"persist",{"start":7637,"end":7638},{"line":7430,"column":3328,"offset":7630},{"line":7430,"column":7639,"offset":7640},286,19449,{"start":7642,"end":7643},{"line":7430,"column":3328,"offset":7630},{"line":7430,"column":7639,"offset":7640},{"type":19,"value":7645,"position":7646},"/defaults/",{"start":7647,"end":7648},{"line":7430,"column":7639,"offset":7640},{"line":7430,"column":2348,"offset":7649},19459,{"type":14,"tagName":142,"properties":7651,"children":7652,"position":7659},{},[7653],{"type":19,"value":7654,"position":7655},"format",{"start":7656,"end":7657},{"line":7430,"column":2348,"offset":7649},{"line":7430,"column":224,"offset":7658},19467,{"start":7660,"end":7661},{"line":7430,"column":2348,"offset":7649},{"line":7430,"column":224,"offset":7658},{"type":19,"value":7663,"position":7664},", typed inputs, ",{"start":7665,"end":7666},{"line":7430,"column":224,"offset":7658},{"line":7430,"column":7667,"offset":7668},320,19483,{"type":14,"tagName":142,"properties":7670,"children":7671,"position":7678},{},[7672],{"type":19,"value":7673,"position":7674},"library()",{"start":7675,"end":7676},{"line":7430,"column":7667,"offset":7668},{"line":7430,"column":5832,"offset":7677},19494,{"start":7679,"end":7680},{"line":7430,"column":7667,"offset":7668},{"line":7430,"column":5832,"offset":7677},{"type":19,"value":4013,"position":7682},{"start":7683,"end":7684},{"line":7430,"column":5832,"offset":7677},{"line":7430,"column":7685,"offset":7686},332,19495,{"type":14,"tagName":142,"properties":7688,"children":7689,"position":7695},{},[7690],{"type":19,"value":2759,"position":7691},{"start":7692,"end":7693},{"line":7430,"column":7685,"offset":7686},{"line":7430,"column":1340,"offset":7694},19503,{"start":7696,"end":7697},{"line":7430,"column":7685,"offset":7686},{"line":7430,"column":1340,"offset":7694},{"type":19,"value":7699,"position":7700},", sandbox limits manifest",{"start":7701,"end":7702},{"line":7430,"column":1340,"offset":7694},{"line":7430,"column":7703,"offset":7704},365,19528,{"start":7706,"end":7707},{"line":7430,"column":2763,"offset":7461},{"line":7430,"column":1590,"offset":7708},19529,{"type":14,"tagName":6114,"properties":7710,"children":7711,"position":7759},{},[7712,7720,7733,7739,7754],{"type":19,"value":7713,"position":7714},"Two corrections: 8 TA builtins to textbook formulas + strict ",{"start":7715,"end":7718},{"line":7430,"column":7716,"offset":7717},368,19531,{"line":7430,"column":6339,"offset":7719},19592,{"type":14,"tagName":142,"properties":7721,"children":7722,"position":7730},{},[7723],{"type":19,"value":7724,"position":7725},"sma",{"start":7726,"end":7727},{"line":7430,"column":6339,"offset":7719},{"line":7430,"column":7728,"offset":7729},434,19597,{"start":7731,"end":7732},{"line":7430,"column":6339,"offset":7719},{"line":7430,"column":7728,"offset":7729},{"type":19,"value":7734,"position":7735}," warmup (early-bar values change; see ",{"start":7736,"end":7737},{"line":7430,"column":7728,"offset":7729},{"line":7430,"column":2503,"offset":7738},19635,{"type":14,"tagName":1943,"properties":7740,"children":7741,"position":7749},{"href":2940},[7742],{"type":19,"value":2943,"position":7743},{"start":7744,"end":7747},{"line":7430,"column":7745,"offset":7746},473,19636,{"line":7430,"column":2686,"offset":7748},19656,{"start":7750,"end":7751},{"line":7430,"column":2503,"offset":7738},{"line":7430,"column":7752,"offset":7753},524,19687,{"type":19,"value":6813,"position":7755},{"start":7756,"end":7757},{"line":7430,"column":7752,"offset":7753},{"line":7430,"column":1225,"offset":7758},19688,{"start":7760,"end":7761},{"line":7430,"column":1590,"offset":7708},{"line":7430,"column":7762,"offset":7763},527,19690,{"start":7765,"end":7766},{"line":7430,"column":23,"offset":7446},{"line":7430,"column":7762,"offset":7763},{"type":14,"tagName":6034,"properties":7768,"children":7769,"position":7893},{},[7770,7802,7815,7878],{"type":14,"tagName":6114,"properties":7771,"children":7772,"position":7797},{},[7773],{"type":14,"tagName":1943,"properties":7774,"children":7776,"position":7792},{"href":7775},"/kscript/releases/changelog#v2.2.0-june-2026",[7777],{"type":14,"tagName":29,"properties":7778,"children":7779,"position":7787},{},[7780],{"type":19,"value":7781,"position":7782},"v2.2.0",{"start":7783,"end":7785},{"line":1448,"column":6858,"offset":7784},19696,{"line":1448,"column":96,"offset":7786},19702,{"start":7788,"end":7790},{"line":1448,"column":68,"offset":7789},19694,{"line":1448,"column":102,"offset":7791},19704,{"start":7793,"end":7795},{"line":1448,"column":67,"offset":7794},19693,{"line":1448,"column":1419,"offset":7796},19751,{"start":7798,"end":7800},{"line":1448,"column":23,"offset":7799},19691,{"line":1448,"column":5927,"offset":7801},19761,{"type":14,"tagName":6114,"properties":7803,"children":7804,"position":7811},{},[7805],{"type":19,"value":6881,"position":7806},{"start":7807,"end":7809},{"line":1448,"column":1261,"offset":7808},19763,{"line":1448,"column":5795,"offset":7810},19771,{"start":7812,"end":7813},{"line":1448,"column":5927,"offset":7801},{"line":1448,"column":2763,"offset":7814},19772,{"type":14,"tagName":6114,"properties":7816,"children":7817,"position":7874},{},[7818,7832,7838,7850,7856,7868],{"type":14,"tagName":142,"properties":7819,"children":7820,"position":7829},{},[7821],{"type":19,"value":7822,"position":7823},"plotPie",{"start":7824,"end":7826},{"line":1448,"column":4320,"offset":7825},19774,{"line":1448,"column":7827,"offset":7828},93,19783,{"start":7830,"end":7831},{"line":1448,"column":4320,"offset":7825},{"line":1448,"column":7827,"offset":7828},{"type":19,"value":7833,"position":7834}," per-bar pie chart (auto-normalized slices, ",{"start":7835,"end":7836},{"line":1448,"column":7827,"offset":7828},{"line":1448,"column":2608,"offset":7837},19827,{"type":14,"tagName":142,"properties":7839,"children":7840,"position":7847},{},[7841],{"type":19,"value":7842,"position":7843},"display",{"start":7844,"end":7845},{"line":1448,"column":2608,"offset":7837},{"line":1448,"column":4520,"offset":7846},19836,{"start":7848,"end":7849},{"line":1448,"column":2608,"offset":7837},{"line":1448,"column":4520,"offset":7846},{"type":19,"value":7851,"position":7852}," text mode, batchable with per-element radius/colors); documented ",{"start":7853,"end":7854},{"line":1448,"column":4520,"offset":7846},{"line":1448,"column":4077,"offset":7855},19902,{"type":14,"tagName":142,"properties":7857,"children":7858,"position":7865},{},[7859],{"type":19,"value":7860,"position":7861},"volume_profile",{"start":7862,"end":7863},{"line":1448,"column":4077,"offset":7855},{"line":1448,"column":924,"offset":7864},19918,{"start":7866,"end":7867},{"line":1448,"column":4077,"offset":7855},{"line":1448,"column":924,"offset":7864},{"type":19,"value":7869,"position":7870}," row structure + raw bucket access",{"start":7871,"end":7872},{"line":1448,"column":924,"offset":7864},{"line":1448,"column":5964,"offset":7873},19952,{"start":7875,"end":7876},{"line":1448,"column":2763,"offset":7814},{"line":1448,"column":1129,"offset":7877},19953,{"type":14,"tagName":6114,"properties":7879,"children":7880,"position":7888},{},[7881],{"type":19,"value":7882,"position":7883},"None (additive within v2)",{"start":7884,"end":7886},{"line":1448,"column":1553,"offset":7885},19955,{"line":1448,"column":836,"offset":7887},19980,{"start":7889,"end":7890},{"line":1448,"column":1129,"offset":7877},{"line":1448,"column":7891,"offset":7892},292,19982,{"start":7894,"end":7895},{"line":1448,"column":23,"offset":7799},{"line":1448,"column":7891,"offset":7892},{"type":14,"tagName":6034,"properties":7897,"children":7898,"position":8038},{},[7899,7931,7945,8025],{"type":14,"tagName":6114,"properties":7900,"children":7901,"position":7926},{},[7902],{"type":14,"tagName":1943,"properties":7903,"children":7905,"position":7921},{"href":7904},"/kscript/releases/changelog#v2.1.0-may-2026",[7906],{"type":14,"tagName":29,"properties":7907,"children":7908,"position":7916},{},[7909],{"type":19,"value":7910,"position":7911},"v2.1.0",{"start":7912,"end":7914},{"line":6159,"column":6858,"offset":7913},19988,{"line":6159,"column":96,"offset":7915},19994,{"start":7917,"end":7919},{"line":6159,"column":68,"offset":7918},19986,{"line":6159,"column":102,"offset":7920},19996,{"start":7922,"end":7924},{"line":6159,"column":67,"offset":7923},19985,{"line":6159,"column":1059,"offset":7925},20042,{"start":7927,"end":7929},{"line":6159,"column":23,"offset":7928},19983,{"line":6159,"column":5366,"offset":7930},20054,{"type":14,"tagName":6114,"properties":7932,"children":7933,"position":7941},{},[7934],{"type":19,"value":7935,"position":7936},"May 2026",{"start":7937,"end":7939},{"line":6159,"column":2753,"offset":7938},20056,{"line":6159,"column":2763,"offset":7940},20064,{"start":7942,"end":7943},{"line":6159,"column":5366,"offset":7930},{"line":6159,"column":6066,"offset":7944},20065,{"type":14,"tagName":6114,"properties":7946,"children":7947,"position":8021},{},[7948,7961,7967,7979,7985,7997,8003,8015],{"type":14,"tagName":142,"properties":7949,"children":7950,"position":7958},{},[7951],{"type":19,"value":7952,"position":7953},"plotPriceLabel",{"start":7954,"end":7956},{"line":6159,"column":6075,"offset":7955},20067,{"line":6159,"column":69,"offset":7957},20083,{"start":7959,"end":7960},{"line":6159,"column":6075,"offset":7955},{"line":6159,"column":69,"offset":7957},{"type":19,"value":7962,"position":7963}," builtin, ",{"start":7964,"end":7965},{"line":6159,"column":69,"offset":7957},{"line":6159,"column":706,"offset":7966},20093,{"type":14,"tagName":142,"properties":7968,"children":7969,"position":7976},{},[7970],{"type":19,"value":7971,"position":7972},"glow",{"start":7973,"end":7974},{"line":6159,"column":706,"offset":7966},{"line":6159,"column":458,"offset":7975},20099,{"start":7977,"end":7978},{"line":6159,"column":706,"offset":7966},{"line":6159,"column":458,"offset":7975},{"type":19,"value":7980,"position":7981}," halo on chart-shape plots, ",{"start":7982,"end":7983},{"line":6159,"column":458,"offset":7975},{"line":6159,"column":4511,"offset":7984},20127,{"type":14,"tagName":142,"properties":7986,"children":7987,"position":7994},{},[7988],{"type":19,"value":7989,"position":7990},"lineStyle",{"start":7991,"end":7992},{"line":6159,"column":4511,"offset":7984},{"line":6159,"column":4034,"offset":7993},20138,{"start":7995,"end":7996},{"line":6159,"column":4511,"offset":7984},{"line":6159,"column":4034,"offset":7993},{"type":19,"value":7998,"position":7999}," (solid/dashed/dotted), ",{"start":8000,"end":8001},{"line":6159,"column":4034,"offset":7993},{"line":6159,"column":1079,"offset":8002},20162,{"type":14,"tagName":142,"properties":8004,"children":8005,"position":8012},{},[8006],{"type":19,"value":8007,"position":8008},"opacity",{"start":8009,"end":8010},{"line":6159,"column":1079,"offset":8002},{"line":6159,"column":776,"offset":8011},20171,{"start":8013,"end":8014},{"line":6159,"column":1079,"offset":8002},{"line":6159,"column":776,"offset":8011},{"type":19,"value":8016,"position":8017}," on plotShape/plotText",{"start":8018,"end":8019},{"line":6159,"column":776,"offset":8011},{"line":6159,"column":4600,"offset":8020},20193,{"start":8022,"end":8023},{"line":6159,"column":6066,"offset":7944},{"line":6159,"column":4077,"offset":8024},20194,{"type":14,"tagName":6114,"properties":8026,"children":8027,"position":8034},{},[8028],{"type":19,"value":7882,"position":8029},{"start":8030,"end":8032},{"line":6159,"column":4086,"offset":8031},20196,{"line":6159,"column":6987,"offset":8033},20221,{"start":8035,"end":8036},{"line":6159,"column":4077,"offset":8024},{"line":6159,"column":6094,"offset":8037},20223,{"start":8039,"end":8040},{"line":6159,"column":23,"offset":7928},{"line":6159,"column":6094,"offset":8037},{"type":14,"tagName":6034,"properties":8042,"children":8043,"position":8179},{},[8044,8077,8091,8122],{"type":14,"tagName":6114,"properties":8045,"children":8046,"position":8072},{},[8047],{"type":14,"tagName":1943,"properties":8048,"children":8050,"position":8067},{"href":8049},"/kscript/releases/changelog#v2.0.0-september-2025",[8051],{"type":14,"tagName":29,"properties":8052,"children":8053,"position":8062},{},[8054],{"type":19,"value":8055,"position":8056},"v2.0.0",{"start":8057,"end":8060},{"line":8058,"column":6858,"offset":8059},108,20229,{"line":8058,"column":96,"offset":8061},20235,{"start":8063,"end":8065},{"line":8058,"column":68,"offset":8064},20227,{"line":8058,"column":102,"offset":8066},20237,{"start":8068,"end":8070},{"line":8058,"column":67,"offset":8069},20226,{"line":8058,"column":2393,"offset":8071},20289,{"start":8073,"end":8075},{"line":8058,"column":23,"offset":8074},20224,{"line":8058,"column":548,"offset":8076},20290,{"type":14,"tagName":6114,"properties":8078,"children":8079,"position":8087},{},[8080],{"type":19,"value":8081,"position":8082},"Sep 2025",{"start":8083,"end":8085},{"line":8058,"column":109,"offset":8084},20292,{"line":8058,"column":3506,"offset":8086},20300,{"start":8088,"end":8089},{"line":8058,"column":548,"offset":8076},{"line":8058,"column":5584,"offset":8090},20301,{"type":14,"tagName":6114,"properties":8092,"children":8093,"position":8118},{},[8094,8101,8112],{"type":19,"value":8095,"position":8096},"Per-bar execution model, kwargs, stronger compiler, dedicated data subscriptions, scalars from indicators, ",{"start":8097,"end":8099},{"line":8058,"column":5723,"offset":8098},20303,{"line":8058,"column":3249,"offset":8100},20410,{"type":14,"tagName":142,"properties":8102,"children":8103,"position":8109},{},[8104],{"type":19,"value":5459,"position":8105},{"start":8106,"end":8107},{"line":8058,"column":3249,"offset":8100},{"line":8058,"column":6711,"offset":8108},20416,{"start":8110,"end":8111},{"line":8058,"column":3249,"offset":8100},{"line":8058,"column":6711,"offset":8108},{"type":19,"value":8113,"position":8114}," + loops, extended plots",{"start":8115,"end":8116},{"line":8058,"column":6711,"offset":8108},{"line":8058,"column":5698,"offset":8117},20440,{"start":8119,"end":8120},{"line":8058,"column":5584,"offset":8090},{"line":8058,"column":6555,"offset":8121},20441,{"type":14,"tagName":6114,"properties":8123,"children":8124,"position":8175},{},[8125,8133,8147,8153,8169],{"type":19,"value":8126,"position":8127},"Yes (relative to ",{"start":8128,"end":8130},{"line":8058,"column":172,"offset":8129},20443,{"line":8058,"column":8131,"offset":8132},237,20460,{"type":14,"tagName":29,"properties":8134,"children":8135,"position":8143},{},[8136],{"type":19,"value":8137,"position":8138},"v1",{"start":8139,"end":8141},{"line":8058,"column":6987,"offset":8140},20462,{"line":8058,"column":6094,"offset":8142},20464,{"start":8144,"end":8145},{"line":8058,"column":8131,"offset":8132},{"line":8058,"column":6996,"offset":8146},20466,{"type":19,"value":8148,"position":8149},"; see ",{"start":8150,"end":8151},{"line":8058,"column":6996,"offset":8146},{"line":8058,"column":6483,"offset":8152},20472,{"type":14,"tagName":1943,"properties":8154,"children":8156,"position":8164},{"href":8155},"/kscript/migrations/v1-vs-v2",[8157],{"type":19,"value":8158,"position":8159},"Migration (v1 vs v2)",{"start":8160,"end":8162},{"line":8058,"column":573,"offset":8161},20473,{"line":8058,"column":4330,"offset":8163},20493,{"start":8165,"end":8166},{"line":8058,"column":6483,"offset":8152},{"line":8058,"column":8167,"offset":8168},301,20524,{"type":19,"value":6813,"position":8170},{"start":8171,"end":8172},{"line":8058,"column":8167,"offset":8168},{"line":8058,"column":8173,"offset":8174},302,20525,{"start":8176,"end":8177},{"line":8058,"column":6555,"offset":8121},{"line":8058,"column":224,"offset":8178},20527,{"start":8180,"end":8181},{"line":8058,"column":23,"offset":8074},{"line":8058,"column":224,"offset":8178},{"start":8183,"end":8184},{"line":75,"column":23,"offset":6133},{"line":8058,"column":224,"offset":8178},{"start":8186,"end":8187},{"line":52,"column":23,"offset":6050},{"line":8058,"column":224,"offset":8178},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":8191,"children":8192,"position":8193},"hr",{},[],{"start":8194,"end":8196},{"line":7363,"column":23,"offset":8195},20529,{"line":7363,"column":68,"offset":8197},20532,{"type":19,"value":57},{"type":14,"tagName":59,"properties":8200,"children":8202,"position":8210},{"id":8201},"v3.0.7-june-2026",[8203],{"type":19,"value":8204,"position":8205},"v3.0.7 — June 2026",{"start":8206,"end":8208},{"line":6627,"column":68,"offset":8207},20537,{"line":6627,"column":2245,"offset":8209},20555,{"start":8211,"end":8213},{"line":6627,"column":23,"offset":8212},20534,{"line":6627,"column":2245,"offset":8209},{"type":19,"value":57},{"type":14,"tagName":15,"properties":8216,"children":8217,"position":8242},{},[8218,8225,8236],{"type":19,"value":8219,"position":8220},"Engine patch release (",{"start":8221,"end":8223},{"line":1458,"column":23,"offset":8222},20557,{"line":1458,"column":27,"offset":8224},20579,{"type":14,"tagName":142,"properties":8226,"children":8227,"position":8233},{},[8228],{"type":19,"value":146,"position":8229},{"start":8230,"end":8231},{"line":1458,"column":27,"offset":8224},{"line":1458,"column":2003,"offset":8232},20602,{"start":8234,"end":8235},{"line":1458,"column":27,"offset":8224},{"line":1458,"column":2003,"offset":8232},{"type":19,"value":8237,"position":8238}," 3.0.7), focused on v2 compatibility hardening after the v3 rollout. Nothing here is a new feature: call forms that were legal on v2 are accepted again, and two sandbox ceilings move up to match how scripts are actually used.",{"start":8239,"end":8240},{"line":1458,"column":2003,"offset":8232},{"line":1458,"column":2618,"offset":8241},20827,{"start":8243,"end":8244},{"line":1458,"column":23,"offset":8222},{"line":1458,"column":2618,"offset":8241},{"type":19,"value":57},{"type":14,"tagName":462,"properties":8247,"children":8249,"position":8257},{"id":8248},"restored",[8250],{"type":19,"value":8251,"position":8252},"Restored",{"start":8253,"end":8255},{"line":3970,"column":93,"offset":8254},20833,{"line":3970,"column":863,"offset":8256},20841,{"start":8258,"end":8260},{"line":3970,"column":23,"offset":8259},20829,{"line":3970,"column":863,"offset":8256},{"type":19,"value":57},{"type":14,"tagName":481,"properties":8263,"children":8264,"position":8557},{},[8265,8266,8425,8426,8499,8500,8556],{"type":19,"value":57},{"type":14,"tagName":486,"properties":8267,"children":8268,"position":8421},{},[8269,8295,8301,8313,8318,8330,8335,8347,8352,8364,8370,8382,8387,8399,8404,8416],{"type":14,"tagName":29,"properties":8270,"children":8271,"position":8290},{},[8272,8284],{"type":14,"tagName":142,"properties":8273,"children":8274,"position":8281},{},[8275],{"type":19,"value":5620,"position":8276},{"start":8277,"end":8279},{"line":3979,"column":93,"offset":8278},20847,{"line":3979,"column":1244,"offset":8280},20857,{"start":8282,"end":8283},{"line":3979,"column":93,"offset":8278},{"line":3979,"column":1244,"offset":8280},{"type":19,"value":8285,"position":8286}," alignment synonyms",{"start":8287,"end":8288},{"line":3979,"column":1244,"offset":8280},{"line":3979,"column":45,"offset":8289},20876,{"start":8291,"end":8293},{"line":3979,"column":67,"offset":8292},20845,{"line":3979,"column":5532,"offset":8294},20878,{"type":19,"value":8296,"position":8297}," — ",{"start":8298,"end":8299},{"line":3979,"column":5532,"offset":8294},{"line":3979,"column":509,"offset":8300},20881,{"type":14,"tagName":142,"properties":8302,"children":8303,"position":8310},{},[8304],{"type":19,"value":8305,"position":8306},"yAlign",{"start":8307,"end":8308},{"line":3979,"column":509,"offset":8300},{"line":3979,"column":2274,"offset":8309},20889,{"start":8311,"end":8312},{"line":3979,"column":509,"offset":8300},{"line":3979,"column":2274,"offset":8309},{"type":19,"value":1415,"position":8314},{"start":8315,"end":8316},{"line":3979,"column":2274,"offset":8309},{"line":3979,"column":538,"offset":8317},20898,{"type":14,"tagName":142,"properties":8319,"children":8320,"position":8327},{},[8321],{"type":19,"value":8322,"position":8323},"CENTER",{"start":8324,"end":8325},{"line":3979,"column":538,"offset":8317},{"line":3979,"column":2384,"offset":8326},20906,{"start":8328,"end":8329},{"line":3979,"column":538,"offset":8317},{"line":3979,"column":2384,"offset":8326},{"type":19,"value":4013,"position":8331},{"start":8332,"end":8333},{"line":3979,"column":2384,"offset":8326},{"line":3979,"column":4971,"offset":8334},20907,{"type":14,"tagName":142,"properties":8336,"children":8337,"position":8344},{},[8338],{"type":19,"value":8339,"position":8340},"ABOVE",{"start":8341,"end":8342},{"line":3979,"column":4971,"offset":8334},{"line":3979,"column":5366,"offset":8343},20914,{"start":8345,"end":8346},{"line":3979,"column":4971,"offset":8334},{"line":3979,"column":5366,"offset":8343},{"type":19,"value":4013,"position":8348},{"start":8349,"end":8350},{"line":3979,"column":5366,"offset":8343},{"line":3979,"column":1261,"offset":8351},20915,{"type":14,"tagName":142,"properties":8353,"children":8354,"position":8361},{},[8355],{"type":19,"value":8356,"position":8357},"BELOW",{"start":8358,"end":8359},{"line":3979,"column":1261,"offset":8351},{"line":3979,"column":5723,"offset":8360},20922,{"start":8362,"end":8363},{"line":3979,"column":1261,"offset":8351},{"line":3979,"column":5723,"offset":8360},{"type":19,"value":8365,"position":8366}," again, case-insensitively, normalized to ",{"start":8367,"end":8368},{"line":3979,"column":5723,"offset":8360},{"line":3979,"column":6908,"offset":8369},20964,{"type":14,"tagName":142,"properties":8371,"children":8372,"position":8379},{},[8373],{"type":19,"value":8374,"position":8375},"middle",{"start":8376,"end":8377},{"line":3979,"column":6908,"offset":8369},{"line":3979,"column":103,"offset":8378},20972,{"start":8380,"end":8381},{"line":3979,"column":6908,"offset":8369},{"line":3979,"column":103,"offset":8378},{"type":19,"value":4013,"position":8383},{"start":8384,"end":8385},{"line":3979,"column":103,"offset":8378},{"line":3979,"column":3075,"offset":8386},20973,{"type":14,"tagName":142,"properties":8388,"children":8389,"position":8396},{},[8390],{"type":19,"value":8391,"position":8392},"top",{"start":8393,"end":8394},{"line":3979,"column":3075,"offset":8386},{"line":3979,"column":716,"offset":8395},20978,{"start":8397,"end":8398},{"line":3979,"column":3075,"offset":8386},{"line":3979,"column":716,"offset":8395},{"type":19,"value":4013,"position":8400},{"start":8401,"end":8402},{"line":3979,"column":716,"offset":8395},{"line":3979,"column":2608,"offset":8403},20979,{"type":14,"tagName":142,"properties":8405,"children":8406,"position":8413},{},[8407],{"type":19,"value":8408,"position":8409},"bottom",{"start":8410,"end":8411},{"line":3979,"column":2608,"offset":8403},{"line":3979,"column":4511,"offset":8412},20987,{"start":8414,"end":8415},{"line":3979,"column":2608,"offset":8403},{"line":3979,"column":4511,"offset":8412},{"type":19,"value":1356,"position":8417},{"start":8418,"end":8419},{"line":3979,"column":4511,"offset":8412},{"line":3979,"column":4520,"offset":8420},20988,{"start":8422,"end":8424},{"line":3979,"column":23,"offset":8423},20843,{"line":3979,"column":4520,"offset":8420},{"type":19,"value":57},{"type":14,"tagName":486,"properties":8427,"children":8428,"position":8495},{},[8429,8455,8461,8472,8478,8489],{"type":14,"tagName":29,"properties":8430,"children":8431,"position":8450},{},[8432,8444],{"type":14,"tagName":142,"properties":8433,"children":8434,"position":8441},{},[8435],{"type":19,"value":5639,"position":8436},{"start":8437,"end":8439},{"line":100,"column":93,"offset":8438},20993,{"line":100,"column":133,"offset":8440},21004,{"start":8442,"end":8443},{"line":100,"column":93,"offset":8438},{"line":100,"column":133,"offset":8440},{"type":19,"value":8445,"position":8446}," shape aliases",{"start":8447,"end":8448},{"line":100,"column":133,"offset":8440},{"line":100,"column":2567,"offset":8449},21018,{"start":8451,"end":8453},{"line":100,"column":67,"offset":8452},20991,{"line":100,"column":40,"offset":8454},21020,{"type":19,"value":8456,"position":8457}," — shape names are case-insensitive and the v2 aliases are accepted, including ",{"start":8458,"end":8459},{"line":100,"column":40,"offset":8454},{"line":100,"column":706,"offset":8460},21099,{"type":14,"tagName":142,"properties":8462,"children":8463,"position":8469},{},[8464],{"type":19,"value":5658,"position":8465},{"start":8466,"end":8467},{"line":100,"column":706,"offset":8460},{"line":100,"column":458,"offset":8468},21105,{"start":8470,"end":8471},{"line":100,"column":706,"offset":8460},{"line":100,"column":458,"offset":8468},{"type":19,"value":8473,"position":8474}," (maps to ",{"start":8475,"end":8476},{"line":100,"column":458,"offset":8468},{"line":100,"column":885,"offset":8477},21115,{"type":14,"tagName":142,"properties":8479,"children":8480,"position":8486},{},[8481],{"type":19,"value":6957,"position":8482},{"start":8483,"end":8484},{"line":100,"column":885,"offset":8477},{"line":100,"column":716,"offset":8485},21124,{"start":8487,"end":8488},{"line":100,"column":885,"offset":8477},{"line":100,"column":716,"offset":8485},{"type":19,"value":8490,"position":8491},").",{"start":8492,"end":8493},{"line":100,"column":716,"offset":8485},{"line":100,"column":3225,"offset":8494},21126,{"start":8496,"end":8498},{"line":100,"column":23,"offset":8497},20989,{"line":100,"column":3225,"offset":8494},{"type":19,"value":57},{"type":14,"tagName":486,"properties":8501,"children":8502,"position":8552},{},[8503,8529,8535,8546],{"type":14,"tagName":29,"properties":8504,"children":8505,"position":8524},{},[8506,8513],{"type":19,"value":8507,"position":8508},"Bare ",{"start":8509,"end":8511},{"line":6176,"column":93,"offset":8510},21131,{"line":6176,"column":473,"offset":8512},21136,{"type":14,"tagName":142,"properties":8514,"children":8515,"position":8521},{},[8516],{"type":19,"value":5676,"position":8517},{"start":8518,"end":8519},{"line":6176,"column":473,"offset":8512},{"line":6176,"column":1244,"offset":8520},21141,{"start":8522,"end":8523},{"line":6176,"column":473,"offset":8512},{"line":6176,"column":1244,"offset":8520},{"start":8525,"end":8527},{"line":6176,"column":67,"offset":8526},21129,{"line":6176,"column":1982,"offset":8528},21143,{"type":19,"value":8530,"position":8531}," — accepted again as an alias of ",{"start":8532,"end":8533},{"line":6176,"column":1982,"offset":8528},{"line":6176,"column":2881,"offset":8534},21176,{"type":14,"tagName":142,"properties":8536,"children":8537,"position":8543},{},[8538],{"type":19,"value":812,"position":8539},{"start":8540,"end":8541},{"line":6176,"column":2881,"offset":8534},{"line":6176,"column":2012,"offset":8542},21180,{"start":8544,"end":8545},{"line":6176,"column":2881,"offset":8534},{"line":6176,"column":2012,"offset":8542},{"type":19,"value":1356,"position":8547},{"start":8548,"end":8549},{"line":6176,"column":2012,"offset":8542},{"line":6176,"column":8550,"offset":8551},55,21181,{"start":8553,"end":8555},{"line":6176,"column":23,"offset":8554},21127,{"line":6176,"column":8550,"offset":8551},{"type":19,"value":57},{"start":8558,"end":8559},{"line":3979,"column":23,"offset":8423},{"line":6176,"column":8550,"offset":8551},{"type":19,"value":57},{"type":14,"tagName":462,"properties":8562,"children":8564,"position":8572},{"id":8563},"raised",[8565],{"type":19,"value":8566,"position":8567},"Raised",{"start":8568,"end":8570},{"line":6908,"column":93,"offset":8569},21187,{"line":6908,"column":496,"offset":8571},21193,{"start":8573,"end":8575},{"line":6908,"column":23,"offset":8574},21183,{"line":6908,"column":496,"offset":8571},{"type":19,"value":57},{"type":14,"tagName":481,"properties":8578,"children":8579,"position":8734},{},[8580,8581,8666,8667,8733],{"type":19,"value":57},{"type":14,"tagName":486,"properties":8582,"children":8583,"position":8662},{},[8584,8600,8606,8618,8624,8638,8644,8656],{"type":14,"tagName":29,"properties":8585,"children":8586,"position":8595},{},[8587],{"type":19,"value":8588,"position":8589},"Source budget",{"start":8590,"end":8593},{"line":8591,"column":93,"offset":8592},124,21199,{"line":8591,"column":71,"offset":8594},21212,{"start":8596,"end":8598},{"line":8591,"column":67,"offset":8597},21197,{"line":8591,"column":2555,"offset":8599},21214,{"type":19,"value":8601,"position":8602}," — runtime ",{"start":8603,"end":8604},{"line":8591,"column":2555,"offset":8599},{"line":8591,"column":2255,"offset":8605},21225,{"type":14,"tagName":142,"properties":8607,"children":8608,"position":8615},{},[8609],{"type":19,"value":8610,"position":8611},"MAX_SOURCES_PER_SCRIPT",{"start":8612,"end":8613},{"line":8591,"column":2255,"offset":8605},{"line":8591,"column":8550,"offset":8614},21249,{"start":8616,"end":8617},{"line":8591,"column":2255,"offset":8605},{"line":8591,"column":8550,"offset":8614},{"type":19,"value":8619,"position":8620}," moved 8 → ",{"start":8621,"end":8622},{"line":8591,"column":8550,"offset":8614},{"line":8591,"column":2393,"offset":8623},21260,{"type":14,"tagName":29,"properties":8625,"children":8626,"position":8634},{},[8627],{"type":19,"value":8628,"position":8629},"20",{"start":8630,"end":8632},{"line":8591,"column":5315,"offset":8631},21262,{"line":8591,"column":4164,"offset":8633},21264,{"start":8635,"end":8636},{"line":8591,"column":2393,"offset":8623},{"line":8591,"column":5366,"offset":8637},21266,{"type":19,"value":8639,"position":8640}," distinct data sources per script. Engine ",{"start":8641,"end":8642},{"line":8591,"column":5366,"offset":8637},{"line":8591,"column":1458,"offset":8643},21308,{"type":14,"tagName":142,"properties":8645,"children":8646,"position":8653},{},[8647],{"type":19,"value":8648,"position":8649},"3.0.11",{"start":8650,"end":8651},{"line":8591,"column":1458,"offset":8643},{"line":8591,"column":6908,"offset":8652},21316,{"start":8654,"end":8655},{"line":8591,"column":1458,"offset":8643},{"line":8591,"column":6908,"offset":8652},{"type":19,"value":8657,"position":8658}," unified the editor and runtime budgets at 20, so a 6-20 source aggregation script now passes both.",{"start":8659,"end":8660},{"line":8591,"column":6908,"offset":8652},{"line":8591,"column":6569,"offset":8661},21415,{"start":8663,"end":8665},{"line":8591,"column":23,"offset":8664},21195,{"line":8591,"column":6569,"offset":8661},{"type":19,"value":57},{"type":14,"tagName":486,"properties":8668,"children":8669,"position":8729},{},[8670,8686,8692,8706,8712,8724],{"type":14,"tagName":29,"properties":8671,"children":8672,"position":8681},{},[8673],{"type":19,"value":8674,"position":8675},"Output objects",{"start":8676,"end":8679},{"line":8677,"column":93,"offset":8678},125,21420,{"line":8677,"column":1985,"offset":8680},21434,{"start":8682,"end":8684},{"line":8677,"column":67,"offset":8683},21418,{"line":8677,"column":2979,"offset":8685},21436,{"type":19,"value":8687,"position":8688}," — 20,000 → ",{"start":8689,"end":8690},{"line":8677,"column":2979,"offset":8685},{"line":8677,"column":39,"offset":8691},21448,{"type":14,"tagName":29,"properties":8693,"children":8694,"position":8702},{},[8695],{"type":19,"value":8696,"position":8697},"50,000",{"start":8698,"end":8700},{"line":8677,"column":44,"offset":8699},21450,{"line":8677,"column":1994,"offset":8701},21456,{"start":8703,"end":8704},{"line":8677,"column":39,"offset":8691},{"line":8677,"column":2579,"offset":8705},21458,{"type":19,"value":8707,"position":8708}," per run (",{"start":8709,"end":8710},{"line":8677,"column":2579,"offset":8705},{"line":8677,"column":529,"offset":8711},21468,{"type":14,"tagName":142,"properties":8713,"children":8714,"position":8721},{},[8715],{"type":19,"value":8716,"position":8717},"MAX_OUTPUT_OBJECTS",{"start":8718,"end":8719},{"line":8677,"column":529,"offset":8711},{"line":8677,"column":1261,"offset":8720},21488,{"start":8722,"end":8723},{"line":8677,"column":529,"offset":8711},{"line":8677,"column":1261,"offset":8720},{"type":19,"value":8490,"position":8725},{"start":8726,"end":8727},{"line":8677,"column":1261,"offset":8720},{"line":8677,"column":1270,"offset":8728},21490,{"start":8730,"end":8732},{"line":8677,"column":23,"offset":8731},21416,{"line":8677,"column":1270,"offset":8728},{"type":19,"value":57},{"start":8735,"end":8736},{"line":8591,"column":23,"offset":8664},{"line":8677,"column":1270,"offset":8728},{"type":19,"value":57},{"type":14,"tagName":462,"properties":8739,"children":8741,"position":8749},{"id":8740},"compatibility",[8742],{"type":19,"value":8743,"position":8744},"Compatibility",{"start":8745,"end":8747},{"line":885,"column":93,"offset":8746},21496,{"line":885,"column":71,"offset":8748},21509,{"start":8750,"end":8752},{"line":885,"column":23,"offset":8751},21492,{"line":885,"column":71,"offset":8748},{"type":19,"value":57},{"type":14,"tagName":481,"properties":8755,"children":8756,"position":8773},{},[8757,8758,8772],{"type":19,"value":57},{"type":14,"tagName":486,"properties":8759,"children":8760,"position":8768},{},[8761],{"type":19,"value":8762,"position":8763},"None breaking; every change strictly widens what is accepted. Scripts written against the stricter v3.0.0 surface run unchanged.",{"start":8764,"end":8766},{"line":3997,"column":67,"offset":8765},21513,{"line":3997,"column":3075,"offset":8767},21641,{"start":8769,"end":8771},{"line":3997,"column":23,"offset":8770},21511,{"line":3997,"column":3075,"offset":8767},{"type":19,"value":57},{"start":8774,"end":8775},{"line":3997,"column":23,"offset":8770},{"line":3997,"column":3075,"offset":8767},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":8778,"children":8779,"position":8780},{},[],{"start":8781,"end":8783},{"line":3075,"column":23,"offset":8782},21643,{"line":3075,"column":68,"offset":8784},21646,{"type":19,"value":57},{"type":14,"tagName":59,"properties":8787,"children":8789,"position":8798},{"id":8788},"v3.2.0-june-2026",[8790],{"type":19,"value":8791,"position":8792},"v3.2.0 — June 2026",{"start":8793,"end":8796},{"line":8794,"column":68,"offset":8795},133,21651,{"line":8794,"column":2245,"offset":8797},21669,{"start":8799,"end":8801},{"line":8794,"column":23,"offset":8800},21648,{"line":8794,"column":2245,"offset":8797},{"type":19,"value":57},{"type":14,"tagName":15,"properties":8804,"children":8805,"position":8813},{},[8806],{"type":19,"value":8807,"position":8808},"Three quality-of-life walls came down: multi-output indicators grew names, VWAP grew anchors, and types grew methods.",{"start":8809,"end":8811},{"line":3468,"column":23,"offset":8810},21671,{"line":3468,"column":3979,"offset":8812},21788,{"start":8814,"end":8815},{"line":3468,"column":23,"offset":8810},{"line":3468,"column":3979,"offset":8812},{"type":19,"value":57},{"type":14,"tagName":462,"properties":8818,"children":8820,"position":8827},{"id":8819},"added-5",[8821],{"type":19,"value":467,"position":8822},{"start":8823,"end":8825},{"line":2608,"column":93,"offset":8824},21794,{"line":2608,"column":473,"offset":8826},21799,{"start":8828,"end":8830},{"line":2608,"column":23,"offset":8829},21790,{"line":2608,"column":473,"offset":8826},{"type":19,"value":57},{"type":14,"tagName":481,"properties":8833,"children":8834,"position":9352},{},[8835,8836,9173,9174,9254,9255,9351],{"type":19,"value":57},{"type":14,"tagName":486,"properties":8837,"children":8838,"position":9169},{},[8839,8854,8859,8871,8876,8888,8894,8906,8911,8922,8927,8939,8944,8956,8962,8974,8979,8990,8995,9007,9013,9025,9030,9042,9047,9058,9063,9075,9080,9093,9098,9109,9114,9126,9132,9144,9150,9162],{"type":14,"tagName":29,"properties":8840,"children":8841,"position":8849},{},[8842],{"type":19,"value":8843,"position":8844},"Named streams.",{"start":8845,"end":8847},{"line":5426,"column":93,"offset":8846},21805,{"line":5426,"column":1985,"offset":8848},21819,{"start":8850,"end":8852},{"line":5426,"column":67,"offset":8851},21803,{"line":5426,"column":2979,"offset":8853},21821,{"type":19,"value":2119,"position":8855},{"start":8856,"end":8857},{"line":5426,"column":2979,"offset":8853},{"line":5426,"column":2245,"offset":8858},21822,{"type":14,"tagName":142,"properties":8860,"children":8861,"position":8868},{},[8862],{"type":19,"value":8863,"position":8864},"bb",{"start":8865,"end":8866},{"line":5426,"column":2245,"offset":8858},{"line":5426,"column":36,"offset":8867},21826,{"start":8869,"end":8870},{"line":5426,"column":2245,"offset":8858},{"line":5426,"column":36,"offset":8867},{"type":19,"value":4013,"position":8872},{"start":8873,"end":8874},{"line":5426,"column":36,"offset":8867},{"line":5426,"column":499,"offset":8875},21827,{"type":14,"tagName":142,"properties":8877,"children":8878,"position":8885},{},[8879],{"type":19,"value":8880,"position":8881},"keltner",{"start":8882,"end":8883},{"line":5426,"column":499,"offset":8875},{"line":5426,"column":5532,"offset":8884},21836,{"start":8886,"end":8887},{"line":5426,"column":499,"offset":8875},{"line":5426,"column":5532,"offset":8884},{"type":19,"value":8889,"position":8890}," expose ",{"start":8891,"end":8892},{"line":5426,"column":5532,"offset":8884},{"line":5426,"column":3445,"offset":8893},21844,{"type":14,"tagName":142,"properties":8895,"children":8896,"position":8903},{},[8897],{"type":19,"value":8898,"position":8899},".basis",{"start":8900,"end":8901},{"line":5426,"column":3445,"offset":8893},{"line":5426,"column":1409,"offset":8902},21852,{"start":8904,"end":8905},{"line":5426,"column":3445,"offset":8893},{"line":5426,"column":1409,"offset":8902},{"type":19,"value":4013,"position":8907},{"start":8908,"end":8909},{"line":5426,"column":1409,"offset":8902},{"line":5426,"column":529,"offset":8910},21853,{"type":14,"tagName":142,"properties":8912,"children":8913,"position":8919},{},[8914],{"type":19,"value":7092,"position":8915},{"start":8916,"end":8917},{"line":5426,"column":529,"offset":8910},{"line":5426,"column":1419,"offset":8918},21861,{"start":8920,"end":8921},{"line":5426,"column":529,"offset":8910},{"line":5426,"column":1419,"offset":8918},{"type":19,"value":4013,"position":8923},{"start":8924,"end":8925},{"line":5426,"column":1419,"offset":8918},{"line":5426,"column":4968,"offset":8926},21862,{"type":14,"tagName":142,"properties":8928,"children":8929,"position":8936},{},[8930],{"type":19,"value":8931,"position":8932},".lower",{"start":8933,"end":8934},{"line":5426,"column":4968,"offset":8926},{"line":5426,"column":4164,"offset":8935},21870,{"start":8937,"end":8938},{"line":5426,"column":4968,"offset":8926},{"line":5426,"column":4164,"offset":8935},{"type":19,"value":260,"position":8940},{"start":8941,"end":8942},{"line":5426,"column":4164,"offset":8935},{"line":5426,"column":5366,"offset":8943},21872,{"type":14,"tagName":142,"properties":8945,"children":8946,"position":8953},{},[8947],{"type":19,"value":8948,"position":8949},"macd",{"start":8950,"end":8951},{"line":5426,"column":5366,"offset":8943},{"line":5426,"column":5584,"offset":8952},21878,{"start":8954,"end":8955},{"line":5426,"column":5366,"offset":8943},{"line":5426,"column":5584,"offset":8952},{"type":19,"value":8957,"position":8958}," exposes ",{"start":8959,"end":8960},{"line":5426,"column":5584,"offset":8952},{"line":5426,"column":4429,"offset":8961},21887,{"type":14,"tagName":142,"properties":8963,"children":8964,"position":8971},{},[8965],{"type":19,"value":8966,"position":8967},".macd",{"start":8968,"end":8969},{"line":5426,"column":4429,"offset":8961},{"line":5426,"column":6015,"offset":8970},21894,{"start":8972,"end":8973},{"line":5426,"column":4429,"offset":8961},{"line":5426,"column":6015,"offset":8970},{"type":19,"value":4013,"position":8975},{"start":8976,"end":8977},{"line":5426,"column":6015,"offset":8970},{"line":5426,"column":6078,"offset":8978},21895,{"type":14,"tagName":142,"properties":8980,"children":8981,"position":8987},{},[8982],{"type":19,"value":7109,"position":8983},{"start":8984,"end":8985},{"line":5426,"column":6078,"offset":8978},{"line":5426,"column":4448,"offset":8986},21904,{"start":8988,"end":8989},{"line":5426,"column":6078,"offset":8978},{"line":5426,"column":4448,"offset":8986},{"type":19,"value":4013,"position":8991},{"start":8992,"end":8993},{"line":5426,"column":4448,"offset":8986},{"line":5426,"column":7430,"offset":8994},21905,{"type":14,"tagName":142,"properties":8996,"children":8997,"position":9004},{},[8998],{"type":19,"value":8999,"position":9000},".histogram",{"start":9001,"end":9002},{"line":5426,"column":7430,"offset":8994},{"line":5426,"column":458,"offset":9003},21917,{"start":9005,"end":9006},{"line":5426,"column":7430,"offset":8994},{"line":5426,"column":458,"offset":9003},{"type":19,"value":9008,"position":9009}," (alias ",{"start":9010,"end":9011},{"line":5426,"column":458,"offset":9003},{"line":5426,"column":8677,"offset":9012},21925,{"type":14,"tagName":142,"properties":9014,"children":9015,"position":9022},{},[9016],{"type":19,"value":9017,"position":9018},".hist",{"start":9019,"end":9020},{"line":5426,"column":8677,"offset":9012},{"line":5426,"column":6193,"offset":9021},21932,{"start":9023,"end":9024},{"line":5426,"column":8677,"offset":9012},{"line":5426,"column":6193,"offset":9021},{"type":19,"value":6308,"position":9026},{"start":9027,"end":9028},{"line":5426,"column":6193,"offset":9021},{"line":5426,"column":3468,"offset":9029},21935,{"type":14,"tagName":142,"properties":9031,"children":9032,"position":9039},{},[9033],{"type":19,"value":9034,"position":9035},"stoch",{"start":9036,"end":9037},{"line":5426,"column":3468,"offset":9029},{"line":5426,"column":1477,"offset":9038},21942,{"start":9040,"end":9041},{"line":5426,"column":3468,"offset":9029},{"line":5426,"column":1477,"offset":9038},{"type":19,"value":8957,"position":9043},{"start":9044,"end":9045},{"line":5426,"column":1477,"offset":9038},{"line":5426,"column":4538,"offset":9046},21951,{"type":14,"tagName":142,"properties":9048,"children":9049,"position":9055},{},[9050],{"type":19,"value":7126,"position":9051},{"start":9052,"end":9053},{"line":5426,"column":4538,"offset":9046},{"line":5426,"column":2036,"offset":9054},21955,{"start":9056,"end":9057},{"line":5426,"column":4538,"offset":9046},{"line":5426,"column":2036,"offset":9054},{"type":19,"value":4013,"position":9059},{"start":9060,"end":9061},{"line":5426,"column":2036,"offset":9054},{"line":5426,"column":4034,"offset":9062},21956,{"type":14,"tagName":142,"properties":9064,"children":9065,"position":9072},{},[9066],{"type":19,"value":9067,"position":9068},".d",{"start":9069,"end":9070},{"line":5426,"column":4034,"offset":9062},{"line":5426,"column":1069,"offset":9071},21960,{"start":9073,"end":9074},{"line":5426,"column":4034,"offset":9062},{"line":5426,"column":1069,"offset":9071},{"type":19,"value":260,"position":9076},{"start":9077,"end":9078},{"line":5426,"column":1069,"offset":9071},{"line":5426,"column":736,"offset":9079},21962,{"type":14,"tagName":142,"properties":9081,"children":9082,"position":9090},{},[9083],{"type":19,"value":9084,"position":9085},"supertrend",{"start":9086,"end":9087},{"line":5426,"column":736,"offset":9079},{"line":5426,"column":9088,"offset":9089},174,21974,{"start":9091,"end":9092},{"line":5426,"column":736,"offset":9079},{"line":5426,"column":9088,"offset":9089},{"type":19,"value":8957,"position":9094},{"start":9095,"end":9096},{"line":5426,"column":9088,"offset":9089},{"line":5426,"column":2428,"offset":9097},21983,{"type":14,"tagName":142,"properties":9099,"children":9100,"position":9106},{},[9101],{"type":19,"value":7143,"position":9102},{"start":9103,"end":9104},{"line":5426,"column":2428,"offset":9097},{"line":5426,"column":131,"offset":9105},21990,{"start":9107,"end":9108},{"line":5426,"column":2428,"offset":9097},{"line":5426,"column":131,"offset":9105},{"type":19,"value":4013,"position":9110},{"start":9111,"end":9112},{"line":5426,"column":131,"offset":9105},{"line":5426,"column":7567,"offset":9113},21991,{"type":14,"tagName":142,"properties":9115,"children":9116,"position":9123},{},[9117],{"type":19,"value":9118,"position":9119},".direction",{"start":9120,"end":9121},{"line":5426,"column":7567,"offset":9113},{"line":5426,"column":134,"offset":9122},22003,{"start":9124,"end":9125},{"line":5426,"column":7567,"offset":9113},{"line":5426,"column":134,"offset":9122},{"type":19,"value":9127,"position":9128},". Streams support history indexing (",{"start":9129,"end":9130},{"line":5426,"column":134,"offset":9122},{"line":5426,"column":6987,"offset":9131},22039,{"type":14,"tagName":142,"properties":9133,"children":9134,"position":9141},{},[9135],{"type":19,"value":9136,"position":9137},"macd.signal[1] > macd.signal[2]",{"start":9138,"end":9139},{"line":5426,"column":6987,"offset":9131},{"line":5426,"column":214,"offset":9140},22072,{"start":9142,"end":9143},{"line":5426,"column":6987,"offset":9131},{"line":5426,"column":214,"offset":9140},{"type":19,"value":9145,"position":9146},") and feed ",{"start":9147,"end":9148},{"line":5426,"column":214,"offset":9140},{"line":5426,"column":601,"offset":9149},22083,{"type":14,"tagName":142,"properties":9151,"children":9152,"position":9159},{},[9153],{"type":19,"value":9154,"position":9155},"fillBetween(bands.upper, bands.lower, ...)",{"start":9156,"end":9157},{"line":5426,"column":601,"offset":9149},{"line":5426,"column":3588,"offset":9158},22127,{"start":9160,"end":9161},{"line":5426,"column":601,"offset":9149},{"line":5426,"column":3588,"offset":9158},{"type":19,"value":9163,"position":9164}," directly. Unknown stream names are compile errors listing the valid ones.",{"start":9165,"end":9166},{"line":5426,"column":3588,"offset":9158},{"line":5426,"column":9167,"offset":9168},401,22201,{"start":9170,"end":9172},{"line":5426,"column":23,"offset":9171},21801,{"line":5426,"column":9167,"offset":9168},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9175,"children":9176,"position":9250},{},[9177,9192,9197,9210,9216,9227,9233,9244],{"type":14,"tagName":29,"properties":9178,"children":9179,"position":9187},{},[9180],{"type":19,"value":9181,"position":9182},"Anchored VWAP.",{"start":9183,"end":9185},{"line":1468,"column":93,"offset":9184},22206,{"line":1468,"column":1985,"offset":9186},22220,{"start":9188,"end":9190},{"line":1468,"column":67,"offset":9189},22204,{"line":1468,"column":2979,"offset":9191},22222,{"type":19,"value":2119,"position":9193},{"start":9194,"end":9195},{"line":1468,"column":2979,"offset":9191},{"line":1468,"column":2245,"offset":9196},22223,{"type":14,"tagName":142,"properties":9198,"children":9199,"position":9207},{},[9200],{"type":19,"value":9201,"position":9202},"vwap(anchor=\"day\"|\"week\"|\"month\")",{"start":9203,"end":9204},{"line":1468,"column":2245,"offset":9196},{"line":1468,"column":9205,"offset":9206},57,22258,{"start":9208,"end":9209},{"line":1468,"column":2245,"offset":9196},{"line":1468,"column":9205,"offset":9206},{"type":19,"value":9211,"position":9212}," (or raw milliseconds) resets at UTC calendar boundaries. Anchored values are stable when older history lazy-loads (each session is self-contained); a leading partial session emits ",{"start":9213,"end":9214},{"line":1468,"column":9205,"offset":9206},{"line":1468,"column":194,"offset":9215},22439,{"type":14,"tagName":142,"properties":9217,"children":9218,"position":9224},{},[9219],{"type":19,"value":812,"position":9220},{"start":9221,"end":9222},{"line":1468,"column":194,"offset":9215},{"line":1468,"column":563,"offset":9223},22443,{"start":9225,"end":9226},{"line":1468,"column":194,"offset":9215},{"line":1468,"column":563,"offset":9223},{"type":19,"value":9228,"position":9229}," instead of a wrong line. ",{"start":9230,"end":9231},{"line":1468,"column":563,"offset":9223},{"line":1468,"column":6817,"offset":9232},22469,{"type":14,"tagName":142,"properties":9234,"children":9235,"position":9241},{},[9236],{"type":19,"value":7265,"position":9237},{"start":9238,"end":9239},{"line":1468,"column":6817,"offset":9232},{"line":1468,"column":3318,"offset":9240},22477,{"start":9242,"end":9243},{"line":1468,"column":6817,"offset":9232},{"line":1468,"column":3318,"offset":9240},{"type":19,"value":9245,"position":9246}," with no anchor keeps the cumulative behavior unchanged.",{"start":9247,"end":9248},{"line":1468,"column":3318,"offset":9240},{"line":1468,"column":7685,"offset":9249},22533,{"start":9251,"end":9253},{"line":1468,"column":23,"offset":9252},22202,{"line":1468,"column":7685,"offset":9249},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9256,"children":9257,"position":9347},{},[9258,9273,9278,9289,9295,9306,9312,9323,9329,9341],{"type":14,"tagName":29,"properties":9259,"children":9260,"position":9268},{},[9261],{"type":19,"value":9262,"position":9263},"Struct methods.",{"start":9264,"end":9266},{"line":4007,"column":93,"offset":9265},22538,{"line":4007,"column":2555,"offset":9267},22553,{"start":9269,"end":9271},{"line":4007,"column":67,"offset":9270},22536,{"line":4007,"column":2245,"offset":9272},22555,{"type":19,"value":2119,"position":9274},{"start":9275,"end":9276},{"line":4007,"column":2245,"offset":9272},{"line":4007,"column":27,"offset":9277},22556,{"type":14,"tagName":142,"properties":9279,"children":9280,"position":9286},{},[9281],{"type":19,"value":5459,"position":9282},{"start":9283,"end":9284},{"line":4007,"column":27,"offset":9277},{"line":4007,"column":3000,"offset":9285},22562,{"start":9287,"end":9288},{"line":4007,"column":27,"offset":9277},{"line":4007,"column":3000,"offset":9285},{"type":19,"value":9290,"position":9291}," declarations inside ",{"start":9292,"end":9293},{"line":4007,"column":3000,"offset":9285},{"line":4007,"column":2881,"offset":9294},22583,{"type":14,"tagName":142,"properties":9296,"children":9297,"position":9303},{},[9298],{"type":19,"value":5477,"position":9299},{"start":9300,"end":9301},{"line":4007,"column":2881,"offset":9294},{"line":4007,"column":538,"offset":9302},22589,{"start":9304,"end":9305},{"line":4007,"column":2881,"offset":9294},{"line":4007,"column":538,"offset":9302},{"type":19,"value":9307,"position":9308}," blocks, dispatched from the type with ",{"start":9309,"end":9310},{"line":4007,"column":538,"offset":9302},{"line":4007,"column":6078,"offset":9311},22628,{"type":14,"tagName":142,"properties":9313,"children":9314,"position":9320},{},[9315],{"type":19,"value":5496,"position":9316},{"start":9317,"end":9318},{"line":4007,"column":6078,"offset":9311},{"line":4007,"column":69,"offset":9319},22634,{"start":9321,"end":9322},{"line":4007,"column":6078,"offset":9311},{"line":4007,"column":69,"offset":9319},{"type":19,"value":9324,"position":9325}," bound to the receiver (",{"start":9326,"end":9327},{"line":4007,"column":69,"offset":9319},{"line":4007,"column":8677,"offset":9328},22658,{"type":14,"tagName":142,"properties":9330,"children":9331,"position":9338},{},[9332],{"type":19,"value":9333,"position":9334},"this.field = x",{"start":9335,"end":9336},{"line":4007,"column":8677,"offset":9328},{"line":4007,"column":4007,"offset":9337},22674,{"start":9339,"end":9340},{"line":4007,"column":8677,"offset":9328},{"line":4007,"column":4007,"offset":9337},{"type":19,"value":9342,"position":9343}," mutates the struct). Instances remain plain clone-safe data; methods never collide with globals; library-exported types carry their methods.",{"start":9344,"end":9345},{"line":4007,"column":4007,"offset":9337},{"line":4007,"column":1312,"offset":9346},22815,{"start":9348,"end":9350},{"line":4007,"column":23,"offset":9349},22534,{"line":4007,"column":1312,"offset":9346},{"type":19,"value":57},{"start":9353,"end":9354},{"line":5426,"column":23,"offset":9171},{"line":4007,"column":1312,"offset":9346},{"type":19,"value":57},{"type":14,"tagName":462,"properties":9357,"children":9359,"position":9366},{"id":9358},"compatibility-2",[9360],{"type":19,"value":8743,"position":9361},{"start":9362,"end":9364},{"line":3085,"column":93,"offset":9363},22821,{"line":3085,"column":71,"offset":9365},22834,{"start":9367,"end":9369},{"line":3085,"column":23,"offset":9368},22817,{"line":3085,"column":71,"offset":9365},{"type":19,"value":57},{"type":14,"tagName":481,"properties":9372,"children":9373,"position":9407},{},[9374,9375,9406],{"type":19,"value":57},{"type":14,"tagName":486,"properties":9376,"children":9377,"position":9402},{},[9378,9385,9396],{"type":19,"value":9379,"position":9380},"Fully additive: positional stream access, unanchored ",{"start":9381,"end":9383},{"line":4511,"column":67,"offset":9382},22838,{"line":4511,"column":538,"offset":9384},22891,{"type":14,"tagName":142,"properties":9386,"children":9387,"position":9393},{},[9388],{"type":19,"value":7265,"position":9389},{"start":9390,"end":9391},{"line":4511,"column":538,"offset":9384},{"line":4511,"column":2384,"offset":9392},22899,{"start":9394,"end":9395},{"line":4511,"column":538,"offset":9384},{"line":4511,"column":2384,"offset":9392},{"type":19,"value":9397,"position":9398},", and field-only types behave byte-identically to v3.1.",{"start":9399,"end":9400},{"line":4511,"column":2384,"offset":9392},{"line":4511,"column":100,"offset":9401},22954,{"start":9403,"end":9405},{"line":4511,"column":23,"offset":9404},22836,{"line":4511,"column":100,"offset":9401},{"type":19,"value":57},{"start":9408,"end":9409},{"line":4511,"column":23,"offset":9404},{"line":4511,"column":100,"offset":9401},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":9412,"children":9413,"position":9414},{},[],{"start":9415,"end":9417},{"line":5187,"column":23,"offset":9416},22956,{"line":5187,"column":68,"offset":9418},22959,{"type":19,"value":57},{"type":14,"tagName":59,"properties":9421,"children":9423,"position":9431},{"id":9422},"v3.1.0-june-2026",[9424],{"type":19,"value":9425,"position":9426},"v3.1.0 — June 2026",{"start":9427,"end":9429},{"line":7147,"column":68,"offset":9428},22964,{"line":7147,"column":2245,"offset":9430},22982,{"start":9432,"end":9434},{"line":7147,"column":23,"offset":9433},22961,{"line":7147,"column":2245,"offset":9430},{"type":19,"value":57},{"type":14,"tagName":15,"properties":9437,"children":9438,"position":9467},{},[9439,9446,9461],{"type":19,"value":9440,"position":9441},"The data layer opened up: one script can now combine symbols, venues, and data types with proper guard rails, and the docs gained a dedicated ",{"start":9442,"end":9444},{"line":4538,"column":23,"offset":9443},22984,{"line":4538,"column":3085,"offset":9445},23126,{"type":14,"tagName":1943,"properties":9447,"children":9448,"position":9457},{"href":3882},[9449],{"type":19,"value":9450,"position":9451},"Multi-Source & Aggregation",{"start":9452,"end":9454},{"line":4538,"column":726,"offset":9453},23127,{"line":4538,"column":9455,"offset":9456},170,23153,{"start":9458,"end":9459},{"line":4538,"column":3085,"offset":9445},{"line":4538,"column":2455,"offset":9460},23191,{"type":19,"value":9462,"position":9463}," guide.",{"start":9464,"end":9465},{"line":4538,"column":2455,"offset":9460},{"line":4538,"column":796,"offset":9466},23198,{"start":9468,"end":9469},{"line":4538,"column":23,"offset":9443},{"line":4538,"column":796,"offset":9466},{"type":19,"value":57},{"type":14,"tagName":462,"properties":9472,"children":9474,"position":9482},{"id":9473},"added-6",[9475],{"type":19,"value":467,"position":9476},{"start":9477,"end":9480},{"line":9478,"column":93,"offset":9479},153,23204,{"line":9478,"column":473,"offset":9481},23209,{"start":9483,"end":9485},{"line":9478,"column":23,"offset":9484},23200,{"line":9478,"column":473,"offset":9481},{"type":19,"value":57},{"type":14,"tagName":481,"properties":9488,"children":9489,"position":9806},{},[9490,9491,9573,9574,9645,9646,9747,9748,9776,9777,9805],{"type":19,"value":57},{"type":14,"tagName":486,"properties":9492,"children":9493,"position":9569},{},[9494,9515,9521,9533,9538,9549,9556],{"type":14,"tagName":29,"properties":9495,"children":9496,"position":9510},{},[9497],{"type":14,"tagName":142,"properties":9498,"children":9499,"position":9507},{},[9500],{"type":19,"value":9501,"position":9502},"request(symbol, timeframe?, type?, exchange?)",{"start":9503,"end":9505},{"line":2036,"column":93,"offset":9504},23215,{"line":2036,"column":1409,"offset":9506},23262,{"start":9508,"end":9509},{"line":2036,"column":93,"offset":9504},{"line":2036,"column":1409,"offset":9506},{"start":9511,"end":9513},{"line":2036,"column":67,"offset":9512},23213,{"line":2036,"column":2012,"offset":9514},23264,{"type":19,"value":9516,"position":9517}," — one call for the most common multi-symbol need; sugar over ",{"start":9518,"end":9519},{"line":2036,"column":2012,"offset":9514},{"line":2036,"column":3970,"offset":9520},23326,{"type":14,"tagName":142,"properties":9522,"children":9523,"position":9530},{},[9524],{"type":19,"value":9525,"position":9526},"source()",{"start":9527,"end":9528},{"line":2036,"column":3970,"offset":9520},{"line":2036,"column":5624,"offset":9529},23336,{"start":9531,"end":9532},{"line":2036,"column":3970,"offset":9520},{"line":2036,"column":5624,"offset":9529},{"type":19,"value":7188,"position":9534},{"start":9535,"end":9536},{"line":2036,"column":5624,"offset":9529},{"line":2036,"column":3997,"offset":9537},23339,{"type":14,"tagName":142,"properties":9539,"children":9540,"position":9546},{},[9541],{"type":19,"value":4417,"position":9542},{"start":9543,"end":9544},{"line":2036,"column":3997,"offset":9537},{"line":2036,"column":716,"offset":9545},23346,{"start":9547,"end":9548},{"line":2036,"column":3997,"offset":9537},{"line":2036,"column":716,"offset":9545},{"type":19,"value":9550,"position":9551}," with the same no-repaint guarantee. ",{"start":9552,"end":9553},{"line":2036,"column":716,"offset":9545},{"line":2036,"column":9554,"offset":9555},173,23383,{"type":14,"tagName":1943,"properties":9557,"children":9558,"position":9565},{"href":3882},[9559],{"type":19,"value":3325,"position":9560},{"start":9561,"end":9563},{"line":2036,"column":9088,"offset":9562},23384,{"line":2036,"column":756,"offset":9564},23388,{"start":9566,"end":9567},{"line":2036,"column":9554,"offset":9555},{"line":2036,"column":4617,"offset":9568},23426,{"start":9570,"end":9572},{"line":2036,"column":23,"offset":9571},23211,{"line":2036,"column":4617,"offset":9568},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9575,"children":9576,"position":9641},{},[9577,9598,9604,9618,9623,9635],{"type":14,"tagName":29,"properties":9578,"children":9579,"position":9593},{},[9580],{"type":14,"tagName":142,"properties":9581,"children":9582,"position":9590},{},[9583],{"type":19,"value":9584,"position":9585},"ltf(interval, ...)",{"start":9586,"end":9588},{"line":4034,"column":93,"offset":9587},23431,{"line":4034,"column":37,"offset":9589},23451,{"start":9591,"end":9592},{"line":4034,"column":93,"offset":9587},{"line":4034,"column":37,"offset":9589},{"start":9594,"end":9596},{"line":4034,"column":67,"offset":9595},23429,{"line":4034,"column":499,"offset":9597},23453,{"type":19,"value":9599,"position":9600}," — lower-timeframe bars delivered as ",{"start":9601,"end":9602},{"line":4034,"column":499,"offset":9597},{"line":4034,"column":2384,"offset":9603},23490,{"type":14,"tagName":29,"properties":9605,"children":9606,"position":9614},{},[9607],{"type":19,"value":9608,"position":9609},"cells on the chart's own bars",{"start":9610,"end":9612},{"line":4034,"column":2393,"offset":9611},23492,{"line":4034,"column":6078,"offset":9613},23521,{"start":9615,"end":9616},{"line":4034,"column":2384,"offset":9603},{"line":4034,"column":51,"offset":9617},23523,{"type":19,"value":304,"position":9619},{"start":9620,"end":9621},{"line":4034,"column":51,"offset":9617},{"line":4034,"column":3057,"offset":9622},23525,{"type":14,"tagName":142,"properties":9624,"children":9625,"position":9632},{},[9626],{"type":19,"value":9627,"position":9628},"ltf(\"15m\").cells",{"start":9629,"end":9630},{"line":4034,"column":3057,"offset":9622},{"line":4034,"column":458,"offset":9631},23543,{"start":9633,"end":9634},{"line":4034,"column":3057,"offset":9622},{"line":4034,"column":458,"offset":9631},{"type":19,"value":9636,"position":9637}," on a 1h chart = each bar's four 15m bars), composing with reducers and structs like any order-flow source. Requires the matching platform data-service update; intervals are literal strings, strictly finer than the chart.",{"start":9638,"end":9639},{"line":4034,"column":458,"offset":9631},{"line":4034,"column":1331,"offset":9640},23764,{"start":9642,"end":9644},{"line":4034,"column":23,"offset":9643},23427,{"line":4034,"column":1331,"offset":9640},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9647,"children":9648,"position":9743},{},[9649,9663,9669,9683,9689,9700,9706,9720,9725,9738],{"type":14,"tagName":29,"properties":9650,"children":9651,"position":9658},{},[9652],{"type":19,"value":8588,"position":9653},{"start":9654,"end":9656},{"line":7547,"column":93,"offset":9655},23769,{"line":7547,"column":71,"offset":9657},23782,{"start":9659,"end":9661},{"line":7547,"column":67,"offset":9660},23767,{"line":7547,"column":2555,"offset":9662},23784,{"type":19,"value":9664,"position":9665}," — at most ",{"start":9666,"end":9667},{"line":7547,"column":2555,"offset":9662},{"line":7547,"column":2255,"offset":9668},23795,{"type":14,"tagName":29,"properties":9670,"children":9671,"position":9679},{},[9672],{"type":19,"value":9673,"position":9674},"8 distinct data sources per script",{"start":9675,"end":9677},{"line":7547,"column":39,"offset":9676},23797,{"line":7547,"column":548,"offset":9678},23831,{"start":9680,"end":9681},{"line":7547,"column":2255,"offset":9668},{"line":7547,"column":109,"offset":9682},23833,{"type":19,"value":9684,"position":9685}," at release (identical calls dedupe; ",{"start":9686,"end":9687},{"line":7547,"column":109,"offset":9682},{"line":7547,"column":1448,"offset":9688},23870,{"type":14,"tagName":142,"properties":9690,"children":9691,"position":9697},{},[9692],{"type":19,"value":4417,"position":9693},{"start":9694,"end":9695},{"line":7547,"column":1448,"offset":9688},{"line":7547,"column":2598,"offset":9696},23877,{"start":9698,"end":9699},{"line":7547,"column":1448,"offset":9688},{"line":7547,"column":2598,"offset":9696},{"type":19,"value":9701,"position":9702},"/derived series free), joining the sandbox manifest with the usual loud line:column error and tier override. Raised to ",{"start":9703,"end":9704},{"line":7547,"column":2598,"offset":9696},{"line":7547,"column":3425,"offset":9705},23996,{"type":14,"tagName":29,"properties":9707,"children":9708,"position":9716},{},[9709],{"type":19,"value":8628,"position":9710},{"start":9711,"end":9714},{"line":7547,"column":9712,"offset":9713},234,23998,{"line":7547,"column":151,"offset":9715},24000,{"start":9717,"end":9718},{"line":7547,"column":3425,"offset":9705},{"line":7547,"column":194,"offset":9719},24002,{"type":19,"value":5468,"position":9721},{"start":9722,"end":9723},{"line":7547,"column":194,"offset":9719},{"line":7547,"column":563,"offset":9724},24006,{"type":14,"tagName":1943,"properties":9726,"children":9727,"position":9734},{"href":5718},[9728],{"type":19,"value":5554,"position":9729},{"start":9730,"end":9732},{"line":7547,"column":6996,"offset":9731},24007,{"line":7547,"column":6483,"offset":9733},24013,{"start":9735,"end":9736},{"line":7547,"column":563,"offset":9724},{"line":7547,"column":6822,"offset":9737},24033,{"type":19,"value":1356,"position":9739},{"start":9740,"end":9741},{"line":7547,"column":6822,"offset":9737},{"line":7547,"column":4330,"offset":9742},24034,{"start":9744,"end":9746},{"line":7547,"column":23,"offset":9745},23765,{"line":7547,"column":4330,"offset":9742},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9749,"children":9750,"position":9772},{},[9751,9766],{"type":14,"tagName":29,"properties":9752,"children":9753,"position":9761},{},[9754],{"type":19,"value":9755,"position":9756},"Source catalog",{"start":9757,"end":9759},{"line":5643,"column":93,"offset":9758},24039,{"line":5643,"column":1985,"offset":9760},24053,{"start":9762,"end":9764},{"line":5643,"column":67,"offset":9763},24037,{"line":5643,"column":2979,"offset":9765},24055,{"type":19,"value":9767,"position":9768}," — the platform now serves a machine-readable catalog of which source types and venues exist, and unavailable requests fail with the list of what does.",{"start":9769,"end":9770},{"line":5643,"column":2979,"offset":9765},{"line":5643,"column":3239,"offset":9771},24206,{"start":9773,"end":9775},{"line":5643,"column":23,"offset":9774},24035,{"line":5643,"column":3239,"offset":9771},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9778,"children":9779,"position":9801},{},[9780,9795],{"type":14,"tagName":29,"properties":9781,"children":9782,"position":9790},{},[9783],{"type":19,"value":9784,"position":9785},"Aggregation patterns documented",{"start":9786,"end":9788},{"line":1487,"column":93,"offset":9787},24211,{"line":1487,"column":5532,"offset":9789},24242,{"start":9791,"end":9793},{"line":1487,"column":67,"offset":9792},24209,{"line":1487,"column":5351,"offset":9794},24244,{"type":19,"value":9796,"position":9797}," — cross-exchange CVD, venue-weighted open interest, dominance ratios, and HTF views of aggregates, all on the new multi-source page.",{"start":9798,"end":9799},{"line":1487,"column":5351,"offset":9794},{"line":1487,"column":746,"offset":9800},24377,{"start":9802,"end":9804},{"line":1487,"column":23,"offset":9803},24207,{"line":1487,"column":746,"offset":9800},{"type":19,"value":57},{"start":9807,"end":9808},{"line":2036,"column":23,"offset":9571},{"line":1487,"column":746,"offset":9800},{"type":19,"value":57},{"type":14,"tagName":462,"properties":9811,"children":9813,"position":9820},{"id":9812},"changed-2",[9814],{"type":19,"value":2715,"position":9815},{"start":9816,"end":9818},{"line":1496,"column":93,"offset":9817},24383,{"line":1496,"column":96,"offset":9819},24390,{"start":9821,"end":9823},{"line":1496,"column":23,"offset":9822},24379,{"line":1496,"column":96,"offset":9819},{"type":19,"value":57},{"type":14,"tagName":481,"properties":9826,"children":9827,"position":9880},{},[9828,9829,9863,9864,9879],{"type":19,"value":57},{"type":14,"tagName":486,"properties":9830,"children":9831,"position":9859},{},[9832,9839,9853],{"type":19,"value":9833,"position":9834},"Live feeds for ",{"start":9835,"end":9837},{"line":3232,"column":67,"offset":9836},24394,{"line":3232,"column":71,"offset":9838},24409,{"type":14,"tagName":29,"properties":9840,"children":9841,"position":9849},{},[9842],{"type":19,"value":9843,"position":9844},"non-OHLCV secondary sources",{"start":9845,"end":9847},{"line":3232,"column":2555,"offset":9846},24411,{"line":3232,"column":2274,"offset":9848},24438,{"start":9850,"end":9851},{"line":3232,"column":71,"offset":9838},{"line":3232,"column":150,"offset":9852},24440,{"type":19,"value":9854,"position":9855}," (funding, open interest, ratios) now merge ticks by their real data shape on the backend; secondary series on live charts become correct where they were previously merged as candles.",{"start":9856,"end":9857},{"line":3232,"column":150,"offset":9852},{"line":3232,"column":3425,"offset":9858},24623,{"start":9860,"end":9862},{"line":3232,"column":23,"offset":9861},24392,{"line":3232,"column":3425,"offset":9858},{"type":19,"value":57},{"type":14,"tagName":486,"properties":9865,"children":9866,"position":9875},{},[9867],{"type":19,"value":9868,"position":9869},"Idle feed eviction hardened platform-side (streams with zero registered consumers unsubscribe within one scan; failures keep streams alive rather than dropping them).",{"start":9870,"end":9872},{"line":6677,"column":67,"offset":9871},24626,{"line":6677,"column":9873,"offset":9874},169,24792,{"start":9876,"end":9878},{"line":6677,"column":23,"offset":9877},24624,{"line":6677,"column":9873,"offset":9874},{"type":19,"value":57},{"start":9881,"end":9882},{"line":3232,"column":23,"offset":9861},{"line":6677,"column":9873,"offset":9874},{"type":19,"value":57},{"type":14,"tagName":462,"properties":9885,"children":9887,"position":9895},{"id":9886},"compatibility-3",[9888],{"type":19,"value":8743,"position":9889},{"start":9890,"end":9893},{"line":9891,"column":93,"offset":9892},166,24798,{"line":9891,"column":71,"offset":9894},24811,{"start":9896,"end":9898},{"line":9891,"column":23,"offset":9897},24794,{"line":9891,"column":71,"offset":9894},{"type":19,"value":57},{"type":14,"tagName":481,"properties":9901,"children":9902,"position":9936},{},[9903,9904,9935],{"type":19,"value":57},{"type":14,"tagName":486,"properties":9905,"children":9906,"position":9931},{},[9907,9914,9925],{"type":19,"value":9908,"position":9909},"Fully additive language-side. ",{"start":9910,"end":9912},{"line":2304,"column":67,"offset":9911},24815,{"line":2304,"column":39,"offset":9913},24845,{"type":14,"tagName":142,"properties":9915,"children":9916,"position":9922},{},[9917],{"type":19,"value":5818,"position":9918},{"start":9919,"end":9920},{"line":2304,"column":39,"offset":9913},{"line":2304,"column":4233,"offset":9921},24852,{"start":9923,"end":9924},{"line":2304,"column":39,"offset":9913},{"line":2304,"column":4233,"offset":9921},{"type":19,"value":9926,"position":9927}," errors clearly until the platform data services ship the matching update.",{"start":9928,"end":9929},{"line":2304,"column":4233,"offset":9921},{"line":2304,"column":1458,"offset":9930},24926,{"start":9932,"end":9934},{"line":2304,"column":23,"offset":9933},24813,{"line":2304,"column":1458,"offset":9930},{"type":19,"value":57},{"start":9937,"end":9938},{"line":2304,"column":23,"offset":9933},{"line":2304,"column":1458,"offset":9930},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":9941,"children":9942,"position":9943},{},[],{"start":9944,"end":9946},{"line":9455,"column":23,"offset":9945},24928,{"line":9455,"column":68,"offset":9947},24931,{"type":19,"value":57},{"type":14,"tagName":59,"properties":9950,"children":9952,"position":9960},{"id":9951},"v3.0.0-june-2026",[9953],{"type":19,"value":9954,"position":9955},"v3.0.0 — June 2026",{"start":9956,"end":9958},{"line":3239,"column":68,"offset":9957},24936,{"line":3239,"column":2245,"offset":9959},24954,{"start":9961,"end":9963},{"line":3239,"column":23,"offset":9962},24933,{"line":3239,"column":2245,"offset":9959},{"type":19,"value":57},{"type":14,"tagName":15,"properties":9966,"children":9967,"position":9996},{},[9968,9976,9990],{"type":19,"value":9969,"position":9970},"The largest upgrade kScript has had: the language grows from \"indicator scripting\" to a full charting language with data structures, your own types, stateful drawings, multi-timeframe access, and shareable libraries. Existing v2 scripts run unchanged (two narrow numeric corrections aside; see below). Full guides for everything here are linked throughout the docs; the migration page has the ",{"start":9971,"end":9973},{"line":9088,"column":23,"offset":9972},24956,{"line":9088,"column":9974,"offset":9975},394,25349,{"type":14,"tagName":1943,"properties":9977,"children":9978,"position":9986},{"href":2940},[9979],{"type":19,"value":9980,"position":9981},"adoption path",{"start":9982,"end":9984},{"line":9088,"column":1014,"offset":9983},25350,{"line":9088,"column":3620,"offset":9985},25363,{"start":9987,"end":9988},{"line":9088,"column":9974,"offset":9975},{"line":9088,"column":1619,"offset":9989},25394,{"type":19,"value":1356,"position":9991},{"start":9992,"end":9993},{"line":9088,"column":1619,"offset":9989},{"line":9088,"column":9994,"offset":9995},440,25395,{"start":9997,"end":9998},{"line":9088,"column":23,"offset":9972},{"line":9088,"column":9994,"offset":9995},{"type":19,"value":57},{"type":14,"tagName":462,"properties":10001,"children":10003,"position":10010},{"id":10002},"added-7",[10004],{"type":19,"value":467,"position":10005},{"start":10006,"end":10008},{"line":6686,"column":93,"offset":10007},25401,{"line":6686,"column":473,"offset":10009},25406,{"start":10011,"end":10013},{"line":6686,"column":23,"offset":10012},25397,{"line":6686,"column":473,"offset":10009},{"type":19,"value":57},{"type":14,"tagName":481,"properties":10016,"children":10017,"position":11607},{},[10018,10019,10095,10096,10276,10277,10353,10354,10461,10462,10519,10520,10634,10635,10795,10796,10927,10928,11005,11006,11149,11150,11274,11275,11487,11488,11562,11563,11606],{"type":19,"value":57},{"type":14,"tagName":486,"properties":10020,"children":10021,"position":10091},{},[10022,10036,10042,10054,10059,10072,10078],{"type":14,"tagName":29,"properties":10023,"children":10024,"position":10031},{},[10025],{"type":19,"value":2683,"position":10026},{"start":10027,"end":10029},{"line":756,"column":93,"offset":10028},25412,{"line":756,"column":133,"offset":10030},25423,{"start":10032,"end":10034},{"line":756,"column":67,"offset":10033},25410,{"line":756,"column":71,"offset":10035},25425,{"type":19,"value":10037,"position":10038}," — first-class arrays and maps with method-call syntax (",{"start":10039,"end":10040},{"line":756,"column":71,"offset":10035},{"line":756,"column":2753,"offset":10041},25481,{"type":14,"tagName":142,"properties":10043,"children":10044,"position":10051},{},[10045],{"type":19,"value":10046,"position":10047},"book.push(x)",{"start":10048,"end":10049},{"line":756,"column":2753,"offset":10041},{"line":756,"column":4986,"offset":10050},25495,{"start":10052,"end":10053},{"line":756,"column":2753,"offset":10041},{"line":756,"column":4986,"offset":10050},{"type":19,"value":260,"position":10055},{"start":10056,"end":10057},{"line":756,"column":4986,"offset":10050},{"line":756,"column":1429,"offset":10058},25497,{"type":14,"tagName":142,"properties":10060,"children":10061,"position":10069},{},[10062],{"type":19,"value":10063,"position":10064},"levels.get(\"poc\")",{"start":10065,"end":10066},{"line":756,"column":1429,"offset":10058},{"line":756,"column":10067,"offset":10068},109,25516,{"start":10070,"end":10071},{"line":756,"column":1429,"offset":10058},{"line":756,"column":10067,"offset":10068},{"type":19,"value":10073,"position":10074},"), negative tail indexing, insertion-ordered maps, and compile-time element-type checking. ",{"start":10075,"end":10076},{"line":756,"column":10067,"offset":10068},{"line":756,"column":169,"offset":10077},25607,{"type":14,"tagName":1943,"properties":10079,"children":10080,"position":10087},{"href":2680},[10081],{"type":19,"value":3325,"position":10082},{"start":10083,"end":10085},{"line":756,"column":128,"offset":10084},25608,{"line":756,"column":7586,"offset":10086},25612,{"start":10088,"end":10089},{"line":756,"column":169,"offset":10077},{"line":756,"column":563,"offset":10090},25649,{"start":10092,"end":10094},{"line":756,"column":23,"offset":10093},25408,{"line":756,"column":563,"offset":10090},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10097,"children":10098,"position":10272},{},[10099,10114,10119,10131,10137,10149,10154,10166,10171,10184,10189,10201,10206,10218,10223,10235,10240,10252,10258],{"type":14,"tagName":29,"properties":10100,"children":10101,"position":10109},{},[10102],{"type":19,"value":10103,"position":10104},"Lambdas & reducers",{"start":10105,"end":10107},{"line":5436,"column":93,"offset":10106},25654,{"line":5436,"column":27,"offset":10108},25672,{"start":10110,"end":10112},{"line":5436,"column":67,"offset":10111},25652,{"line":5436,"column":37,"offset":10113},25674,{"type":19,"value":8296,"position":10115},{"start":10116,"end":10117},{"line":5436,"column":37,"offset":10113},{"line":5436,"column":2852,"offset":10118},25677,{"type":14,"tagName":142,"properties":10120,"children":10121,"position":10128},{},[10122],{"type":19,"value":10123,"position":10124},"(x) => ...",{"start":10125,"end":10126},{"line":5436,"column":2852,"offset":10118},{"line":5436,"column":4233,"offset":10127},25689,{"start":10129,"end":10130},{"line":5436,"column":2852,"offset":10118},{"line":5436,"column":4233,"offset":10127},{"type":19,"value":10132,"position":10133}," with closures; ",{"start":10134,"end":10135},{"line":5436,"column":4233,"offset":10127},{"line":5436,"column":538,"offset":10136},25705,{"type":14,"tagName":142,"properties":10138,"children":10139,"position":10146},{},[10140],{"type":19,"value":10141,"position":10142},"map",{"start":10143,"end":10144},{"line":5436,"column":538,"offset":10136},{"line":5436,"column":1419,"offset":10145},25710,{"start":10147,"end":10148},{"line":5436,"column":538,"offset":10136},{"line":5436,"column":1419,"offset":10145},{"type":19,"value":4013,"position":10150},{"start":10151,"end":10152},{"line":5436,"column":1419,"offset":10145},{"line":5436,"column":4968,"offset":10153},25711,{"type":14,"tagName":142,"properties":10155,"children":10156,"position":10163},{},[10157],{"type":19,"value":10158,"position":10159},"filter",{"start":10160,"end":10161},{"line":5436,"column":4968,"offset":10153},{"line":5436,"column":4164,"offset":10162},25719,{"start":10164,"end":10165},{"line":5436,"column":4968,"offset":10153},{"line":5436,"column":4164,"offset":10162},{"type":19,"value":4013,"position":10167},{"start":10168,"end":10169},{"line":5436,"column":4164,"offset":10162},{"line":5436,"column":5927,"offset":10170},25720,{"type":14,"tagName":142,"properties":10172,"children":10173,"position":10181},{},[10174],{"type":19,"value":10175,"position":10176},"reduce",{"start":10177,"end":10178},{"line":5436,"column":5927,"offset":10170},{"line":5436,"column":10179,"offset":10180},79,25728,{"start":10182,"end":10183},{"line":5436,"column":5927,"offset":10170},{"line":5436,"column":10179,"offset":10180},{"type":19,"value":4013,"position":10185},{"start":10186,"end":10187},{"line":5436,"column":10179,"offset":10180},{"line":5436,"column":5723,"offset":10188},25729,{"type":14,"tagName":142,"properties":10190,"children":10191,"position":10198},{},[10192],{"type":19,"value":10193,"position":10194},"forEach",{"start":10195,"end":10196},{"line":5436,"column":5723,"offset":10188},{"line":5436,"column":696,"offset":10197},25738,{"start":10199,"end":10200},{"line":5436,"column":5723,"offset":10188},{"line":5436,"column":696,"offset":10197},{"type":19,"value":4013,"position":10202},{"start":10203,"end":10204},{"line":5436,"column":696,"offset":10197},{"line":5436,"column":1429,"offset":10205},25739,{"type":14,"tagName":142,"properties":10207,"children":10208,"position":10215},{},[10209],{"type":19,"value":10210,"position":10211},"find",{"start":10212,"end":10213},{"line":5436,"column":1429,"offset":10205},{"line":5436,"column":52,"offset":10214},25745,{"start":10216,"end":10217},{"line":5436,"column":1429,"offset":10205},{"line":5436,"column":52,"offset":10214},{"type":19,"value":4013,"position":10219},{"start":10220,"end":10221},{"line":5436,"column":52,"offset":10214},{"line":5436,"column":51,"offset":10222},25746,{"type":14,"tagName":142,"properties":10224,"children":10225,"position":10232},{},[10226],{"type":19,"value":10227,"position":10228},"some",{"start":10229,"end":10230},{"line":5436,"column":51,"offset":10222},{"line":5436,"column":7046,"offset":10231},25752,{"start":10233,"end":10234},{"line":5436,"column":51,"offset":10222},{"line":5436,"column":7046,"offset":10231},{"type":19,"value":4013,"position":10236},{"start":10237,"end":10238},{"line":5436,"column":7046,"offset":10231},{"line":5436,"column":4448,"offset":10239},25753,{"type":14,"tagName":142,"properties":10241,"children":10242,"position":10249},{},[10243],{"type":19,"value":10244,"position":10245},"every",{"start":10246,"end":10247},{"line":5436,"column":4448,"offset":10239},{"line":5436,"column":706,"offset":10248},25760,{"start":10250,"end":10251},{"line":5436,"column":4448,"offset":10239},{"line":5436,"column":706,"offset":10248},{"type":19,"value":10253,"position":10254}," replace most loops. ",{"start":10255,"end":10256},{"line":5436,"column":706,"offset":10248},{"line":5436,"column":6193,"offset":10257},25781,{"type":14,"tagName":1943,"properties":10259,"children":10261,"position":10268},{"href":10260},"/kscript/core-concepts/lambdas-and-reducers",[10262],{"type":19,"value":3325,"position":10263},{"start":10264,"end":10266},{"line":5436,"column":8794,"offset":10265},25782,{"line":5436,"column":2608,"offset":10267},25786,{"start":10269,"end":10270},{"line":5436,"column":6193,"offset":10257},{"line":5436,"column":2428,"offset":10271},25832,{"start":10273,"end":10275},{"line":5436,"column":23,"offset":10274},25650,{"line":5436,"column":2428,"offset":10271},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10278,"children":10279,"position":10349},{},[10280,10295,10300,10312,10317,10329,10335],{"type":14,"tagName":29,"properties":10281,"children":10282,"position":10290},{},[10283],{"type":19,"value":10284,"position":10285},"User-defined types",{"start":10286,"end":10288},{"line":1079,"column":93,"offset":10287},25837,{"line":1079,"column":27,"offset":10289},25855,{"start":10291,"end":10293},{"line":1079,"column":67,"offset":10292},25835,{"line":1079,"column":37,"offset":10294},25857,{"type":19,"value":8296,"position":10296},{"start":10297,"end":10298},{"line":1079,"column":37,"offset":10294},{"line":1079,"column":2852,"offset":10299},25860,{"type":14,"tagName":142,"properties":10301,"children":10302,"position":10309},{},[10303],{"type":19,"value":10304,"position":10305},"type Zone { top: number, bottom: number }",{"start":10306,"end":10307},{"line":1079,"column":2852,"offset":10299},{"line":1079,"column":5927,"offset":10308},25903,{"start":10310,"end":10311},{"line":1079,"column":2852,"offset":10299},{"line":1079,"column":5927,"offset":10308},{"type":19,"value":260,"position":10313},{"start":10314,"end":10315},{"line":1079,"column":5927,"offset":10308},{"line":1079,"column":1261,"offset":10316},25905,{"type":14,"tagName":142,"properties":10318,"children":10319,"position":10326},{},[10320],{"type":19,"value":10321,"position":10322},"Zone.new(top=...)",{"start":10323,"end":10324},{"line":1079,"column":1261,"offset":10316},{"line":1079,"column":5407,"offset":10325},25924,{"start":10327,"end":10328},{"line":1079,"column":1261,"offset":10316},{"line":1079,"column":5407,"offset":10325},{"type":19,"value":10330,"position":10331},", defaults, nesting, collections of structs, all field access compile-checked. ",{"start":10332,"end":10333},{"line":1079,"column":5407,"offset":10325},{"line":1079,"column":746,"offset":10334},26003,{"type":14,"tagName":1943,"properties":10336,"children":10338,"position":10345},{"href":10337},"/kscript/core-concepts/user-defined-types",[10339],{"type":19,"value":3325,"position":10340},{"start":10341,"end":10343},{"line":1079,"column":3239,"offset":10342},26004,{"line":1079,"column":6686,"offset":10344},26008,{"start":10346,"end":10347},{"line":1079,"column":746,"offset":10334},{"line":1079,"column":172,"offset":10348},26052,{"start":10350,"end":10352},{"line":1079,"column":23,"offset":10351},25833,{"line":1079,"column":172,"offset":10348},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10355,"children":10356,"position":10457},{},[10357,10383,10390,10402,10407,10419,10425,10436,10442],{"type":14,"tagName":29,"properties":10358,"children":10359,"position":10378},{},[10360,10367],{"type":19,"value":10361,"position":10362},"Real ",{"start":10363,"end":10365},{"line":7557,"column":93,"offset":10364},26057,{"line":7557,"column":473,"offset":10366},26062,{"type":14,"tagName":142,"properties":10368,"children":10369,"position":10375},{},[10370],{"type":19,"value":812,"position":10371},{"start":10372,"end":10373},{"line":7557,"column":473,"offset":10366},{"line":7557,"column":102,"offset":10374},26066,{"start":10376,"end":10377},{"line":7557,"column":473,"offset":10366},{"line":7557,"column":102,"offset":10374},{"start":10379,"end":10381},{"line":7557,"column":67,"offset":10380},26055,{"line":7557,"column":133,"offset":10382},26068,{"type":19,"value":10384,"position":10385}," — falsy, propagating, structurally equal; ",{"start":10386,"end":10387},{"line":7557,"column":133,"offset":10382},{"line":7557,"column":10388,"offset":10389},59,26111,{"type":14,"tagName":142,"properties":10391,"children":10392,"position":10399},{},[10393],{"type":19,"value":10394,"position":10395},"isna()",{"start":10396,"end":10397},{"line":7557,"column":10388,"offset":10389},{"line":7557,"column":548,"offset":10398},26119,{"start":10400,"end":10401},{"line":7557,"column":10388,"offset":10389},{"line":7557,"column":548,"offset":10398},{"type":19,"value":4013,"position":10403},{"start":10404,"end":10405},{"line":7557,"column":548,"offset":10398},{"line":7557,"column":5315,"offset":10406},26120,{"type":14,"tagName":142,"properties":10408,"children":10409,"position":10416},{},[10410],{"type":19,"value":10411,"position":10412},"nz()",{"start":10413,"end":10414},{"line":7557,"column":5315,"offset":10406},{"line":7557,"column":2753,"offset":10415},26126,{"start":10417,"end":10418},{"line":7557,"column":5315,"offset":10406},{"line":7557,"column":2753,"offset":10415},{"type":19,"value":10420,"position":10421},"; a compiler warning on direct na-comparison; events never fire on ",{"start":10422,"end":10423},{"line":7557,"column":2753,"offset":10415},{"line":7557,"column":4007,"offset":10424},26193,{"type":14,"tagName":142,"properties":10426,"children":10427,"position":10433},{},[10428],{"type":19,"value":812,"position":10429},{"start":10430,"end":10431},{"line":7557,"column":4007,"offset":10424},{"line":7557,"column":4511,"offset":10432},26197,{"start":10434,"end":10435},{"line":7557,"column":4007,"offset":10424},{"line":7557,"column":4511,"offset":10432},{"type":19,"value":10437,"position":10438},". ",{"start":10439,"end":10440},{"line":7557,"column":4511,"offset":10432},{"line":7557,"column":5187,"offset":10441},26199,{"type":14,"tagName":1943,"properties":10443,"children":10445,"position":10453},{"href":10444},"/kscript/core-concepts/na-and-scalar-types",[10446],{"type":19,"value":3325,"position":10447},{"start":10448,"end":10450},{"line":7557,"column":1273,"offset":10449},26200,{"line":7557,"column":10451,"offset":10452},152,26204,{"start":10454,"end":10455},{"line":7557,"column":5187,"offset":10441},{"line":7557,"column":5680,"offset":10456},26249,{"start":10458,"end":10460},{"line":7557,"column":23,"offset":10459},26053,{"line":7557,"column":5680,"offset":10456},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10463,"children":10464,"position":10515},{},[10465,10491,10497,10509],{"type":14,"tagName":29,"properties":10466,"children":10467,"position":10486},{},[10468,10480],{"type":14,"tagName":142,"properties":10469,"children":10470,"position":10477},{},[10471],{"type":19,"value":7543,"position":10472},{"start":10473,"end":10475},{"line":766,"column":93,"offset":10474},26254,{"line":766,"column":96,"offset":10476},26261,{"start":10478,"end":10479},{"line":766,"column":93,"offset":10474},{"line":766,"column":96,"offset":10476},{"type":19,"value":10481,"position":10482}," type",{"start":10483,"end":10484},{"line":766,"column":96,"offset":10476},{"line":766,"column":1982,"offset":10485},26266,{"start":10487,"end":10489},{"line":766,"column":67,"offset":10488},26252,{"line":766,"column":1985,"offset":10490},26268,{"type":19,"value":10492,"position":10493}," — validated ",{"start":10494,"end":10495},{"line":766,"column":1985,"offset":10490},{"line":766,"column":40,"offset":10496},26281,{"type":14,"tagName":142,"properties":10498,"children":10499,"position":10506},{},[10500],{"type":19,"value":10501,"position":10502},"color.rgb(r, g, b, a?)",{"start":10503,"end":10504},{"line":766,"column":40,"offset":10496},{"line":766,"column":538,"offset":10505},26305,{"start":10507,"end":10508},{"line":766,"column":40,"offset":10496},{"line":766,"column":538,"offset":10505},{"type":19,"value":10510,"position":10511},"; strings remain valid everywhere.",{"start":10512,"end":10513},{"line":766,"column":538,"offset":10505},{"line":766,"column":1429,"offset":10514},26339,{"start":10516,"end":10518},{"line":766,"column":23,"offset":10517},26250,{"line":766,"column":1429,"offset":10514},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10521,"children":10522,"position":10630},{},[10523,10538,10543,10555,10561,10575,10581,10593,10599,10611,10617],{"type":14,"tagName":29,"properties":10524,"children":10525,"position":10533},{},[10526],{"type":19,"value":10527,"position":10528},"Multi-timeframe",{"start":10529,"end":10531},{"line":2428,"column":93,"offset":10530},26344,{"line":2428,"column":2555,"offset":10532},26359,{"start":10534,"end":10536},{"line":2428,"column":67,"offset":10535},26342,{"line":2428,"column":2245,"offset":10537},26361,{"type":19,"value":8296,"position":10539},{"start":10540,"end":10541},{"line":2428,"column":2245,"offset":10537},{"line":2428,"column":37,"offset":10542},26364,{"type":14,"tagName":142,"properties":10544,"children":10545,"position":10552},{},[10546],{"type":19,"value":10547,"position":10548},"htf(source, \"4h\")",{"start":10549,"end":10550},{"line":2428,"column":37,"offset":10542},{"line":2428,"column":3445,"offset":10551},26383,{"start":10553,"end":10554},{"line":2428,"column":37,"offset":10542},{"line":2428,"column":3445,"offset":10551},{"type":19,"value":10556,"position":10557}," base-aligned views with a ",{"start":10558,"end":10559},{"line":2428,"column":3445,"offset":10551},{"line":2428,"column":5927,"offset":10560},26410,{"type":14,"tagName":29,"properties":10562,"children":10563,"position":10571},{},[10564],{"type":19,"value":10565,"position":10566},"no-repaint default",{"start":10567,"end":10569},{"line":2428,"column":1261,"offset":10568},26412,{"line":2428,"column":866,"offset":10570},26430,{"start":10572,"end":10573},{"line":2428,"column":5927,"offset":10560},{"line":2428,"column":7827,"offset":10574},26432,{"type":19,"value":10576,"position":10577}," (provably causal), ",{"start":10578,"end":10579},{"line":2428,"column":7827,"offset":10574},{"line":2428,"column":2598,"offset":10580},26452,{"type":14,"tagName":142,"properties":10582,"children":10583,"position":10590},{},[10584],{"type":19,"value":10585,"position":10586},"developing",{"start":10587,"end":10588},{"line":2428,"column":2598,"offset":10580},{"line":2428,"column":8677,"offset":10589},26464,{"start":10591,"end":10592},{"line":2428,"column":2598,"offset":10580},{"line":2428,"column":8677,"offset":10589},{"type":19,"value":10594,"position":10595}," mode, ",{"start":10596,"end":10597},{"line":2428,"column":8677,"offset":10589},{"line":2428,"column":6193,"offset":10598},26471,{"type":14,"tagName":142,"properties":10600,"children":10601,"position":10608},{},[10602],{"type":19,"value":10603,"position":10604},"offset",{"start":10605,"end":10606},{"line":2428,"column":6193,"offset":10598},{"line":2428,"column":1468,"offset":10607},26479,{"start":10609,"end":10610},{"line":2428,"column":6193,"offset":10598},{"line":2428,"column":1468,"offset":10607},{"type":19,"value":10612,"position":10613},", scalar and footprint resampling. ",{"start":10614,"end":10615},{"line":2428,"column":1468,"offset":10607},{"line":2428,"column":2418,"offset":10616},26514,{"type":14,"tagName":1943,"properties":10618,"children":10619,"position":10626},{"href":4906},[10620],{"type":19,"value":3325,"position":10621},{"start":10622,"end":10624},{"line":2428,"column":6686,"offset":10623},26515,{"line":2428,"column":1079,"offset":10625},26519,{"start":10627,"end":10628},{"line":2428,"column":2418,"offset":10616},{"line":2428,"column":6569,"offset":10629},26560,{"start":10631,"end":10633},{"line":2428,"column":23,"offset":10632},26340,{"line":2428,"column":6569,"offset":10629},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10636,"children":10637,"position":10791},{},[10638,10653,10658,10669,10674,10686,10691,10703,10708,10720,10725,10737,10742,10753,10759,10771,10777],{"type":14,"tagName":29,"properties":10639,"children":10640,"position":10648},{},[10641],{"type":19,"value":10642,"position":10643},"Stateful drawing objects",{"start":10644,"end":10646},{"line":6219,"column":93,"offset":10645},26565,{"line":6219,"column":3000,"offset":10647},26589,{"start":10649,"end":10651},{"line":6219,"column":67,"offset":10650},26563,{"line":6219,"column":2255,"offset":10652},26591,{"type":19,"value":8296,"position":10654},{"start":10655,"end":10656},{"line":6219,"column":2255,"offset":10652},{"line":6219,"column":45,"offset":10657},26594,{"type":14,"tagName":142,"properties":10659,"children":10660,"position":10666},{},[10661],{"type":19,"value":7563,"position":10662},{"start":10663,"end":10664},{"line":6219,"column":45,"offset":10657},{"line":6219,"column":3445,"offset":10665},26604,{"start":10667,"end":10668},{"line":6219,"column":45,"offset":10657},{"line":6219,"column":3445,"offset":10665},{"type":19,"value":260,"position":10670},{"start":10671,"end":10672},{"line":6219,"column":3445,"offset":10665},{"line":6219,"column":2003,"offset":10673},26606,{"type":14,"tagName":142,"properties":10675,"children":10676,"position":10683},{},[10677],{"type":19,"value":10678,"position":10679},"box.new",{"start":10680,"end":10681},{"line":6219,"column":2003,"offset":10673},{"line":6219,"column":8550,"offset":10682},26615,{"start":10684,"end":10685},{"line":6219,"column":2003,"offset":10673},{"line":6219,"column":8550,"offset":10682},{"type":19,"value":260,"position":10687},{"start":10688,"end":10689},{"line":6219,"column":8550,"offset":10682},{"line":6219,"column":9205,"offset":10690},26617,{"type":14,"tagName":142,"properties":10692,"children":10693,"position":10700},{},[10694],{"type":19,"value":10695,"position":10696},"label.new",{"start":10697,"end":10698},{"line":6219,"column":9205,"offset":10690},{"line":6219,"column":5315,"offset":10699},26628,{"start":10701,"end":10702},{"line":6219,"column":9205,"offset":10690},{"line":6219,"column":5315,"offset":10699},{"type":19,"value":260,"position":10704},{"start":10705,"end":10706},{"line":6219,"column":5315,"offset":10699},{"line":6219,"column":4164,"offset":10707},26630,{"type":14,"tagName":142,"properties":10709,"children":10710,"position":10717},{},[10711],{"type":19,"value":10712,"position":10713},"polyline.new",{"start":10714,"end":10715},{"line":6219,"column":4164,"offset":10707},{"line":6219,"column":4320,"offset":10716},26644,{"start":10718,"end":10719},{"line":6219,"column":4164,"offset":10707},{"line":6219,"column":4320,"offset":10716},{"type":19,"value":260,"position":10721},{"start":10722,"end":10723},{"line":6219,"column":4320,"offset":10716},{"line":6219,"column":5168,"offset":10724},26646,{"type":14,"tagName":142,"properties":10726,"children":10727,"position":10734},{},[10728],{"type":19,"value":10729,"position":10730},"linefill.new",{"start":10731,"end":10732},{"line":6219,"column":5168,"offset":10724},{"line":6219,"column":6507,"offset":10733},26660,{"start":10735,"end":10736},{"line":6219,"column":5168,"offset":10724},{"line":6219,"column":6507,"offset":10733},{"type":19,"value":260,"position":10738},{"start":10739,"end":10740},{"line":6219,"column":6507,"offset":10733},{"line":6219,"column":6857,"offset":10741},26662,{"type":14,"tagName":142,"properties":10743,"children":10744,"position":10750},{},[10745],{"type":19,"value":7582,"position":10746},{"start":10747,"end":10748},{"line":6219,"column":6857,"offset":10741},{"line":6219,"column":2598,"offset":10749},26673,{"start":10751,"end":10752},{"line":6219,"column":6857,"offset":10741},{"line":6219,"column":2598,"offset":10749},{"type":19,"value":10754,"position":10755}," return mutable handles: move, restyle, ",{"start":10756,"end":10757},{"line":6219,"column":2598,"offset":10749},{"line":6219,"column":9478,"offset":10758},26713,{"type":14,"tagName":142,"properties":10760,"children":10761,"position":10768},{},[10762],{"type":19,"value":10763,"position":10764},"delete()",{"start":10765,"end":10766},{"line":6219,"column":9478,"offset":10758},{"line":6219,"column":3232,"offset":10767},26723,{"start":10769,"end":10770},{"line":6219,"column":9478,"offset":10758},{"line":6219,"column":3232,"offset":10767},{"type":19,"value":10772,"position":10773},"; store handles in collections and structs. ",{"start":10774,"end":10775},{"line":6219,"column":3232,"offset":10767},{"line":6219,"column":4591,"offset":10776},26767,{"type":14,"tagName":1943,"properties":10778,"children":10780,"position":10787},{"href":10779},"/kscript/functions/drawing-objects",[10781],{"type":19,"value":3325,"position":10782},{"start":10783,"end":10785},{"line":6219,"column":2455,"offset":10784},26768,{"line":6219,"column":4077,"offset":10786},26772,{"start":10788,"end":10789},{"line":6219,"column":4591,"offset":10776},{"line":6219,"column":6483,"offset":10790},26809,{"start":10792,"end":10794},{"line":6219,"column":23,"offset":10793},26561,{"line":6219,"column":6483,"offset":10790},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10797,"children":10798,"position":10923},{},[10799,10814,10820,10831,10837,10849,10855,10867,10873,10885,10891,10903,10909],{"type":14,"tagName":29,"properties":10800,"children":10801,"position":10809},{},[10802],{"type":19,"value":10803,"position":10804},"Drawing primitives",{"start":10805,"end":10807},{"line":110,"column":93,"offset":10806},26814,{"line":110,"column":27,"offset":10808},26832,{"start":10810,"end":10812},{"line":110,"column":67,"offset":10811},26812,{"line":110,"column":37,"offset":10813},26834,{"type":19,"value":10815,"position":10816}," — 10 ",{"start":10817,"end":10818},{"line":110,"column":37,"offset":10813},{"line":110,"column":2255,"offset":10819},26840,{"type":14,"tagName":142,"properties":10821,"children":10822,"position":10828},{},[10823],{"type":19,"value":5639,"position":10824},{"start":10825,"end":10826},{"line":110,"column":2255,"offset":10819},{"line":110,"column":519,"offset":10827},26851,{"start":10829,"end":10830},{"line":110,"column":2255,"offset":10819},{"line":110,"column":519,"offset":10827},{"type":19,"value":10832,"position":10833}," shapes with ",{"start":10834,"end":10835},{"line":110,"column":519,"offset":10827},{"line":110,"column":8550,"offset":10836},26864,{"type":14,"tagName":142,"properties":10838,"children":10839,"position":10846},{},[10840],{"type":19,"value":10841,"position":10842},"location",{"start":10843,"end":10844},{"line":110,"column":8550,"offset":10836},{"line":110,"column":4971,"offset":10845},26874,{"start":10847,"end":10848},{"line":110,"column":8550,"offset":10836},{"line":110,"column":4971,"offset":10845},{"type":19,"value":10850,"position":10851}," placement and ",{"start":10852,"end":10853},{"line":110,"column":4971,"offset":10845},{"line":110,"column":5723,"offset":10854},26889,{"type":14,"tagName":142,"properties":10856,"children":10857,"position":10864},{},[10858],{"type":19,"value":10859,"position":10860},"char",{"start":10861,"end":10862},{"line":110,"column":5723,"offset":10854},{"line":110,"column":5168,"offset":10863},26895,{"start":10865,"end":10866},{"line":110,"column":5723,"offset":10854},{"line":110,"column":5168,"offset":10863},{"type":19,"value":10868,"position":10869}," markers; ",{"start":10870,"end":10871},{"line":110,"column":5168,"offset":10863},{"line":110,"column":52,"offset":10872},26905,{"type":14,"tagName":142,"properties":10874,"children":10875,"position":10882},{},[10876],{"type":19,"value":10877,"position":10878},"barcolor()",{"start":10879,"end":10880},{"line":110,"column":52,"offset":10872},{"line":110,"column":8058,"offset":10881},26917,{"start":10883,"end":10884},{"line":110,"column":52,"offset":10872},{"line":110,"column":8058,"offset":10881},{"type":19,"value":10886,"position":10887},"; ",{"start":10888,"end":10889},{"line":110,"column":8058,"offset":10881},{"line":110,"column":7363,"offset":10890},26919,{"type":14,"tagName":142,"properties":10892,"children":10893,"position":10900},{},[10894],{"type":19,"value":10895,"position":10896},"fillBetween()",{"start":10897,"end":10898},{"line":110,"column":7363,"offset":10890},{"line":110,"column":8677,"offset":10899},26934,{"start":10901,"end":10902},{"line":110,"column":7363,"offset":10890},{"line":110,"column":8677,"offset":10899},{"type":19,"value":10904,"position":10905},"; per-cell styled tables. ",{"start":10906,"end":10907},{"line":110,"column":8677,"offset":10899},{"line":110,"column":4538,"offset":10908},26960,{"type":14,"tagName":1943,"properties":10910,"children":10912,"position":10919},{"href":10911},"/kscript/functions/drawing-primitives",[10913],{"type":19,"value":3325,"position":10914},{"start":10915,"end":10917},{"line":110,"column":10451,"offset":10916},26961,{"line":110,"column":4034,"offset":10918},26965,{"start":10920,"end":10921},{"line":110,"column":4538,"offset":10908},{"line":110,"column":2908,"offset":10922},27005,{"start":10924,"end":10926},{"line":110,"column":23,"offset":10925},26810,{"line":110,"column":2908,"offset":10922},{"type":19,"value":57},{"type":14,"tagName":486,"properties":10929,"children":10930,"position":11001},{},[10931,10946,10952,10964,10969,10981,10987],{"type":14,"tagName":29,"properties":10932,"children":10933,"position":10941},{},[10934],{"type":19,"value":10935,"position":10936},"Styling",{"start":10937,"end":10939},{"line":4565,"column":93,"offset":10938},27010,{"line":4565,"column":96,"offset":10940},27017,{"start":10942,"end":10944},{"line":4565,"column":67,"offset":10943},27008,{"line":4565,"column":102,"offset":10945},27019,{"type":19,"value":10947,"position":10948}," — size tiers, tooltips on every output, unified alignment, ",{"start":10949,"end":10950},{"line":4565,"column":102,"offset":10945},{"line":4565,"column":2753,"offset":10951},27079,{"type":14,"tagName":142,"properties":10953,"children":10954,"position":10961},{},[10955],{"type":19,"value":10956,"position":10957},"zOrder",{"start":10958,"end":10959},{"line":4565,"column":2753,"offset":10951},{"line":4565,"column":2763,"offset":10960},27087,{"start":10962,"end":10963},{"line":4565,"column":2753,"offset":10951},{"line":4565,"column":2763,"offset":10960},{"type":19,"value":260,"position":10965},{"start":10966,"end":10967},{"line":4565,"column":2763,"offset":10960},{"line":4565,"column":4320,"offset":10968},27089,{"type":14,"tagName":142,"properties":10970,"children":10971,"position":10978},{},[10972],{"type":19,"value":10973,"position":10974},"palette()",{"start":10975,"end":10976},{"line":4565,"column":4320,"offset":10968},{"line":4565,"column":6078,"offset":10977},27100,{"start":10979,"end":10980},{"line":4565,"column":4320,"offset":10968},{"line":4565,"column":6078,"offset":10977},{"type":19,"value":10982,"position":10983},", and value-driven per-element gradients/opacity/glow. ",{"start":10984,"end":10985},{"line":4565,"column":6078,"offset":10977},{"line":4565,"column":895,"offset":10986},27155,{"type":14,"tagName":1943,"properties":10988,"children":10990,"position":10997},{"href":10989},"/kscript/functions/styling",[10991],{"type":19,"value":3325,"position":10992},{"start":10993,"end":10995},{"line":4565,"column":4538,"offset":10994},27156,{"line":4565,"column":2036,"offset":10996},27160,{"start":10998,"end":10999},{"line":4565,"column":895,"offset":10986},{"line":4565,"column":6219,"offset":11000},27189,{"start":11002,"end":11004},{"line":4565,"column":23,"offset":11003},27006,{"line":4565,"column":6219,"offset":11000},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11007,"children":11008,"position":11145},{},[11009,11024,11029,11040,11046,11057,11063,11074,11080,11092,11097,11109,11114,11126,11131],{"type":14,"tagName":29,"properties":11010,"children":11011,"position":11019},{},[11012],{"type":19,"value":11013,"position":11014},"Control flow & ergonomics",{"start":11015,"end":11017},{"line":3249,"column":93,"offset":11016},27194,{"line":3249,"column":2567,"offset":11018},27219,{"start":11020,"end":11022},{"line":3249,"column":67,"offset":11021},27192,{"line":3249,"column":40,"offset":11023},27221,{"type":19,"value":8296,"position":11025},{"start":11026,"end":11027},{"line":3249,"column":40,"offset":11023},{"line":3249,"column":44,"offset":11028},27224,{"type":14,"tagName":142,"properties":11030,"children":11031,"position":11037},{},[11032],{"type":19,"value":7618,"position":11033},{"start":11034,"end":11035},{"line":3249,"column":44,"offset":11028},{"line":3249,"column":2579,"offset":11036},27232,{"start":11038,"end":11039},{"line":3249,"column":44,"offset":11028},{"line":3249,"column":2579,"offset":11036},{"type":19,"value":11041,"position":11042}," (no fallthrough), compound assignment, ",{"start":11043,"end":11044},{"line":3249,"column":2579,"offset":11036},{"line":3249,"column":6066,"offset":11045},27272,{"type":14,"tagName":142,"properties":11047,"children":11048,"position":11054},{},[11049],{"type":19,"value":7635,"position":11050},{"start":11051,"end":11052},{"line":3249,"column":6066,"offset":11045},{"line":3249,"column":5407,"offset":11053},27281,{"start":11055,"end":11056},{"line":3249,"column":6066,"offset":11045},{"line":3249,"column":5407,"offset":11053},{"type":19,"value":11058,"position":11059}," (the clearer spelling of ",{"start":11060,"end":11061},{"line":3249,"column":5407,"offset":11053},{"line":3249,"column":3979,"offset":11062},27307,{"type":14,"tagName":142,"properties":11064,"children":11065,"position":11071},{},[11066],{"type":19,"value":667,"position":11067},{"start":11068,"end":11069},{"line":3249,"column":3979,"offset":11062},{"line":3249,"column":5624,"offset":11070},27315,{"start":11072,"end":11073},{"line":3249,"column":3979,"offset":11062},{"line":3249,"column":5624,"offset":11070},{"type":19,"value":11075,"position":11076},"), default parameters, ",{"start":11077,"end":11078},{"line":3249,"column":5624,"offset":11070},{"line":3249,"column":7147,"offset":11079},27338,{"type":14,"tagName":142,"properties":11081,"children":11082,"position":11089},{},[11083],{"type":19,"value":11084,"position":11085},"format()",{"start":11086,"end":11087},{"line":3249,"column":7147,"offset":11079},{"line":3249,"column":1487,"offset":11088},27348,{"start":11090,"end":11091},{"line":3249,"column":7147,"offset":11079},{"line":3249,"column":1487,"offset":11088},{"type":19,"value":4013,"position":11093},{"start":11094,"end":11095},{"line":3249,"column":1487,"offset":11088},{"line":3249,"column":1069,"offset":11096},27349,{"type":14,"tagName":142,"properties":11098,"children":11099,"position":11106},{},[11100],{"type":19,"value":11101,"position":11102},"tostring()",{"start":11103,"end":11104},{"line":3249,"column":1069,"offset":11096},{"line":3249,"column":3239,"offset":11105},27361,{"start":11107,"end":11108},{"line":3249,"column":1069,"offset":11096},{"line":3249,"column":3239,"offset":11105},{"type":19,"value":4013,"position":11110},{"start":11111,"end":11112},{"line":3249,"column":3239,"offset":11105},{"line":3249,"column":9554,"offset":11113},27362,{"type":14,"tagName":142,"properties":11115,"children":11116,"position":11123},{},[11117],{"type":19,"value":11118,"position":11119},"tonumber()",{"start":11120,"end":11121},{"line":3249,"column":9554,"offset":11113},{"line":3249,"column":110,"offset":11122},27374,{"start":11124,"end":11125},{"line":3249,"column":9554,"offset":11113},{"line":3249,"column":110,"offset":11122},{"type":19,"value":10437,"position":11127},{"start":11128,"end":11129},{"line":3249,"column":110,"offset":11122},{"line":3249,"column":3249,"offset":11130},27376,{"type":14,"tagName":1943,"properties":11132,"children":11134,"position":11141},{"href":11133},"/kscript/functions/control-flow",[11135],{"type":19,"value":3325,"position":11136},{"start":11137,"end":11139},{"line":3249,"column":5016,"offset":11138},27377,{"line":3249,"column":126,"offset":11140},27381,{"start":11142,"end":11143},{"line":3249,"column":3249,"offset":11130},{"line":3249,"column":1302,"offset":11144},27415,{"start":11146,"end":11148},{"line":3249,"column":23,"offset":11147},27190,{"line":3249,"column":1302,"offset":11144},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11151,"children":11152,"position":11270},{},[11153,11168,11174,11185,11190,11201,11206,11217,11222,11233,11238,11249,11255],{"type":14,"tagName":29,"properties":11154,"children":11155,"position":11163},{},[11156],{"type":19,"value":11157,"position":11158},"TA library",{"start":11159,"end":11161},{"line":5016,"column":93,"offset":11160},27420,{"line":5016,"column":1244,"offset":11162},27430,{"start":11164,"end":11166},{"line":5016,"column":67,"offset":11165},27418,{"line":5016,"column":1982,"offset":11167},27432,{"type":19,"value":11169,"position":11170}," — ~40 indicators each validated bar-for-bar against independent textbook references (1e-6), including multi-output ",{"start":11171,"end":11172},{"line":5016,"column":1982,"offset":11167},{"line":5016,"column":8794,"offset":11173},27548,{"type":14,"tagName":142,"properties":11175,"children":11176,"position":11182},{},[11177],{"type":19,"value":8863,"position":11178},{"start":11179,"end":11180},{"line":5016,"column":8794,"offset":11173},{"line":5016,"column":2608,"offset":11181},27552,{"start":11183,"end":11184},{"line":5016,"column":8794,"offset":11173},{"line":5016,"column":2608,"offset":11181},{"type":19,"value":260,"position":11186},{"start":11187,"end":11188},{"line":5016,"column":2608,"offset":11181},{"line":5016,"column":5426,"offset":11189},27554,{"type":14,"tagName":142,"properties":11191,"children":11192,"position":11198},{},[11193],{"type":19,"value":8880,"position":11194},{"start":11195,"end":11196},{"line":5016,"column":5426,"offset":11189},{"line":5016,"column":1273,"offset":11197},27563,{"start":11199,"end":11200},{"line":5016,"column":5426,"offset":11189},{"line":5016,"column":1273,"offset":11197},{"type":19,"value":260,"position":11202},{"start":11203,"end":11204},{"line":5016,"column":1273,"offset":11197},{"line":5016,"column":895,"offset":11205},27565,{"type":14,"tagName":142,"properties":11207,"children":11208,"position":11214},{},[11209],{"type":19,"value":9034,"position":11210},{"start":11211,"end":11212},{"line":5016,"column":895,"offset":11205},{"line":5016,"column":7547,"offset":11213},27572,{"start":11215,"end":11216},{"line":5016,"column":895,"offset":11205},{"line":5016,"column":7547,"offset":11213},{"type":19,"value":260,"position":11218},{"start":11219,"end":11220},{"line":5016,"column":7547,"offset":11213},{"line":5016,"column":1487,"offset":11221},27574,{"type":14,"tagName":142,"properties":11223,"children":11224,"position":11230},{},[11225],{"type":19,"value":9084,"position":11226},{"start":11227,"end":11228},{"line":5016,"column":1487,"offset":11221},{"line":5016,"column":746,"offset":11229},27586,{"start":11231,"end":11232},{"line":5016,"column":1487,"offset":11221},{"line":5016,"column":746,"offset":11229},{"type":19,"value":260,"position":11234},{"start":11235,"end":11236},{"line":5016,"column":746,"offset":11229},{"line":5016,"column":9554,"offset":11237},27588,{"type":14,"tagName":142,"properties":11239,"children":11240,"position":11246},{},[11241],{"type":19,"value":8948,"position":11242},{"start":11243,"end":11244},{"line":5016,"column":9554,"offset":11237},{"line":5016,"column":5436,"offset":11245},27594,{"start":11247,"end":11248},{"line":5016,"column":9554,"offset":11237},{"line":5016,"column":5436,"offset":11245},{"type":19,"value":11250,"position":11251},"; uniform warmup and forward-fill conventions; everything composes (including over order-flow series). ",{"start":11252,"end":11253},{"line":5016,"column":5436,"offset":11245},{"line":5016,"column":1312,"offset":11254},27697,{"type":14,"tagName":1943,"properties":11256,"children":11258,"position":11266},{"href":11257},"/kscript/functions/ta-library",[11259],{"type":19,"value":3325,"position":11260},{"start":11261,"end":11263},{"line":5016,"column":601,"offset":11262},27698,{"line":5016,"column":11264,"offset":11265},287,27702,{"start":11267,"end":11268},{"line":5016,"column":1312,"offset":11254},{"line":5016,"column":4119,"offset":11269},27734,{"start":11271,"end":11273},{"line":5016,"column":23,"offset":11272},27416,{"line":5016,"column":4119,"offset":11269},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11276,"children":11277,"position":11483},{},[11278,11293,11298,11310,11315,11327,11332,11343,11348,11360,11365,11377,11382,11394,11400,11412,11417,11429,11434,11446,11452,11463,11469],{"type":14,"tagName":29,"properties":11279,"children":11280,"position":11288},{},[11281],{"type":19,"value":11282,"position":11283},"Typed inputs",{"start":11284,"end":11286},{"line":776,"column":93,"offset":11285},27739,{"line":776,"column":1982,"offset":11287},27751,{"start":11289,"end":11291},{"line":776,"column":67,"offset":11290},27737,{"line":776,"column":1985,"offset":11292},27753,{"type":19,"value":8296,"position":11294},{"start":11295,"end":11296},{"line":776,"column":1985,"offset":11292},{"line":776,"column":2245,"offset":11297},27756,{"type":14,"tagName":142,"properties":11299,"children":11300,"position":11307},{},[11301],{"type":19,"value":11302,"position":11303},"int",{"start":11304,"end":11305},{"line":776,"column":2245,"offset":11297},{"line":776,"column":499,"offset":11306},27761,{"start":11308,"end":11309},{"line":776,"column":2245,"offset":11297},{"line":776,"column":499,"offset":11306},{"type":19,"value":260,"position":11311},{"start":11312,"end":11313},{"line":776,"column":499,"offset":11306},{"line":776,"column":3000,"offset":11314},27763,{"type":14,"tagName":142,"properties":11316,"children":11317,"position":11324},{},[11318],{"type":19,"value":11319,"position":11320},"float",{"start":11321,"end":11322},{"line":776,"column":3000,"offset":11314},{"line":776,"column":5532,"offset":11323},27770,{"start":11325,"end":11326},{"line":776,"column":3000,"offset":11314},{"line":776,"column":5532,"offset":11323},{"type":19,"value":260,"position":11328},{"start":11329,"end":11330},{"line":776,"column":5532,"offset":11323},{"line":776,"column":5351,"offset":11331},27772,{"type":14,"tagName":142,"properties":11333,"children":11334,"position":11340},{},[11335],{"type":19,"value":5960,"position":11336},{"start":11337,"end":11338},{"line":776,"column":5351,"offset":11331},{"line":776,"column":2003,"offset":11339},27780,{"start":11341,"end":11342},{"line":776,"column":5351,"offset":11331},{"line":776,"column":2003,"offset":11339},{"type":19,"value":260,"position":11344},{"start":11345,"end":11346},{"line":776,"column":2003,"offset":11339},{"line":776,"column":3521,"offset":11347},27782,{"type":14,"tagName":142,"properties":11349,"children":11350,"position":11357},{},[11351],{"type":19,"value":11352,"position":11353},"timeframe",{"start":11354,"end":11355},{"line":776,"column":3521,"offset":11347},{"line":776,"column":10388,"offset":11356},27793,{"start":11358,"end":11359},{"line":776,"column":3521,"offset":11347},{"line":776,"column":10388,"offset":11356},{"type":19,"value":260,"position":11361},{"start":11362,"end":11363},{"line":776,"column":10388,"offset":11356},{"line":776,"column":1419,"offset":11364},27795,{"type":14,"tagName":142,"properties":11366,"children":11367,"position":11374},{},[11368],{"type":19,"value":11369,"position":11370},"session",{"start":11371,"end":11372},{"line":776,"column":1419,"offset":11364},{"line":776,"column":4164,"offset":11373},27804,{"start":11375,"end":11376},{"line":776,"column":1419,"offset":11364},{"line":776,"column":4164,"offset":11373},{"type":19,"value":260,"position":11378},{"start":11379,"end":11380},{"line":776,"column":4164,"offset":11373},{"line":776,"column":5366,"offset":11381},27806,{"type":14,"tagName":142,"properties":11383,"children":11384,"position":11391},{},[11385],{"type":19,"value":11386,"position":11387},"symbol",{"start":11388,"end":11389},{"line":776,"column":5366,"offset":11381},{"line":776,"column":5723,"offset":11390},27814,{"start":11392,"end":11393},{"line":776,"column":5366,"offset":11381},{"line":776,"column":5723,"offset":11390},{"type":19,"value":11395,"position":11396},"; constraints enforced (never silently clamped); ",{"start":11397,"end":11398},{"line":776,"column":5723,"offset":11390},{"line":776,"column":3997,"offset":11399},27863,{"type":14,"tagName":142,"properties":11401,"children":11402,"position":11409},{},[11403],{"type":19,"value":11404,"position":11405},"group",{"start":11406,"end":11407},{"line":776,"column":3997,"offset":11399},{"line":776,"column":716,"offset":11408},27870,{"start":11410,"end":11411},{"line":776,"column":3997,"offset":11399},{"line":776,"column":716,"offset":11408},{"type":19,"value":4013,"position":11413},{"start":11414,"end":11415},{"line":776,"column":716,"offset":11408},{"line":776,"column":2608,"offset":11416},27871,{"type":14,"tagName":142,"properties":11418,"children":11419,"position":11426},{},[11420],{"type":19,"value":11421,"position":11422},"tooltip",{"start":11423,"end":11424},{"line":776,"column":2608,"offset":11416},{"line":776,"column":4520,"offset":11425},27880,{"start":11427,"end":11428},{"line":776,"column":2608,"offset":11416},{"line":776,"column":4520,"offset":11425},{"type":19,"value":4013,"position":11430},{"start":11431,"end":11432},{"line":776,"column":4520,"offset":11425},{"line":776,"column":5187,"offset":11433},27881,{"type":14,"tagName":142,"properties":11435,"children":11436,"position":11443},{},[11437],{"type":19,"value":11438,"position":11439},"inline",{"start":11440,"end":11441},{"line":776,"column":5187,"offset":11433},{"line":776,"column":2036,"offset":11442},27889,{"start":11444,"end":11445},{"line":776,"column":5187,"offset":11433},{"line":776,"column":2036,"offset":11442},{"type":19,"value":11447,"position":11448},"; settings changes apply with zero refetches; ",{"start":11449,"end":11450},{"line":776,"column":2036,"offset":11442},{"line":776,"column":128,"offset":11451},27935,{"type":14,"tagName":142,"properties":11453,"children":11454,"position":11460},{},[11455],{"type":19,"value":5960,"position":11456},{"start":11457,"end":11458},{"line":776,"column":128,"offset":11451},{"line":776,"column":6452,"offset":11459},27943,{"start":11461,"end":11462},{"line":776,"column":128,"offset":11451},{"line":776,"column":6452,"offset":11459},{"type":19,"value":11464,"position":11465}," inputs can point an indicator at microstructure data. ",{"start":11466,"end":11467},{"line":776,"column":6452,"offset":11459},{"line":776,"column":6486,"offset":11468},27998,{"type":14,"tagName":1943,"properties":11470,"children":11472,"position":11479},{"href":11471},"/kscript/functions/typed-inputs",[11473],{"type":19,"value":3325,"position":11474},{"start":11475,"end":11477},{"line":776,"column":1553,"offset":11476},27999,{"line":776,"column":6822,"offset":11478},28003,{"start":11480,"end":11481},{"line":776,"column":6486,"offset":11468},{"line":776,"column":7244,"offset":11482},28037,{"start":11484,"end":11486},{"line":776,"column":23,"offset":11485},27735,{"line":776,"column":7244,"offset":11482},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11489,"children":11490,"position":11558},{},[11491,11505,11510,11522,11527,11539,11545],{"type":14,"tagName":29,"properties":11492,"children":11493,"position":11500},{},[11494],{"type":19,"value":2819,"position":11495},{"start":11496,"end":11498},{"line":131,"column":93,"offset":11497},28042,{"line":131,"column":102,"offset":11499},28051,{"start":11501,"end":11503},{"line":131,"column":67,"offset":11502},28040,{"line":131,"column":133,"offset":11504},28053,{"type":19,"value":8296,"position":11506},{"start":11507,"end":11508},{"line":131,"column":133,"offset":11504},{"line":131,"column":1985,"offset":11509},28056,{"type":14,"tagName":142,"properties":11511,"children":11512,"position":11519},{},[11513],{"type":19,"value":11514,"position":11515},"library(\"name\", \"1.0.0\")",{"start":11516,"end":11517},{"line":131,"column":1985,"offset":11509},{"line":131,"column":2872,"offset":11518},28082,{"start":11520,"end":11521},{"line":131,"column":1985,"offset":11509},{"line":131,"column":2872,"offset":11518},{"type":19,"value":7188,"position":11523},{"start":11524,"end":11525},{"line":131,"column":2872,"offset":11518},{"line":131,"column":3521,"offset":11526},28085,{"type":14,"tagName":142,"properties":11528,"children":11529,"position":11536},{},[11530],{"type":19,"value":11531,"position":11532},"import \"name\" as ta",{"start":11533,"end":11534},{"line":131,"column":3521,"offset":11526},{"line":131,"column":109,"offset":11535},28106,{"start":11537,"end":11538},{"line":131,"column":3521,"offset":11526},{"line":131,"column":109,"offset":11535},{"type":19,"value":11540,"position":11541},", version pinning, script-wins precedence with warnings, hot reload in the playground. ",{"start":11542,"end":11543},{"line":131,"column":109,"offset":11535},{"line":131,"column":4034,"offset":11544},28193,{"type":14,"tagName":1943,"properties":11546,"children":11547,"position":11554},{"href":2816},[11548],{"type":19,"value":3325,"position":11549},{"start":11550,"end":11552},{"line":131,"column":7547,"offset":11551},28194,{"line":131,"column":1496,"offset":11553},28198,{"start":11555,"end":11556},{"line":131,"column":4034,"offset":11544},{"line":131,"column":126,"offset":11557},28229,{"start":11559,"end":11561},{"line":131,"column":23,"offset":11560},28038,{"line":131,"column":126,"offset":11557},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11564,"children":11565,"position":11602},{},[11566,11581,11587],{"type":14,"tagName":29,"properties":11567,"children":11568,"position":11576},{},[11569],{"type":19,"value":11570,"position":11571},"Sandbox limits manifest",{"start":11572,"end":11574},{"line":7567,"column":93,"offset":11573},28234,{"line":7567,"column":2852,"offset":11575},28257,{"start":11577,"end":11579},{"line":7567,"column":67,"offset":11578},28232,{"line":7567,"column":2567,"offset":11580},28259,{"type":19,"value":11582,"position":11583}," — every ceiling named and documented with exact numbers; all failures report line:column; runaway scripts are interrupted mid-loop. ",{"start":11584,"end":11585},{"line":7567,"column":2567,"offset":11580},{"line":7567,"column":3232,"offset":11586},28392,{"type":14,"tagName":1943,"properties":11588,"children":11590,"position":11597},{"href":11589},"/kscript/faq/limitations",[11591],{"type":19,"value":3325,"position":11592},{"start":11593,"end":11595},{"line":7567,"column":6677,"offset":11594},28393,{"line":7567,"column":2304,"offset":11596},28397,{"start":11598,"end":11599},{"line":7567,"column":3232,"offset":11586},{"line":7567,"column":11600,"offset":11601},195,28424,{"start":11603,"end":11605},{"line":7567,"column":23,"offset":11604},28230,{"line":7567,"column":11600,"offset":11601},{"type":19,"value":57},{"start":11608,"end":11609},{"line":756,"column":23,"offset":10093},{"line":7567,"column":11600,"offset":11601},{"type":19,"value":57},{"type":14,"tagName":462,"properties":11612,"children":11614,"position":11621},{"id":11613},"changed-3",[11615],{"type":19,"value":2715,"position":11616},{"start":11617,"end":11619},{"line":6711,"column":93,"offset":11618},28430,{"line":6711,"column":96,"offset":11620},28437,{"start":11622,"end":11624},{"line":6711,"column":23,"offset":11623},28426,{"line":6711,"column":96,"offset":11620},{"type":19,"value":57},{"type":14,"tagName":481,"properties":11627,"children":11628,"position":11867},{},[11629,11630,11866],{"type":19,"value":57},{"type":14,"tagName":486,"properties":11631,"children":11632,"position":11862},{},[11633,11648,11653,11665,11670,11682,11687,11698,11703,11715,11720,11732,11737,11749,11754,11766,11772,11783,11789,11800,11806,11818,11823,11835,11842,11857],{"type":14,"tagName":29,"properties":11634,"children":11635,"position":11643},{},[11636],{"type":19,"value":11637,"position":11638},"Eight TA builtins corrected to textbook formulas",{"start":11639,"end":11641},{"line":11600,"column":93,"offset":11640},28443,{"line":11600,"column":529,"offset":11642},28491,{"start":11644,"end":11646},{"line":11600,"column":67,"offset":11645},28441,{"line":11600,"column":8550,"offset":11647},28493,{"type":19,"value":304,"position":11649},{"start":11650,"end":11651},{"line":11600,"column":8550,"offset":11647},{"line":11600,"column":9205,"offset":11652},28495,{"type":14,"tagName":142,"properties":11654,"children":11655,"position":11662},{},[11656],{"type":19,"value":11657,"position":11658},"ema",{"start":11659,"end":11660},{"line":11600,"column":9205,"offset":11652},{"line":11600,"column":4968,"offset":11661},28500,{"start":11663,"end":11664},{"line":11600,"column":9205,"offset":11652},{"line":11600,"column":4968,"offset":11661},{"type":19,"value":260,"position":11666},{"start":11667,"end":11668},{"line":11600,"column":4968,"offset":11661},{"line":11600,"column":2384,"offset":11669},28502,{"type":14,"tagName":142,"properties":11671,"children":11672,"position":11679},{},[11673],{"type":19,"value":11674,"position":11675},"rsi",{"start":11676,"end":11677},{"line":11600,"column":2384,"offset":11669},{"line":11600,"column":109,"offset":11678},28507,{"start":11680,"end":11681},{"line":11600,"column":2384,"offset":11669},{"line":11600,"column":109,"offset":11678},{"type":19,"value":260,"position":11683},{"start":11684,"end":11685},{"line":11600,"column":109,"offset":11678},{"line":11600,"column":5927,"offset":11686},28509,{"type":14,"tagName":142,"properties":11688,"children":11689,"position":11695},{},[11690],{"type":19,"value":8948,"position":11691},{"start":11692,"end":11693},{"line":11600,"column":5927,"offset":11686},{"line":11600,"column":3506,"offset":11694},28515,{"start":11696,"end":11697},{"line":11600,"column":5927,"offset":11686},{"line":11600,"column":3506,"offset":11694},{"type":19,"value":260,"position":11699},{"start":11700,"end":11701},{"line":11600,"column":3506,"offset":11694},{"line":11600,"column":10179,"offset":11702},28517,{"type":14,"tagName":142,"properties":11704,"children":11705,"position":11712},{},[11706],{"type":19,"value":11707,"position":11708},"psar",{"start":11709,"end":11710},{"line":11600,"column":10179,"offset":11702},{"line":11600,"column":6075,"offset":11711},28523,{"start":11713,"end":11714},{"line":11600,"column":10179,"offset":11702},{"line":11600,"column":6075,"offset":11711},{"type":19,"value":260,"position":11716},{"start":11717,"end":11718},{"line":11600,"column":6075,"offset":11711},{"line":11600,"column":4429,"offset":11719},28525,{"type":14,"tagName":142,"properties":11721,"children":11722,"position":11729},{},[11723],{"type":19,"value":11724,"position":11725},"adx",{"start":11726,"end":11727},{"line":11600,"column":4429,"offset":11719},{"line":11600,"column":5407,"offset":11728},28530,{"start":11730,"end":11731},{"line":11600,"column":4429,"offset":11719},{"line":11600,"column":5407,"offset":11728},{"type":19,"value":260,"position":11733},{"start":11734,"end":11735},{"line":11600,"column":5407,"offset":11728},{"line":11600,"column":6015,"offset":11736},28532,{"type":14,"tagName":142,"properties":11738,"children":11739,"position":11746},{},[11740],{"type":19,"value":11741,"position":11742},"highest",{"start":11743,"end":11744},{"line":11600,"column":6015,"offset":11736},{"line":11600,"column":7046,"offset":11745},28541,{"start":11747,"end":11748},{"line":11600,"column":6015,"offset":11736},{"line":11600,"column":7046,"offset":11745},{"type":19,"value":260,"position":11750},{"start":11751,"end":11752},{"line":11600,"column":7046,"offset":11745},{"line":11600,"column":7430,"offset":11753},28543,{"type":14,"tagName":142,"properties":11755,"children":11756,"position":11763},{},[11757],{"type":19,"value":11758,"position":11759},"lowest",{"start":11760,"end":11761},{"line":11600,"column":7430,"offset":11753},{"line":11600,"column":2598,"offset":11762},28551,{"start":11764,"end":11765},{"line":11600,"column":7430,"offset":11753},{"line":11600,"column":2598,"offset":11762},{"type":19,"value":11767,"position":11768},", plus strict ",{"start":11769,"end":11770},{"line":11600,"column":2598,"offset":11762},{"line":11600,"column":885,"offset":11771},28565,{"type":14,"tagName":142,"properties":11773,"children":11774,"position":11780},{},[11775],{"type":19,"value":7724,"position":11776},{"start":11777,"end":11778},{"line":11600,"column":885,"offset":11771},{"line":11600,"column":6193,"offset":11779},28570,{"start":11781,"end":11782},{"line":11600,"column":885,"offset":11771},{"line":11600,"column":6193,"offset":11779},{"type":19,"value":11784,"position":11785}," warmup): early-bar/warmup values change versus v2 (honest ",{"start":11786,"end":11787},{"line":11600,"column":6193,"offset":11779},{"line":11600,"column":7567,"offset":11788},28629,{"type":14,"tagName":142,"properties":11790,"children":11791,"position":11797},{},[11792],{"type":19,"value":812,"position":11793},{"start":11794,"end":11795},{"line":11600,"column":7567,"offset":11788},{"line":11600,"column":11600,"offset":11796},28633,{"start":11798,"end":11799},{"line":11600,"column":7567,"offset":11788},{"line":11600,"column":11600,"offset":11796},{"type":19,"value":11801,"position":11802}," warmup instead of fabricated early values; convergent thereafter). ",{"start":11803,"end":11804},{"line":11600,"column":11600,"offset":11796},{"line":11600,"column":1129,"offset":11805},28701,{"type":14,"tagName":142,"properties":11807,"children":11808,"position":11815},{},[11809],{"type":19,"value":11810,"position":11811},"stddev",{"start":11812,"end":11813},{"line":11600,"column":1129,"offset":11805},{"line":11600,"column":2618,"offset":11814},28709,{"start":11816,"end":11817},{"line":11600,"column":1129,"offset":11805},{"line":11600,"column":2618,"offset":11814},{"type":19,"value":1896,"position":11819},{"start":11820,"end":11821},{"line":11600,"column":2618,"offset":11814},{"line":11600,"column":3318,"offset":11822},28714,{"type":14,"tagName":142,"properties":11824,"children":11825,"position":11832},{},[11826],{"type":19,"value":11827,"position":11828},"rma",{"start":11829,"end":11830},{"line":11600,"column":3318,"offset":11822},{"line":11600,"column":592,"offset":11831},28719,{"start":11833,"end":11834},{"line":11600,"column":3318,"offset":11822},{"line":11600,"column":592,"offset":11831},{"type":19,"value":11836,"position":11837}," keep their legacy semantics, documented as such. Details and reasoning: ",{"start":11838,"end":11839},{"line":11600,"column":592,"offset":11831},{"line":11600,"column":11840,"offset":11841},354,28792,{"type":14,"tagName":1943,"properties":11843,"children":11844,"position":11852},{"href":2940},[11845],{"type":19,"value":2943,"position":11846},{"start":11847,"end":11849},{"line":11600,"column":2782,"offset":11848},28793,{"line":11600,"column":11850,"offset":11851},375,28813,{"start":11853,"end":11854},{"line":11600,"column":11840,"offset":11841},{"line":11600,"column":11855,"offset":11856},406,28844,{"type":19,"value":1356,"position":11858},{"start":11859,"end":11860},{"line":11600,"column":11855,"offset":11856},{"line":11600,"column":173,"offset":11861},28845,{"start":11863,"end":11865},{"line":11600,"column":23,"offset":11864},28439,{"line":11600,"column":173,"offset":11861},{"type":19,"value":57},{"start":11868,"end":11869},{"line":11600,"column":23,"offset":11864},{"line":11600,"column":173,"offset":11861},{"type":19,"value":57},{"type":14,"tagName":462,"properties":11872,"children":11874,"position":11881},{"id":11873},"compatibility-4",[11875],{"type":19,"value":8743,"position":11876},{"start":11877,"end":11879},{"line":5680,"column":93,"offset":11878},28851,{"line":5680,"column":71,"offset":11880},28864,{"start":11882,"end":11884},{"line":5680,"column":23,"offset":11883},28847,{"line":5680,"column":71,"offset":11880},{"type":19,"value":57},{"type":14,"tagName":481,"properties":11887,"children":11888,"position":12019},{},[11889,11890,11971,11972,11986,11987,12018],{"type":19,"value":57},{"type":14,"tagName":486,"properties":11891,"children":11892,"position":11967},{},[11893,11901,11912,11917,11928,11933,11944,11949,11961],{"type":19,"value":11894,"position":11895},"No new reserved words (",{"start":11896,"end":11899},{"line":11897,"column":67,"offset":11898},199,28868,{"line":11897,"column":36,"offset":11900},28891,{"type":14,"tagName":142,"properties":11902,"children":11903,"position":11909},{},[11904],{"type":19,"value":5477,"position":11905},{"start":11906,"end":11907},{"line":11897,"column":36,"offset":11900},{"line":11897,"column":40,"offset":11908},28897,{"start":11910,"end":11911},{"line":11897,"column":36,"offset":11900},{"line":11897,"column":40,"offset":11908},{"type":19,"value":260,"position":11913},{"start":11914,"end":11915},{"line":11897,"column":40,"offset":11908},{"line":11897,"column":45,"offset":11916},28899,{"type":14,"tagName":142,"properties":11918,"children":11919,"position":11925},{},[11920],{"type":19,"value":7618,"position":11921},{"start":11922,"end":11923},{"line":11897,"column":45,"offset":11916},{"line":11897,"column":519,"offset":11924},28907,{"start":11926,"end":11927},{"line":11897,"column":45,"offset":11916},{"line":11897,"column":519,"offset":11924},{"type":19,"value":260,"position":11929},{"start":11930,"end":11931},{"line":11897,"column":519,"offset":11924},{"line":11897,"column":3445,"offset":11932},28909,{"type":14,"tagName":142,"properties":11934,"children":11935,"position":11941},{},[11936],{"type":19,"value":7635,"position":11937},{"start":11938,"end":11939},{"line":11897,"column":3445,"offset":11932},{"line":11897,"column":529,"offset":11940},28918,{"start":11942,"end":11943},{"line":11897,"column":3445,"offset":11932},{"line":11897,"column":529,"offset":11940},{"type":19,"value":260,"position":11945},{"start":11946,"end":11947},{"line":11897,"column":529,"offset":11940},{"line":11897,"column":8550,"offset":11948},28920,{"type":14,"tagName":142,"properties":11950,"children":11951,"position":11958},{},[11952],{"type":19,"value":2759,"position":11953},{"start":11954,"end":11955},{"line":11897,"column":8550,"offset":11948},{"line":11897,"column":11956,"offset":11957},63,28928,{"start":11959,"end":11960},{"line":11897,"column":8550,"offset":11948},{"line":11897,"column":11956,"offset":11957},{"type":19,"value":11962,"position":11963}," are contextual).",{"start":11964,"end":11965},{"line":11897,"column":11956,"offset":11957},{"line":11897,"column":5723,"offset":11966},28945,{"start":11968,"end":11970},{"line":11897,"column":23,"offset":11969},28866,{"line":11897,"column":5723,"offset":11966},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11973,"children":11974,"position":11982},{},[11975],{"type":19,"value":11976,"position":11977},"Script-defined functions always beat same-named new builtins.",{"start":11978,"end":11980},{"line":169,"column":67,"offset":11979},28948,{"line":169,"column":2384,"offset":11981},29009,{"start":11983,"end":11985},{"line":169,"column":23,"offset":11984},28946,{"line":169,"column":2384,"offset":11981},{"type":19,"value":57},{"type":14,"tagName":486,"properties":11988,"children":11989,"position":12014},{},[11990,11997,12008],{"type":19,"value":11991,"position":11992},"Legacy call forms (positional inputs, scalar table cells, ",{"start":11993,"end":11995},{"line":128,"column":67,"offset":11994},29012,{"line":128,"column":1419,"offset":11996},29070,{"type":14,"tagName":142,"properties":11998,"children":11999,"position":12005},{},[12000],{"type":19,"value":667,"position":12001},{"start":12002,"end":12003},{"line":128,"column":1419,"offset":11996},{"line":128,"column":109,"offset":12004},29078,{"start":12006,"end":12007},{"line":128,"column":1419,"offset":11996},{"line":128,"column":109,"offset":12004},{"type":19,"value":12009,"position":12010},", string colors, uppercase alignment) all keep working.",{"start":12011,"end":12012},{"line":128,"column":109,"offset":12004},{"line":128,"column":8591,"offset":12013},29133,{"start":12015,"end":12017},{"line":128,"column":23,"offset":12016},29010,{"line":128,"column":8591,"offset":12013},{"type":19,"value":57},{"start":12020,"end":12021},{"line":11897,"column":23,"offset":11969},{"line":128,"column":8591,"offset":12013},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":12024,"children":12025,"position":12026},{},[],{"start":12027,"end":12029},{"line":134,"column":23,"offset":12028},29135,{"line":134,"column":68,"offset":12030},29138,{"type":19,"value":57},{"type":14,"tagName":59,"properties":12033,"children":12035,"position":12043},{"id":12034},"v2.2.0-june-2026",[12036],{"type":19,"value":12037,"position":12038},"v2.2.0 — June 2026",{"start":12039,"end":12041},{"line":7586,"column":68,"offset":12040},29143,{"line":7586,"column":2245,"offset":12042},29161,{"start":12044,"end":12046},{"line":7586,"column":23,"offset":12045},29140,{"line":7586,"column":2245,"offset":12042},{"type":19,"value":57},{"type":14,"tagName":15,"properties":12049,"children":12050,"position":12075},{},[12051,12058,12069],{"type":19,"value":12052,"position":12053},"Pie plots and clearer volume-profile access: a new proportional pie builtin, plus first-class documentation of the ",{"start":12054,"end":12056},{"line":4591,"column":23,"offset":12055},29163,{"line":4591,"column":3970,"offset":12057},29278,{"type":14,"tagName":142,"properties":12059,"children":12060,"position":12066},{},[12061],{"type":19,"value":7860,"position":12062},{"start":12063,"end":12064},{"line":4591,"column":3970,"offset":12057},{"line":4591,"column":6193,"offset":12065},29294,{"start":12067,"end":12068},{"line":4591,"column":3970,"offset":12057},{"line":4591,"column":6193,"offset":12065},{"type":19,"value":12070,"position":12071}," row structure and raw price-level bucket access.",{"start":12072,"end":12073},{"line":4591,"column":6193,"offset":12065},{"line":4591,"column":7557,"offset":12074},29343,{"start":12076,"end":12077},{"line":4591,"column":23,"offset":12055},{"line":4591,"column":7557,"offset":12074},{"type":19,"value":57},{"type":14,"tagName":462,"properties":12080,"children":12082,"position":12089},{"id":12081},"added-8",[12083],{"type":19,"value":467,"position":12084},{"start":12085,"end":12087},{"line":6452,"column":93,"offset":12086},29349,{"line":6452,"column":473,"offset":12088},29354,{"start":12090,"end":12092},{"line":6452,"column":23,"offset":12091},29345,{"line":6452,"column":473,"offset":12088},{"type":19,"value":57},{"type":14,"tagName":481,"properties":12095,"children":12096,"position":12566},{},[12097,12098,12565],{"type":19,"value":57},{"type":14,"tagName":486,"properties":12099,"children":12100,"position":12561},{},[12101,12122,12126,12560],{"type":14,"tagName":29,"properties":12102,"children":12103,"position":12117},{},[12104],{"type":14,"tagName":142,"properties":12105,"children":12106,"position":12114},{},[12107],{"type":19,"value":12108,"position":12109},"plotPie(value, price, radius?, colors?, opacity?, display?)",{"start":12110,"end":12112},{"line":4600,"column":93,"offset":12111},29360,{"line":4600,"column":2393,"offset":12113},29421,{"start":12115,"end":12116},{"line":4600,"column":93,"offset":12111},{"line":4600,"column":2393,"offset":12113},{"start":12118,"end":12120},{"line":4600,"column":67,"offset":12119},29358,{"line":4600,"column":5315,"offset":12121},29423,{"type":19,"value":12123,"position":12124}," — per-bar pie chart drawn as a proportional circle anchored to a price.\n",{"start":12125,"end":-1},{"line":4600,"column":5315,"offset":12121},{"type":14,"tagName":481,"properties":12127,"children":12128,"position":12557},{},[12129,12130,12211,12212,12290,12291,12425,12426,12556],{"type":19,"value":57},{"type":14,"tagName":486,"properties":12131,"children":12132,"position":12207},{},[12133,12146,12152,12166,12171,12183,12189,12201],{"type":14,"tagName":142,"properties":12134,"children":12135,"position":12143},{},[12136],{"type":19,"value":12137,"position":12138},"value",{"start":12139,"end":12141},{"line":4077,"column":93,"offset":12140},29500,{"line":4077,"column":96,"offset":12142},29507,{"start":12144,"end":12145},{"line":4077,"column":93,"offset":12140},{"line":4077,"column":96,"offset":12142},{"type":19,"value":12147,"position":12148}," is an array of slice magnitudes, ",{"start":12149,"end":12150},{"line":4077,"column":96,"offset":12142},{"line":4077,"column":2003,"offset":12151},29541,{"type":14,"tagName":29,"properties":12153,"children":12154,"position":12162},{},[12155],{"type":19,"value":12156,"position":12157},"normalized automatically",{"start":12158,"end":12160},{"line":4077,"column":3521,"offset":12159},29543,{"line":4077,"column":5366,"offset":12161},29567,{"start":12163,"end":12164},{"line":4077,"column":2003,"offset":12151},{"line":4077,"column":2753,"offset":12165},29569,{"type":19,"value":304,"position":12167},{"start":12168,"end":12169},{"line":4077,"column":2753,"offset":12165},{"line":4077,"column":5397,"offset":12170},29571,{"type":14,"tagName":142,"properties":12172,"children":12173,"position":12180},{},[12174],{"type":19,"value":12175,"position":12176},"[60, 40]",{"start":12177,"end":12178},{"line":4077,"column":5397,"offset":12170},{"line":4077,"column":5168,"offset":12179},29581,{"start":12181,"end":12182},{"line":4077,"column":5397,"offset":12170},{"line":4077,"column":5168,"offset":12179},{"type":19,"value":12184,"position":12185}," → 60% / 40%; ",{"start":12186,"end":12187},{"line":4077,"column":5168,"offset":12179},{"line":4077,"column":6507,"offset":12188},29595,{"type":14,"tagName":142,"properties":12190,"children":12191,"position":12198},{},[12192],{"type":19,"value":12193,"position":12194},"[3, 1]",{"start":12195,"end":12196},{"line":4077,"column":6507,"offset":12188},{"line":4077,"column":8058,"offset":12197},29603,{"start":12199,"end":12200},{"line":4077,"column":6507,"offset":12188},{"line":4077,"column":8058,"offset":12197},{"type":19,"value":12202,"position":12203}," → 75% / 25%).",{"start":12204,"end":12205},{"line":4077,"column":8058,"offset":12197},{"line":4077,"column":6908,"offset":12206},29617,{"start":12208,"end":12210},{"line":4077,"column":67,"offset":12209},29498,{"line":4077,"column":6908,"offset":12206},{"type":19,"value":57},{"type":14,"tagName":486,"properties":12213,"children":12214,"position":12286},{},[12215,12228,12234,12246,12252,12263,12269,12280],{"type":14,"tagName":142,"properties":12216,"children":12217,"position":12225},{},[12218],{"type":19,"value":12219,"position":12220},"price",{"start":12221,"end":12223},{"line":140,"column":93,"offset":12222},29622,{"line":140,"column":96,"offset":12224},29629,{"start":12226,"end":12227},{"line":140,"column":93,"offset":12222},{"line":140,"column":96,"offset":12224},{"type":19,"value":12229,"position":12230}," sets the vertical anchor; ",{"start":12231,"end":12232},{"line":140,"column":96,"offset":12224},{"line":140,"column":509,"offset":12233},29656,{"type":14,"tagName":142,"properties":12235,"children":12236,"position":12243},{},[12237],{"type":19,"value":12238,"position":12239},"radius",{"start":12240,"end":12241},{"line":140,"column":509,"offset":12233},{"line":140,"column":2274,"offset":12242},29664,{"start":12244,"end":12245},{"line":140,"column":509,"offset":12233},{"line":140,"column":2274,"offset":12242},{"type":19,"value":12247,"position":12248}," (px), ",{"start":12249,"end":12250},{"line":140,"column":2274,"offset":12242},{"line":140,"column":2012,"offset":12251},29671,{"type":14,"tagName":142,"properties":12253,"children":12254,"position":12260},{},[12255],{"type":19,"value":2424,"position":12256},{"start":12257,"end":12258},{"line":140,"column":2012,"offset":12251},{"line":140,"column":4968,"offset":12259},29679,{"start":12261,"end":12262},{"line":140,"column":2012,"offset":12251},{"line":140,"column":4968,"offset":12259},{"type":19,"value":12264,"position":12265}," (per slice), and ",{"start":12266,"end":12267},{"line":140,"column":4968,"offset":12259},{"line":140,"column":5723,"offset":12268},29697,{"type":14,"tagName":142,"properties":12270,"children":12271,"position":12277},{},[12272],{"type":19,"value":8007,"position":12273},{"start":12274,"end":12275},{"line":140,"column":5723,"offset":12268},{"line":140,"column":696,"offset":12276},29706,{"start":12278,"end":12279},{"line":140,"column":5723,"offset":12268},{"line":140,"column":696,"offset":12276},{"type":19,"value":12281,"position":12282}," (0–1) control appearance.",{"start":12283,"end":12284},{"line":140,"column":696,"offset":12276},{"line":140,"column":72,"offset":12285},29732,{"start":12287,"end":12289},{"line":140,"column":67,"offset":12288},29620,{"line":140,"column":72,"offset":12285},{"type":19,"value":57},{"type":14,"tagName":486,"properties":12292,"children":12293,"position":12421},{},[12294,12306,12312,12324,12330,12342,12348,12360,12366,12380,12386,12398,12403,12415],{"type":14,"tagName":142,"properties":12295,"children":12296,"position":12303},{},[12297],{"type":19,"value":7842,"position":12298},{"start":12299,"end":12301},{"line":4086,"column":93,"offset":12300},29737,{"line":4086,"column":102,"offset":12302},29746,{"start":12304,"end":12305},{"line":4086,"column":93,"offset":12300},{"line":4086,"column":102,"offset":12302},{"type":19,"value":12307,"position":12308}," — per-slice text mode: ",{"start":12309,"end":12310},{"line":4086,"column":102,"offset":12302},{"line":4086,"column":5351,"offset":12311},29770,{"type":14,"tagName":142,"properties":12313,"children":12314,"position":12321},{},[12315],{"type":19,"value":12316,"position":12317},"\"percent\"",{"start":12318,"end":12319},{"line":4086,"column":5351,"offset":12311},{"line":4086,"column":150,"offset":12320},29781,{"start":12322,"end":12323},{"line":4086,"column":5351,"offset":12311},{"line":4086,"column":150,"offset":12320},{"type":19,"value":12325,"position":12326}," (default), ",{"start":12327,"end":12328},{"line":4086,"column":150,"offset":12320},{"line":4086,"column":1419,"offset":12329},29793,{"type":14,"tagName":142,"properties":12331,"children":12332,"position":12339},{},[12333],{"type":19,"value":12334,"position":12335},"\"value\"",{"start":12336,"end":12337},{"line":4086,"column":1419,"offset":12329},{"line":4086,"column":4164,"offset":12338},29802,{"start":12340,"end":12341},{"line":4086,"column":1419,"offset":12329},{"line":4086,"column":4164,"offset":12338},{"type":19,"value":12343,"position":12344},", or ",{"start":12345,"end":12346},{"line":4086,"column":4164,"offset":12338},{"line":4086,"column":1270,"offset":12347},29807,{"type":14,"tagName":142,"properties":12349,"children":12350,"position":12357},{},[12351],{"type":19,"value":12352,"position":12353},"\"none\"",{"start":12354,"end":12355},{"line":4086,"column":1270,"offset":12347},{"line":4086,"column":6066,"offset":12356},29815,{"start":12358,"end":12359},{"line":4086,"column":1270,"offset":12347},{"line":4086,"column":6066,"offset":12356},{"type":19,"value":12361,"position":12362},". This is a single mode string, ",{"start":12363,"end":12364},{"line":4086,"column":6066,"offset":12356},{"line":4086,"column":72,"offset":12365},29847,{"type":14,"tagName":29,"properties":12367,"children":12368,"position":12376},{},[12369],{"type":19,"value":12370,"position":12371},"not",{"start":12372,"end":12374},{"line":4086,"column":458,"offset":12373},29849,{"line":4086,"column":6176,"offset":12375},29852,{"start":12377,"end":12378},{"line":4086,"column":72,"offset":12365},{"line":4086,"column":6908,"offset":12379},29854,{"type":19,"value":12381,"position":12382}," the ",{"start":12383,"end":12384},{"line":4086,"column":6908,"offset":12379},{"line":4086,"column":885,"offset":12385},29859,{"type":14,"tagName":142,"properties":12387,"children":12388,"position":12395},{},[12389],{"type":19,"value":12390,"position":12391},"label=[...]",{"start":12392,"end":12393},{"line":4086,"column":885,"offset":12385},{"line":4086,"column":1468,"offset":12394},29872,{"start":12396,"end":12397},{"line":4086,"column":885,"offset":12385},{"line":4086,"column":1468,"offset":12394},{"type":19,"value":4013,"position":12399},{"start":12400,"end":12401},{"line":4086,"column":1468,"offset":12394},{"line":4086,"column":4007,"offset":12402},29873,{"type":14,"tagName":142,"properties":12404,"children":12405,"position":12412},{},[12406],{"type":19,"value":12407,"position":12408},"desc=[...]",{"start":12409,"end":12410},{"line":4086,"column":4007,"offset":12402},{"line":4086,"column":9478,"offset":12411},29885,{"start":12413,"end":12414},{"line":4086,"column":4007,"offset":12402},{"line":4086,"column":9478,"offset":12411},{"type":19,"value":12416,"position":12417}," series-label arrays the other plots take.",{"start":12418,"end":12419},{"line":4086,"column":9478,"offset":12411},{"line":4086,"column":11600,"offset":12420},29927,{"start":12422,"end":12424},{"line":4086,"column":67,"offset":12423},29735,{"line":4086,"column":11600,"offset":12420},{"type":19,"value":57},{"type":14,"tagName":486,"properties":12427,"children":12428,"position":12552},{},[12429,12444,12450,12462,12468,12479,12485,12499,12504,12515,12520,12531,12536,12547],{"type":14,"tagName":29,"properties":12430,"children":12431,"position":12439},{},[12432],{"type":19,"value":12433,"position":12434},"Batchable",{"start":12435,"end":12437},{"line":796,"column":125,"offset":12436},29934,{"line":796,"column":133,"offset":12438},29943,{"start":12440,"end":12442},{"line":796,"column":93,"offset":12441},29932,{"line":796,"column":71,"offset":12443},29945,{"type":19,"value":12445,"position":12446}," — works inside ",{"start":12447,"end":12448},{"line":796,"column":71,"offset":12443},{"line":796,"column":45,"offset":12449},29961,{"type":14,"tagName":142,"properties":12451,"children":12452,"position":12459},{},[12453],{"type":19,"value":12454,"position":12455},"plotBatches",{"start":12456,"end":12457},{"line":796,"column":45,"offset":12449},{"line":796,"column":2274,"offset":12458},29974,{"start":12460,"end":12461},{"line":796,"column":45,"offset":12449},{"line":796,"column":2274,"offset":12458},{"type":19,"value":12463,"position":12464},", so you can draw one pie per price level (e.g. buy/sell split at every ",{"start":12465,"end":12466},{"line":796,"column":2274,"offset":12458},{"line":796,"column":100,"offset":12467},30046,{"type":14,"tagName":142,"properties":12469,"children":12470,"position":12476},{},[12471],{"type":19,"value":7860,"position":12472},{"start":12473,"end":12474},{"line":796,"column":100,"offset":12467},{"line":796,"column":3468,"offset":12475},30062,{"start":12477,"end":12478},{"line":796,"column":100,"offset":12467},{"line":796,"column":3468,"offset":12475},{"type":19,"value":12480,"position":12481}," bucket). Each batched pie carries its ",{"start":12482,"end":12483},{"line":796,"column":3468,"offset":12475},{"line":796,"column":9088,"offset":12484},30101,{"type":14,"tagName":29,"properties":12486,"children":12487,"position":12495},{},[12488],{"type":19,"value":12489,"position":12490},"own",{"start":12491,"end":12493},{"line":796,"column":6686,"offset":12492},30103,{"line":796,"column":5436,"offset":12494},30106,{"start":12496,"end":12497},{"line":796,"column":9088,"offset":12484},{"line":796,"column":7557,"offset":12498},30108,{"type":19,"value":2119,"position":12500},{"start":12501,"end":12502},{"line":796,"column":7557,"offset":12498},{"line":796,"column":766,"offset":12503},30109,{"type":14,"tagName":142,"properties":12505,"children":12506,"position":12512},{},[12507],{"type":19,"value":12238,"position":12508},{"start":12509,"end":12510},{"line":796,"column":766,"offset":12503},{"line":796,"column":131,"offset":12511},30117,{"start":12513,"end":12514},{"line":796,"column":766,"offset":12503},{"line":796,"column":131,"offset":12511},{"type":19,"value":260,"position":12516},{"start":12517,"end":12518},{"line":796,"column":131,"offset":12511},{"line":796,"column":126,"offset":12519},30119,{"type":14,"tagName":142,"properties":12521,"children":12522,"position":12528},{},[12523],{"type":19,"value":2424,"position":12524},{"start":12525,"end":12526},{"line":796,"column":126,"offset":12519},{"line":796,"column":169,"offset":12527},30127,{"start":12529,"end":12530},{"line":796,"column":126,"offset":12519},{"line":796,"column":169,"offset":12527},{"type":19,"value":1529,"position":12532},{"start":12533,"end":12534},{"line":796,"column":169,"offset":12527},{"line":796,"column":786,"offset":12535},30133,{"type":14,"tagName":142,"properties":12537,"children":12538,"position":12544},{},[12539],{"type":19,"value":8007,"position":12540},{"start":12541,"end":12542},{"line":796,"column":786,"offset":12535},{"line":796,"column":796,"offset":12543},30142,{"start":12545,"end":12546},{"line":796,"column":786,"offset":12535},{"line":796,"column":796,"offset":12543},{"type":19,"value":1356,"position":12548},{"start":12549,"end":12550},{"line":796,"column":796,"offset":12543},{"line":796,"column":4617,"offset":12551},30143,{"start":12553,"end":12555},{"line":796,"column":67,"offset":12554},29930,{"line":796,"column":4617,"offset":12551},{"type":19,"value":57},{"start":12558,"end":12559},{"line":4077,"column":67,"offset":12209},{"line":796,"column":4617,"offset":12551},{"type":19,"value":57},{"start":12562,"end":12564},{"line":4600,"column":23,"offset":12563},29356,{"line":796,"column":4617,"offset":12551},{"type":19,"value":57},{"start":12567,"end":12568},{"line":4600,"column":23,"offset":12563},{"line":796,"column":4617,"offset":12551},{"type":19,"value":57},{"type":14,"tagName":462,"properties":12571,"children":12573,"position":12581},{"id":12572},"documented",[12574],{"type":19,"value":12575,"position":12576},"Documented",{"start":12577,"end":12579},{"line":5698,"column":93,"offset":12578},30149,{"line":5698,"column":1244,"offset":12580},30159,{"start":12582,"end":12584},{"line":5698,"column":23,"offset":12583},30145,{"line":5698,"column":1244,"offset":12580},{"type":19,"value":57},{"type":14,"tagName":481,"properties":12587,"children":12588,"position":12963},{},[12589,12590,12664,12665,12781,12782,12962],{"type":19,"value":57},{"type":14,"tagName":486,"properties":12591,"children":12592,"position":12660},{},[12593,12619,12625,12637,12643,12654],{"type":14,"tagName":29,"properties":12594,"children":12595,"position":12614},{},[12596,12608],{"type":14,"tagName":142,"properties":12597,"children":12598,"position":12605},{},[12599],{"type":19,"value":7860,"position":12600},{"start":12601,"end":12603},{"line":6560,"column":93,"offset":12602},30165,{"line":6560,"column":2979,"offset":12604},30181,{"start":12606,"end":12607},{"line":6560,"column":93,"offset":12602},{"line":6560,"column":2979,"offset":12604},{"type":19,"value":12609,"position":12610}," data structure",{"start":12611,"end":12612},{"line":6560,"column":2979,"offset":12604},{"line":6560,"column":5532,"offset":12613},30196,{"start":12615,"end":12617},{"line":6560,"column":67,"offset":12616},30163,{"line":6560,"column":5351,"offset":12618},30198,{"type":19,"value":12620,"position":12621}," — each bar is a row shaped ",{"start":12622,"end":12623},{"line":6560,"column":5351,"offset":12618},{"line":6560,"column":2393,"offset":12624},30226,{"type":14,"tagName":142,"properties":12626,"children":12627,"position":12634},{},[12628],{"type":19,"value":12629,"position":12630},"[timestamp, [priceLow, priceHigh, buyVol, sellVol], …]",{"start":12631,"end":12632},{"line":6560,"column":2393,"offset":12624},{"line":6560,"column":6908,"offset":12633},30282,{"start":12635,"end":12636},{"line":6560,"column":2393,"offset":12624},{"line":6560,"column":6908,"offset":12633},{"type":19,"value":12638,"position":12639},": slot ",{"start":12640,"end":12641},{"line":6560,"column":6908,"offset":12633},{"line":6560,"column":3997,"offset":12642},30289,{"type":14,"tagName":142,"properties":12644,"children":12645,"position":12651},{},[12646],{"type":19,"value":3395,"position":12647},{"start":12648,"end":12649},{"line":6560,"column":3997,"offset":12642},{"line":6560,"column":6193,"offset":12650},30292,{"start":12652,"end":12653},{"line":6560,"column":3997,"offset":12642},{"line":6560,"column":6193,"offset":12650},{"type":19,"value":12655,"position":12656}," is the timestamp and every later slot is one price-level bucket. The bucket count varies per bar.",{"start":12657,"end":12658},{"line":6560,"column":6193,"offset":12650},{"line":6560,"column":7192,"offset":12659},30390,{"start":12661,"end":12663},{"line":6560,"column":23,"offset":12662},30161,{"line":6560,"column":7192,"offset":12659},{"type":19,"value":57},{"type":14,"tagName":486,"properties":12666,"children":12667,"position":12777},{},[12668,12683,12689,12701,12707,12719,12725,12737,12743,12755,12760,12771],{"type":14,"tagName":29,"properties":12669,"children":12670,"position":12678},{},[12671],{"type":19,"value":12672,"position":12673},"Raw bucket access",{"start":12674,"end":12676},{"line":172,"column":93,"offset":12675},30395,{"line":172,"column":2245,"offset":12677},30412,{"start":12679,"end":12681},{"line":172,"column":67,"offset":12680},30393,{"line":172,"column":26,"offset":12682},30414,{"type":19,"value":12684,"position":12685}," — alongside the scalar ",{"start":12686,"end":12687},{"line":172,"column":26,"offset":12682},{"line":172,"column":3521,"offset":12688},30438,{"type":14,"tagName":142,"properties":12690,"children":12691,"position":12698},{},[12692],{"type":19,"value":12693,"position":12694},"vp*",{"start":12695,"end":12696},{"line":172,"column":3521,"offset":12688},{"line":172,"column":529,"offset":12697},30443,{"start":12699,"end":12700},{"line":172,"column":3521,"offset":12688},{"line":172,"column":529,"offset":12697},{"type":19,"value":12702,"position":12703}," accessors, you can iterate buckets directly: ",{"start":12704,"end":12705},{"line":172,"column":529,"offset":12697},{"line":172,"column":3057,"offset":12706},30489,{"type":14,"tagName":142,"properties":12708,"children":12709,"position":12716},{},[12710],{"type":19,"value":12711,"position":12712},"vpa[0]",{"start":12713,"end":12714},{"line":172,"column":3057,"offset":12706},{"line":172,"column":6159,"offset":12715},30497,{"start":12717,"end":12718},{"line":172,"column":3057,"offset":12706},{"line":172,"column":6159,"offset":12715},{"type":19,"value":12720,"position":12721}," is the current row and ",{"start":12722,"end":12723},{"line":172,"column":6159,"offset":12715},{"line":172,"column":3075,"offset":12724},30521,{"type":14,"tagName":142,"properties":12726,"children":12727,"position":12734},{},[12728],{"type":19,"value":12729,"position":12730},"vpa[0][i + 1]",{"start":12731,"end":12732},{"line":172,"column":3075,"offset":12724},{"line":172,"column":4520,"offset":12733},30536,{"start":12735,"end":12736},{"line":172,"column":3075,"offset":12724},{"line":172,"column":4520,"offset":12733},{"type":19,"value":12738,"position":12739}," is the i-th bucket. Pairs naturally with ",{"start":12740,"end":12741},{"line":172,"column":4520,"offset":12733},{"line":172,"column":5016,"offset":12742},30578,{"type":14,"tagName":142,"properties":12744,"children":12745,"position":12752},{},[12746],{"type":19,"value":12747,"position":12748},"vpBucketCount",{"start":12749,"end":12750},{"line":172,"column":5016,"offset":12742},{"line":172,"column":134,"offset":12751},30593,{"start":12753,"end":12754},{"line":172,"column":5016,"offset":12742},{"line":172,"column":134,"offset":12751},{"type":19,"value":7188,"position":12756},{"start":12757,"end":12758},{"line":172,"column":134,"offset":12751},{"line":172,"column":786,"offset":12759},30596,{"type":14,"tagName":142,"properties":12761,"children":12762,"position":12768},{},[12763],{"type":19,"value":12454,"position":12764},{"start":12765,"end":12766},{"line":172,"column":786,"offset":12759},{"line":172,"column":6560,"offset":12767},30609,{"start":12769,"end":12770},{"line":172,"column":786,"offset":12759},{"line":172,"column":6560,"offset":12767},{"type":19,"value":12772,"position":12773}," (e.g. a pie per bucket).",{"start":12774,"end":12775},{"line":172,"column":6560,"offset":12767},{"line":172,"column":806,"offset":12776},30634,{"start":12778,"end":12780},{"line":172,"column":23,"offset":12779},30391,{"line":172,"column":806,"offset":12776},{"type":19,"value":57},{"type":14,"tagName":486,"properties":12783,"children":12784,"position":12958},{},[12785,12800,12805,12817,12822,12834,12839,12851,12856,12868,12873,12885,12890,12902,12907,12918,12923,12935,12940,12952],{"type":14,"tagName":29,"properties":12786,"children":12787,"position":12795},{},[12788],{"type":19,"value":12789,"position":12790},"Accessor functions",{"start":12791,"end":12793},{"line":6569,"column":93,"offset":12792},30639,{"line":6569,"column":27,"offset":12794},30657,{"start":12796,"end":12798},{"line":6569,"column":67,"offset":12797},30637,{"line":6569,"column":37,"offset":12799},30659,{"type":19,"value":8296,"position":12801},{"start":12802,"end":12803},{"line":6569,"column":37,"offset":12799},{"line":6569,"column":2852,"offset":12804},30662,{"type":14,"tagName":142,"properties":12806,"children":12807,"position":12814},{},[12808],{"type":19,"value":12809,"position":12810},"vpBuy",{"start":12811,"end":12812},{"line":6569,"column":2852,"offset":12804},{"line":6569,"column":44,"offset":12813},30669,{"start":12815,"end":12816},{"line":6569,"column":2852,"offset":12804},{"line":6569,"column":44,"offset":12813},{"type":19,"value":260,"position":12818},{"start":12819,"end":12820},{"line":6569,"column":44,"offset":12813},{"line":6569,"column":1399,"offset":12821},30671,{"type":14,"tagName":142,"properties":12823,"children":12824,"position":12831},{},[12825],{"type":19,"value":12826,"position":12827},"vpSell",{"start":12828,"end":12829},{"line":6569,"column":1399,"offset":12821},{"line":6569,"column":2872,"offset":12830},30679,{"start":12832,"end":12833},{"line":6569,"column":1399,"offset":12821},{"line":6569,"column":2872,"offset":12830},{"type":19,"value":260,"position":12835},{"start":12836,"end":12837},{"line":6569,"column":2872,"offset":12830},{"line":6569,"column":2274,"offset":12838},30681,{"type":14,"tagName":142,"properties":12840,"children":12841,"position":12848},{},[12842],{"type":19,"value":12843,"position":12844},"vpDelta",{"start":12845,"end":12846},{"line":6569,"column":2274,"offset":12838},{"line":6569,"column":538,"offset":12847},30690,{"start":12849,"end":12850},{"line":6569,"column":2274,"offset":12838},{"line":6569,"column":538,"offset":12847},{"type":19,"value":260,"position":12852},{"start":12853,"end":12854},{"line":6569,"column":538,"offset":12847},{"line":6569,"column":4149,"offset":12855},30692,{"type":14,"tagName":142,"properties":12857,"children":12858,"position":12865},{},[12859],{"type":19,"value":12860,"position":12861},"vpTotal",{"start":12862,"end":12863},{"line":6569,"column":4149,"offset":12855},{"line":6569,"column":548,"offset":12864},30701,{"start":12866,"end":12867},{"line":6569,"column":4149,"offset":12855},{"line":6569,"column":548,"offset":12864},{"type":19,"value":260,"position":12869},{"start":12870,"end":12871},{"line":6569,"column":548,"offset":12864},{"line":6569,"column":109,"offset":12872},30703,{"type":14,"tagName":142,"properties":12874,"children":12875,"position":12882},{},[12876],{"type":19,"value":12877,"position":12878},"vpPoc",{"start":12879,"end":12880},{"line":6569,"column":109,"offset":12872},{"line":6569,"column":5397,"offset":12881},30710,{"start":12883,"end":12884},{"line":6569,"column":109,"offset":12872},{"line":6569,"column":5397,"offset":12881},{"type":19,"value":260,"position":12886},{"start":12887,"end":12888},{"line":6569,"column":5397,"offset":12881},{"line":6569,"column":5584,"offset":12889},30712,{"type":14,"tagName":142,"properties":12891,"children":12892,"position":12899},{},[12893],{"type":19,"value":12894,"position":12895},"vpPocVolume",{"start":12896,"end":12897},{"line":6569,"column":5584,"offset":12889},{"line":6569,"column":866,"offset":12898},30725,{"start":12900,"end":12901},{"line":6569,"column":5584,"offset":12889},{"line":6569,"column":866,"offset":12898},{"type":19,"value":260,"position":12903},{"start":12904,"end":12905},{"line":6569,"column":866,"offset":12898},{"line":6569,"column":7827,"offset":12906},30727,{"type":14,"tagName":142,"properties":12908,"children":12909,"position":12915},{},[12910],{"type":19,"value":12747,"position":12911},{"start":12912,"end":12913},{"line":6569,"column":7827,"offset":12906},{"line":6569,"column":8058,"offset":12914},30742,{"start":12916,"end":12917},{"line":6569,"column":7827,"offset":12906},{"line":6569,"column":8058,"offset":12914},{"type":19,"value":260,"position":12919},{"start":12920,"end":12921},{"line":6569,"column":8058,"offset":12914},{"line":6569,"column":7363,"offset":12922},30744,{"type":14,"tagName":142,"properties":12924,"children":12925,"position":12932},{},[12926],{"type":19,"value":12927,"position":12928},"vpPriceHigh",{"start":12929,"end":12930},{"line":6569,"column":7363,"offset":12922},{"line":6569,"column":6917,"offset":12931},30757,{"start":12933,"end":12934},{"line":6569,"column":7363,"offset":12922},{"line":6569,"column":6917,"offset":12931},{"type":19,"value":260,"position":12936},{"start":12937,"end":12938},{"line":6569,"column":6917,"offset":12931},{"line":6569,"column":8677,"offset":12939},30759,{"type":14,"tagName":142,"properties":12941,"children":12942,"position":12949},{},[12943],{"type":19,"value":12944,"position":12945},"vpPriceLow",{"start":12946,"end":12947},{"line":6569,"column":8677,"offset":12939},{"line":6569,"column":2608,"offset":12948},30771,{"start":12950,"end":12951},{"line":6569,"column":8677,"offset":12939},{"line":6569,"column":2608,"offset":12948},{"type":19,"value":12953,"position":12954}," documented with parameter tables and examples.",{"start":12955,"end":12956},{"line":6569,"column":2608,"offset":12948},{"line":6569,"column":6219,"offset":12957},30818,{"start":12959,"end":12961},{"line":6569,"column":23,"offset":12960},30635,{"line":6569,"column":6219,"offset":12957},{"type":19,"value":57},{"start":12964,"end":12965},{"line":6560,"column":23,"offset":12662},{"line":6569,"column":6219,"offset":12957},{"type":19,"value":57},{"type":14,"tagName":462,"properties":12968,"children":12970,"position":12978},{"id":12969},"reference",[12971],{"type":19,"value":12972,"position":12973},"Reference",{"start":12974,"end":12976},{"line":6083,"column":93,"offset":12975},30824,{"line":6083,"column":102,"offset":12977},30833,{"start":12979,"end":12981},{"line":6083,"column":23,"offset":12980},30820,{"line":6083,"column":102,"offset":12977},{"type":19,"value":57},{"type":14,"tagName":481,"properties":12984,"children":12985,"position":13093},{},[12986,12987,13030,13031,13077,13078,13092],{"type":19,"value":57},{"type":14,"tagName":486,"properties":12988,"children":12989,"position":13026},{},[12990,13004,13009,13020],{"type":14,"tagName":1943,"properties":12991,"children":12992,"position":12999},{"href":2516},[12993],{"type":19,"value":2519,"position":12994},{"start":12995,"end":12997},{"line":914,"column":68,"offset":12996},30838,{"line":914,"column":96,"offset":12998},30846,{"start":13000,"end":13002},{"line":914,"column":67,"offset":13001},30837,{"line":914,"column":519,"offset":13003},30876,{"type":19,"value":8296,"position":13005},{"start":13006,"end":13007},{"line":914,"column":519,"offset":13003},{"line":914,"column":2872,"offset":13008},30879,{"type":14,"tagName":142,"properties":13010,"children":13011,"position":13017},{},[13012],{"type":19,"value":7822,"position":13013},{"start":13014,"end":13015},{"line":914,"column":2872,"offset":13008},{"line":914,"column":2012,"offset":13016},30888,{"start":13018,"end":13019},{"line":914,"column":2872,"offset":13008},{"line":914,"column":2012,"offset":13016},{"type":19,"value":13021,"position":13022}," parameter table and examples.",{"start":13023,"end":13024},{"line":914,"column":2012,"offset":13016},{"line":914,"column":4320,"offset":13025},30918,{"start":13027,"end":13029},{"line":914,"column":23,"offset":13028},30835,{"line":914,"column":4320,"offset":13025},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13032,"children":13033,"position":13073},{},[13034,13050,13056,13067],{"type":14,"tagName":1943,"properties":13035,"children":13037,"position":13045},{"href":13036},"/kscript/functions/volume-profile",[13038],{"type":19,"value":13039,"position":13040},"Volume Profile Functions",{"start":13041,"end":13043},{"line":1302,"column":68,"offset":13042},30922,{"line":1302,"column":2852,"offset":13044},30946,{"start":13046,"end":13048},{"line":1302,"column":67,"offset":13047},30921,{"line":1302,"column":2384,"offset":13049},30982,{"type":19,"value":13051,"position":13052}," — data structure, raw bucket access, and the full ",{"start":13053,"end":13054},{"line":1302,"column":2384,"offset":13049},{"line":1302,"column":72,"offset":13055},31033,{"type":14,"tagName":142,"properties":13057,"children":13058,"position":13064},{},[13059],{"type":19,"value":12693,"position":13060},{"start":13061,"end":13062},{"line":1302,"column":72,"offset":13055},{"line":1302,"column":6176,"offset":13063},31038,{"start":13065,"end":13066},{"line":1302,"column":72,"offset":13055},{"line":1302,"column":6176,"offset":13063},{"type":19,"value":13068,"position":13069}," accessor reference.",{"start":13070,"end":13071},{"line":1302,"column":6176,"offset":13063},{"line":1302,"column":1468,"offset":13072},31058,{"start":13074,"end":13076},{"line":1302,"column":23,"offset":13075},30919,{"line":1302,"column":1468,"offset":13072},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13079,"children":13080,"position":13088},{},[13081],{"type":19,"value":13082,"position":13083},"Backward-compatible within v2; no migration required.",{"start":13084,"end":13086},{"line":2055,"column":67,"offset":13085},31061,{"line":2055,"column":538,"offset":13087},31114,{"start":13089,"end":13091},{"line":2055,"column":23,"offset":13090},31059,{"line":2055,"column":538,"offset":13087},{"type":19,"value":57},{"start":13094,"end":13095},{"line":914,"column":23,"offset":13028},{"line":2055,"column":538,"offset":13087},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":13098,"children":13099,"position":13100},{},[],{"start":13101,"end":13103},{"line":1110,"column":23,"offset":13102},31116,{"line":1110,"column":68,"offset":13104},31119,{"type":19,"value":57},{"type":14,"tagName":59,"properties":13107,"children":13109,"position":13117},{"id":13108},"v2.1.0-may-2026",[13110],{"type":19,"value":13111,"position":13112},"v2.1.0 — May 2026",{"start":13113,"end":13115},{"line":3416,"column":68,"offset":13114},31124,{"line":3416,"column":2979,"offset":13116},31141,{"start":13118,"end":13120},{"line":3416,"column":23,"offset":13119},31121,{"line":3416,"column":2979,"offset":13116},{"type":19,"value":57},{"type":14,"tagName":15,"properties":13123,"children":13124,"position":13133},{},[13125],{"type":19,"value":13126,"position":13127},"Plotting refresh: a new per-bar label builtin and richer styling kwargs across the existing chart-shape plots.",{"start":13128,"end":13131},{"line":13129,"column":23,"offset":13130},233,31143,{"line":13129,"column":706,"offset":13132},31253,{"start":13134,"end":13135},{"line":13129,"column":23,"offset":13130},{"line":13129,"column":706,"offset":13132},{"type":19,"value":57},{"type":14,"tagName":462,"properties":13138,"children":13140,"position":13148},{"id":13139},"added-9",[13141],{"type":19,"value":467,"position":13142},{"start":13143,"end":13146},{"line":13144,"column":93,"offset":13145},235,31259,{"line":13144,"column":473,"offset":13147},31264,{"start":13149,"end":13151},{"line":13144,"column":23,"offset":13150},31255,{"line":13144,"column":473,"offset":13147},{"type":19,"value":57},{"type":14,"tagName":481,"properties":13154,"children":13155,"position":13912},{},[13156,13157,13519,13520,13662,13663,13784,13785,13839,13840,13911],{"type":19,"value":57},{"type":14,"tagName":486,"properties":13158,"children":13159,"position":13515},{},[13160,13181,13185,13514],{"type":14,"tagName":29,"properties":13161,"children":13162,"position":13176},{},[13163],{"type":14,"tagName":142,"properties":13164,"children":13165,"position":13173},{},[13166],{"type":19,"value":13167,"position":13168},"plotPriceLabel(price, text?, type?, position?, ...)",{"start":13169,"end":13171},{"line":8131,"column":93,"offset":13170},31270,{"line":8131,"column":4149,"offset":13172},31323,{"start":13174,"end":13175},{"line":8131,"column":93,"offset":13170},{"line":8131,"column":4149,"offset":13172},{"start":13177,"end":13179},{"line":8131,"column":67,"offset":13178},31268,{"line":8131,"column":1059,"offset":13180},31325,{"type":19,"value":13182,"position":13183}," — per-bar decorative label anchored at a price level. Three visual modes:\n",{"start":13184,"end":-1},{"line":8131,"column":1059,"offset":13180},{"type":14,"tagName":481,"properties":13186,"children":13187,"position":13511},{},[13188,13189,13215,13216,13242,13243,13321,13322,13439,13440,13483,13484,13510],{"type":19,"value":57},{"type":14,"tagName":486,"properties":13190,"children":13191,"position":13211},{},[13192,13205],{"type":14,"tagName":142,"properties":13193,"children":13194,"position":13202},{},[13195],{"type":19,"value":13196,"position":13197},"\"callout\"",{"start":13198,"end":13200},{"line":194,"column":93,"offset":13199},31404,{"line":194,"column":133,"offset":13201},31415,{"start":13203,"end":13204},{"line":194,"column":93,"offset":13199},{"line":194,"column":133,"offset":13201},{"type":19,"value":13206,"position":13207}," (default): text box with a leader line and dot",{"start":13208,"end":13209},{"line":194,"column":133,"offset":13201},{"line":194,"column":11956,"offset":13210},31462,{"start":13212,"end":13214},{"line":194,"column":67,"offset":13213},31402,{"line":194,"column":11956,"offset":13210},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13217,"children":13218,"position":13238},{},[13219,13232],{"type":14,"tagName":142,"properties":13220,"children":13221,"position":13229},{},[13222],{"type":19,"value":13223,"position":13224},"\"simple\"",{"start":13225,"end":13227},{"line":6987,"column":93,"offset":13226},31467,{"line":6987,"column":1244,"offset":13228},31477,{"start":13230,"end":13231},{"line":6987,"column":93,"offset":13226},{"line":6987,"column":1244,"offset":13228},{"type":19,"value":13233,"position":13234},": centered text box",{"start":13235,"end":13236},{"line":6987,"column":1244,"offset":13228},{"line":6987,"column":45,"offset":13237},31496,{"start":13239,"end":13241},{"line":6987,"column":67,"offset":13240},31465,{"line":6987,"column":45,"offset":13237},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13244,"children":13245,"position":13317},{},[13246,13259,13265,13277,13282,13294,13299,13311],{"type":14,"tagName":142,"properties":13247,"children":13248,"position":13256},{},[13249],{"type":19,"value":13250,"position":13251},"\"icon-only\"",{"start":13252,"end":13254},{"line":5026,"column":93,"offset":13253},31501,{"line":5026,"column":71,"offset":13255},31514,{"start":13257,"end":13258},{"line":5026,"column":93,"offset":13253},{"line":5026,"column":71,"offset":13255},{"type":19,"value":13260,"position":13261},": SVG path or image URL, with ",{"start":13262,"end":13263},{"line":5026,"column":71,"offset":13255},{"line":5026,"column":3521,"offset":13264},31544,{"type":14,"tagName":142,"properties":13266,"children":13267,"position":13274},{},[13268],{"type":19,"value":13269,"position":13270},"iconSize",{"start":13271,"end":13272},{"line":5026,"column":3521,"offset":13264},{"line":5026,"column":4149,"offset":13273},31554,{"start":13275,"end":13276},{"line":5026,"column":3521,"offset":13264},{"line":5026,"column":4149,"offset":13273},{"type":19,"value":260,"position":13278},{"start":13279,"end":13280},{"line":5026,"column":4149,"offset":13273},{"line":5026,"column":1059,"offset":13281},31556,{"type":14,"tagName":142,"properties":13283,"children":13284,"position":13291},{},[13285],{"type":19,"value":13286,"position":13287},"anchorX",{"start":13288,"end":13289},{"line":5026,"column":1059,"offset":13281},{"line":5026,"column":109,"offset":13290},31565,{"start":13292,"end":13293},{"line":5026,"column":1059,"offset":13281},{"line":5026,"column":109,"offset":13290},{"type":19,"value":260,"position":13295},{"start":13296,"end":13297},{"line":5026,"column":109,"offset":13290},{"line":5026,"column":5927,"offset":13298},31567,{"type":14,"tagName":142,"properties":13300,"children":13301,"position":13308},{},[13302],{"type":19,"value":13303,"position":13304},"anchorY",{"start":13305,"end":13306},{"line":5026,"column":5927,"offset":13298},{"line":5026,"column":5723,"offset":13307},31576,{"start":13309,"end":13310},{"line":5026,"column":5927,"offset":13298},{"line":5026,"column":5723,"offset":13307},{"type":19,"value":13312,"position":13313}," controls",{"start":13314,"end":13315},{"line":5026,"column":5723,"offset":13307},{"line":5026,"column":696,"offset":13316},31585,{"start":13318,"end":13320},{"line":5026,"column":67,"offset":13319},31499,{"line":5026,"column":696,"offset":13316},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13323,"children":13324,"position":13435},{},[13325,13332,13343,13348,13360,13365,13377,13382,13394,13400,13412,13418,13429],{"type":19,"value":13326,"position":13327},"Text styling kwargs: ",{"start":13328,"end":13330},{"line":6094,"column":93,"offset":13329},31590,{"line":6094,"column":36,"offset":13331},31611,{"type":14,"tagName":142,"properties":13333,"children":13334,"position":13340},{},[13335],{"type":19,"value":7543,"position":13336},{"start":13337,"end":13338},{"line":6094,"column":36,"offset":13331},{"line":6094,"column":39,"offset":13339},31618,{"start":13341,"end":13342},{"line":6094,"column":36,"offset":13331},{"line":6094,"column":39,"offset":13339},{"type":19,"value":260,"position":13344},{"start":13345,"end":13346},{"line":6094,"column":39,"offset":13339},{"line":6094,"column":44,"offset":13347},31620,{"type":14,"tagName":142,"properties":13349,"children":13350,"position":13357},{},[13351],{"type":19,"value":13352,"position":13353},"backgroundColor",{"start":13354,"end":13355},{"line":6094,"column":44,"offset":13347},{"line":6094,"column":1409,"offset":13356},31637,{"start":13358,"end":13359},{"line":6094,"column":44,"offset":13347},{"line":6094,"column":1409,"offset":13356},{"type":19,"value":260,"position":13361},{"start":13362,"end":13363},{"line":6094,"column":1409,"offset":13356},{"line":6094,"column":2012,"offset":13364},31639,{"type":14,"tagName":142,"properties":13366,"children":13367,"position":13374},{},[13368],{"type":19,"value":13369,"position":13370},"fontFamily",{"start":13371,"end":13372},{"line":6094,"column":2012,"offset":13364},{"line":6094,"column":2393,"offset":13373},31651,{"start":13375,"end":13376},{"line":6094,"column":2012,"offset":13364},{"line":6094,"column":2393,"offset":13373},{"type":19,"value":260,"position":13378},{"start":13379,"end":13380},{"line":6094,"column":2393,"offset":13373},{"line":6094,"column":5315,"offset":13381},31653,{"type":14,"tagName":142,"properties":13383,"children":13384,"position":13391},{},[13385],{"type":19,"value":13386,"position":13387},"fontWeight",{"start":13388,"end":13389},{"line":6094,"column":5315,"offset":13381},{"line":6094,"column":5723,"offset":13390},31665,{"start":13392,"end":13393},{"line":6094,"column":5315,"offset":13381},{"line":6094,"column":5723,"offset":13390},{"type":19,"value":13395,"position":13396}," (clamped 100–800), ",{"start":13397,"end":13398},{"line":6094,"column":5723,"offset":13390},{"line":6094,"column":6507,"offset":13399},31685,{"type":14,"tagName":142,"properties":13401,"children":13402,"position":13409},{},[13403],{"type":19,"value":13404,"position":13405},"size",{"start":13406,"end":13407},{"line":6094,"column":6507,"offset":13399},{"line":6094,"column":1448,"offset":13408},31691,{"start":13410,"end":13411},{"line":6094,"column":6507,"offset":13399},{"line":6094,"column":1448,"offset":13408},{"type":19,"value":13413,"position":13414}," (clamped 1–30), ",{"start":13415,"end":13416},{"line":6094,"column":1448,"offset":13408},{"line":6094,"column":6917,"offset":13417},31708,{"type":14,"tagName":142,"properties":13419,"children":13420,"position":13426},{},[13421],{"type":19,"value":8007,"position":13422},{"start":13423,"end":13424},{"line":6094,"column":6917,"offset":13417},{"line":6094,"column":6193,"offset":13425},31717,{"start":13427,"end":13428},{"line":6094,"column":6917,"offset":13417},{"line":6094,"column":6193,"offset":13425},{"type":19,"value":13430,"position":13431}," (clamped 0–1)",{"start":13432,"end":13433},{"line":6094,"column":6193,"offset":13425},{"line":6094,"column":4520,"offset":13434},31731,{"start":13436,"end":13438},{"line":6094,"column":67,"offset":13437},31588,{"line":6094,"column":4520,"offset":13434},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13441,"children":13442,"position":13479},{},[13443,13455,13461,13473],{"type":14,"tagName":142,"properties":13444,"children":13445,"position":13452},{},[13446],{"type":19,"value":11421,"position":13447},{"start":13448,"end":13450},{"line":563,"column":93,"offset":13449},31736,{"line":563,"column":102,"offset":13451},31745,{"start":13453,"end":13454},{"line":563,"column":93,"offset":13449},{"line":563,"column":102,"offset":13451},{"type":19,"value":13456,"position":13457}," for hover text (supports ",{"start":13458,"end":13459},{"line":563,"column":102,"offset":13451},{"line":563,"column":4233,"offset":13460},31771,{"type":14,"tagName":142,"properties":13462,"children":13463,"position":13470},{},[13464],{"type":19,"value":13465,"position":13466},"\\n",{"start":13467,"end":13468},{"line":563,"column":4233,"offset":13460},{"line":563,"column":3445,"offset":13469},31775,{"start":13471,"end":13472},{"line":563,"column":4233,"offset":13460},{"line":563,"column":3445,"offset":13469},{"type":19,"value":13474,"position":13475}," for line breaks)",{"start":13476,"end":13477},{"line":563,"column":3445,"offset":13469},{"line":563,"column":1419,"offset":13478},31792,{"start":13480,"end":13482},{"line":563,"column":67,"offset":13481},31734,{"line":563,"column":1419,"offset":13478},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13485,"children":13486,"position":13506},{},[13487,13500],{"type":14,"tagName":142,"properties":13488,"children":13489,"position":13497},{},[13490],{"type":19,"value":13491,"position":13492},"icon-only",{"start":13493,"end":13495},{"line":6996,"column":93,"offset":13494},31797,{"line":6996,"column":133,"offset":13496},31808,{"start":13498,"end":13499},{"line":6996,"column":93,"offset":13494},{"line":6996,"column":133,"offset":13496},{"type":19,"value":13501,"position":13502}," URLs support animated GIFs and WebP, so labels can render looping or animated icons",{"start":13503,"end":13504},{"line":6996,"column":133,"offset":13496},{"line":6996,"column":6507,"offset":13505},31892,{"start":13507,"end":13509},{"line":6996,"column":67,"offset":13508},31795,{"line":6996,"column":6507,"offset":13505},{"type":19,"value":57},{"start":13512,"end":13513},{"line":194,"column":67,"offset":13213},{"line":6996,"column":6507,"offset":13505},{"type":19,"value":57},{"start":13516,"end":13518},{"line":8131,"column":23,"offset":13517},31266,{"line":6996,"column":6507,"offset":13505},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13521,"children":13522,"position":13658},{},[13523,13549,13555,13567,13572,13584,13589,13601,13606,13617,13622,13634,13640,13652],{"type":14,"tagName":29,"properties":13524,"children":13525,"position":13544},{},[13526,13538],{"type":14,"tagName":142,"properties":13527,"children":13528,"position":13535},{},[13529],{"type":19,"value":7971,"position":13530},{"start":13531,"end":13533},{"line":806,"column":93,"offset":13532},31897,{"line":806,"column":496,"offset":13534},31903,{"start":13536,"end":13537},{"line":806,"column":93,"offset":13532},{"line":806,"column":496,"offset":13534},{"type":19,"value":13539,"position":13540}," kwarg",{"start":13541,"end":13542},{"line":806,"column":496,"offset":13534},{"line":806,"column":1982,"offset":13543},31909,{"start":13545,"end":13547},{"line":806,"column":67,"offset":13546},31895,{"line":806,"column":1985,"offset":13548},31911,{"type":19,"value":13550,"position":13551}," on ",{"start":13552,"end":13553},{"line":806,"column":1985,"offset":13548},{"line":806,"column":27,"offset":13554},31915,{"type":14,"tagName":142,"properties":13556,"children":13557,"position":13564},{},[13558],{"type":19,"value":13559,"position":13560},"plotLine",{"start":13561,"end":13562},{"line":806,"column":27,"offset":13554},{"line":806,"column":39,"offset":13563},31925,{"start":13565,"end":13566},{"line":806,"column":27,"offset":13554},{"line":806,"column":39,"offset":13563},{"type":19,"value":260,"position":13568},{"start":13569,"end":13570},{"line":806,"column":39,"offset":13563},{"line":806,"column":44,"offset":13571},31927,{"type":14,"tagName":142,"properties":13573,"children":13574,"position":13581},{},[13575],{"type":19,"value":13576,"position":13577},"plotBar",{"start":13578,"end":13579},{"line":806,"column":44,"offset":13571},{"line":806,"column":3445,"offset":13580},31936,{"start":13582,"end":13583},{"line":806,"column":44,"offset":13571},{"line":806,"column":3445,"offset":13580},{"type":19,"value":260,"position":13585},{"start":13586,"end":13587},{"line":806,"column":3445,"offset":13580},{"line":806,"column":2003,"offset":13588},31938,{"type":14,"tagName":142,"properties":13590,"children":13591,"position":13598},{},[13592],{"type":19,"value":13593,"position":13594},"plotCandle",{"start":13595,"end":13596},{"line":806,"column":2003,"offset":13588},{"line":806,"column":4149,"offset":13597},31950,{"start":13599,"end":13600},{"line":806,"column":2003,"offset":13588},{"line":806,"column":4149,"offset":13597},{"type":19,"value":260,"position":13602},{"start":13603,"end":13604},{"line":806,"column":4149,"offset":13597},{"line":806,"column":1059,"offset":13605},31952,{"type":14,"tagName":142,"properties":13607,"children":13608,"position":13614},{},[13609],{"type":19,"value":5639,"position":13610},{"start":13611,"end":13612},{"line":806,"column":1059,"offset":13605},{"line":806,"column":5927,"offset":13613},31963,{"start":13615,"end":13616},{"line":806,"column":1059,"offset":13605},{"line":806,"column":5927,"offset":13613},{"type":19,"value":1529,"position":13618},{"start":13619,"end":13620},{"line":806,"column":5927,"offset":13613},{"line":806,"column":3506,"offset":13621},31969,{"type":14,"tagName":142,"properties":13623,"children":13624,"position":13631},{},[13625],{"type":19,"value":13626,"position":13627},"plot",{"start":13628,"end":13629},{"line":806,"column":3506,"offset":13621},{"line":806,"column":6066,"offset":13630},31975,{"start":13632,"end":13633},{"line":806,"column":3506,"offset":13621},{"line":806,"column":6066,"offset":13630},{"type":19,"value":13635,"position":13636}," — soft halo around the stroke. ",{"start":13637,"end":13638},{"line":806,"column":6066,"offset":13630},{"line":806,"column":72,"offset":13639},32007,{"type":14,"tagName":142,"properties":13641,"children":13642,"position":13649},{},[13643],{"type":19,"value":13644,"position":13645},"true",{"start":13646,"end":13647},{"line":806,"column":72,"offset":13639},{"line":806,"column":94,"offset":13648},32013,{"start":13650,"end":13651},{"line":806,"column":72,"offset":13639},{"line":806,"column":94,"offset":13648},{"type":19,"value":13653,"position":13654}," enables a default blur in the series color; a number sets the blur radius in pixels (clamped 0–30, 0 disables).",{"start":13655,"end":13656},{"line":806,"column":94,"offset":13648},{"line":806,"column":13129,"offset":13657},32125,{"start":13659,"end":13661},{"line":806,"column":23,"offset":13660},31893,{"line":806,"column":13129,"offset":13657},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13664,"children":13665,"position":13780},{},[13666,13691,13696,13707,13712,13723,13728,13740,13745,13757,13762,13774],{"type":14,"tagName":29,"properties":13667,"children":13668,"position":13686},{},[13669,13681],{"type":14,"tagName":142,"properties":13670,"children":13671,"position":13678},{},[13672],{"type":19,"value":7989,"position":13673},{"start":13674,"end":13676},{"line":1543,"column":93,"offset":13675},32130,{"line":1543,"column":133,"offset":13677},32141,{"start":13679,"end":13680},{"line":1543,"column":93,"offset":13675},{"line":1543,"column":133,"offset":13677},{"type":19,"value":13539,"position":13682},{"start":13683,"end":13684},{"line":1543,"column":133,"offset":13677},{"line":1543,"column":2245,"offset":13685},32147,{"start":13687,"end":13689},{"line":1543,"column":67,"offset":13688},32128,{"line":1543,"column":26,"offset":13690},32149,{"type":19,"value":13550,"position":13692},{"start":13693,"end":13694},{"line":1543,"column":26,"offset":13690},{"line":1543,"column":2852,"offset":13695},32153,{"type":14,"tagName":142,"properties":13697,"children":13698,"position":13704},{},[13699],{"type":19,"value":13559,"position":13700},{"start":13701,"end":13702},{"line":1543,"column":2852,"offset":13695},{"line":1543,"column":5351,"offset":13703},32163,{"start":13705,"end":13706},{"line":1543,"column":2852,"offset":13695},{"line":1543,"column":5351,"offset":13703},{"type":19,"value":1896,"position":13708},{"start":13709,"end":13710},{"line":1543,"column":5351,"offset":13703},{"line":1543,"column":2579,"offset":13711},32168,{"type":14,"tagName":142,"properties":13713,"children":13714,"position":13720},{},[13715],{"type":19,"value":13626,"position":13716},{"start":13717,"end":13718},{"line":1543,"column":2579,"offset":13711},{"line":1543,"column":150,"offset":13719},32174,{"start":13721,"end":13722},{"line":1543,"column":2579,"offset":13711},{"line":1543,"column":150,"offset":13719},{"type":19,"value":8296,"position":13724},{"start":13725,"end":13726},{"line":1543,"column":150,"offset":13719},{"line":1543,"column":1409,"offset":13727},32177,{"type":14,"tagName":142,"properties":13729,"children":13730,"position":13737},{},[13731],{"type":19,"value":13732,"position":13733},"\"solid\"",{"start":13734,"end":13735},{"line":1543,"column":1409,"offset":13727},{"line":1543,"column":1419,"offset":13736},32186,{"start":13738,"end":13739},{"line":1543,"column":1409,"offset":13727},{"line":1543,"column":1419,"offset":13736},{"type":19,"value":12325,"position":13741},{"start":13742,"end":13743},{"line":1543,"column":1419,"offset":13736},{"line":1543,"column":1261,"offset":13744},32198,{"type":14,"tagName":142,"properties":13746,"children":13747,"position":13754},{},[13748],{"type":19,"value":13749,"position":13750},"\"dashed\"",{"start":13751,"end":13752},{"line":1543,"column":1261,"offset":13744},{"line":1543,"column":6066,"offset":13753},32208,{"start":13755,"end":13756},{"line":1543,"column":1261,"offset":13744},{"line":1543,"column":6066,"offset":13753},{"type":19,"value":12343,"position":13758},{"start":13759,"end":13760},{"line":1543,"column":6066,"offset":13753},{"line":1543,"column":4986,"offset":13761},32213,{"type":14,"tagName":142,"properties":13763,"children":13764,"position":13771},{},[13765],{"type":19,"value":13766,"position":13767},"\"dotted\"",{"start":13768,"end":13769},{"line":1543,"column":4986,"offset":13761},{"line":1543,"column":75,"offset":13770},32223,{"start":13772,"end":13773},{"line":1543,"column":4986,"offset":13761},{"line":1543,"column":75,"offset":13770},{"type":19,"value":13775,"position":13776},". No effect on bar / candle / point types.",{"start":13777,"end":13778},{"line":1543,"column":75,"offset":13770},{"line":1543,"column":1468,"offset":13779},32265,{"start":13781,"end":13783},{"line":1543,"column":23,"offset":13782},32126,{"line":1543,"column":1468,"offset":13779},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13786,"children":13787,"position":13835},{},[13788,13813,13818,13829],{"type":14,"tagName":29,"properties":13789,"children":13790,"position":13808},{},[13791,13803],{"type":14,"tagName":142,"properties":13792,"children":13793,"position":13800},{},[13794],{"type":19,"value":8007,"position":13795},{"start":13796,"end":13798},{"line":6470,"column":93,"offset":13797},32270,{"line":6470,"column":102,"offset":13799},32279,{"start":13801,"end":13802},{"line":6470,"column":93,"offset":13797},{"line":6470,"column":102,"offset":13799},{"type":19,"value":13539,"position":13804},{"start":13805,"end":13806},{"line":6470,"column":102,"offset":13799},{"line":6470,"column":2555,"offset":13807},32285,{"start":13809,"end":13811},{"line":6470,"column":67,"offset":13810},32268,{"line":6470,"column":2245,"offset":13812},32287,{"type":19,"value":13550,"position":13814},{"start":13815,"end":13816},{"line":6470,"column":2245,"offset":13812},{"line":6470,"column":36,"offset":13817},32291,{"type":14,"tagName":142,"properties":13819,"children":13820,"position":13826},{},[13821],{"type":19,"value":5639,"position":13822},{"start":13823,"end":13824},{"line":6470,"column":36,"offset":13817},{"line":6470,"column":1399,"offset":13825},32302,{"start":13827,"end":13828},{"line":6470,"column":36,"offset":13817},{"line":6470,"column":1399,"offset":13825},{"type":19,"value":13830,"position":13831}," — overall element opacity (0–1, clamped).",{"start":13832,"end":13833},{"line":6470,"column":1399,"offset":13825},{"line":6470,"column":10179,"offset":13834},32344,{"start":13836,"end":13838},{"line":6470,"column":23,"offset":13837},32266,{"line":6470,"column":10179,"offset":13834},{"type":19,"value":57},{"type":14,"tagName":486,"properties":13841,"children":13842,"position":13907},{},[13843,13885,13890,13901],{"type":14,"tagName":29,"properties":13844,"children":13845,"position":13880},{},[13846,13858,13863,13874],{"type":14,"tagName":142,"properties":13847,"children":13848,"position":13855},{},[13849],{"type":19,"value":13386,"position":13850},{"start":13851,"end":13853},{"line":6475,"column":93,"offset":13852},32349,{"line":6475,"column":1982,"offset":13854},32361,{"start":13856,"end":13857},{"line":6475,"column":93,"offset":13852},{"line":6475,"column":1982,"offset":13854},{"type":19,"value":1896,"position":13859},{"start":13860,"end":13861},{"line":6475,"column":1982,"offset":13854},{"line":6475,"column":2245,"offset":13862},32366,{"type":14,"tagName":142,"properties":13864,"children":13865,"position":13871},{},[13866],{"type":19,"value":8007,"position":13867},{"start":13868,"end":13869},{"line":6475,"column":2245,"offset":13862},{"line":6475,"column":2255,"offset":13870},32375,{"start":13872,"end":13873},{"line":6475,"column":2245,"offset":13862},{"line":6475,"column":2255,"offset":13870},{"type":19,"value":13875,"position":13876}," kwargs",{"start":13877,"end":13878},{"line":6475,"column":2255,"offset":13870},{"line":6475,"column":5351,"offset":13879},32382,{"start":13881,"end":13883},{"line":6475,"column":67,"offset":13882},32347,{"line":6475,"column":4233,"offset":13884},32384,{"type":19,"value":13550,"position":13886},{"start":13887,"end":13888},{"line":6475,"column":4233,"offset":13884},{"line":6475,"column":3445,"offset":13889},32388,{"type":14,"tagName":142,"properties":13891,"children":13892,"position":13898},{},[13893],{"type":19,"value":5620,"position":13894},{"start":13895,"end":13896},{"line":6475,"column":3445,"offset":13889},{"line":6475,"column":2012,"offset":13897},32398,{"start":13899,"end":13900},{"line":6475,"column":3445,"offset":13889},{"line":6475,"column":2012,"offset":13897},{"type":19,"value":13902,"position":13903}," — text weight 100–800 (clamped, rounded to nearest 100) and overall opacity 0–1 (clamped).",{"start":13904,"end":13905},{"line":6475,"column":2012,"offset":13897},{"line":6475,"column":4511,"offset":13906},32489,{"start":13908,"end":13910},{"line":6475,"column":23,"offset":13909},32345,{"line":6475,"column":4511,"offset":13906},{"type":19,"value":57},{"start":13913,"end":13914},{"line":8131,"column":23,"offset":13517},{"line":6475,"column":4511,"offset":13906},{"type":19,"value":57},{"type":14,"tagName":462,"properties":13917,"children":13919,"position":13926},{"id":13918},"changed-4",[13920],{"type":19,"value":2715,"position":13921},{"start":13922,"end":13924},{"line":6483,"column":93,"offset":13923},32495,{"line":6483,"column":96,"offset":13925},32502,{"start":13927,"end":13929},{"line":6483,"column":23,"offset":13928},32491,{"line":6483,"column":96,"offset":13925},{"type":19,"value":57},{"type":14,"tagName":481,"properties":13932,"children":13933,"position":14044},{},[13934,13935,14043],{"type":19,"value":57},{"type":14,"tagName":486,"properties":13936,"children":13937,"position":14039},{},[13938,13965,13970,13982,13987,13999,14004,14016,14021,14033],{"type":14,"tagName":29,"properties":13939,"children":13940,"position":13960},{},[13941,13954],{"type":14,"tagName":142,"properties":13942,"children":13943,"position":13951},{},[13944],{"type":19,"value":5639,"position":13945},{"start":13946,"end":13949},{"line":13947,"column":93,"offset":13948},251,32508,{"line":13947,"column":133,"offset":13950},32519,{"start":13952,"end":13953},{"line":13947,"column":93,"offset":13948},{"line":13947,"column":133,"offset":13950},{"type":19,"value":13955,"position":13956}," shape catalog clarified",{"start":13957,"end":13958},{"line":13947,"column":133,"offset":13950},{"line":13947,"column":4233,"offset":13959},32543,{"start":13961,"end":13963},{"line":13947,"column":67,"offset":13962},32506,{"line":13947,"column":519,"offset":13964},32545,{"type":19,"value":8296,"position":13966},{"start":13967,"end":13968},{"line":13947,"column":519,"offset":13964},{"line":13947,"column":2872,"offset":13969},32548,{"type":14,"tagName":142,"properties":13971,"children":13972,"position":13979},{},[13973],{"type":19,"value":13974,"position":13975},"\"circle\"",{"start":13976,"end":13977},{"line":13947,"column":2872,"offset":13969},{"line":13947,"column":8550,"offset":13978},32558,{"start":13980,"end":13981},{"line":13947,"column":2872,"offset":13969},{"line":13947,"column":8550,"offset":13978},{"type":19,"value":260,"position":13983},{"start":13984,"end":13985},{"line":13947,"column":8550,"offset":13978},{"line":13947,"column":9205,"offset":13986},32560,{"type":14,"tagName":142,"properties":13988,"children":13989,"position":13996},{},[13990],{"type":19,"value":13991,"position":13992},"\"triangle\"",{"start":13993,"end":13994},{"line":13947,"column":9205,"offset":13986},{"line":13947,"column":109,"offset":13995},32572,{"start":13997,"end":13998},{"line":13947,"column":9205,"offset":13986},{"line":13947,"column":109,"offset":13995},{"type":19,"value":260,"position":14000},{"start":14001,"end":14002},{"line":13947,"column":109,"offset":13995},{"line":13947,"column":5927,"offset":14003},32574,{"type":14,"tagName":142,"properties":14005,"children":14006,"position":14013},{},[14007],{"type":19,"value":14008,"position":14009},"\"cross\"",{"start":14010,"end":14011},{"line":13947,"column":5927,"offset":14003},{"line":13947,"column":5723,"offset":14012},32583,{"start":14014,"end":14015},{"line":13947,"column":5927,"offset":14003},{"line":13947,"column":5723,"offset":14012},{"type":19,"value":1529,"position":14017},{"start":14018,"end":14019},{"line":13947,"column":5723,"offset":14012},{"line":13947,"column":5168,"offset":14020},32589,{"type":14,"tagName":142,"properties":14022,"children":14023,"position":14030},{},[14024],{"type":19,"value":14025,"position":14026},"\"diamond\"",{"start":14027,"end":14028},{"line":13947,"column":5168,"offset":14020},{"line":13947,"column":51,"offset":14029},32600,{"start":14031,"end":14032},{"line":13947,"column":5168,"offset":14020},{"line":13947,"column":51,"offset":14029},{"type":19,"value":14034,"position":14035}," are all supported. The reference previously documented circle-only.",{"start":14036,"end":14037},{"line":13947,"column":51,"offset":14029},{"line":13947,"column":1284,"offset":14038},32668,{"start":14040,"end":14042},{"line":13947,"column":23,"offset":14041},32504,{"line":13947,"column":1284,"offset":14038},{"type":19,"value":57},{"start":14045,"end":14046},{"line":13947,"column":23,"offset":14041},{"line":13947,"column":1284,"offset":14038},{"type":19,"value":57},{"type":14,"tagName":462,"properties":14049,"children":14051,"position":14058},{"id":14050},"reference-2",[14052],{"type":19,"value":12972,"position":14053},{"start":14054,"end":14056},{"line":5036,"column":93,"offset":14055},32674,{"line":5036,"column":102,"offset":14057},32683,{"start":14059,"end":14061},{"line":5036,"column":23,"offset":14060},32670,{"line":5036,"column":102,"offset":14057},{"type":19,"value":57},{"type":14,"tagName":481,"properties":14064,"children":14065,"position":14110},{},[14066,14067,14094,14095,14109],{"type":19,"value":57},{"type":14,"tagName":486,"properties":14068,"children":14069,"position":14090},{},[14070,14084],{"type":14,"tagName":1943,"properties":14071,"children":14072,"position":14079},{"href":2516},[14073],{"type":19,"value":2519,"position":14074},{"start":14075,"end":14077},{"line":943,"column":68,"offset":14076},32688,{"line":943,"column":96,"offset":14078},32696,{"start":14080,"end":14082},{"line":943,"column":67,"offset":14081},32687,{"line":943,"column":519,"offset":14083},32726,{"type":19,"value":14085,"position":14086}," — full parameter tables, including the new entries.",{"start":14087,"end":14088},{"line":943,"column":519,"offset":14083},{"line":943,"column":6015,"offset":14089},32778,{"start":14091,"end":14093},{"line":943,"column":23,"offset":14092},32685,{"line":943,"column":6015,"offset":14089},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14096,"children":14097,"position":14105},{},[14098],{"type":19,"value":14099,"position":14100},"This release is backward-compatible within v2; no migration required.",{"start":14101,"end":14103},{"line":6780,"column":67,"offset":14102},32781,{"line":6780,"column":5366,"offset":14104},32850,{"start":14106,"end":14108},{"line":6780,"column":23,"offset":14107},32779,{"line":6780,"column":5366,"offset":14104},{"type":19,"value":57},{"start":14111,"end":14112},{"line":943,"column":23,"offset":14092},{"line":6780,"column":5366,"offset":14104},{"type":19,"value":57},{"type":14,"tagName":8190,"properties":14115,"children":14116,"position":14117},{},[],{"start":14118,"end":14120},{"line":5481,"column":23,"offset":14119},32852,{"line":5481,"column":68,"offset":14121},32855,{"type":19,"value":57},{"type":14,"tagName":59,"properties":14124,"children":14126,"position":14135},{"id":14125},"v2.0.0-september-2025",[14127],{"type":19,"value":14128,"position":14129},"v2.0.0 — September 2025",{"start":14130,"end":14133},{"line":14131,"column":68,"offset":14132},260,32860,{"line":14131,"column":499,"offset":14134},32883,{"start":14136,"end":14138},{"line":14131,"column":23,"offset":14137},32857,{"line":14131,"column":499,"offset":14134},{"type":19,"value":57},{"type":14,"tagName":15,"properties":14141,"children":14142,"position":14190},{},[14143,14150,14164,14170,14184],{"type":19,"value":14144,"position":14145},"Major release of ",{"start":14146,"end":14148},{"line":5964,"column":23,"offset":14147},32885,{"line":5964,"column":71,"offset":14149},32902,{"type":14,"tagName":29,"properties":14151,"children":14152,"position":14160},{},[14153],{"type":19,"value":14154,"position":14155},"kScript v3",{"start":14156,"end":14158},{"line":5964,"column":2555,"offset":14157},32904,{"line":5964,"column":2567,"offset":14159},32914,{"start":14161,"end":14162},{"line":5964,"column":71,"offset":14149},{"line":5964,"column":40,"offset":14163},32916,{"type":19,"value":14165,"position":14166}," on the OpenMarket platform: new execution model, language features, and standard library—with intentional breaking differences from ",{"start":14167,"end":14168},{"line":5964,"column":40,"offset":14163},{"line":5964,"column":1284,"offset":14169},33049,{"type":14,"tagName":29,"properties":14171,"children":14172,"position":14180},{},[14173],{"type":19,"value":8137,"position":14174},{"start":14175,"end":14178},{"line":5964,"column":14176,"offset":14177},167,33051,{"line":5964,"column":9873,"offset":14179},33053,{"start":14181,"end":14182},{"line":5964,"column":1284,"offset":14169},{"line":5964,"column":746,"offset":14183},33055,{"type":19,"value":14185,"position":14186}," for long-term ergonomics and performance.",{"start":14187,"end":14188},{"line":5964,"column":746,"offset":14183},{"line":5964,"column":140,"offset":14189},33097,{"start":14191,"end":14192},{"line":5964,"column":23,"offset":14147},{"line":5964,"column":140,"offset":14189},{"type":19,"value":57},{"type":14,"tagName":462,"properties":14195,"children":14197,"position":14204},{"id":14196},"added-10",[14198],{"type":19,"value":467,"position":14199},{"start":14200,"end":14202},{"line":6486,"column":93,"offset":14201},33103,{"line":6486,"column":473,"offset":14203},33108,{"start":14205,"end":14207},{"line":6486,"column":23,"offset":14206},33099,{"line":6486,"column":473,"offset":14203},{"type":19,"value":57},{"type":14,"tagName":481,"properties":14210,"children":14211,"position":14661},{},[14212,14213,14261,14262,14309,14310,14436,14437,14534,14535,14581,14582,14660],{"type":19,"value":57},{"type":14,"tagName":486,"properties":14214,"children":14215,"position":14257},{},[14216,14231,14237,14252],{"type":14,"tagName":29,"properties":14217,"children":14218,"position":14226},{},[14219],{"type":19,"value":14220,"position":14221},"Per-bar execution",{"start":14222,"end":14224},{"line":4104,"column":93,"offset":14223},33114,{"line":4104,"column":2245,"offset":14225},33131,{"start":14227,"end":14229},{"line":4104,"column":67,"offset":14228},33112,{"line":4104,"column":26,"offset":14230},33133,{"type":19,"value":14232,"position":14233}," with clear phases for initialization, calculation, and plotting—see ",{"start":14234,"end":14235},{"line":4104,"column":26,"offset":14230},{"line":4104,"column":7827,"offset":14236},33202,{"type":14,"tagName":1943,"properties":14238,"children":14240,"position":14248},{"href":14239},"/kscript/core-concepts/execution-model",[14241],{"type":19,"value":14242,"position":14243},"Execution model",{"start":14244,"end":14246},{"line":4104,"column":6015,"offset":14245},33203,{"line":4104,"column":10067,"offset":14247},33218,{"start":14249,"end":14250},{"line":4104,"column":7827,"offset":14236},{"line":4104,"column":895,"offset":14251},33259,{"type":19,"value":1356,"position":14253},{"start":14254,"end":14255},{"line":4104,"column":895,"offset":14251},{"line":4104,"column":4538,"offset":14256},33260,{"start":14258,"end":14260},{"line":4104,"column":23,"offset":14259},33110,{"line":4104,"column":4538,"offset":14256},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14263,"children":14264,"position":14305},{},[14265,14280,14286,14300],{"type":14,"tagName":29,"properties":14266,"children":14267,"position":14275},{},[14268],{"type":19,"value":14269,"position":14270},"Keyword arguments",{"start":14271,"end":14273},{"line":4112,"column":93,"offset":14272},33265,{"line":4112,"column":2245,"offset":14274},33282,{"start":14276,"end":14278},{"line":4112,"column":67,"offset":14277},33263,{"line":4112,"column":26,"offset":14279},33284,{"type":19,"value":14281,"position":14282}," on builtins for clearer, order-independent calls (",{"start":14283,"end":14284},{"line":4112,"column":26,"offset":14279},{"line":4112,"column":1270,"offset":14285},33335,{"type":14,"tagName":1943,"properties":14287,"children":14289,"position":14296},{"href":14288},"/kscript/core-concepts/keyword-arguments",[14290],{"type":19,"value":14269,"position":14291},{"start":14292,"end":14294},{"line":4112,"column":5397,"offset":14293},33336,{"line":4112,"column":7827,"offset":14295},33353,{"start":14297,"end":14298},{"line":4112,"column":1270,"offset":14285},{"line":4112,"column":716,"offset":14299},33396,{"type":19,"value":8490,"position":14301},{"start":14302,"end":14303},{"line":4112,"column":716,"offset":14299},{"line":4112,"column":3225,"offset":14304},33398,{"start":14306,"end":14308},{"line":4112,"column":23,"offset":14307},33261,{"line":4112,"column":3225,"offset":14304},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14311,"children":14312,"position":14432},{},[14313,14339,14344,14388,14394,14406,14412,14427],{"type":14,"tagName":29,"properties":14314,"children":14315,"position":14334},{},[14316,14328],{"type":14,"tagName":142,"properties":14317,"children":14318,"position":14325},{},[14319],{"type":19,"value":5459,"position":14320},{"start":14321,"end":14323},{"line":6817,"column":93,"offset":14322},33403,{"line":6817,"column":496,"offset":14324},33409,{"start":14326,"end":14327},{"line":6817,"column":93,"offset":14322},{"line":6817,"column":496,"offset":14324},{"type":19,"value":14329,"position":14330}," user-defined functions",{"start":14331,"end":14332},{"line":6817,"column":496,"offset":14324},{"line":6817,"column":45,"offset":14333},33432,{"start":14335,"end":14337},{"line":6817,"column":67,"offset":14336},33401,{"line":6817,"column":5532,"offset":14338},33434,{"type":19,"value":1896,"position":14340},{"start":14341,"end":14342},{"line":6817,"column":5532,"offset":14338},{"line":6817,"column":1994,"offset":14343},33439,{"type":14,"tagName":29,"properties":14345,"children":14346,"position":14384},{},[14347,14360,14366,14378],{"type":14,"tagName":142,"properties":14348,"children":14349,"position":14357},{},[14350],{"type":19,"value":14351,"position":14352},"for",{"start":14353,"end":14355},{"line":6817,"column":2579,"offset":14354},33441,{"line":6817,"column":3521,"offset":14356},33446,{"start":14358,"end":14359},{"line":6817,"column":2579,"offset":14354},{"line":6817,"column":3521,"offset":14356},{"type":19,"value":515,"position":14361},{"start":14362,"end":14363},{"line":6817,"column":3521,"offset":14356},{"line":6817,"column":14364,"offset":14365},51,33449,{"type":14,"tagName":142,"properties":14367,"children":14368,"position":14375},{},[14369],{"type":19,"value":14370,"position":14371},"while",{"start":14372,"end":14373},{"line":6817,"column":14364,"offset":14365},{"line":6817,"column":4149,"offset":14374},33456,{"start":14376,"end":14377},{"line":6817,"column":14364,"offset":14365},{"line":6817,"column":4149,"offset":14374},{"type":19,"value":14379,"position":14380}," loops",{"start":14381,"end":14382},{"line":6817,"column":4149,"offset":14374},{"line":6817,"column":2384,"offset":14383},33462,{"start":14385,"end":14386},{"line":6817,"column":1994,"offset":14343},{"line":6817,"column":2393,"offset":14387},33464,{"type":19,"value":14389,"position":14390}," (with the documented ",{"start":14391,"end":14392},{"line":6817,"column":2393,"offset":14387},{"line":6817,"column":4986,"offset":14393},33486,{"type":14,"tagName":142,"properties":14395,"children":14396,"position":14403},{},[14397],{"type":19,"value":14398,"position":14399},"var",{"start":14400,"end":14401},{"line":6817,"column":4986,"offset":14393},{"line":6817,"column":7827,"offset":14402},33491,{"start":14404,"end":14405},{"line":6817,"column":4986,"offset":14393},{"line":6817,"column":7827,"offset":14402},{"type":19,"value":14407,"position":14408}," restrictions) (",{"start":14409,"end":14410},{"line":6817,"column":7827,"offset":14402},{"line":6817,"column":10067,"offset":14411},33507,{"type":14,"tagName":1943,"properties":14413,"children":14415,"position":14423},{"href":14414},"/kscript/core-concepts/user-functions",[14416],{"type":19,"value":14417,"position":14418},"User functions",{"start":14419,"end":14421},{"line":6817,"column":7363,"offset":14420},33508,{"line":6817,"column":8591,"offset":14422},33522,{"start":14424,"end":14425},{"line":6817,"column":10067,"offset":14411},{"line":6817,"column":6677,"offset":14426},33562,{"type":19,"value":8490,"position":14428},{"start":14429,"end":14430},{"line":6817,"column":6677,"offset":14426},{"line":6817,"column":9891,"offset":14431},33564,{"start":14433,"end":14435},{"line":6817,"column":23,"offset":14434},33399,{"line":6817,"column":9891,"offset":14431},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14438,"children":14439,"position":14530},{},[14440,14455,14460,14472,14477,14489,14494,14506,14512,14524],{"type":14,"tagName":29,"properties":14441,"children":14442,"position":14450},{},[14443],{"type":19,"value":14444,"position":14445},"Dedicated data subscriptions",{"start":14446,"end":14448},{"line":6822,"column":93,"offset":14447},33569,{"line":6822,"column":39,"offset":14449},33597,{"start":14451,"end":14453},{"line":6822,"column":67,"offset":14452},33567,{"line":6822,"column":44,"offset":14454},33599,{"type":19,"value":180,"position":14456},{"start":14457,"end":14458},{"line":6822,"column":44,"offset":14454},{"line":6822,"column":1399,"offset":14459},33601,{"type":14,"tagName":142,"properties":14461,"children":14462,"position":14469},{},[14463],{"type":19,"value":14464,"position":14465},"ohlcv(...)",{"start":14466,"end":14467},{"line":6822,"column":1399,"offset":14459},{"line":6822,"column":150,"offset":14468},33613,{"start":14470,"end":14471},{"line":6822,"column":1399,"offset":14459},{"line":6822,"column":150,"offset":14468},{"type":19,"value":260,"position":14473},{"start":14474,"end":14475},{"line":6822,"column":150,"offset":14468},{"line":6822,"column":14364,"offset":14476},33615,{"type":14,"tagName":142,"properties":14478,"children":14479,"position":14486},{},[14480],{"type":19,"value":14481,"position":14482},"trades(...)",{"start":14483,"end":14484},{"line":6822,"column":14364,"offset":14476},{"line":6822,"column":2384,"offset":14485},33628,{"start":14487,"end":14488},{"line":6822,"column":14364,"offset":14476},{"line":6822,"column":2384,"offset":14485},{"type":19,"value":260,"position":14490},{"start":14491,"end":14492},{"line":6822,"column":2384,"offset":14485},{"line":6822,"column":2393,"offset":14493},33630,{"type":14,"tagName":142,"properties":14495,"children":14496,"position":14503},{},[14497],{"type":19,"value":14498,"position":14499},"orderbook(...)",{"start":14500,"end":14501},{"line":6822,"column":2393,"offset":14493},{"line":6822,"column":2763,"offset":14502},33646,{"start":14504,"end":14505},{"line":6822,"column":2393,"offset":14493},{"line":6822,"column":2763,"offset":14502},{"type":19,"value":14507,"position":14508}," replacing the generic v1-only ",{"start":14509,"end":14510},{"line":6822,"column":2763,"offset":14502},{"line":6822,"column":2598,"offset":14511},33677,{"type":14,"tagName":142,"properties":14513,"children":14514,"position":14521},{},[14515],{"type":19,"value":14516,"position":14517},"source(...)",{"start":14518,"end":14519},{"line":6822,"column":2598,"offset":14511},{"line":6822,"column":5624,"offset":14520},33690,{"start":14522,"end":14523},{"line":6822,"column":2598,"offset":14511},{"line":6822,"column":5624,"offset":14520},{"type":19,"value":14525,"position":14526}," pattern in v2 docs.",{"start":14527,"end":14528},{"line":6822,"column":5624,"offset":14520},{"line":6822,"column":4520,"offset":14529},33710,{"start":14531,"end":14533},{"line":6822,"column":23,"offset":14532},33565,{"line":6822,"column":4520,"offset":14529},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14536,"children":14537,"position":14577},{},[14538,14553,14559,14571],{"type":14,"tagName":29,"properties":14539,"children":14540,"position":14548},{},[14541],{"type":19,"value":14542,"position":14543},"Reverse index access",{"start":14544,"end":14546},{"line":4330,"column":93,"offset":14545},33715,{"line":4330,"column":37,"offset":14547},33735,{"start":14549,"end":14551},{"line":4330,"column":67,"offset":14550},33713,{"line":4330,"column":499,"offset":14552},33737,{"type":19,"value":14554,"position":14555}," on time series (",{"start":14556,"end":14557},{"line":4330,"column":499,"offset":14552},{"line":4330,"column":3445,"offset":14558},33754,{"type":14,"tagName":142,"properties":14560,"children":14561,"position":14568},{},[14562],{"type":19,"value":14563,"position":14564},"ts[0]",{"start":14565,"end":14566},{"line":4330,"column":3445,"offset":14558},{"line":4330,"column":14364,"offset":14567},33761,{"start":14569,"end":14570},{"line":4330,"column":3445,"offset":14558},{"line":4330,"column":14364,"offset":14567},{"type":19,"value":14572,"position":14573}," = latest bar) as described in the v1→v2 transition material.",{"start":14574,"end":14575},{"line":4330,"column":14364,"offset":14567},{"line":4330,"column":6627,"offset":14576},33822,{"start":14578,"end":14580},{"line":4330,"column":23,"offset":14579},33711,{"line":4330,"column":6627,"offset":14576},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14583,"children":14584,"position":14656},{},[14585,14600,14605,14616,14621,14632,14638,14651],{"type":14,"tagName":29,"properties":14586,"children":14587,"position":14595},{},[14588],{"type":19,"value":14589,"position":14590},"Extended plotting",{"start":14591,"end":14593},{"line":2618,"column":93,"offset":14592},33827,{"line":2618,"column":2245,"offset":14594},33844,{"start":14596,"end":14598},{"line":2618,"column":67,"offset":14597},33825,{"line":2618,"column":26,"offset":14599},33846,{"type":19,"value":180,"position":14601},{"start":14602,"end":14603},{"line":2618,"column":26,"offset":14599},{"line":2618,"column":36,"offset":14604},33848,{"type":14,"tagName":142,"properties":14606,"children":14607,"position":14613},{},[14608],{"type":19,"value":13593,"position":14609},{"start":14610,"end":14611},{"line":2618,"column":36,"offset":14604},{"line":2618,"column":5351,"offset":14612},33860,{"start":14614,"end":14615},{"line":2618,"column":36,"offset":14604},{"line":2618,"column":5351,"offset":14612},{"type":19,"value":260,"position":14617},{"start":14618,"end":14619},{"line":2618,"column":5351,"offset":14612},{"line":2618,"column":4233,"offset":14620},33862,{"type":14,"tagName":142,"properties":14622,"children":14623,"position":14629},{},[14624],{"type":19,"value":5639,"position":14625},{"start":14626,"end":14627},{"line":2618,"column":4233,"offset":14620},{"line":2618,"column":14364,"offset":14628},33873,{"start":14630,"end":14631},{"line":2618,"column":4233,"offset":14620},{"line":2618,"column":14364,"offset":14628},{"type":19,"value":14633,"position":14634},", and richer styling kwargs alongside existing line/bar plots (",{"start":14635,"end":14636},{"line":2618,"column":14364,"offset":14628},{"line":2618,"column":1458,"offset":14637},33936,{"type":14,"tagName":1943,"properties":14639,"children":14640,"position":14647},{"href":2516},[14641],{"type":19,"value":2519,"position":14642},{"start":14643,"end":14645},{"line":2618,"column":72,"offset":14644},33937,{"line":2618,"column":6917,"offset":14646},33945,{"start":14648,"end":14649},{"line":2618,"column":1458,"offset":14637},{"line":2618,"column":9478,"offset":14650},33975,{"type":19,"value":8490,"position":14652},{"start":14653,"end":14654},{"line":2618,"column":9478,"offset":14650},{"line":2618,"column":2036,"offset":14655},33977,{"start":14657,"end":14659},{"line":2618,"column":23,"offset":14658},33823,{"line":2618,"column":2036,"offset":14655},{"type":19,"value":57},{"start":14662,"end":14663},{"line":4104,"column":23,"offset":14259},{"line":2618,"column":2036,"offset":14655},{"type":19,"value":57},{"type":14,"tagName":462,"properties":14666,"children":14668,"position":14676},{"id":14667},"changed-5",[14669],{"type":19,"value":2715,"position":14670},{"start":14671,"end":14674},{"line":14672,"column":93,"offset":14673},273,33983,{"line":14672,"column":96,"offset":14675},33990,{"start":14677,"end":14679},{"line":14672,"column":23,"offset":14678},33979,{"line":14672,"column":96,"offset":14675},{"type":19,"value":57},{"type":14,"tagName":481,"properties":14682,"children":14683,"position":14847},{},[14684,14685,14733,14734,14782,14783,14846],{"type":19,"value":57},{"type":14,"tagName":486,"properties":14686,"children":14687,"position":14729},{},[14688,14703,14709,14723],{"type":14,"tagName":29,"properties":14689,"children":14690,"position":14698},{},[14691],{"type":19,"value":14692,"position":14693},"Technical indicator helpers",{"start":14694,"end":14696},{"line":4636,"column":93,"offset":14695},33996,{"line":4636,"column":40,"offset":14697},34023,{"start":14699,"end":14701},{"line":4636,"column":67,"offset":14700},33994,{"line":4636,"column":45,"offset":14702},34025,{"type":19,"value":14704,"position":14705}," now resolve to ",{"start":14706,"end":14707},{"line":4636,"column":45,"offset":14702},{"line":4636,"column":2881,"offset":14708},34041,{"type":14,"tagName":29,"properties":14710,"children":14711,"position":14719},{},[14712],{"type":19,"value":14713,"position":14714},"scalar values per bar",{"start":14715,"end":14717},{"line":4636,"column":1409,"offset":14716},34043,{"line":4636,"column":1261,"offset":14718},34064,{"start":14720,"end":14721},{"line":4636,"column":2881,"offset":14708},{"line":4636,"column":1270,"offset":14722},34066,{"type":19,"value":14724,"position":14725}," instead of returning full composite series that required manual alignment in typical v1 usage.",{"start":14726,"end":14727},{"line":4636,"column":1270,"offset":14722},{"line":4636,"column":9455,"offset":14728},34161,{"start":14730,"end":14732},{"line":4636,"column":23,"offset":14731},33992,{"line":4636,"column":9455,"offset":14728},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14735,"children":14736,"position":14778},{},[14737,14752,14758,14772],{"type":14,"tagName":29,"properties":14738,"children":14739,"position":14747},{},[14740],{"type":19,"value":14741,"position":14742},"Compiler",{"start":14743,"end":14745},{"line":3318,"column":93,"offset":14744},34166,{"line":3318,"column":863,"offset":14746},34174,{"start":14748,"end":14750},{"line":3318,"column":67,"offset":14749},34164,{"line":3318,"column":1244,"offset":14751},34176,{"type":19,"value":14753,"position":14754}," performs stronger ",{"start":14755,"end":14756},{"line":3318,"column":1244,"offset":14751},{"line":3318,"column":45,"offset":14757},34195,{"type":14,"tagName":29,"properties":14759,"children":14760,"position":14768},{},[14761],{"type":19,"value":14762,"position":14763},"static analysis",{"start":14764,"end":14766},{"line":3318,"column":5532,"offset":14765},34197,{"line":3318,"column":14364,"offset":14767},34212,{"start":14769,"end":14770},{"line":3318,"column":45,"offset":14757},{"line":3318,"column":529,"offset":14771},34214,{"type":19,"value":14773,"position":14774}," (syntax, scope, types) so more issues surface at edit time rather than at runtime.",{"start":14775,"end":14776},{"line":3318,"column":529,"offset":14771},{"line":3318,"column":716,"offset":14777},34297,{"start":14779,"end":14781},{"line":3318,"column":23,"offset":14780},34162,{"line":3318,"column":716,"offset":14777},{"type":19,"value":57},{"type":14,"tagName":486,"properties":14784,"children":14785,"position":14842},{},[14786,14801,14807,14819,14824,14836],{"type":14,"tagName":29,"properties":14787,"children":14788,"position":14796},{},[14789],{"type":19,"value":14790,"position":14791},"OHLCV field access",{"start":14792,"end":14794},{"line":3328,"column":93,"offset":14793},34302,{"line":3328,"column":27,"offset":14795},34320,{"start":14797,"end":14799},{"line":3328,"column":67,"offset":14798},34300,{"line":3328,"column":37,"offset":14800},34322,{"type":19,"value":14802,"position":14803}," standardized via accessors such as ",{"start":14804,"end":14805},{"line":3328,"column":37,"offset":14800},{"line":3328,"column":1419,"offset":14806},34358,{"type":14,"tagName":142,"properties":14808,"children":14809,"position":14816},{},[14810],{"type":19,"value":14811,"position":14812},"ohlcvTs.close",{"start":14813,"end":14814},{"line":3328,"column":1419,"offset":14806},{"line":3328,"column":5397,"offset":14815},34373,{"start":14817,"end":14818},{"line":3328,"column":1419,"offset":14806},{"line":3328,"column":5397,"offset":14815},{"type":19,"value":260,"position":14820},{"start":14821,"end":14822},{"line":3328,"column":5397,"offset":14815},{"line":3328,"column":5584,"offset":14823},34375,{"type":14,"tagName":142,"properties":14825,"children":14826,"position":14833},{},[14827],{"type":19,"value":14828,"position":14829},"ohlcvTs.volume",{"start":14830,"end":14831},{"line":3328,"column":5584,"offset":14823},{"line":3328,"column":6015,"offset":14832},34391,{"start":14834,"end":14835},{"line":3328,"column":5584,"offset":14823},{"line":3328,"column":6015,"offset":14832},{"type":19,"value":14837,"position":14838},", etc.",{"start":14839,"end":14840},{"line":3328,"column":6015,"offset":14832},{"line":3328,"column":6507,"offset":14841},34397,{"start":14843,"end":14845},{"line":3328,"column":23,"offset":14844},34298,{"line":3328,"column":6507,"offset":14841},{"type":19,"value":57},{"start":14848,"end":14849},{"line":4636,"column":23,"offset":14731},{"line":3328,"column":6507,"offset":14841},{"type":19,"value":57},{"type":14,"tagName":462,"properties":14852,"children":14854,"position":14861},{"id":14853},"fixed-2",[14855],{"type":19,"value":3351,"position":14856},{"start":14857,"end":14859},{"line":826,"column":93,"offset":14858},34403,{"line":826,"column":473,"offset":14860},34408,{"start":14862,"end":14864},{"line":826,"column":23,"offset":14863},34399,{"line":826,"column":473,"offset":14860},{"type":19,"value":57},{"type":14,"tagName":481,"properties":14867,"children":14868,"position":14905},{},[14869,14870,14904],{"type":19,"value":57},{"type":14,"tagName":486,"properties":14871,"children":14872,"position":14900},{},[14873,14880,14894],{"type":19,"value":14874,"position":14875},"Class of issues where v1 scripts could ",{"start":14876,"end":14878},{"line":592,"column":67,"offset":14877},34412,{"line":592,"column":519,"offset":14879},34451,{"type":14,"tagName":29,"properties":14881,"children":14882,"position":14890},{},[14883],{"type":19,"value":14884,"position":14885},"run without obvious errors",{"start":14886,"end":14888},{"line":592,"column":3445,"offset":14887},34453,{"line":592,"column":4164,"offset":14889},34479,{"start":14891,"end":14892},{"line":592,"column":519,"offset":14879},{"line":592,"column":5366,"offset":14893},34481,{"type":19,"value":14895,"position":14896}," yet mis-align series or misuse full-series returns; v2’s model and compile checks reduce this failure mode.",{"start":14897,"end":14898},{"line":592,"column":5366,"offset":14893},{"line":592,"column":1079,"offset":14899},34589,{"start":14901,"end":14903},{"line":592,"column":23,"offset":14902},34410,{"line":592,"column":1079,"offset":14899},{"type":19,"value":57},{"start":14906,"end":14907},{"line":592,"column":23,"offset":14902},{"line":592,"column":1079,"offset":14899},{"type":19,"value":57},{"type":14,"tagName":462,"properties":14910,"children":14912,"position":14919},{"id":14911},"breaking-changes",[14913],{"type":19,"value":6089,"position":14914},{"start":14915,"end":14917},{"line":601,"column":93,"offset":14916},34595,{"line":601,"column":2979,"offset":14918},34611,{"start":14920,"end":14922},{"line":601,"column":23,"offset":14921},34591,{"line":601,"column":2979,"offset":14918},{"type":19,"value":57},{"type":14,"tagName":481,"properties":14925,"children":14926,"position":15103},{},[14927,14928,15021,15022,15102],{"type":19,"value":57},{"type":14,"tagName":486,"properties":14929,"children":14930,"position":15017},{},[14931,14938,14952,14958,14971,14977,14991,14997,15011],{"type":19,"value":14932,"position":14933},"Scripts written for ",{"start":14934,"end":14936},{"line":4672,"column":67,"offset":14935},34615,{"line":4672,"column":27,"offset":14937},34635,{"type":14,"tagName":29,"properties":14939,"children":14940,"position":14948},{},[14941],{"type":19,"value":14942,"position":14943},"kScript v1",{"start":14944,"end":14946},{"line":4672,"column":37,"offset":14945},34637,{"line":4672,"column":44,"offset":14947},34647,{"start":14949,"end":14950},{"line":4672,"column":27,"offset":14937},{"line":4672,"column":1399,"offset":14951},34649,{"type":19,"value":14953,"position":14954}," are ",{"start":14955,"end":14956},{"line":4672,"column":1399,"offset":14951},{"line":4672,"column":519,"offset":14957},34654,{"type":14,"tagName":29,"properties":14959,"children":14960,"position":14967},{},[14961],{"type":19,"value":12370,"position":14962},{"start":14963,"end":14965},{"line":4672,"column":3445,"offset":14964},34656,{"line":4672,"column":2274,"offset":14966},34659,{"start":14968,"end":14969},{"line":4672,"column":519,"offset":14957},{"line":4672,"column":150,"offset":14970},34661,{"type":19,"value":14972,"position":14973}," source-compatible with ",{"start":14974,"end":14975},{"line":4672,"column":150,"offset":14970},{"line":4672,"column":1261,"offset":14976},34685,{"type":14,"tagName":29,"properties":14978,"children":14979,"position":14987},{},[14980],{"type":19,"value":14981,"position":14982},"v2",{"start":14983,"end":14985},{"line":4672,"column":1270,"offset":14984},34687,{"line":4672,"column":3506,"offset":14986},34689,{"start":14988,"end":14989},{"line":4672,"column":1261,"offset":14976},{"line":4672,"column":10179,"offset":14990},34691,{"type":19,"value":14992,"position":14993}," without migration (execution model, subscriptions, indicator return shapes, and keyword-only ergonomics). Use the ",{"start":14994,"end":14995},{"line":4672,"column":10179,"offset":14990},{"line":4672,"column":1097,"offset":14996},34806,{"type":14,"tagName":1943,"properties":14998,"children":14999,"position":15007},{"href":8155},[15000],{"type":19,"value":15001,"position":15002},"v1 vs v2 migration guide",{"start":15003,"end":15005},{"line":4672,"column":11600,"offset":15004},34807,{"line":4672,"column":6560,"offset":15006},34831,{"start":15008,"end":15009},{"line":4672,"column":1097,"offset":14996},{"line":4672,"column":573,"offset":15010},34862,{"type":19,"value":15012,"position":15013}," together with this entry when porting.",{"start":15014,"end":15015},{"line":4672,"column":573,"offset":15010},{"line":4672,"column":953,"offset":15016},34901,{"start":15018,"end":15020},{"line":4672,"column":23,"offset":15019},34613,{"line":4672,"column":953,"offset":15016},{"type":19,"value":57},{"type":14,"tagName":486,"properties":15023,"children":15024,"position":15098},{},[15025,15032,15092],{"type":19,"value":15026,"position":15027},"Removal of reliance on ",{"start":15028,"end":15030},{"line":7639,"column":67,"offset":15029},34904,{"line":7639,"column":36,"offset":15031},34927,{"type":14,"tagName":29,"properties":15033,"children":15034,"position":15088},{},[15035,15048,15053,15065,15070,15082],{"type":14,"tagName":142,"properties":15036,"children":15037,"position":15045},{},[15038],{"type":19,"value":15039,"position":15040},"buildTimeseries",{"start":15041,"end":15043},{"line":7639,"column":2852,"offset":15042},34929,{"line":7639,"column":2872,"offset":15044},34946,{"start":15046,"end":15047},{"line":7639,"column":2852,"offset":15042},{"line":7639,"column":2872,"offset":15044},{"type":19,"value":515,"position":15049},{"start":15050,"end":15051},{"line":7639,"column":2872,"offset":15044},{"line":7639,"column":3521,"offset":15052},34949,{"type":14,"tagName":142,"properties":15054,"children":15055,"position":15062},{},[15056],{"type":19,"value":15057,"position":15058},"mergeTimeseries",{"start":15059,"end":15060},{"line":7639,"column":3521,"offset":15052},{"line":7639,"column":4971,"offset":15061},34966,{"start":15063,"end":15064},{"line":7639,"column":3521,"offset":15052},{"line":7639,"column":4971,"offset":15061},{"type":19,"value":515,"position":15066},{"start":15067,"end":15068},{"line":7639,"column":4971,"offset":15061},{"line":7639,"column":5315,"offset":15069},34969,{"type":14,"tagName":142,"properties":15071,"children":15072,"position":15079},{},[15073],{"type":19,"value":15074,"position":15075},"matchTimestamp",{"start":15076,"end":15077},{"line":7639,"column":5315,"offset":15069},{"line":7639,"column":4320,"offset":15078},34985,{"start":15080,"end":15081},{"line":7639,"column":5315,"offset":15069},{"line":7639,"column":4320,"offset":15078},{"type":19,"value":15083,"position":15084},"-style manual alignment",{"start":15085,"end":15086},{"line":7639,"column":4320,"offset":15078},{"line":7639,"column":6159,"offset":15087},35008,{"start":15089,"end":15090},{"line":7639,"column":36,"offset":15031},{"line":7639,"column":10067,"offset":15091},35010,{"type":19,"value":15093,"position":15094}," in favor of engine-driven per-bar evaluation for typical indicators.",{"start":15095,"end":15096},{"line":7639,"column":10067,"offset":15091},{"line":7639,"column":756,"offset":15097},35079,{"start":15099,"end":15101},{"line":7639,"column":23,"offset":15100},34902,{"line":7639,"column":756,"offset":15097},{"type":19,"value":57},{"start":15104,"end":15105},{"line":4672,"column":23,"offset":15019},{"line":7639,"column":756,"offset":15097},{"quirksMode":15107},false,{"start":15109,"end":15110},{"line":23,"column":23,"offset":24},{"line":11264,"column":23,"offset":15111},35080,1784888064593]