[{"data":1,"prerenderedAt":5725},["ShallowReactive",2],{"wrun-open-editor-url":3,"indicators:core-concepts/multi-source":4},"https://openmarket.xyz/chart/#wrun-open=v1",{"slug":5,"filePath":6,"frontmatter":7,"rawMarkdown":12,"tree":13},"core-concepts/multi-source","core-concepts/multi-source.md",{"title":8,"description":9,"order":10,"section":11},"Multi-source and aggregation","One indicator can read several data types and markets at once: the other feeds of the chart's market, other markets' candles, and a sum across venues.",12,"core-concepts","---\ntitle: \"Multi-source and aggregation\"\ndescription: \"One indicator can read several data types and markets at once: the other feeds of the chart's market, other markets' candles, and a sum across venues.\"\norder: 12\nsection: \"core-concepts\"\n---\n\n\u003C!-- source: docs/indicators/core-concepts/multi-source.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit -->\n\n# Multi-source and aggregation\n\nOne indicator can read several data types and markets at once: the other\nfeeds of the chart's market, other markets' candles, and a sum across\nvenues.\n\nOther markets come in through `symbol` + `exchange` pins, side-split flow\nthrough `side`, sparse feeds through `missing`, and aggregation is\nordinary arithmetic across inputs. Everything rides `input` declarations,\nand the finer bars inside each chart bar come from the `intrabar` celled\nsource.\n\n## Introduction\n\nAn indicator is not limited to its chart's candles. On the chart it can\ndeclare the other data types the chart serves for the chart's own market\n(open interest, funding, side-split trades, liquidations, a book snapshot,\na volume profile) and the candles of other markets and venues, and combine\nthem with ordinary math. \"Aggregated\" indicators (one quantity summed\nacross venues) are not a special feature; they fall out of this plus a few\nlines of arithmetic.\n\n```text\ninput(\"close\", ohlcv.close);                                                   // the first input: the chart's own candles\ninput(\"btc\", ohlcv.close, { symbol: \"BTCUSDT\", exchange: \"BINANCE_FUTURES\" }); // a pinned reference market\n// in onBar(): out_ratio(bar.close() / in_btc());\n```\n\n## How multiple sources coexist\n\nThree rules make cross-source math safe by default:\n\n1. **One grid: the chart's candles.** The rows are the chart's own\n   candles; the first input follows the chart's market and interval, and\n   every other input is aligned onto those rows. Every input is readable\n   on every bar.\n2. **Values align by policy.** A source at the chart's interval joins by\n   bar open. A coarser pin contributes only as of each bar's close\n   ([Multi-timeframe](multi-timeframe.md)). A scalar source with no\n   observation on a bar delivers the latest value carried forward\n   (`missing: \"carry\"`, the default), `NaN` (`\"nan\"`), or `0` (`\"zero\"`),\n   and you choose per input. Funding against 1h candles just works.\n3. **Events never fabricate.** Every comparison with `NaN` is false, and\n   `Cross.update()` answers `0` when either side is `NaN`, so a venue that\n   has not reported cannot invent a signal.\n\n## Multi-symbol\n\nA secondary `ohlcv` input can name a market other than the chart's. The two\nhalves pin together (the editor refuses a lone `symbol` or a lone\n`exchange`), written in the chart's own ids, and everything downstream is\nsource-agnostic: classes, folds, gates, shapes. The ETH/BTC ratio and the\nrelative-strength reading between them:\n\n```typescript sample=cc-multi-ratio\nparam(\"period\", 14, { min: 2, max: 200, description: \"Lookback for the ratio average and the leader's RSI\" });\n// The first input follows the chart (ETHUSDT on an ETH chart); the reference is pinned.\ninput(\"close\", ohlcv.close);\ninput(\"btc\", ohlcv.close, { symbol: \"BTCUSDT\", exchange: \"BINANCE_FUTURES\", description: \"BTC close, the reference market\" });\noutput(\"ratio\", line, lower, { color: \"#2563eb\", width: 2, description: \"The chart's close divided by the BTC close\" });\noutput(\"ratio_sma\", line, lower, { color: \"#94a3b8\", description: \"Average of the ratio\" });\noutput(\"lead_rsi\", line, lower, { color: \"#f59e0b\", description: \"RSI of the reference market: the leader's momentum\" });\n\nlet sma = new Sma(14);\nlet rsi = new Rsi(14);\n\nfunction onStart(): void {\n  sma = new Sma(i32(p_period()));\n  rsi = new Rsi(i32(p_period()));\n}\n\nfunction onBar(): void {\n  const close = bar.close();\n  const btc = in_btc();\n  const ratio = btc > 0.0 ? close / btc : NaN;\n  const ratioSma = isNaN(ratio) ? NaN : sma.update(ratio);\n  const leadRsi = rsi.update(btc);\n  if (isNaN(ratioSma) || isNaN(leadRsi)) return;\n  out_ratio(ratio);\n  out_ratio_sma(ratioSma);\n  out_lead_rsi(leadRsi);\n}\n```\n\nOn the chart the pinned market's candles are joined onto the chart's rows\nby timestamp, at the chart's interval, under the input's `missing`\npolicy, and kept live from that market's own candle feed, so the forming\nbar reads the reference market's forming candle.\n\nFor another market at a coarser interval, the declaration adds `interval`\nto the pin:\n`input(\"eth_4h\", ohlcv.close, { symbol: \"ETHUSDT\", exchange:\n\"BINANCE_FUTURES\", interval: \"4h\" })`, read as of each bar's close\n([Multi-timeframe](multi-timeframe.md)). Cross-symbol arithmetic is only\ndimensionally sane under a shared quote currency.\n\nOnly a secondary `ohlcv` input may name another market. The chart refuses,\nby name and before it fetches anything, a market pin on the first input,\non any other feed (trades, open interest, funding, liquidations, implied\nvolatility, skew, ETF flows, time) and on every celled source: those\nalways read the chart's own market. A Polymarket `odds` input is the one\nexception, since it always names its own market by condition id\n([Data sources](data-sources.md)). Stocks, ETFs, forex, gold and silver\npin the same way, on any chart (next section).\n\n## Stocks, forex and gold\n\nAn input can read a stock, an ETF, a forex pair, gold or silver beside the\nchart's own market. Pin it with the market's exchange id and symbol, as you\npin any other market.\n\n```typescript sample=cc-other-markets\n// The chart's market measured against a stock ETF, a forex pair and gold, each read from its own market's daily candles.\n// The first input is the indicator's own market: leave it unpinned so it follows the chart.\ninput(\"close\", ohlcv.close);\ninput(\"spy\", ohlcv.close, { symbol: \"SPY/USD\", exchange: \"POLYGON\", interval: \"1d\" });\ninput(\"eurusd\", ohlcv.close, { symbol: \"EUR/USD\", exchange: \"FX_OTC\", interval: \"1d\" });\ninput(\"gold\", ohlcv.close, { symbol: \"XAU/USD\", exchange: \"FX_OTC\", interval: \"1d\" });\n\noutput(\"vs_spy\", line, lower, { color: \"#2563eb\", description: \"The close divided by SPY's last daily close\" });\noutput(\"in_euro\", line, lower, { color: \"#16a34a\", description: \"The close in euros\" });\noutput(\"in_ounces\", line, lower, { color: \"#eab308\", description: \"The close in ounces of gold\" });\n\nfunction onBar(): void {\n  const close = bar.close();\n  if (isNaN(close)) return;\n  const spy = in_spy();\n  const eurusd = in_eurusd();\n  const gold = in_gold();\n  // A pinned input reads NaN until its first daily candle has closed.\n  if (isFinite(spy) && spy > 0) out_vs_spy(close / spy);\n  if (isFinite(eurusd) && eurusd > 0) out_in_euro(close / eurusd);\n  if (isFinite(gold) && gold > 0) out_in_ounces(close / gold);\n}\n```\n\n- Keep the chart's own input first. The first input is the indicator's\n  own market, and every pin lines up with its bars.\n- Each pin reads its market's last closed daily candle, so run this on a\n  chart finer than one day.\n- A pinned input is `NaN` until its first candle closes. Check before you\n  divide.\n\n### Markets you can pin\n\n| Market | `exchange` | `symbol` | What you get |\n| --- | --- | --- | --- |\n| US stocks and ETFs | `POLYGON` | `AAPL/USD`, `SPY/USD`, `QQQ/USD`, `GLD/USD` | candles with volume, in regular trading hours unless the chart is a US stock chart with extended hours on |\n| Forex | `FX_OTC` | `EUR/USD`, `GBP/USD`, `USD/JPY` | quote candles: open, high, low and close; `volume` reads 0 |\n| Gold and silver | `FX_OTC` | `XAU/USD`, `XAG/USD` | quote candles, as forex |\n| Crypto | the venue's id | the venue's spelling | [Exchange and symbol format](../reference/symbol-format.md) |\n\nStocks and forex trade in sessions, so their bars do not always open where\na crypto chart's bars open. Pin an interval coarser than the chart's, as the\nexample does: a pin at the chart's own interval lines up bar by bar on exact\ntimes, and a stock's hourly bars (13:30 UTC, 14:30 UTC, ...) never meet a\ncrypto chart's hourly bars.\n\n### What you cannot pin\n\n| Pin | What happens |\n| --- | --- |\n| a CME Group market (`CME`, `CBOT`, `NYMEX`, `COMEX`, `GLOBEX`) | the build refuses it: `input 'es' pins exchange CME: wrun_pin_venue_refused: CME is CME Group market data and cannot be read from another market's script`. A `param.symbol` default on one is refused the same way. |\n| more than one market in a pin | the build refuses it: `input 'spy' pins symbol \"SPY/USD + CME\\|ES1!\": wrun_pin_symbol_literal: symbol \"SPY/USD + CME\\|ES1!\" is not one market's spelling (letters, digits and . _ - / : @ ! only; no spaces, no \\| and no operators)` |\n| an index (S&P 500, Nasdaq 100, VIX, the dollar index) | the build accepts `POLYGON_INDICES`, but index series are not served yet. On the chart the input reads `NaN` on every bar and the legend says why; an alert on the indicator is refused. Pin an ETF on the same market instead (`SPY/USD`, `QQQ/USD`). |\n| a `3d` pin on a stock, forex or gold market | the chart refuses it before it fetches: a three-day candle there groups trading days and would count as closed too early. Pin `1d` or `1w`. |\n\nThe chart's own market may still be a CME market on a chart entitled to\nit: the rule is about reading CME data from another market's script.\n\nThe chart's words for the last two rows:\n\n- `Input 'spx' pins SPX on POLYGON_INDICES; index series (SPX, NDX, VIX, DJI) are not served yet: the gateway holds POLYGON_INDICES out of the market directory until the backend opens it, so the input reads its missing fill (NaN) on every bar.`\n- `Input 'spy' pins interval '3d' on POLYGON/SPY/USD: a multi-day candle on a session venue groups trading days (a Friday bar runs into Monday) and would be confirmed at its open plus the span, early and still forming (wrun_pin_session_interval_unserved); pin 1d or 1w instead`\n\n### In alerts\n\nAn alert evaluates pinned stock, forex and gold candles like any other\npinned market. It refuses an indicator that pins an index (\"This Indicator\nreads a market alerts cannot evaluate yet (an index).\") or a CME Group\nmarket (\"Indicator alerts are not allowed on this venue.\").\nAlerts read stock candles with extended hours, while the chart reads\nregular hours unless its own market is a US stock with extended hours on,\nso a stock leg can differ slightly between the chart and its alert.\n\n## Multi-venue aggregation\n\nThe flagship pattern: one quantity, summed across exchanges. On the chart\nthe venues come in through their candles, so the natural aggregates are\ncandle ones: volume across venues, a cross-venue price spread, a\nvolume-weighted price. Each venue is one pinned `ohlcv` input declared with\n`missing: \"nan\"`, so a venue with no candle on a bar reads `NaN`, counts as\nnot reporting, and contributes nothing:\n\n```typescript sample=cc-multi-venue-volume\nparam(\"smooth\", 21, { min: 2, max: 200, description: \"EMA length over the aggregated volume\" });\n// The chart's own candles are the rows; each venue's candles join onto them by timestamp.\ninput(\"close\", ohlcv.close);\ninput(\"vol_binance\", ohlcv.volume, { symbol: \"BTCUSDT\", exchange: \"BINANCE_FUTURES\", missing: \"nan\", description: \"Binance BTC perpetual volume\" });\ninput(\"vol_bybit\", ohlcv.volume, { symbol: \"BTCUSDT\", exchange: \"BYBIT\", missing: \"nan\", description: \"Bybit BTC perpetual volume\" });\noutput(\"agg_volume\", histogram, lower, { color: \"#2563eb\", description: \"Volume summed over the venues that reported\" });\noutput(\"volume_ema\", line, lower, { color: \"#94a3b8\", width: 2, description: \"Smoothed aggregated volume\" });\noutput(\"binance_share\", line, lower, { color: \"#f59e0b\", unit: \"%\", description: \"Binance share of the two venues' volume\" });\n\nlet ema = new Ema(21);\n\n// A venue with no candle on this bar reads NaN (missing: \"nan\") and contributes nothing.\nfunction reported(value: f64): f64 {\n  return isNaN(value) ? 0.0 : value;\n}\n\nfunction onStart(): void {\n  ema = new Ema(i32(p_smooth()));\n}\n\nfunction onBar(): void {\n  const binance = in_vol_binance();\n  const bybit = in_vol_bybit();\n  if (isNaN(binance) && isNaN(bybit)) return;\n  const agg = reported(binance) + reported(bybit);\n  const smoothed = ema.update(agg);\n  // Venue dominance: NaN rather than a fake 100% when only one venue reported.\n  const share = isNaN(binance) || isNaN(bybit) || agg \u003C= 0.0 ? NaN : (100.0 * binance) / agg;\n  out_agg_volume(agg);\n  out_volume_ema(smoothed);\n  out_binance_share(share);\n}\n```\n\n**Venue dominance** is the last output: one venue's share of the\naggregate, `NaN` rather than a fake `100%` when only one venue reported.\nThe same shape covers a spread (subtract instead of add) or a volume\nweighted price (sum `close * volume` and divide by the summed volume): one\npinned input per venue, one term per input, and a `missing` policy that\nsays what a silent venue means. Check that the venues count volume in the\nsame unit before you add them. Package the helpers as a class and the\nwhole family is one paste.\n\nFlow and derivative feeds (side-split trades, open interest, funding,\nliquidations) always read the chart's own market, so a cross-venue sum of\nthem is not available on the chart; accumulate the chart's own market\ninstead.\n\n## Higher-timeframe views of aggregates\n\nA fold composes with any input: bucket the aggregated series by\n`time.bar_open_sec` and fold it on the next bucket, and the 4h view of a\ncross-venue sum is confirmed and repaint-free exactly like a single-source\none ([Multi-timeframe](multi-timeframe.md)).\n\n## Lower-timeframe data and raw bars\n\nThe `intrabar` celled source delivers the finer bars inside each chart bar\nas cells, for the chart's own market\n([Multi-timeframe](multi-timeframe.md)). There is no raw-bar request that\nreturns the last N native bars of another market as an array for drawing.\nThe celled sources slice the same bar by price (`volume_profile`), by level\n(`book`), or by time (`intrabar`), and a drawing's coordinates come from\nvalues the module computes on the chart's rows\n([Drawing objects](../presentation/drawing-objects.md)). To mark the last\ntwenty daily highs, keep them in a ring buffer from a daily fold or a `1d`\npin and draw them as segments.\n\n## Sparse flow sources align to the grid\n\nSome market-flow feeds are naturally sparse: a liquidation, a funding\nprint, or a side-split trade bucket may simply have no event for a candle.\nThe `missing` policy is how you say what that means, per input:\n\n| Policy | A bar with no observation reads | Use it for |\n| --- | --- | --- |\n| `\"carry\"` (default) | the latest value, carried forward | levels and states: open interest, a coarse close, a funding rate between prints |\n| `\"nan\"` | `NaN` | \"did this venue report?\" logic: a `NaN` counts as not live and never fires a comparison |\n| `\"zero\"` | `0` | flows to be summed: liquidation volume, side-split volume, where nothing happened means zero |\n\nThe rows stay the chart's candles whatever the policy, so a sparse series\nsuch as liquidations reads its fill on the bars where nothing happened.\nThe practical rule: keep an `ohlcv` spine as the\nfirst input in a multi-source flow package, then read the flow sources\nbeside it. The candle grid stays stable, sparse \"nothing happened\" bars\nbecome `0` or `NaN` as you choose, and truly unavailable history stays\ndistinguishable from zero activity.\n\n## Budgets and good citizenship\n\nOn the chart a\nwrun indicator counts against your plan's per-chart indicator limit by the\nnumber of distinct sources it reads (a source name plus its pinned\nmarket), and the practical cost of each one is fetch time over the loaded\nwindow ([Data sources](data-sources.md)). Declare the inputs the\ncomputation needs, pin `symbol` and `exchange` together, keep the chart's\nown candles first, and put the sparse feeds on the policy that matches\ntheir meaning.\n\n## Availability\n\nWhether the chart can serve a feed on the market in front of you is\nanswered by name when you press **Run**, never with silent empty data\n([Data sources](data-sources.md)).\n\n## Next\n\n- **Multi-timeframe:** a pin at a coarser interval, read as of each bar's close ([Multi-timeframe](multi-timeframe.md))\n- **Data sources:** every feed, its fields and its options ([Data sources](data-sources.md))\n- **Exchange and symbol format:** the venue ids and symbol spellings a pin takes ([Exchange and symbol format](../reference/symbol-format.md))\n- **Alerts:** which pinned markets an alert can evaluate ([Alerts](../functions/alerts.md#what-an-alert-can-evaluate))\n",{"type":14,"children":15,"data":5718,"position":5720},"root",[16,26,29,30,48,49,186,187,204,205,221,222,264,265,280,281,295,296,590,591,606,607,676,677,1522,1523,1557,1558,1636,1637,1711,1712,1728,1729,1745,1746,2424,2425,2502,2503,2520,2522,3012,3013,3028,3029,3044,3046,3504,3505,3521,3522,3536,3537,3589,3590,3606,3607,3622,3623,3637,3638,3706,3707,4622,4623,4726,4727,4742,4743,4758,4759,4811,4812,4827,4828,4976,4977,4991,4992,5024,5025,5275,5276,5340,5341,5356,5357,5426,5427,5442,5443,5497,5498,5512,5513],{"type":17,"value":18,"position":19},"comment"," source: docs/indicators/core-concepts/multi-source.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit ",{"start":20,"end":23},{"line":21,"column":21,"offset":22},1,0,{"line":21,"column":24,"offset":25},133,132,{"type":27,"value":28},"text","\n",{"type":27,"value":28},{"type":31,"tagName":32,"properties":33,"children":34,"position":45},"element","p",{},[35],{"type":27,"value":36,"position":37},"One indicator can read several data types and markets at once: the other\nfeeds of the chart's market, other markets' candles, and a sum across\nvenues.",{"start":38,"end":41},{"line":39,"column":21,"offset":40},5,166,{"line":42,"column":43,"offset":44},7,8,316,{"start":46,"end":47},{"line":39,"column":21,"offset":40},{"line":42,"column":43,"offset":44},{"type":27,"value":28},{"type":31,"tagName":32,"properties":50,"children":51,"position":183},{},[52,61,75,82,95,102,115,122,135,143,156,163,176],{"type":27,"value":53,"position":54},"Other markets come in through ",{"start":55,"end":58},{"line":56,"column":21,"offset":57},9,318,{"line":56,"column":59,"offset":60},31,348,{"type":31,"tagName":62,"properties":63,"children":64,"position":72},"code",{},[65],{"type":27,"value":66,"position":67},"symbol",{"start":68,"end":69},{"line":56,"column":59,"offset":60},{"line":56,"column":70,"offset":71},39,356,{"start":73,"end":74},{"line":56,"column":59,"offset":60},{"line":56,"column":70,"offset":71},{"type":27,"value":76,"position":77}," + ",{"start":78,"end":79},{"line":56,"column":70,"offset":71},{"line":56,"column":80,"offset":81},42,359,{"type":31,"tagName":62,"properties":83,"children":84,"position":92},{},[85],{"type":27,"value":86,"position":87},"exchange",{"start":88,"end":89},{"line":56,"column":80,"offset":81},{"line":56,"column":90,"offset":91},52,369,{"start":93,"end":94},{"line":56,"column":80,"offset":81},{"line":56,"column":90,"offset":91},{"type":27,"value":96,"position":97}," pins, side-split flow\nthrough ",{"start":98,"end":99},{"line":56,"column":90,"offset":91},{"line":100,"column":56,"offset":101},10,400,{"type":31,"tagName":62,"properties":103,"children":104,"position":112},{},[105],{"type":27,"value":106,"position":107},"side",{"start":108,"end":109},{"line":100,"column":56,"offset":101},{"line":100,"column":110,"offset":111},15,406,{"start":113,"end":114},{"line":100,"column":56,"offset":101},{"line":100,"column":110,"offset":111},{"type":27,"value":116,"position":117},", sparse feeds through ",{"start":118,"end":119},{"line":100,"column":110,"offset":111},{"line":100,"column":120,"offset":121},38,429,{"type":31,"tagName":62,"properties":123,"children":124,"position":132},{},[125],{"type":27,"value":126,"position":127},"missing",{"start":128,"end":129},{"line":100,"column":120,"offset":121},{"line":100,"column":130,"offset":131},47,438,{"start":133,"end":134},{"line":100,"column":120,"offset":121},{"line":100,"column":130,"offset":131},{"type":27,"value":136,"position":137},", and aggregation is\nordinary arithmetic across inputs. Everything rides ",{"start":138,"end":139},{"line":100,"column":130,"offset":131},{"line":140,"column":141,"offset":142},11,53,511,{"type":31,"tagName":62,"properties":144,"children":145,"position":153},{},[146],{"type":27,"value":147,"position":148},"input",{"start":149,"end":150},{"line":140,"column":141,"offset":142},{"line":140,"column":151,"offset":152},60,518,{"start":154,"end":155},{"line":140,"column":141,"offset":142},{"line":140,"column":151,"offset":152},{"type":27,"value":157,"position":158}," declarations,\nand the finer bars inside each chart bar come from the ",{"start":159,"end":160},{"line":140,"column":151,"offset":152},{"line":10,"column":161,"offset":162},56,588,{"type":31,"tagName":62,"properties":164,"children":165,"position":173},{},[166],{"type":27,"value":167,"position":168},"intrabar",{"start":169,"end":170},{"line":10,"column":161,"offset":162},{"line":10,"column":171,"offset":172},66,598,{"start":174,"end":175},{"line":10,"column":161,"offset":162},{"line":10,"column":171,"offset":172},{"type":27,"value":177,"position":178}," celled\nsource.",{"start":179,"end":180},{"line":10,"column":171,"offset":172},{"line":181,"column":43,"offset":182},13,613,{"start":184,"end":185},{"line":56,"column":21,"offset":57},{"line":181,"column":43,"offset":182},{"type":27,"value":28},{"type":31,"tagName":188,"properties":189,"children":190,"position":200},"h2",{},[191],{"type":27,"value":192,"position":193},"Introduction",{"start":194,"end":197},{"line":110,"column":195,"offset":196},4,618,{"line":110,"column":198,"offset":199},16,630,{"start":201,"end":203},{"line":110,"column":21,"offset":202},615,{"line":110,"column":198,"offset":199},{"type":27,"value":28},{"type":31,"tagName":32,"properties":206,"children":207,"position":218},{},[208],{"type":27,"value":209,"position":210},"An indicator is not limited to its chart's candles. On the chart it can\ndeclare the other data types the chart serves for the chart's own market\n(open interest, funding, side-split trades, liquidations, a book snapshot,\na volume profile) and the candles of other markets and venues, and combine\nthem with ordinary math. \"Aggregated\" indicators (one quantity summed\nacross venues) are not a special feature; they fall out of this plus a few\nlines of arithmetic.",{"start":211,"end":214},{"line":212,"column":21,"offset":213},17,632,{"line":215,"column":216,"offset":217},23,21,1092,{"start":219,"end":220},{"line":212,"column":21,"offset":213},{"line":215,"column":216,"offset":217},{"type":27,"value":28},{"type":14,"children":223},[224],{"type":31,"tagName":225,"properties":226,"children":230,"data":-1},"pre",{"class":227,"style":228,"tabindex":229},"shiki shiki-themes github-dark github-light","--shiki-dark:#e1e4e8;--shiki-light:#24292e;--shiki-dark-bg:#24292e;--shiki-light-bg:#fff","0",[231],{"type":31,"tagName":62,"properties":232,"children":235},{"class":233},[234],"language-text",[236,246,247,255,256],{"type":31,"tagName":237,"properties":238,"children":240},"span",{"class":239},"line",[241],{"type":31,"tagName":237,"properties":242,"children":243},{},[244],{"type":27,"value":245},"input(\"close\", ohlcv.close);                                                   // the first input: the chart's own candles",{"type":27,"value":28},{"type":31,"tagName":237,"properties":248,"children":249},{"class":239},[250],{"type":31,"tagName":237,"properties":251,"children":252},{},[253],{"type":27,"value":254},"input(\"btc\", ohlcv.close, { symbol: \"BTCUSDT\", exchange: \"BINANCE_FUTURES\" }); // a pinned reference market",{"type":27,"value":28},{"type":31,"tagName":237,"properties":257,"children":258},{"class":239},[259],{"type":31,"tagName":237,"properties":260,"children":261},{},[262],{"type":27,"value":263},"// in onBar(): out_ratio(bar.close() / in_btc());",{"type":27,"value":28},{"type":31,"tagName":188,"properties":266,"children":267,"position":276},{},[268],{"type":27,"value":269,"position":270},"How multiple sources coexist",{"start":271,"end":273},{"line":59,"column":195,"offset":272},1391,{"line":59,"column":274,"offset":275},32,1419,{"start":277,"end":279},{"line":59,"column":21,"offset":278},1388,{"line":59,"column":274,"offset":275},{"type":27,"value":28},{"type":31,"tagName":32,"properties":282,"children":283,"position":292},{},[284],{"type":27,"value":285,"position":286},"Three rules make cross-source math safe by default:",{"start":287,"end":290},{"line":288,"column":21,"offset":289},33,1421,{"line":288,"column":90,"offset":291},1472,{"start":293,"end":294},{"line":288,"column":21,"offset":289},{"line":288,"column":90,"offset":291},{"type":27,"value":28},{"type":31,"tagName":297,"properties":298,"children":299,"position":587},"ol",{},[300,301,334,335,483,484,586],{"type":27,"value":28},{"type":31,"tagName":302,"properties":303,"children":304,"position":330},"li",{},[305,324],{"type":31,"tagName":306,"properties":307,"children":308,"position":319},"strong",{},[309],{"type":27,"value":310,"position":311},"One grid: the chart's candles.",{"start":312,"end":316},{"line":313,"column":314,"offset":315},35,6,1479,{"line":313,"column":317,"offset":318},36,1509,{"start":320,"end":322},{"line":313,"column":195,"offset":321},1477,{"line":313,"column":120,"offset":323},1511,{"type":27,"value":325,"position":326}," The rows are the chart's own\ncandles; the first input follows the chart's market and interval, and\nevery other input is aligned onto those rows. Every input is readable\non every bar.",{"start":327,"end":328},{"line":313,"column":120,"offset":323},{"line":120,"column":212,"offset":329},1703,{"start":331,"end":333},{"line":313,"column":21,"offset":332},1474,{"line":120,"column":212,"offset":329},{"type":27,"value":28},{"type":31,"tagName":302,"properties":336,"children":337,"position":479},{},[338,354,361,377,384,396,402,415,422,434,441,453,459,472],{"type":31,"tagName":306,"properties":339,"children":340,"position":349},{},[341],{"type":27,"value":342,"position":343},"Values align by policy.",{"start":344,"end":346},{"line":70,"column":314,"offset":345},1709,{"line":70,"column":347,"offset":348},29,1732,{"start":350,"end":352},{"line":70,"column":195,"offset":351},1707,{"line":70,"column":59,"offset":353},1734,{"type":27,"value":355,"position":356}," A source at the chart's interval joins by\nbar open. A coarser pin contributes only as of each bar's close\n(",{"start":357,"end":358},{"line":70,"column":59,"offset":353},{"line":359,"column":39,"offset":360},41,1848,{"type":31,"tagName":362,"properties":363,"children":365,"position":373},"a",{"href":364},"multi-timeframe.md",[366],{"type":27,"value":367,"position":368},"Multi-timeframe",{"start":369,"end":371},{"line":359,"column":314,"offset":370},1849,{"line":359,"column":216,"offset":372},1864,{"start":374,"end":375},{"line":359,"column":39,"offset":360},{"line":359,"column":80,"offset":376},1885,{"type":27,"value":378,"position":379},"). A scalar source with no\nobservation on a bar delivers the latest value carried forward\n(",{"start":380,"end":381},{"line":359,"column":80,"offset":376},{"line":382,"column":39,"offset":383},43,1982,{"type":31,"tagName":62,"properties":385,"children":386,"position":393},{},[387],{"type":27,"value":388,"position":389},"missing: \"carry\"",{"start":390,"end":391},{"line":382,"column":39,"offset":383},{"line":382,"column":215,"offset":392},2000,{"start":394,"end":395},{"line":382,"column":39,"offset":383},{"line":382,"column":215,"offset":392},{"type":27,"value":397,"position":398},", the default), ",{"start":399,"end":400},{"line":382,"column":215,"offset":392},{"line":382,"column":70,"offset":401},2016,{"type":31,"tagName":62,"properties":403,"children":404,"position":412},{},[405],{"type":27,"value":406,"position":407},"NaN",{"start":408,"end":409},{"line":382,"column":70,"offset":401},{"line":382,"column":410,"offset":411},44,2021,{"start":413,"end":414},{"line":382,"column":70,"offset":401},{"line":382,"column":410,"offset":411},{"type":27,"value":416,"position":417}," (",{"start":418,"end":419},{"line":382,"column":410,"offset":411},{"line":382,"column":420,"offset":421},46,2023,{"type":31,"tagName":62,"properties":423,"children":424,"position":431},{},[425],{"type":27,"value":426,"position":427},"\"nan\"",{"start":428,"end":429},{"line":382,"column":420,"offset":421},{"line":382,"column":141,"offset":430},2030,{"start":432,"end":433},{"line":382,"column":420,"offset":421},{"line":382,"column":141,"offset":430},{"type":27,"value":435,"position":436},"), or ",{"start":437,"end":438},{"line":382,"column":141,"offset":430},{"line":382,"column":439,"offset":440},59,2036,{"type":31,"tagName":62,"properties":442,"children":443,"position":450},{},[444],{"type":27,"value":229,"position":445},{"start":446,"end":447},{"line":382,"column":439,"offset":440},{"line":382,"column":448,"offset":449},62,2039,{"start":451,"end":452},{"line":382,"column":439,"offset":440},{"line":382,"column":448,"offset":449},{"type":27,"value":416,"position":454},{"start":455,"end":456},{"line":382,"column":448,"offset":449},{"line":382,"column":457,"offset":458},64,2041,{"type":31,"tagName":62,"properties":460,"children":461,"position":469},{},[462],{"type":27,"value":463,"position":464},"\"zero\"",{"start":465,"end":466},{"line":382,"column":457,"offset":458},{"line":382,"column":467,"offset":468},72,2049,{"start":470,"end":471},{"line":382,"column":457,"offset":458},{"line":382,"column":467,"offset":468},{"type":27,"value":473,"position":474},"),\nand you choose per input. Funding against 1h candles just works.",{"start":475,"end":476},{"line":382,"column":467,"offset":468},{"line":410,"column":477,"offset":478},68,2119,{"start":480,"end":482},{"line":70,"column":21,"offset":481},1704,{"line":410,"column":477,"offset":478},{"type":27,"value":28},{"type":31,"tagName":302,"properties":485,"children":486,"position":582},{},[487,503,510,521,527,541,547,558,564,576],{"type":31,"tagName":306,"properties":488,"children":489,"position":498},{},[490],{"type":27,"value":491,"position":492},"Events never fabricate.",{"start":493,"end":496},{"line":494,"column":314,"offset":495},45,2125,{"line":494,"column":347,"offset":497},2148,{"start":499,"end":501},{"line":494,"column":195,"offset":500},2123,{"line":494,"column":59,"offset":502},2150,{"type":27,"value":504,"position":505}," Every comparison with ",{"start":506,"end":507},{"line":494,"column":59,"offset":502},{"line":494,"column":508,"offset":509},54,2173,{"type":31,"tagName":62,"properties":511,"children":512,"position":518},{},[513],{"type":27,"value":406,"position":514},{"start":515,"end":516},{"line":494,"column":508,"offset":509},{"line":494,"column":439,"offset":517},2178,{"start":519,"end":520},{"line":494,"column":508,"offset":509},{"line":494,"column":439,"offset":517},{"type":27,"value":522,"position":523}," is false, and\n",{"start":524,"end":525},{"line":494,"column":439,"offset":517},{"line":420,"column":21,"offset":526},2193,{"type":31,"tagName":62,"properties":528,"children":529,"position":538},{},[530],{"type":27,"value":531,"position":532},"Cross.update()",{"start":533,"end":535},{"line":420,"column":195,"offset":534},2196,{"line":420,"column":536,"offset":537},20,2212,{"start":539,"end":540},{"line":420,"column":195,"offset":534},{"line":420,"column":536,"offset":537},{"type":27,"value":542,"position":543}," answers ",{"start":544,"end":545},{"line":420,"column":536,"offset":537},{"line":420,"column":347,"offset":546},2221,{"type":31,"tagName":62,"properties":548,"children":549,"position":555},{},[550],{"type":27,"value":229,"position":551},{"start":552,"end":553},{"line":420,"column":347,"offset":546},{"line":420,"column":274,"offset":554},2224,{"start":556,"end":557},{"line":420,"column":347,"offset":546},{"line":420,"column":274,"offset":554},{"type":27,"value":559,"position":560}," when either side is ",{"start":561,"end":562},{"line":420,"column":274,"offset":554},{"line":420,"column":141,"offset":563},2245,{"type":31,"tagName":62,"properties":565,"children":566,"position":573},{},[567],{"type":27,"value":406,"position":568},{"start":569,"end":570},{"line":420,"column":141,"offset":563},{"line":420,"column":571,"offset":572},58,2250,{"start":574,"end":575},{"line":420,"column":141,"offset":563},{"line":420,"column":571,"offset":572},{"type":27,"value":577,"position":578},", so a venue that\nhas not reported cannot invent a signal.",{"start":579,"end":580},{"line":420,"column":571,"offset":572},{"line":130,"column":410,"offset":581},2311,{"start":583,"end":585},{"line":494,"column":21,"offset":584},2120,{"line":130,"column":410,"offset":581},{"type":27,"value":28},{"start":588,"end":589},{"line":313,"column":21,"offset":332},{"line":130,"column":410,"offset":581},{"type":27,"value":28},{"type":31,"tagName":188,"properties":592,"children":593,"position":602},{},[594],{"type":27,"value":595,"position":596},"Multi-symbol",{"start":597,"end":600},{"line":598,"column":195,"offset":599},49,2316,{"line":598,"column":198,"offset":601},2328,{"start":603,"end":605},{"line":598,"column":21,"offset":604},2313,{"line":598,"column":198,"offset":601},{"type":27,"value":28},{"type":31,"tagName":32,"properties":608,"children":609,"position":673},{},[610,618,630,637,648,654,665],{"type":27,"value":611,"position":612},"A secondary ",{"start":613,"end":616},{"line":614,"column":21,"offset":615},51,2330,{"line":614,"column":181,"offset":617},2342,{"type":31,"tagName":62,"properties":619,"children":620,"position":627},{},[621],{"type":27,"value":622,"position":623},"ohlcv",{"start":624,"end":625},{"line":614,"column":181,"offset":617},{"line":614,"column":536,"offset":626},2349,{"start":628,"end":629},{"line":614,"column":181,"offset":617},{"line":614,"column":536,"offset":626},{"type":27,"value":631,"position":632}," input can name a market other than the chart's. The two\nhalves pin together (the editor refuses a lone ",{"start":633,"end":634},{"line":614,"column":536,"offset":626},{"line":90,"column":635,"offset":636},48,2453,{"type":31,"tagName":62,"properties":638,"children":639,"position":645},{},[640],{"type":27,"value":66,"position":641},{"start":642,"end":643},{"line":90,"column":635,"offset":636},{"line":90,"column":161,"offset":644},2461,{"start":646,"end":647},{"line":90,"column":635,"offset":636},{"line":90,"column":161,"offset":644},{"type":27,"value":649,"position":650}," or a lone\n",{"start":651,"end":652},{"line":90,"column":161,"offset":644},{"line":141,"column":21,"offset":653},2472,{"type":31,"tagName":62,"properties":655,"children":656,"position":662},{},[657],{"type":27,"value":86,"position":658},{"start":659,"end":660},{"line":141,"column":21,"offset":653},{"line":141,"column":140,"offset":661},2482,{"start":663,"end":664},{"line":141,"column":21,"offset":653},{"line":141,"column":140,"offset":661},{"type":27,"value":666,"position":667},"), written in the chart's own ids, and everything downstream is\nsource-agnostic: classes, folds, gates, shapes. The ETH/BTC ratio and the\nrelative-strength reading between them:",{"start":668,"end":669},{"line":141,"column":140,"offset":661},{"line":670,"column":671,"offset":672},55,40,2659,{"start":674,"end":675},{"line":614,"column":21,"offset":615},{"line":670,"column":671,"offset":672},{"type":27,"value":28},{"type":14,"children":678},[679],{"type":31,"tagName":225,"properties":680,"children":682,"data":-1},{"class":227,"style":228,"tabindex":229,"data-sample":681},"cc-multi-ratio",[683],{"type":31,"tagName":62,"properties":684,"children":687},{"class":685},[686],"language-typescript",[688,755,756,765,766,787,788,837,838,887,888,926,927,965,966,969,970,1012,1013,1050,1051,1054,1055,1088,1089,1132,1133,1173,1174,1182,1183,1186,1187,1215,1216,1249,1250,1275,1276,1340,1341,1396,1397,1427,1428,1473,1474,1486,1487,1500,1501,1514,1515],{"type":31,"tagName":237,"properties":689,"children":690},{"class":239},[691,697,703,709,714,720,725,730,735,740,745,750],{"type":31,"tagName":237,"properties":692,"children":694},{"style":693},"--shiki-dark:#B392F0;--shiki-light:#6F42C1",[695],{"type":27,"value":696},"param",{"type":31,"tagName":237,"properties":698,"children":700},{"style":699},"--shiki-dark:#E1E4E8;--shiki-light:#24292E",[701],{"type":27,"value":702},"(",{"type":31,"tagName":237,"properties":704,"children":706},{"style":705},"--shiki-dark:#9ECBFF;--shiki-light:#032F62",[707],{"type":27,"value":708},"\"period\"",{"type":31,"tagName":237,"properties":710,"children":711},{"style":699},[712],{"type":27,"value":713},", ",{"type":31,"tagName":237,"properties":715,"children":717},{"style":716},"--shiki-dark:#79B8FF;--shiki-light:#005CC5",[718],{"type":27,"value":719},"14",{"type":31,"tagName":237,"properties":721,"children":722},{"style":699},[723],{"type":27,"value":724},", { min: ",{"type":31,"tagName":237,"properties":726,"children":727},{"style":716},[728],{"type":27,"value":729},"2",{"type":31,"tagName":237,"properties":731,"children":732},{"style":699},[733],{"type":27,"value":734},", max: ",{"type":31,"tagName":237,"properties":736,"children":737},{"style":716},[738],{"type":27,"value":739},"200",{"type":31,"tagName":237,"properties":741,"children":742},{"style":699},[743],{"type":27,"value":744},", description: ",{"type":31,"tagName":237,"properties":746,"children":747},{"style":705},[748],{"type":27,"value":749},"\"Lookback for the ratio average and the leader's RSI\"",{"type":31,"tagName":237,"properties":751,"children":752},{"style":699},[753],{"type":27,"value":754}," });",{"type":27,"value":28},{"type":31,"tagName":237,"properties":757,"children":758},{"class":239},[759],{"type":31,"tagName":237,"properties":760,"children":762},{"style":761},"--shiki-dark:#6A737D;--shiki-light:#6A737D",[763],{"type":27,"value":764},"// The first input follows the chart (ETHUSDT on an ETH chart); the reference is pinned.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":767,"children":768},{"class":239},[769,773,777,782],{"type":31,"tagName":237,"properties":770,"children":771},{"style":693},[772],{"type":27,"value":147},{"type":31,"tagName":237,"properties":774,"children":775},{"style":699},[776],{"type":27,"value":702},{"type":31,"tagName":237,"properties":778,"children":779},{"style":705},[780],{"type":27,"value":781},"\"close\"",{"type":31,"tagName":237,"properties":783,"children":784},{"style":699},[785],{"type":27,"value":786},", ohlcv.close);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":789,"children":790},{"class":239},[791,795,799,804,809,814,819,824,828,833],{"type":31,"tagName":237,"properties":792,"children":793},{"style":693},[794],{"type":27,"value":147},{"type":31,"tagName":237,"properties":796,"children":797},{"style":699},[798],{"type":27,"value":702},{"type":31,"tagName":237,"properties":800,"children":801},{"style":705},[802],{"type":27,"value":803},"\"btc\"",{"type":31,"tagName":237,"properties":805,"children":806},{"style":699},[807],{"type":27,"value":808},", ohlcv.close, { symbol: ",{"type":31,"tagName":237,"properties":810,"children":811},{"style":705},[812],{"type":27,"value":813},"\"BTCUSDT\"",{"type":31,"tagName":237,"properties":815,"children":816},{"style":699},[817],{"type":27,"value":818},", exchange: ",{"type":31,"tagName":237,"properties":820,"children":821},{"style":705},[822],{"type":27,"value":823},"\"BINANCE_FUTURES\"",{"type":31,"tagName":237,"properties":825,"children":826},{"style":699},[827],{"type":27,"value":744},{"type":31,"tagName":237,"properties":829,"children":830},{"style":705},[831],{"type":27,"value":832},"\"BTC close, the reference market\"",{"type":31,"tagName":237,"properties":834,"children":835},{"style":699},[836],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":839,"children":840},{"class":239},[841,846,850,855,860,865,870,874,878,883],{"type":31,"tagName":237,"properties":842,"children":843},{"style":693},[844],{"type":27,"value":845},"output",{"type":31,"tagName":237,"properties":847,"children":848},{"style":699},[849],{"type":27,"value":702},{"type":31,"tagName":237,"properties":851,"children":852},{"style":705},[853],{"type":27,"value":854},"\"ratio\"",{"type":31,"tagName":237,"properties":856,"children":857},{"style":699},[858],{"type":27,"value":859},", line, lower, { color: ",{"type":31,"tagName":237,"properties":861,"children":862},{"style":705},[863],{"type":27,"value":864},"\"#2563eb\"",{"type":31,"tagName":237,"properties":866,"children":867},{"style":699},[868],{"type":27,"value":869},", width: ",{"type":31,"tagName":237,"properties":871,"children":872},{"style":716},[873],{"type":27,"value":729},{"type":31,"tagName":237,"properties":875,"children":876},{"style":699},[877],{"type":27,"value":744},{"type":31,"tagName":237,"properties":879,"children":880},{"style":705},[881],{"type":27,"value":882},"\"The chart's close divided by the BTC close\"",{"type":31,"tagName":237,"properties":884,"children":885},{"style":699},[886],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":889,"children":890},{"class":239},[891,895,899,904,908,913,917,922],{"type":31,"tagName":237,"properties":892,"children":893},{"style":693},[894],{"type":27,"value":845},{"type":31,"tagName":237,"properties":896,"children":897},{"style":699},[898],{"type":27,"value":702},{"type":31,"tagName":237,"properties":900,"children":901},{"style":705},[902],{"type":27,"value":903},"\"ratio_sma\"",{"type":31,"tagName":237,"properties":905,"children":906},{"style":699},[907],{"type":27,"value":859},{"type":31,"tagName":237,"properties":909,"children":910},{"style":705},[911],{"type":27,"value":912},"\"#94a3b8\"",{"type":31,"tagName":237,"properties":914,"children":915},{"style":699},[916],{"type":27,"value":744},{"type":31,"tagName":237,"properties":918,"children":919},{"style":705},[920],{"type":27,"value":921},"\"Average of the ratio\"",{"type":31,"tagName":237,"properties":923,"children":924},{"style":699},[925],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":928,"children":929},{"class":239},[930,934,938,943,947,952,956,961],{"type":31,"tagName":237,"properties":931,"children":932},{"style":693},[933],{"type":27,"value":845},{"type":31,"tagName":237,"properties":935,"children":936},{"style":699},[937],{"type":27,"value":702},{"type":31,"tagName":237,"properties":939,"children":940},{"style":705},[941],{"type":27,"value":942},"\"lead_rsi\"",{"type":31,"tagName":237,"properties":944,"children":945},{"style":699},[946],{"type":27,"value":859},{"type":31,"tagName":237,"properties":948,"children":949},{"style":705},[950],{"type":27,"value":951},"\"#f59e0b\"",{"type":31,"tagName":237,"properties":953,"children":954},{"style":699},[955],{"type":27,"value":744},{"type":31,"tagName":237,"properties":957,"children":958},{"style":705},[959],{"type":27,"value":960},"\"RSI of the reference market: the leader's momentum\"",{"type":31,"tagName":237,"properties":962,"children":963},{"style":699},[964],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":967,"children":968},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":971,"children":972},{"class":239},[973,979,984,989,994,999,1003,1007],{"type":31,"tagName":237,"properties":974,"children":976},{"style":975},"--shiki-dark:#F97583;--shiki-light:#D73A49",[977],{"type":27,"value":978},"let",{"type":31,"tagName":237,"properties":980,"children":981},{"style":699},[982],{"type":27,"value":983}," sma ",{"type":31,"tagName":237,"properties":985,"children":986},{"style":975},[987],{"type":27,"value":988},"=",{"type":31,"tagName":237,"properties":990,"children":991},{"style":975},[992],{"type":27,"value":993}," new",{"type":31,"tagName":237,"properties":995,"children":996},{"style":693},[997],{"type":27,"value":998}," Sma",{"type":31,"tagName":237,"properties":1000,"children":1001},{"style":699},[1002],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1004,"children":1005},{"style":716},[1006],{"type":27,"value":719},{"type":31,"tagName":237,"properties":1008,"children":1009},{"style":699},[1010],{"type":27,"value":1011},");",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1014,"children":1015},{"class":239},[1016,1020,1025,1029,1033,1038,1042,1046],{"type":31,"tagName":237,"properties":1017,"children":1018},{"style":975},[1019],{"type":27,"value":978},{"type":31,"tagName":237,"properties":1021,"children":1022},{"style":699},[1023],{"type":27,"value":1024}," rsi ",{"type":31,"tagName":237,"properties":1026,"children":1027},{"style":975},[1028],{"type":27,"value":988},{"type":31,"tagName":237,"properties":1030,"children":1031},{"style":975},[1032],{"type":27,"value":993},{"type":31,"tagName":237,"properties":1034,"children":1035},{"style":693},[1036],{"type":27,"value":1037}," Rsi",{"type":31,"tagName":237,"properties":1039,"children":1040},{"style":699},[1041],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1043,"children":1044},{"style":716},[1045],{"type":27,"value":719},{"type":31,"tagName":237,"properties":1047,"children":1048},{"style":699},[1049],{"type":27,"value":1011},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1052,"children":1053},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":1056,"children":1057},{"class":239},[1058,1063,1068,1073,1078,1083],{"type":31,"tagName":237,"properties":1059,"children":1060},{"style":975},[1061],{"type":27,"value":1062},"function",{"type":31,"tagName":237,"properties":1064,"children":1065},{"style":693},[1066],{"type":27,"value":1067}," onStart",{"type":31,"tagName":237,"properties":1069,"children":1070},{"style":699},[1071],{"type":27,"value":1072},"()",{"type":31,"tagName":237,"properties":1074,"children":1075},{"style":975},[1076],{"type":27,"value":1077},":",{"type":31,"tagName":237,"properties":1079,"children":1080},{"style":716},[1081],{"type":27,"value":1082}," void",{"type":31,"tagName":237,"properties":1084,"children":1085},{"style":699},[1086],{"type":27,"value":1087}," {",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1090,"children":1091},{"class":239},[1092,1097,1101,1105,1109,1113,1118,1122,1127],{"type":31,"tagName":237,"properties":1093,"children":1094},{"style":699},[1095],{"type":27,"value":1096},"  sma ",{"type":31,"tagName":237,"properties":1098,"children":1099},{"style":975},[1100],{"type":27,"value":988},{"type":31,"tagName":237,"properties":1102,"children":1103},{"style":975},[1104],{"type":27,"value":993},{"type":31,"tagName":237,"properties":1106,"children":1107},{"style":693},[1108],{"type":27,"value":998},{"type":31,"tagName":237,"properties":1110,"children":1111},{"style":699},[1112],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1114,"children":1115},{"style":693},[1116],{"type":27,"value":1117},"i32",{"type":31,"tagName":237,"properties":1119,"children":1120},{"style":699},[1121],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1123,"children":1124},{"style":693},[1125],{"type":27,"value":1126},"p_period",{"type":31,"tagName":237,"properties":1128,"children":1129},{"style":699},[1130],{"type":27,"value":1131},"()));",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1134,"children":1135},{"class":239},[1136,1141,1145,1149,1153,1157,1161,1165,1169],{"type":31,"tagName":237,"properties":1137,"children":1138},{"style":699},[1139],{"type":27,"value":1140},"  rsi ",{"type":31,"tagName":237,"properties":1142,"children":1143},{"style":975},[1144],{"type":27,"value":988},{"type":31,"tagName":237,"properties":1146,"children":1147},{"style":975},[1148],{"type":27,"value":993},{"type":31,"tagName":237,"properties":1150,"children":1151},{"style":693},[1152],{"type":27,"value":1037},{"type":31,"tagName":237,"properties":1154,"children":1155},{"style":699},[1156],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1158,"children":1159},{"style":693},[1160],{"type":27,"value":1117},{"type":31,"tagName":237,"properties":1162,"children":1163},{"style":699},[1164],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1166,"children":1167},{"style":693},[1168],{"type":27,"value":1126},{"type":31,"tagName":237,"properties":1170,"children":1171},{"style":699},[1172],{"type":27,"value":1131},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1175,"children":1176},{"class":239},[1177],{"type":31,"tagName":237,"properties":1178,"children":1179},{"style":699},[1180],{"type":27,"value":1181},"}",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1184,"children":1185},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":1188,"children":1189},{"class":239},[1190,1194,1199,1203,1207,1211],{"type":31,"tagName":237,"properties":1191,"children":1192},{"style":975},[1193],{"type":27,"value":1062},{"type":31,"tagName":237,"properties":1195,"children":1196},{"style":693},[1197],{"type":27,"value":1198}," onBar",{"type":31,"tagName":237,"properties":1200,"children":1201},{"style":699},[1202],{"type":27,"value":1072},{"type":31,"tagName":237,"properties":1204,"children":1205},{"style":975},[1206],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":1208,"children":1209},{"style":716},[1210],{"type":27,"value":1082},{"type":31,"tagName":237,"properties":1212,"children":1213},{"style":699},[1214],{"type":27,"value":1087},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1217,"children":1218},{"class":239},[1219,1224,1229,1234,1239,1244],{"type":31,"tagName":237,"properties":1220,"children":1221},{"style":975},[1222],{"type":27,"value":1223},"  const",{"type":31,"tagName":237,"properties":1225,"children":1226},{"style":716},[1227],{"type":27,"value":1228}," close",{"type":31,"tagName":237,"properties":1230,"children":1231},{"style":975},[1232],{"type":27,"value":1233}," =",{"type":31,"tagName":237,"properties":1235,"children":1236},{"style":699},[1237],{"type":27,"value":1238}," bar.",{"type":31,"tagName":237,"properties":1240,"children":1241},{"style":693},[1242],{"type":27,"value":1243},"close",{"type":31,"tagName":237,"properties":1245,"children":1246},{"style":699},[1247],{"type":27,"value":1248},"();",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1251,"children":1252},{"class":239},[1253,1257,1262,1266,1271],{"type":31,"tagName":237,"properties":1254,"children":1255},{"style":975},[1256],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":1258,"children":1259},{"style":716},[1260],{"type":27,"value":1261}," btc",{"type":31,"tagName":237,"properties":1263,"children":1264},{"style":975},[1265],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":1267,"children":1268},{"style":693},[1269],{"type":27,"value":1270}," in_btc",{"type":31,"tagName":237,"properties":1272,"children":1273},{"style":699},[1274],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1277,"children":1278},{"class":239},[1279,1283,1288,1292,1297,1302,1307,1312,1317,1322,1326,1330,1335],{"type":31,"tagName":237,"properties":1280,"children":1281},{"style":975},[1282],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":1284,"children":1285},{"style":716},[1286],{"type":27,"value":1287}," ratio",{"type":31,"tagName":237,"properties":1289,"children":1290},{"style":975},[1291],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":1293,"children":1294},{"style":699},[1295],{"type":27,"value":1296}," btc ",{"type":31,"tagName":237,"properties":1298,"children":1299},{"style":975},[1300],{"type":27,"value":1301},">",{"type":31,"tagName":237,"properties":1303,"children":1304},{"style":716},[1305],{"type":27,"value":1306}," 0.0",{"type":31,"tagName":237,"properties":1308,"children":1309},{"style":975},[1310],{"type":27,"value":1311}," ?",{"type":31,"tagName":237,"properties":1313,"children":1314},{"style":699},[1315],{"type":27,"value":1316}," close ",{"type":31,"tagName":237,"properties":1318,"children":1319},{"style":975},[1320],{"type":27,"value":1321},"/",{"type":31,"tagName":237,"properties":1323,"children":1324},{"style":699},[1325],{"type":27,"value":1296},{"type":31,"tagName":237,"properties":1327,"children":1328},{"style":975},[1329],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":1331,"children":1332},{"style":716},[1333],{"type":27,"value":1334}," NaN",{"type":31,"tagName":237,"properties":1336,"children":1337},{"style":699},[1338],{"type":27,"value":1339},";",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1342,"children":1343},{"class":239},[1344,1348,1353,1357,1362,1367,1372,1376,1381,1386,1391],{"type":31,"tagName":237,"properties":1345,"children":1346},{"style":975},[1347],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":1349,"children":1350},{"style":716},[1351],{"type":27,"value":1352}," ratioSma",{"type":31,"tagName":237,"properties":1354,"children":1355},{"style":975},[1356],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":1358,"children":1359},{"style":693},[1360],{"type":27,"value":1361}," isNaN",{"type":31,"tagName":237,"properties":1363,"children":1364},{"style":699},[1365],{"type":27,"value":1366},"(ratio) ",{"type":31,"tagName":237,"properties":1368,"children":1369},{"style":975},[1370],{"type":27,"value":1371},"?",{"type":31,"tagName":237,"properties":1373,"children":1374},{"style":716},[1375],{"type":27,"value":1334},{"type":31,"tagName":237,"properties":1377,"children":1378},{"style":975},[1379],{"type":27,"value":1380}," :",{"type":31,"tagName":237,"properties":1382,"children":1383},{"style":699},[1384],{"type":27,"value":1385}," sma.",{"type":31,"tagName":237,"properties":1387,"children":1388},{"style":693},[1389],{"type":27,"value":1390},"update",{"type":31,"tagName":237,"properties":1392,"children":1393},{"style":699},[1394],{"type":27,"value":1395},"(ratio);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1398,"children":1399},{"class":239},[1400,1404,1409,1413,1418,1422],{"type":31,"tagName":237,"properties":1401,"children":1402},{"style":975},[1403],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":1405,"children":1406},{"style":716},[1407],{"type":27,"value":1408}," leadRsi",{"type":31,"tagName":237,"properties":1410,"children":1411},{"style":975},[1412],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":1414,"children":1415},{"style":699},[1416],{"type":27,"value":1417}," rsi.",{"type":31,"tagName":237,"properties":1419,"children":1420},{"style":693},[1421],{"type":27,"value":1390},{"type":31,"tagName":237,"properties":1423,"children":1424},{"style":699},[1425],{"type":27,"value":1426},"(btc);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1429,"children":1430},{"class":239},[1431,1436,1440,1445,1450,1455,1459,1464,1469],{"type":31,"tagName":237,"properties":1432,"children":1433},{"style":975},[1434],{"type":27,"value":1435},"  if",{"type":31,"tagName":237,"properties":1437,"children":1438},{"style":699},[1439],{"type":27,"value":416},{"type":31,"tagName":237,"properties":1441,"children":1442},{"style":693},[1443],{"type":27,"value":1444},"isNaN",{"type":31,"tagName":237,"properties":1446,"children":1447},{"style":699},[1448],{"type":27,"value":1449},"(ratioSma) ",{"type":31,"tagName":237,"properties":1451,"children":1452},{"style":975},[1453],{"type":27,"value":1454},"||",{"type":31,"tagName":237,"properties":1456,"children":1457},{"style":693},[1458],{"type":27,"value":1361},{"type":31,"tagName":237,"properties":1460,"children":1461},{"style":699},[1462],{"type":27,"value":1463},"(leadRsi)) ",{"type":31,"tagName":237,"properties":1465,"children":1466},{"style":975},[1467],{"type":27,"value":1468},"return",{"type":31,"tagName":237,"properties":1470,"children":1471},{"style":699},[1472],{"type":27,"value":1339},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1475,"children":1476},{"class":239},[1477,1482],{"type":31,"tagName":237,"properties":1478,"children":1479},{"style":693},[1480],{"type":27,"value":1481},"  out_ratio",{"type":31,"tagName":237,"properties":1483,"children":1484},{"style":699},[1485],{"type":27,"value":1395},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1488,"children":1489},{"class":239},[1490,1495],{"type":31,"tagName":237,"properties":1491,"children":1492},{"style":693},[1493],{"type":27,"value":1494},"  out_ratio_sma",{"type":31,"tagName":237,"properties":1496,"children":1497},{"style":699},[1498],{"type":27,"value":1499},"(ratioSma);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1502,"children":1503},{"class":239},[1504,1509],{"type":31,"tagName":237,"properties":1505,"children":1506},{"style":693},[1507],{"type":27,"value":1508},"  out_lead_rsi",{"type":31,"tagName":237,"properties":1510,"children":1511},{"style":699},[1512],{"type":27,"value":1513},"(leadRsi);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1516,"children":1517},{"class":239},[1518],{"type":31,"tagName":237,"properties":1519,"children":1520},{"style":699},[1521],{"type":27,"value":1181},{"type":27,"value":28},{"type":31,"tagName":32,"properties":1524,"children":1525,"position":1554},{},[1526,1535,1547],{"type":27,"value":1527,"position":1528},"On the chart the pinned market's candles are joined onto the chart's rows\nby timestamp, at the chart's interval, under the input's ",{"start":1529,"end":1532},{"line":1530,"column":21,"offset":1531},87,3882,{"line":1533,"column":571,"offset":1534},88,4013,{"type":31,"tagName":62,"properties":1536,"children":1537,"position":1544},{},[1538],{"type":27,"value":126,"position":1539},{"start":1540,"end":1541},{"line":1533,"column":571,"offset":1534},{"line":1533,"column":1542,"offset":1543},67,4022,{"start":1545,"end":1546},{"line":1533,"column":571,"offset":1534},{"line":1533,"column":1542,"offset":1543},{"type":27,"value":1548,"position":1549},"\npolicy, and kept live from that market's own candle feed, so the forming\nbar reads the reference market's forming candle.",{"start":1550,"end":1551},{"line":1533,"column":1542,"offset":1543},{"line":1552,"column":598,"offset":1553},90,4144,{"start":1555,"end":1556},{"line":1530,"column":21,"offset":1531},{"line":1552,"column":598,"offset":1553},{"type":27,"value":28},{"type":31,"tagName":32,"properties":1559,"children":1560,"position":1633},{},[1561,1569,1582,1589,1602,1610,1625],{"type":27,"value":1562,"position":1563},"For another market at a coarser interval, the declaration adds ",{"start":1564,"end":1567},{"line":1565,"column":21,"offset":1566},92,4146,{"line":1565,"column":457,"offset":1568},4209,{"type":31,"tagName":62,"properties":1570,"children":1571,"position":1579},{},[1572],{"type":27,"value":1573,"position":1574},"interval",{"start":1575,"end":1576},{"line":1565,"column":457,"offset":1568},{"line":1565,"column":1577,"offset":1578},74,4219,{"start":1580,"end":1581},{"line":1565,"column":457,"offset":1568},{"line":1565,"column":1577,"offset":1578},{"type":27,"value":1583,"position":1584},"\nto the pin:\n",{"start":1585,"end":1586},{"line":1565,"column":1577,"offset":1578},{"line":1587,"column":21,"offset":1588},94,4232,{"type":31,"tagName":62,"properties":1590,"children":1591,"position":1599},{},[1592],{"type":27,"value":1593,"position":1594},"input(\"eth_4h\", ohlcv.close, { symbol: \"ETHUSDT\", exchange: \"BINANCE_FUTURES\", interval: \"4h\" })",{"start":1595,"end":1596},{"line":1587,"column":21,"offset":1588},{"line":1597,"column":120,"offset":1598},95,4330,{"start":1600,"end":1601},{"line":1587,"column":21,"offset":1588},{"line":1597,"column":120,"offset":1598},{"type":27,"value":1603,"position":1604},", read as of each bar's close\n(",{"start":1605,"end":1606},{"line":1597,"column":120,"offset":1598},{"line":1607,"column":1608,"offset":1609},96,2,4361,{"type":31,"tagName":362,"properties":1611,"children":1612,"position":1621},{"href":364},[1613],{"type":27,"value":367,"position":1614},{"start":1615,"end":1618},{"line":1607,"column":1616,"offset":1617},3,4362,{"line":1607,"column":1619,"offset":1620},18,4377,{"start":1622,"end":1623},{"line":1607,"column":1608,"offset":1609},{"line":1607,"column":70,"offset":1624},4398,{"type":27,"value":1626,"position":1627},"). Cross-symbol arithmetic is only\ndimensionally sane under a shared quote currency.",{"start":1628,"end":1629},{"line":1607,"column":70,"offset":1624},{"line":1630,"column":1631,"offset":1632},97,50,4482,{"start":1634,"end":1635},{"line":1565,"column":21,"offset":1566},{"line":1630,"column":1631,"offset":1632},{"type":27,"value":28},{"type":31,"tagName":32,"properties":1638,"children":1639,"position":1708},{},[1640,1648,1660,1667,1679,1686,1701],{"type":27,"value":1641,"position":1642},"Only a secondary ",{"start":1643,"end":1646},{"line":1644,"column":21,"offset":1645},99,4484,{"line":1644,"column":1619,"offset":1647},4501,{"type":31,"tagName":62,"properties":1649,"children":1650,"position":1657},{},[1651],{"type":27,"value":622,"position":1652},{"start":1653,"end":1654},{"line":1644,"column":1619,"offset":1647},{"line":1644,"column":1655,"offset":1656},25,4508,{"start":1658,"end":1659},{"line":1644,"column":1619,"offset":1647},{"line":1644,"column":1655,"offset":1656},{"type":27,"value":1661,"position":1662}," input may name another market. The chart refuses,\nby name and before it fetches anything, a market pin on the first input,\non any other feed (trades, open interest, funding, liquidations, implied\nvolatility, skew, ETF flows, time) and on every celled source: those\nalways read the chart's own market. A Polymarket ",{"start":1663,"end":1664},{"line":1644,"column":1655,"offset":1656},{"line":1665,"column":1631,"offset":1666},103,4823,{"type":31,"tagName":62,"properties":1668,"children":1669,"position":1676},{},[1670],{"type":27,"value":1671,"position":1672},"odds",{"start":1673,"end":1674},{"line":1665,"column":1631,"offset":1666},{"line":1665,"column":161,"offset":1675},4829,{"start":1677,"end":1678},{"line":1665,"column":1631,"offset":1666},{"line":1665,"column":161,"offset":1675},{"type":27,"value":1680,"position":1681}," input is the one\nexception, since it always names its own market by condition id\n(",{"start":1682,"end":1683},{"line":1665,"column":161,"offset":1675},{"line":1684,"column":1608,"offset":1685},105,4912,{"type":31,"tagName":362,"properties":1687,"children":1689,"position":1697},{"href":1688},"data-sources.md",[1690],{"type":27,"value":1691,"position":1692},"Data sources",{"start":1693,"end":1695},{"line":1684,"column":1616,"offset":1694},4913,{"line":1684,"column":110,"offset":1696},4925,{"start":1698,"end":1699},{"line":1684,"column":1608,"offset":1685},{"line":1684,"column":288,"offset":1700},4943,{"type":27,"value":1702,"position":1703},"). Stocks, ETFs, forex, gold and silver\npin the same way, on any chart (next section).",{"start":1704,"end":1705},{"line":1684,"column":288,"offset":1700},{"line":1706,"column":130,"offset":1707},106,5029,{"start":1709,"end":1710},{"line":1644,"column":21,"offset":1645},{"line":1706,"column":130,"offset":1707},{"type":27,"value":28},{"type":31,"tagName":188,"properties":1713,"children":1714,"position":1724},{},[1715],{"type":27,"value":1716,"position":1717},"Stocks, forex and gold",{"start":1718,"end":1721},{"line":1719,"column":195,"offset":1720},108,5034,{"line":1719,"column":1722,"offset":1723},26,5056,{"start":1725,"end":1727},{"line":1719,"column":21,"offset":1726},5031,{"line":1719,"column":1722,"offset":1723},{"type":27,"value":28},{"type":31,"tagName":32,"properties":1730,"children":1731,"position":1742},{},[1732],{"type":27,"value":1733,"position":1734},"An input can read a stock, an ETF, a forex pair, gold or silver beside the\nchart's own market. Pin it with the market's exchange id and symbol, as you\npin any other market.",{"start":1735,"end":1738},{"line":1736,"column":21,"offset":1737},110,5058,{"line":1739,"column":1740,"offset":1741},112,22,5230,{"start":1743,"end":1744},{"line":1736,"column":21,"offset":1737},{"line":1739,"column":1740,"offset":1741},{"type":27,"value":28},{"type":14,"children":1747},[1748],{"type":31,"tagName":225,"properties":1749,"children":1751,"data":-1},{"class":227,"style":228,"tabindex":229,"data-sample":1750},"cc-other-markets",[1752],{"type":31,"tagName":62,"properties":1753,"children":1755},{"class":1754},[686],[1756,1764,1765,1773,1774,1793,1794,1842,1843,1889,1890,1935,1936,1939,1940,1977,1978,2016,2017,2055,2056,2059,2060,2087,2088,2115,2116,2144,2145,2170,2171,2196,2197,2222,2223,2231,2232,2296,2297,2356,2357,2416,2417],{"type":31,"tagName":237,"properties":1757,"children":1758},{"class":239},[1759],{"type":31,"tagName":237,"properties":1760,"children":1761},{"style":761},[1762],{"type":27,"value":1763},"// The chart's market measured against a stock ETF, a forex pair and gold, each read from its own market's daily candles.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1766,"children":1767},{"class":239},[1768],{"type":31,"tagName":237,"properties":1769,"children":1770},{"style":761},[1771],{"type":27,"value":1772},"// The first input is the indicator's own market: leave it unpinned so it follows the chart.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":1775,"children":1776},{"class":239},[1777,1781,1785,1789],{"type":31,"tagName":237,"properties":1778,"children":1779},{"style":693},[1780],{"type":27,"value":147},{"type":31,"tagName":237,"properties":1782,"children":1783},{"style":699},[1784],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1786,"children":1787},{"style":705},[1788],{"type":27,"value":781},{"type":31,"tagName":237,"properties":1790,"children":1791},{"style":699},[1792],{"type":27,"value":786},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1795,"children":1796},{"class":239},[1797,1801,1805,1810,1814,1819,1823,1828,1833,1838],{"type":31,"tagName":237,"properties":1798,"children":1799},{"style":693},[1800],{"type":27,"value":147},{"type":31,"tagName":237,"properties":1802,"children":1803},{"style":699},[1804],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1806,"children":1807},{"style":705},[1808],{"type":27,"value":1809},"\"spy\"",{"type":31,"tagName":237,"properties":1811,"children":1812},{"style":699},[1813],{"type":27,"value":808},{"type":31,"tagName":237,"properties":1815,"children":1816},{"style":705},[1817],{"type":27,"value":1818},"\"SPY/USD\"",{"type":31,"tagName":237,"properties":1820,"children":1821},{"style":699},[1822],{"type":27,"value":818},{"type":31,"tagName":237,"properties":1824,"children":1825},{"style":705},[1826],{"type":27,"value":1827},"\"POLYGON\"",{"type":31,"tagName":237,"properties":1829,"children":1830},{"style":699},[1831],{"type":27,"value":1832},", interval: ",{"type":31,"tagName":237,"properties":1834,"children":1835},{"style":705},[1836],{"type":27,"value":1837},"\"1d\"",{"type":31,"tagName":237,"properties":1839,"children":1840},{"style":699},[1841],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1844,"children":1845},{"class":239},[1846,1850,1854,1859,1863,1868,1872,1877,1881,1885],{"type":31,"tagName":237,"properties":1847,"children":1848},{"style":693},[1849],{"type":27,"value":147},{"type":31,"tagName":237,"properties":1851,"children":1852},{"style":699},[1853],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1855,"children":1856},{"style":705},[1857],{"type":27,"value":1858},"\"eurusd\"",{"type":31,"tagName":237,"properties":1860,"children":1861},{"style":699},[1862],{"type":27,"value":808},{"type":31,"tagName":237,"properties":1864,"children":1865},{"style":705},[1866],{"type":27,"value":1867},"\"EUR/USD\"",{"type":31,"tagName":237,"properties":1869,"children":1870},{"style":699},[1871],{"type":27,"value":818},{"type":31,"tagName":237,"properties":1873,"children":1874},{"style":705},[1875],{"type":27,"value":1876},"\"FX_OTC\"",{"type":31,"tagName":237,"properties":1878,"children":1879},{"style":699},[1880],{"type":27,"value":1832},{"type":31,"tagName":237,"properties":1882,"children":1883},{"style":705},[1884],{"type":27,"value":1837},{"type":31,"tagName":237,"properties":1886,"children":1887},{"style":699},[1888],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1891,"children":1892},{"class":239},[1893,1897,1901,1906,1910,1915,1919,1923,1927,1931],{"type":31,"tagName":237,"properties":1894,"children":1895},{"style":693},[1896],{"type":27,"value":147},{"type":31,"tagName":237,"properties":1898,"children":1899},{"style":699},[1900],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1902,"children":1903},{"style":705},[1904],{"type":27,"value":1905},"\"gold\"",{"type":31,"tagName":237,"properties":1907,"children":1908},{"style":699},[1909],{"type":27,"value":808},{"type":31,"tagName":237,"properties":1911,"children":1912},{"style":705},[1913],{"type":27,"value":1914},"\"XAU/USD\"",{"type":31,"tagName":237,"properties":1916,"children":1917},{"style":699},[1918],{"type":27,"value":818},{"type":31,"tagName":237,"properties":1920,"children":1921},{"style":705},[1922],{"type":27,"value":1876},{"type":31,"tagName":237,"properties":1924,"children":1925},{"style":699},[1926],{"type":27,"value":1832},{"type":31,"tagName":237,"properties":1928,"children":1929},{"style":705},[1930],{"type":27,"value":1837},{"type":31,"tagName":237,"properties":1932,"children":1933},{"style":699},[1934],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1937,"children":1938},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":1941,"children":1942},{"class":239},[1943,1947,1951,1956,1960,1964,1968,1973],{"type":31,"tagName":237,"properties":1944,"children":1945},{"style":693},[1946],{"type":27,"value":845},{"type":31,"tagName":237,"properties":1948,"children":1949},{"style":699},[1950],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1952,"children":1953},{"style":705},[1954],{"type":27,"value":1955},"\"vs_spy\"",{"type":31,"tagName":237,"properties":1957,"children":1958},{"style":699},[1959],{"type":27,"value":859},{"type":31,"tagName":237,"properties":1961,"children":1962},{"style":705},[1963],{"type":27,"value":864},{"type":31,"tagName":237,"properties":1965,"children":1966},{"style":699},[1967],{"type":27,"value":744},{"type":31,"tagName":237,"properties":1969,"children":1970},{"style":705},[1971],{"type":27,"value":1972},"\"The close divided by SPY's last daily close\"",{"type":31,"tagName":237,"properties":1974,"children":1975},{"style":699},[1976],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":1979,"children":1980},{"class":239},[1981,1985,1989,1994,1998,2003,2007,2012],{"type":31,"tagName":237,"properties":1982,"children":1983},{"style":693},[1984],{"type":27,"value":845},{"type":31,"tagName":237,"properties":1986,"children":1987},{"style":699},[1988],{"type":27,"value":702},{"type":31,"tagName":237,"properties":1990,"children":1991},{"style":705},[1992],{"type":27,"value":1993},"\"in_euro\"",{"type":31,"tagName":237,"properties":1995,"children":1996},{"style":699},[1997],{"type":27,"value":859},{"type":31,"tagName":237,"properties":1999,"children":2000},{"style":705},[2001],{"type":27,"value":2002},"\"#16a34a\"",{"type":31,"tagName":237,"properties":2004,"children":2005},{"style":699},[2006],{"type":27,"value":744},{"type":31,"tagName":237,"properties":2008,"children":2009},{"style":705},[2010],{"type":27,"value":2011},"\"The close in euros\"",{"type":31,"tagName":237,"properties":2013,"children":2014},{"style":699},[2015],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2018,"children":2019},{"class":239},[2020,2024,2028,2033,2037,2042,2046,2051],{"type":31,"tagName":237,"properties":2021,"children":2022},{"style":693},[2023],{"type":27,"value":845},{"type":31,"tagName":237,"properties":2025,"children":2026},{"style":699},[2027],{"type":27,"value":702},{"type":31,"tagName":237,"properties":2029,"children":2030},{"style":705},[2031],{"type":27,"value":2032},"\"in_ounces\"",{"type":31,"tagName":237,"properties":2034,"children":2035},{"style":699},[2036],{"type":27,"value":859},{"type":31,"tagName":237,"properties":2038,"children":2039},{"style":705},[2040],{"type":27,"value":2041},"\"#eab308\"",{"type":31,"tagName":237,"properties":2043,"children":2044},{"style":699},[2045],{"type":27,"value":744},{"type":31,"tagName":237,"properties":2047,"children":2048},{"style":705},[2049],{"type":27,"value":2050},"\"The close in ounces of gold\"",{"type":31,"tagName":237,"properties":2052,"children":2053},{"style":699},[2054],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2057,"children":2058},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":2061,"children":2062},{"class":239},[2063,2067,2071,2075,2079,2083],{"type":31,"tagName":237,"properties":2064,"children":2065},{"style":975},[2066],{"type":27,"value":1062},{"type":31,"tagName":237,"properties":2068,"children":2069},{"style":693},[2070],{"type":27,"value":1198},{"type":31,"tagName":237,"properties":2072,"children":2073},{"style":699},[2074],{"type":27,"value":1072},{"type":31,"tagName":237,"properties":2076,"children":2077},{"style":975},[2078],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":2080,"children":2081},{"style":716},[2082],{"type":27,"value":1082},{"type":31,"tagName":237,"properties":2084,"children":2085},{"style":699},[2086],{"type":27,"value":1087},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2089,"children":2090},{"class":239},[2091,2095,2099,2103,2107,2111],{"type":31,"tagName":237,"properties":2092,"children":2093},{"style":975},[2094],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":2096,"children":2097},{"style":716},[2098],{"type":27,"value":1228},{"type":31,"tagName":237,"properties":2100,"children":2101},{"style":975},[2102],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":2104,"children":2105},{"style":699},[2106],{"type":27,"value":1238},{"type":31,"tagName":237,"properties":2108,"children":2109},{"style":693},[2110],{"type":27,"value":1243},{"type":31,"tagName":237,"properties":2112,"children":2113},{"style":699},[2114],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2117,"children":2118},{"class":239},[2119,2123,2127,2131,2136,2140],{"type":31,"tagName":237,"properties":2120,"children":2121},{"style":975},[2122],{"type":27,"value":1435},{"type":31,"tagName":237,"properties":2124,"children":2125},{"style":699},[2126],{"type":27,"value":416},{"type":31,"tagName":237,"properties":2128,"children":2129},{"style":693},[2130],{"type":27,"value":1444},{"type":31,"tagName":237,"properties":2132,"children":2133},{"style":699},[2134],{"type":27,"value":2135},"(close)) ",{"type":31,"tagName":237,"properties":2137,"children":2138},{"style":975},[2139],{"type":27,"value":1468},{"type":31,"tagName":237,"properties":2141,"children":2142},{"style":699},[2143],{"type":27,"value":1339},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2146,"children":2147},{"class":239},[2148,2152,2157,2161,2166],{"type":31,"tagName":237,"properties":2149,"children":2150},{"style":975},[2151],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":2153,"children":2154},{"style":716},[2155],{"type":27,"value":2156}," spy",{"type":31,"tagName":237,"properties":2158,"children":2159},{"style":975},[2160],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":2162,"children":2163},{"style":693},[2164],{"type":27,"value":2165}," in_spy",{"type":31,"tagName":237,"properties":2167,"children":2168},{"style":699},[2169],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2172,"children":2173},{"class":239},[2174,2178,2183,2187,2192],{"type":31,"tagName":237,"properties":2175,"children":2176},{"style":975},[2177],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":2179,"children":2180},{"style":716},[2181],{"type":27,"value":2182}," eurusd",{"type":31,"tagName":237,"properties":2184,"children":2185},{"style":975},[2186],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":2188,"children":2189},{"style":693},[2190],{"type":27,"value":2191}," in_eurusd",{"type":31,"tagName":237,"properties":2193,"children":2194},{"style":699},[2195],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2198,"children":2199},{"class":239},[2200,2204,2209,2213,2218],{"type":31,"tagName":237,"properties":2201,"children":2202},{"style":975},[2203],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":2205,"children":2206},{"style":716},[2207],{"type":27,"value":2208}," gold",{"type":31,"tagName":237,"properties":2210,"children":2211},{"style":975},[2212],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":2214,"children":2215},{"style":693},[2216],{"type":27,"value":2217}," in_gold",{"type":31,"tagName":237,"properties":2219,"children":2220},{"style":699},[2221],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":2224,"children":2225},{"class":239},[2226],{"type":31,"tagName":237,"properties":2227,"children":2228},{"style":761},[2229],{"type":27,"value":2230},"  // A pinned input reads NaN until its first daily candle has closed.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":2233,"children":2234},{"class":239},[2235,2239,2243,2248,2253,2258,2263,2267,2272,2277,2282,2287,2291],{"type":31,"tagName":237,"properties":2236,"children":2237},{"style":975},[2238],{"type":27,"value":1435},{"type":31,"tagName":237,"properties":2240,"children":2241},{"style":699},[2242],{"type":27,"value":416},{"type":31,"tagName":237,"properties":2244,"children":2245},{"style":693},[2246],{"type":27,"value":2247},"isFinite",{"type":31,"tagName":237,"properties":2249,"children":2250},{"style":699},[2251],{"type":27,"value":2252},"(spy) ",{"type":31,"tagName":237,"properties":2254,"children":2255},{"style":975},[2256],{"type":27,"value":2257},"&&",{"type":31,"tagName":237,"properties":2259,"children":2260},{"style":699},[2261],{"type":27,"value":2262}," spy ",{"type":31,"tagName":237,"properties":2264,"children":2265},{"style":975},[2266],{"type":27,"value":1301},{"type":31,"tagName":237,"properties":2268,"children":2269},{"style":716},[2270],{"type":27,"value":2271}," 0",{"type":31,"tagName":237,"properties":2273,"children":2274},{"style":699},[2275],{"type":27,"value":2276},") ",{"type":31,"tagName":237,"properties":2278,"children":2279},{"style":693},[2280],{"type":27,"value":2281},"out_vs_spy",{"type":31,"tagName":237,"properties":2283,"children":2284},{"style":699},[2285],{"type":27,"value":2286},"(close ",{"type":31,"tagName":237,"properties":2288,"children":2289},{"style":975},[2290],{"type":27,"value":1321},{"type":31,"tagName":237,"properties":2292,"children":2293},{"style":699},[2294],{"type":27,"value":2295}," spy);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":2298,"children":2299},{"class":239},[2300,2304,2308,2312,2317,2321,2326,2330,2334,2338,2343,2347,2351],{"type":31,"tagName":237,"properties":2301,"children":2302},{"style":975},[2303],{"type":27,"value":1435},{"type":31,"tagName":237,"properties":2305,"children":2306},{"style":699},[2307],{"type":27,"value":416},{"type":31,"tagName":237,"properties":2309,"children":2310},{"style":693},[2311],{"type":27,"value":2247},{"type":31,"tagName":237,"properties":2313,"children":2314},{"style":699},[2315],{"type":27,"value":2316},"(eurusd) ",{"type":31,"tagName":237,"properties":2318,"children":2319},{"style":975},[2320],{"type":27,"value":2257},{"type":31,"tagName":237,"properties":2322,"children":2323},{"style":699},[2324],{"type":27,"value":2325}," eurusd ",{"type":31,"tagName":237,"properties":2327,"children":2328},{"style":975},[2329],{"type":27,"value":1301},{"type":31,"tagName":237,"properties":2331,"children":2332},{"style":716},[2333],{"type":27,"value":2271},{"type":31,"tagName":237,"properties":2335,"children":2336},{"style":699},[2337],{"type":27,"value":2276},{"type":31,"tagName":237,"properties":2339,"children":2340},{"style":693},[2341],{"type":27,"value":2342},"out_in_euro",{"type":31,"tagName":237,"properties":2344,"children":2345},{"style":699},[2346],{"type":27,"value":2286},{"type":31,"tagName":237,"properties":2348,"children":2349},{"style":975},[2350],{"type":27,"value":1321},{"type":31,"tagName":237,"properties":2352,"children":2353},{"style":699},[2354],{"type":27,"value":2355}," eurusd);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":2358,"children":2359},{"class":239},[2360,2364,2368,2372,2377,2381,2386,2390,2394,2398,2403,2407,2411],{"type":31,"tagName":237,"properties":2361,"children":2362},{"style":975},[2363],{"type":27,"value":1435},{"type":31,"tagName":237,"properties":2365,"children":2366},{"style":699},[2367],{"type":27,"value":416},{"type":31,"tagName":237,"properties":2369,"children":2370},{"style":693},[2371],{"type":27,"value":2247},{"type":31,"tagName":237,"properties":2373,"children":2374},{"style":699},[2375],{"type":27,"value":2376},"(gold) ",{"type":31,"tagName":237,"properties":2378,"children":2379},{"style":975},[2380],{"type":27,"value":2257},{"type":31,"tagName":237,"properties":2382,"children":2383},{"style":699},[2384],{"type":27,"value":2385}," gold ",{"type":31,"tagName":237,"properties":2387,"children":2388},{"style":975},[2389],{"type":27,"value":1301},{"type":31,"tagName":237,"properties":2391,"children":2392},{"style":716},[2393],{"type":27,"value":2271},{"type":31,"tagName":237,"properties":2395,"children":2396},{"style":699},[2397],{"type":27,"value":2276},{"type":31,"tagName":237,"properties":2399,"children":2400},{"style":693},[2401],{"type":27,"value":2402},"out_in_ounces",{"type":31,"tagName":237,"properties":2404,"children":2405},{"style":699},[2406],{"type":27,"value":2286},{"type":31,"tagName":237,"properties":2408,"children":2409},{"style":975},[2410],{"type":27,"value":1321},{"type":31,"tagName":237,"properties":2412,"children":2413},{"style":699},[2414],{"type":27,"value":2415}," gold);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":2418,"children":2419},{"class":239},[2420],{"type":31,"tagName":237,"properties":2421,"children":2422},{"style":699},[2423],{"type":27,"value":1181},{"type":27,"value":28},{"type":31,"tagName":2426,"properties":2427,"children":2428,"position":2499},"ul",{},[2429,2430,2446,2447,2464,2465,2498],{"type":27,"value":28},{"type":31,"tagName":302,"properties":2431,"children":2432,"position":2442},{},[2433],{"type":27,"value":2434,"position":2435},"Keep the chart's own input first. The first input is the indicator's\nown market, and every pin lines up with its bars.",{"start":2436,"end":2439},{"line":2437,"column":1616,"offset":2438},139,6510,{"line":2440,"column":90,"offset":2441},140,6630,{"start":2443,"end":2445},{"line":2437,"column":21,"offset":2444},6508,{"line":2440,"column":90,"offset":2441},{"type":27,"value":28},{"type":31,"tagName":302,"properties":2448,"children":2449,"position":2460},{},[2450],{"type":27,"value":2451,"position":2452},"Each pin reads its market's last closed daily candle, so run this on a\nchart finer than one day.",{"start":2453,"end":2456},{"line":2454,"column":1616,"offset":2455},141,6633,{"line":2457,"column":2458,"offset":2459},142,28,6731,{"start":2461,"end":2463},{"line":2454,"column":21,"offset":2462},6631,{"line":2457,"column":2458,"offset":2459},{"type":27,"value":28},{"type":31,"tagName":302,"properties":2466,"children":2467,"position":2494},{},[2468,2476,2487],{"type":27,"value":2469,"position":2470},"A pinned input is ",{"start":2471,"end":2474},{"line":2472,"column":1616,"offset":2473},143,6734,{"line":2472,"column":216,"offset":2475},6752,{"type":31,"tagName":62,"properties":2477,"children":2478,"position":2484},{},[2479],{"type":27,"value":406,"position":2480},{"start":2481,"end":2482},{"line":2472,"column":216,"offset":2475},{"line":2472,"column":1722,"offset":2483},6757,{"start":2485,"end":2486},{"line":2472,"column":216,"offset":2475},{"line":2472,"column":1722,"offset":2483},{"type":27,"value":2488,"position":2489}," until its first candle closes. Check before you\ndivide.",{"start":2490,"end":2491},{"line":2472,"column":1722,"offset":2483},{"line":2492,"column":100,"offset":2493},144,6815,{"start":2495,"end":2497},{"line":2472,"column":21,"offset":2496},6732,{"line":2492,"column":100,"offset":2493},{"type":27,"value":28},{"start":2500,"end":2501},{"line":2437,"column":21,"offset":2444},{"line":2492,"column":100,"offset":2493},{"type":27,"value":28},{"type":31,"tagName":2504,"properties":2505,"children":2506,"position":2516},"h3",{},[2507],{"type":27,"value":2508,"position":2509},"Markets you can pin",{"start":2510,"end":2513},{"line":2511,"column":39,"offset":2512},146,6821,{"line":2511,"column":2514,"offset":2515},24,6840,{"start":2517,"end":2519},{"line":2511,"column":21,"offset":2518},6817,{"line":2511,"column":2514,"offset":2515},{"type":27,"value":2521},"\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":31,"tagName":2523,"properties":2524,"children":2525,"position":3009},"table",{},[2526,2604],{"type":31,"tagName":2527,"properties":2528,"children":2529,"position":2601},"thead",{},[2530],{"type":31,"tagName":2531,"properties":2532,"children":2533,"position":2598},"tr",{},[2534,2551,2567,2584],{"type":31,"tagName":2535,"properties":2536,"children":2537,"position":2546},"th",{},[2538],{"type":27,"value":2539,"position":2540},"Market",{"start":2541,"end":2544},{"line":2542,"column":1616,"offset":2543},148,6844,{"line":2542,"column":56,"offset":2545},6850,{"start":2547,"end":2549},{"line":2542,"column":21,"offset":2548},6842,{"line":2542,"column":100,"offset":2550},6851,{"type":31,"tagName":2535,"properties":2552,"children":2553,"position":2563},{},[2554],{"type":31,"tagName":62,"properties":2555,"children":2556,"position":2558},{},[2557],{"type":27,"value":86},{"start":2559,"end":2561},{"line":2542,"column":10,"offset":2560},6853,{"line":2542,"column":1740,"offset":2562},6863,{"start":2564,"end":2565},{"line":2542,"column":100,"offset":2550},{"line":2542,"column":215,"offset":2566},6864,{"type":31,"tagName":2535,"properties":2568,"children":2569,"position":2579},{},[2570],{"type":31,"tagName":62,"properties":2571,"children":2572,"position":2574},{},[2573],{"type":27,"value":66},{"start":2575,"end":2577},{"line":2542,"column":1655,"offset":2576},6866,{"line":2542,"column":288,"offset":2578},6874,{"start":2580,"end":2581},{"line":2542,"column":215,"offset":2566},{"line":2542,"column":2582,"offset":2583},34,6875,{"type":31,"tagName":2535,"properties":2585,"children":2586,"position":2594},{},[2587],{"type":27,"value":2588,"position":2589},"What you get",{"start":2590,"end":2592},{"line":2542,"column":317,"offset":2591},6877,{"line":2542,"column":635,"offset":2593},6889,{"start":2595,"end":2596},{"line":2542,"column":2582,"offset":2583},{"line":2542,"column":1631,"offset":2597},6891,{"start":2599,"end":2600},{"line":2542,"column":21,"offset":2548},{"line":2542,"column":1631,"offset":2597},{"start":2602,"end":2603},{"line":2542,"column":21,"offset":2548},{"line":2542,"column":1631,"offset":2597},{"type":31,"tagName":2605,"properties":2606,"children":2607,"position":3006},"tbody",{},[2608,2728,2845,2930],{"type":31,"tagName":2531,"properties":2609,"children":2610,"position":2725},{},[2611,2628,2645,2708],{"type":31,"tagName":2612,"properties":2613,"children":2614,"position":2623},"td",{},[2615],{"type":27,"value":2616,"position":2617},"US stocks and ETFs",{"start":2618,"end":2621},{"line":2619,"column":1616,"offset":2620},150,6920,{"line":2619,"column":216,"offset":2622},6938,{"start":2624,"end":2626},{"line":2619,"column":21,"offset":2625},6918,{"line":2619,"column":1740,"offset":2627},6939,{"type":31,"tagName":2612,"properties":2629,"children":2630,"position":2641},{},[2631],{"type":31,"tagName":62,"properties":2632,"children":2633,"position":2636},{},[2634],{"type":27,"value":2635},"POLYGON",{"start":2637,"end":2639},{"line":2619,"column":2514,"offset":2638},6941,{"line":2619,"column":288,"offset":2640},6950,{"start":2642,"end":2643},{"line":2619,"column":1740,"offset":2627},{"line":2619,"column":2582,"offset":2644},6951,{"type":31,"tagName":2612,"properties":2646,"children":2647,"position":2703},{},[2648,2658,2663,2673,2678,2687,2693],{"type":31,"tagName":62,"properties":2649,"children":2650,"position":2653},{},[2651],{"type":27,"value":2652},"AAPL/USD",{"start":2654,"end":2656},{"line":2619,"column":317,"offset":2655},6953,{"line":2619,"column":420,"offset":2657},6963,{"type":27,"value":713,"position":2659},{"start":2660,"end":2661},{"line":2619,"column":420,"offset":2657},{"line":2619,"column":635,"offset":2662},6965,{"type":31,"tagName":62,"properties":2664,"children":2665,"position":2668},{},[2666],{"type":27,"value":2667},"SPY/USD",{"start":2669,"end":2670},{"line":2619,"column":635,"offset":2662},{"line":2619,"column":2671,"offset":2672},57,6974,{"type":27,"value":713,"position":2674},{"start":2675,"end":2676},{"line":2619,"column":2671,"offset":2672},{"line":2619,"column":439,"offset":2677},6976,{"type":31,"tagName":62,"properties":2679,"children":2680,"position":2683},{},[2681],{"type":27,"value":2682},"QQQ/USD",{"start":2684,"end":2685},{"line":2619,"column":439,"offset":2677},{"line":2619,"column":477,"offset":2686},6985,{"type":27,"value":713,"position":2688},{"start":2689,"end":2690},{"line":2619,"column":477,"offset":2686},{"line":2619,"column":2691,"offset":2692},70,6987,{"type":31,"tagName":62,"properties":2694,"children":2695,"position":2698},{},[2696],{"type":27,"value":2697},"GLD/USD",{"start":2699,"end":2700},{"line":2619,"column":2691,"offset":2692},{"line":2619,"column":2701,"offset":2702},79,6996,{"start":2704,"end":2705},{"line":2619,"column":2582,"offset":2644},{"line":2619,"column":2706,"offset":2707},80,6997,{"type":31,"tagName":2612,"properties":2709,"children":2710,"position":2720},{},[2711],{"type":27,"value":2712,"position":2713},"candles with volume, in regular trading hours unless the chart is a US stock chart with extended hours on",{"start":2714,"end":2717},{"line":2619,"column":2715,"offset":2716},82,6999,{"line":2619,"column":2718,"offset":2719},187,7104,{"start":2721,"end":2722},{"line":2619,"column":2706,"offset":2707},{"line":2619,"column":2723,"offset":2724},189,7106,{"start":2726,"end":2727},{"line":2619,"column":21,"offset":2625},{"line":2619,"column":2723,"offset":2724},{"type":31,"tagName":2531,"properties":2729,"children":2730,"position":2842},{},[2731,2747,2765,2810],{"type":31,"tagName":2612,"properties":2732,"children":2733,"position":2742},{},[2734],{"type":27,"value":2735,"position":2736},"Forex",{"start":2737,"end":2740},{"line":2738,"column":1616,"offset":2739},151,7109,{"line":2738,"column":43,"offset":2741},7114,{"start":2743,"end":2745},{"line":2738,"column":21,"offset":2744},7107,{"line":2738,"column":56,"offset":2746},7115,{"type":31,"tagName":2612,"properties":2748,"children":2749,"position":2761},{},[2750],{"type":31,"tagName":62,"properties":2751,"children":2752,"position":2755},{},[2753],{"type":27,"value":2754},"FX_OTC",{"start":2756,"end":2758},{"line":2738,"column":140,"offset":2757},7117,{"line":2738,"column":2759,"offset":2760},19,7125,{"start":2762,"end":2763},{"line":2738,"column":56,"offset":2746},{"line":2738,"column":536,"offset":2764},7126,{"type":31,"tagName":2612,"properties":2766,"children":2767,"position":2806},{},[2768,2778,2783,2792,2797],{"type":31,"tagName":62,"properties":2769,"children":2770,"position":2773},{},[2771],{"type":27,"value":2772},"EUR/USD",{"start":2774,"end":2776},{"line":2738,"column":1740,"offset":2775},7128,{"line":2738,"column":59,"offset":2777},7137,{"type":27,"value":713,"position":2779},{"start":2780,"end":2781},{"line":2738,"column":59,"offset":2777},{"line":2738,"column":288,"offset":2782},7139,{"type":31,"tagName":62,"properties":2784,"children":2785,"position":2788},{},[2786],{"type":27,"value":2787},"GBP/USD",{"start":2789,"end":2790},{"line":2738,"column":288,"offset":2782},{"line":2738,"column":80,"offset":2791},7148,{"type":27,"value":713,"position":2793},{"start":2794,"end":2795},{"line":2738,"column":80,"offset":2791},{"line":2738,"column":410,"offset":2796},7150,{"type":31,"tagName":62,"properties":2798,"children":2799,"position":2802},{},[2800],{"type":27,"value":2801},"USD/JPY",{"start":2803,"end":2804},{"line":2738,"column":410,"offset":2796},{"line":2738,"column":141,"offset":2805},7159,{"start":2807,"end":2808},{"line":2738,"column":536,"offset":2764},{"line":2738,"column":508,"offset":2809},7160,{"type":31,"tagName":2612,"properties":2811,"children":2812,"position":2837},{},[2813,2821,2830],{"type":27,"value":2814,"position":2815},"quote candles: open, high, low and close; ",{"start":2816,"end":2818},{"line":2738,"column":161,"offset":2817},7162,{"line":2738,"column":2819,"offset":2820},98,7204,{"type":31,"tagName":62,"properties":2822,"children":2823,"position":2826},{},[2824],{"type":27,"value":2825},"volume",{"start":2827,"end":2828},{"line":2738,"column":2819,"offset":2820},{"line":2738,"column":1706,"offset":2829},7212,{"type":27,"value":2831,"position":2832}," reads 0",{"start":2833,"end":2834},{"line":2738,"column":1706,"offset":2829},{"line":2738,"column":2835,"offset":2836},114,7220,{"start":2838,"end":2839},{"line":2738,"column":508,"offset":2809},{"line":2738,"column":2840,"offset":2841},116,7222,{"start":2843,"end":2844},{"line":2738,"column":21,"offset":2744},{"line":2738,"column":2840,"offset":2841},{"type":31,"tagName":2531,"properties":2846,"children":2847,"position":2927},{},[2848,2864,2881,2912],{"type":31,"tagName":2612,"properties":2849,"children":2850,"position":2859},{},[2851],{"type":27,"value":2852,"position":2853},"Gold and silver",{"start":2854,"end":2857},{"line":2855,"column":1616,"offset":2856},152,7225,{"line":2855,"column":1619,"offset":2858},7240,{"start":2860,"end":2862},{"line":2855,"column":21,"offset":2861},7223,{"line":2855,"column":2759,"offset":2863},7241,{"type":31,"tagName":2612,"properties":2865,"children":2866,"position":2876},{},[2867],{"type":31,"tagName":62,"properties":2868,"children":2869,"position":2871},{},[2870],{"type":27,"value":2754},{"start":2872,"end":2874},{"line":2855,"column":216,"offset":2873},7243,{"line":2855,"column":347,"offset":2875},7251,{"start":2877,"end":2878},{"line":2855,"column":2759,"offset":2863},{"line":2855,"column":2879,"offset":2880},30,7252,{"type":31,"tagName":2612,"properties":2882,"children":2883,"position":2908},{},[2884,2894,2899],{"type":31,"tagName":62,"properties":2885,"children":2886,"position":2889},{},[2887],{"type":27,"value":2888},"XAU/USD",{"start":2890,"end":2892},{"line":2855,"column":274,"offset":2891},7254,{"line":2855,"column":359,"offset":2893},7263,{"type":27,"value":713,"position":2895},{"start":2896,"end":2897},{"line":2855,"column":359,"offset":2893},{"line":2855,"column":382,"offset":2898},7265,{"type":31,"tagName":62,"properties":2900,"children":2901,"position":2904},{},[2902],{"type":27,"value":2903},"XAG/USD",{"start":2905,"end":2906},{"line":2855,"column":382,"offset":2898},{"line":2855,"column":90,"offset":2907},7274,{"start":2909,"end":2910},{"line":2855,"column":2879,"offset":2880},{"line":2855,"column":141,"offset":2911},7275,{"type":31,"tagName":2612,"properties":2913,"children":2914,"position":2923},{},[2915],{"type":27,"value":2916,"position":2917},"quote candles, as forex",{"start":2918,"end":2920},{"line":2855,"column":670,"offset":2919},7277,{"line":2855,"column":2921,"offset":2922},78,7300,{"start":2924,"end":2925},{"line":2855,"column":141,"offset":2911},{"line":2855,"column":2706,"offset":2926},7302,{"start":2928,"end":2929},{"line":2855,"column":21,"offset":2861},{"line":2855,"column":2706,"offset":2926},{"type":31,"tagName":2531,"properties":2931,"children":2932,"position":3003},{},[2933,2949,2964,2978],{"type":31,"tagName":2612,"properties":2934,"children":2935,"position":2944},{},[2936],{"type":27,"value":2937,"position":2938},"Crypto",{"start":2939,"end":2942},{"line":2940,"column":1616,"offset":2941},153,7305,{"line":2940,"column":56,"offset":2943},7311,{"start":2945,"end":2947},{"line":2940,"column":21,"offset":2946},7303,{"line":2940,"column":100,"offset":2948},7312,{"type":31,"tagName":2612,"properties":2950,"children":2951,"position":2959},{},[2952],{"type":27,"value":2953,"position":2954},"the venue's id",{"start":2955,"end":2957},{"line":2940,"column":10,"offset":2956},7314,{"line":2940,"column":1722,"offset":2958},7328,{"start":2960,"end":2961},{"line":2940,"column":100,"offset":2948},{"line":2940,"column":2962,"offset":2963},27,7329,{"type":31,"tagName":2612,"properties":2965,"children":2966,"position":2974},{},[2967],{"type":27,"value":2968,"position":2969},"the venue's spelling",{"start":2970,"end":2972},{"line":2940,"column":347,"offset":2971},7331,{"line":2940,"column":598,"offset":2973},7351,{"start":2975,"end":2976},{"line":2940,"column":2962,"offset":2963},{"line":2940,"column":1631,"offset":2977},7352,{"type":31,"tagName":2612,"properties":2979,"children":2980,"position":2998},{},[2981],{"type":31,"tagName":362,"properties":2982,"children":2984,"position":2992},{"href":2983},"../reference/symbol-format.md",[2985],{"type":27,"value":2986,"position":2987},"Exchange and symbol format",{"start":2988,"end":2990},{"line":2940,"column":141,"offset":2989},7355,{"line":2940,"column":2701,"offset":2991},7381,{"start":2993,"end":2995},{"line":2940,"column":90,"offset":2994},7354,{"line":2940,"column":2996,"offset":2997},111,7413,{"start":2999,"end":3000},{"line":2940,"column":1631,"offset":2977},{"line":2940,"column":3001,"offset":3002},113,7415,{"start":3004,"end":3005},{"line":2940,"column":21,"offset":2946},{"line":2940,"column":3001,"offset":3002},{"start":3007,"end":3008},{"line":2619,"column":21,"offset":2625},{"line":2940,"column":3001,"offset":3002},{"start":3010,"end":3011},{"line":2542,"column":21,"offset":2548},{"line":2940,"column":3001,"offset":3002},{"type":27,"value":28},{"type":31,"tagName":32,"properties":3014,"children":3015,"position":3025},{},[3016],{"type":27,"value":3017,"position":3018},"Stocks and forex trade in sessions, so their bars do not always open where\na crypto chart's bars open. Pin an interval coarser than the chart's, as the\nexample does: a pin at the chart's own interval lines up bar by bar on exact\ntimes, and a stock's hourly bars (13:30 UTC, 14:30 UTC, ...) never meet a\ncrypto chart's hourly bars.",{"start":3019,"end":3022},{"line":3020,"column":21,"offset":3021},155,7417,{"line":3023,"column":2458,"offset":3024},159,7747,{"start":3026,"end":3027},{"line":3020,"column":21,"offset":3021},{"line":3023,"column":2458,"offset":3024},{"type":27,"value":28},{"type":31,"tagName":2504,"properties":3030,"children":3031,"position":3040},{},[3032],{"type":27,"value":3033,"position":3034},"What you cannot pin",{"start":3035,"end":3038},{"line":3036,"column":39,"offset":3037},161,7753,{"line":3036,"column":2514,"offset":3039},7772,{"start":3041,"end":3043},{"line":3036,"column":21,"offset":3042},7749,{"line":3036,"column":2514,"offset":3039},{"type":27,"value":3045},"\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":31,"tagName":2523,"properties":3047,"children":3048,"position":3501},{},[3049,3091],{"type":31,"tagName":2527,"properties":3050,"children":3051,"position":3088},{},[3052],{"type":31,"tagName":2531,"properties":3053,"children":3054,"position":3085},{},[3055,3071],{"type":31,"tagName":2535,"properties":3056,"children":3057,"position":3066},{},[3058],{"type":27,"value":3059,"position":3060},"Pin",{"start":3061,"end":3064},{"line":3062,"column":1616,"offset":3063},163,7776,{"line":3062,"column":314,"offset":3065},7779,{"start":3067,"end":3069},{"line":3062,"column":21,"offset":3068},7774,{"line":3062,"column":42,"offset":3070},7780,{"type":31,"tagName":2535,"properties":3072,"children":3073,"position":3081},{},[3074],{"type":27,"value":3075,"position":3076},"What happens",{"start":3077,"end":3079},{"line":3062,"column":56,"offset":3078},7782,{"line":3062,"column":216,"offset":3080},7794,{"start":3082,"end":3083},{"line":3062,"column":42,"offset":3070},{"line":3062,"column":215,"offset":3084},7796,{"start":3086,"end":3087},{"line":3062,"column":21,"offset":3068},{"line":3062,"column":215,"offset":3084},{"start":3089,"end":3090},{"line":3062,"column":21,"offset":3068},{"line":3062,"column":215,"offset":3084},{"type":31,"tagName":2605,"properties":3092,"children":3093,"position":3498},{},[3094,3253,3312,3412],{"type":31,"tagName":2531,"properties":3095,"children":3096,"position":3250},{},[3097,3185],{"type":31,"tagName":2612,"properties":3098,"children":3099,"position":3180},{},[3100,3108,3117,3122,3131,3136,3145,3150,3159,3164,3173],{"type":27,"value":3101,"position":3102},"a CME Group market (",{"start":3103,"end":3106},{"line":3104,"column":1616,"offset":3105},165,7813,{"line":3104,"column":215,"offset":3107},7833,{"type":31,"tagName":62,"properties":3109,"children":3110,"position":3113},{},[3111],{"type":27,"value":3112},"CME",{"start":3114,"end":3115},{"line":3104,"column":215,"offset":3107},{"line":3104,"column":2458,"offset":3116},7838,{"type":27,"value":713,"position":3118},{"start":3119,"end":3120},{"line":3104,"column":2458,"offset":3116},{"line":3104,"column":2879,"offset":3121},7840,{"type":31,"tagName":62,"properties":3123,"children":3124,"position":3127},{},[3125],{"type":27,"value":3126},"CBOT",{"start":3128,"end":3129},{"line":3104,"column":2879,"offset":3121},{"line":3104,"column":317,"offset":3130},7846,{"type":27,"value":713,"position":3132},{"start":3133,"end":3134},{"line":3104,"column":317,"offset":3130},{"line":3104,"column":120,"offset":3135},7848,{"type":31,"tagName":62,"properties":3137,"children":3138,"position":3141},{},[3139],{"type":27,"value":3140},"NYMEX",{"start":3142,"end":3143},{"line":3104,"column":120,"offset":3135},{"line":3104,"column":494,"offset":3144},7855,{"type":27,"value":713,"position":3146},{"start":3147,"end":3148},{"line":3104,"column":494,"offset":3144},{"line":3104,"column":130,"offset":3149},7857,{"type":31,"tagName":62,"properties":3151,"children":3152,"position":3155},{},[3153],{"type":27,"value":3154},"COMEX",{"start":3156,"end":3157},{"line":3104,"column":130,"offset":3149},{"line":3104,"column":508,"offset":3158},7864,{"type":27,"value":713,"position":3160},{"start":3161,"end":3162},{"line":3104,"column":508,"offset":3158},{"line":3104,"column":161,"offset":3163},7866,{"type":31,"tagName":62,"properties":3165,"children":3166,"position":3169},{},[3167],{"type":27,"value":3168},"GLOBEX",{"start":3170,"end":3171},{"line":3104,"column":161,"offset":3163},{"line":3104,"column":457,"offset":3172},7874,{"type":27,"value":3174,"position":3175},")",{"start":3176,"end":3177},{"line":3104,"column":457,"offset":3172},{"line":3104,"column":3178,"offset":3179},65,7875,{"start":3181,"end":3183},{"line":3104,"column":21,"offset":3182},7811,{"line":3104,"column":171,"offset":3184},7876,{"type":31,"tagName":2612,"properties":3186,"children":3187,"position":3245},{},[3188,3195,3221,3228,3238],{"type":27,"value":3189,"position":3190},"the build refuses it: ",{"start":3191,"end":3193},{"line":3104,"column":477,"offset":3192},7878,{"line":3104,"column":1552,"offset":3194},7900,{"type":31,"tagName":62,"properties":3196,"children":3197,"position":3216},{},[3198,3200,3204,3206,3209,3211,3214],{"type":27,"value":3199},"input 'es' pins exchange CME: wrun_",{"type":31,"tagName":3201,"properties":3202,"children":3203},"wbr",{},[],{"type":27,"value":3205},"pin_",{"type":31,"tagName":3201,"properties":3207,"children":3208},{},[],{"type":27,"value":3210},"venue_",{"type":31,"tagName":3201,"properties":3212,"children":3213},{},[],{"type":27,"value":3215},"refused: CME is CME Group market data and cannot be read from another market's script",{"start":3217,"end":3218},{"line":3104,"column":1552,"offset":3194},{"line":3104,"column":3219,"offset":3220},222,8032,{"type":27,"value":3222,"position":3223},". A ",{"start":3224,"end":3225},{"line":3104,"column":3219,"offset":3220},{"line":3104,"column":3226,"offset":3227},226,8036,{"type":31,"tagName":62,"properties":3229,"children":3230,"position":3233},{},[3231],{"type":27,"value":3232},"param.symbol",{"start":3234,"end":3235},{"line":3104,"column":3226,"offset":3227},{"line":3104,"column":3236,"offset":3237},240,8050,{"type":27,"value":3239,"position":3240}," default on one is refused the same way.",{"start":3241,"end":3242},{"line":3104,"column":3236,"offset":3237},{"line":3104,"column":3243,"offset":3244},280,8090,{"start":3246,"end":3247},{"line":3104,"column":171,"offset":3184},{"line":3104,"column":3248,"offset":3249},282,8092,{"start":3251,"end":3252},{"line":3104,"column":21,"offset":3182},{"line":3104,"column":3248,"offset":3249},{"type":31,"tagName":2531,"properties":3254,"children":3255,"position":3309},{},[3256,3271],{"type":31,"tagName":2612,"properties":3257,"children":3258,"position":3266},{},[3259],{"type":27,"value":3260,"position":3261},"more than one market in a pin",{"start":3262,"end":3264},{"line":40,"column":1616,"offset":3263},8095,{"line":40,"column":274,"offset":3265},8124,{"start":3267,"end":3269},{"line":40,"column":21,"offset":3268},8093,{"line":40,"column":288,"offset":3270},8125,{"type":31,"tagName":2612,"properties":3272,"children":3273,"position":3304},{},[3274,3280],{"type":27,"value":3189,"position":3275},{"start":3276,"end":3278},{"line":40,"column":313,"offset":3277},8127,{"line":40,"column":2671,"offset":3279},8149,{"type":31,"tagName":62,"properties":3281,"children":3282,"position":3299},{},[3283,3285,3288,3289,3292,3294,3297],{"type":27,"value":3284},"input 'spy' pins symbol \"SPY/USD + CME|ES1!\": wrun_",{"type":31,"tagName":3201,"properties":3286,"children":3287},{},[],{"type":27,"value":3205},{"type":31,"tagName":3201,"properties":3290,"children":3291},{},[],{"type":27,"value":3293},"symbol_",{"type":31,"tagName":3201,"properties":3295,"children":3296},{},[],{"type":27,"value":3298},"literal: symbol \"SPY/USD + CME|ES1!\" is not one market's spelling (letters, digits and . _ - / : @ ! only; no spaces, no | and no operators)",{"start":3300,"end":3301},{"line":40,"column":2671,"offset":3279},{"line":40,"column":3302,"offset":3303},264,8356,{"start":3305,"end":3306},{"line":40,"column":288,"offset":3270},{"line":40,"column":3307,"offset":3308},266,8358,{"start":3310,"end":3311},{"line":40,"column":21,"offset":3268},{"line":40,"column":3307,"offset":3308},{"type":31,"tagName":2531,"properties":3313,"children":3314,"position":3409},{},[3315,3331],{"type":31,"tagName":2612,"properties":3316,"children":3317,"position":3326},{},[3318],{"type":27,"value":3319,"position":3320},"an index (S&P 500, Nasdaq 100, VIX, the dollar index)",{"start":3321,"end":3324},{"line":3322,"column":1616,"offset":3323},167,8361,{"line":3322,"column":161,"offset":3325},8414,{"start":3327,"end":3329},{"line":3322,"column":21,"offset":3328},8359,{"line":3322,"column":2671,"offset":3330},8415,{"type":31,"tagName":2612,"properties":3332,"children":3333,"position":3404},{},[3334,3342,3351,3358,3366,3373,3382,3388,3397],{"type":27,"value":3335,"position":3336},"the build accepts ",{"start":3337,"end":3339},{"line":3322,"column":439,"offset":3338},8417,{"line":3322,"column":3340,"offset":3341},77,8435,{"type":31,"tagName":62,"properties":3343,"children":3344,"position":3347},{},[3345],{"type":27,"value":3346},"POLYGON_INDICES",{"start":3348,"end":3349},{"line":3322,"column":3340,"offset":3341},{"line":3322,"column":1587,"offset":3350},8452,{"type":27,"value":3352,"position":3353},", but index series are not served yet. On the chart the input reads ",{"start":3354,"end":3355},{"line":3322,"column":1587,"offset":3350},{"line":3322,"column":3356,"offset":3357},162,8520,{"type":31,"tagName":62,"properties":3359,"children":3360,"position":3362},{},[3361],{"type":27,"value":406},{"start":3363,"end":3364},{"line":3322,"column":3356,"offset":3357},{"line":3322,"column":3322,"offset":3365},8525,{"type":27,"value":3367,"position":3368}," on every bar and the legend says why; an alert on the indicator is refused. Pin an ETF on the same market instead (",{"start":3369,"end":3370},{"line":3322,"column":3322,"offset":3365},{"line":3322,"column":3371,"offset":3372},283,8641,{"type":31,"tagName":62,"properties":3374,"children":3375,"position":3377},{},[3376],{"type":27,"value":2667},{"start":3378,"end":3379},{"line":3322,"column":3371,"offset":3372},{"line":3322,"column":3380,"offset":3381},292,8650,{"type":27,"value":713,"position":3383},{"start":3384,"end":3385},{"line":3322,"column":3380,"offset":3381},{"line":3322,"column":3386,"offset":3387},294,8652,{"type":31,"tagName":62,"properties":3389,"children":3390,"position":3392},{},[3391],{"type":27,"value":2682},{"start":3393,"end":3394},{"line":3322,"column":3386,"offset":3387},{"line":3322,"column":3395,"offset":3396},303,8661,{"type":27,"value":3398,"position":3399},").",{"start":3400,"end":3401},{"line":3322,"column":3395,"offset":3396},{"line":3322,"column":3402,"offset":3403},305,8663,{"start":3405,"end":3406},{"line":3322,"column":2671,"offset":3330},{"line":3322,"column":3407,"offset":3408},307,8665,{"start":3410,"end":3411},{"line":3322,"column":21,"offset":3328},{"line":3322,"column":3407,"offset":3408},{"type":31,"tagName":2531,"properties":3413,"children":3414,"position":3495},{},[3415,3446],{"type":31,"tagName":2612,"properties":3416,"children":3417,"position":3441},{},[3418,3426,3435],{"type":27,"value":3419,"position":3420},"a ",{"start":3421,"end":3424},{"line":3422,"column":1616,"offset":3423},168,8668,{"line":3422,"column":39,"offset":3425},8670,{"type":31,"tagName":62,"properties":3427,"children":3428,"position":3431},{},[3429],{"type":27,"value":3430},"3d",{"start":3432,"end":3433},{"line":3422,"column":39,"offset":3425},{"line":3422,"column":56,"offset":3434},8674,{"type":27,"value":3436,"position":3437}," pin on a stock, forex or gold market",{"start":3438,"end":3439},{"line":3422,"column":56,"offset":3434},{"line":3422,"column":420,"offset":3440},8711,{"start":3442,"end":3444},{"line":3422,"column":21,"offset":3443},8666,{"line":3422,"column":130,"offset":3445},8712,{"type":31,"tagName":2612,"properties":3447,"children":3448,"position":3490},{},[3449,3457,3467,3474,3483],{"type":27,"value":3450,"position":3451},"the chart refuses it before it fetches: a three-day candle there groups trading days and would count as closed too early. Pin ",{"start":3452,"end":3454},{"line":3422,"column":598,"offset":3453},8714,{"line":3422,"column":3455,"offset":3456},175,8840,{"type":31,"tagName":62,"properties":3458,"children":3459,"position":3462},{},[3460],{"type":27,"value":3461},"1d",{"start":3463,"end":3464},{"line":3422,"column":3455,"offset":3456},{"line":3422,"column":3465,"offset":3466},179,8844,{"type":27,"value":3468,"position":3469}," or ",{"start":3470,"end":3471},{"line":3422,"column":3465,"offset":3466},{"line":3422,"column":3472,"offset":3473},183,8848,{"type":31,"tagName":62,"properties":3475,"children":3476,"position":3479},{},[3477],{"type":27,"value":3478},"1w",{"start":3480,"end":3481},{"line":3422,"column":3472,"offset":3473},{"line":3422,"column":2718,"offset":3482},8852,{"type":27,"value":3484,"position":3485},".",{"start":3486,"end":3487},{"line":3422,"column":2718,"offset":3482},{"line":3422,"column":3488,"offset":3489},188,8853,{"start":3491,"end":3492},{"line":3422,"column":130,"offset":3445},{"line":3422,"column":3493,"offset":3494},190,8855,{"start":3496,"end":3497},{"line":3422,"column":21,"offset":3443},{"line":3422,"column":3493,"offset":3494},{"start":3499,"end":3500},{"line":3104,"column":21,"offset":3182},{"line":3422,"column":3493,"offset":3494},{"start":3502,"end":3503},{"line":3062,"column":21,"offset":3068},{"line":3422,"column":3493,"offset":3494},{"type":27,"value":28},{"type":31,"tagName":32,"properties":3506,"children":3507,"position":3518},{},[3508],{"type":27,"value":3509,"position":3510},"The chart's own market may still be a CME market on a chart entitled to\nit: the rule is about reading CME data from another market's script.",{"start":3511,"end":3514},{"line":3512,"column":21,"offset":3513},170,8857,{"line":3515,"column":3516,"offset":3517},171,69,8997,{"start":3519,"end":3520},{"line":3512,"column":21,"offset":3513},{"line":3515,"column":3516,"offset":3517},{"type":27,"value":28},{"type":31,"tagName":32,"properties":3523,"children":3524,"position":3533},{},[3525],{"type":27,"value":3526,"position":3527},"The chart's words for the last two rows:",{"start":3528,"end":3531},{"line":3529,"column":21,"offset":3530},173,8999,{"line":3529,"column":359,"offset":3532},9039,{"start":3534,"end":3535},{"line":3529,"column":21,"offset":3530},{"line":3529,"column":359,"offset":3532},{"type":27,"value":28},{"type":31,"tagName":2426,"properties":3538,"children":3539,"position":3586},{},[3540,3541,3562,3563,3585],{"type":27,"value":28},{"type":31,"tagName":302,"properties":3542,"children":3543,"position":3558},{},[3544],{"type":31,"tagName":62,"properties":3545,"children":3546,"position":3555},{},[3547],{"type":27,"value":3548,"position":3549},"Input 'spx' pins SPX on POLYGON_INDICES; index series (SPX, NDX, VIX, DJI) are not served yet: the gateway holds POLYGON_INDICES out of the market directory until the backend opens it, so the input reads its missing fill (NaN) on every bar.",{"start":3550,"end":3552},{"line":3455,"column":1616,"offset":3551},9043,{"line":3455,"column":3553,"offset":3554},245,9285,{"start":3556,"end":3557},{"line":3455,"column":1616,"offset":3551},{"line":3455,"column":3553,"offset":3554},{"start":3559,"end":3561},{"line":3455,"column":21,"offset":3560},9041,{"line":3455,"column":3553,"offset":3554},{"type":27,"value":28},{"type":31,"tagName":302,"properties":3564,"children":3565,"position":3581},{},[3566],{"type":31,"tagName":62,"properties":3567,"children":3568,"position":3578},{},[3569],{"type":27,"value":3570,"position":3571},"Input 'spy' pins interval '3d' on POLYGON/SPY/USD: a multi-day candle on a session venue groups trading days (a Friday bar runs into Monday) and would be confirmed at its open plus the span, early and still forming (wrun_pin_session_interval_unserved); pin 1d or 1w instead",{"start":3572,"end":3575},{"line":3573,"column":1616,"offset":3574},176,9288,{"line":3573,"column":3576,"offset":3577},278,9563,{"start":3579,"end":3580},{"line":3573,"column":1616,"offset":3574},{"line":3573,"column":3576,"offset":3577},{"start":3582,"end":3584},{"line":3573,"column":21,"offset":3583},9286,{"line":3573,"column":3576,"offset":3577},{"type":27,"value":28},{"start":3587,"end":3588},{"line":3455,"column":21,"offset":3560},{"line":3573,"column":3576,"offset":3577},{"type":27,"value":28},{"type":31,"tagName":2504,"properties":3591,"children":3592,"position":3602},{},[3593],{"type":27,"value":3594,"position":3595},"In alerts",{"start":3596,"end":3599},{"line":3597,"column":39,"offset":3598},178,9569,{"line":3597,"column":3600,"offset":3601},14,9578,{"start":3603,"end":3605},{"line":3597,"column":21,"offset":3604},9565,{"line":3597,"column":3600,"offset":3601},{"type":27,"value":28},{"type":31,"tagName":32,"properties":3608,"children":3609,"position":3619},{},[3610],{"type":27,"value":3611,"position":3612},"An alert evaluates pinned stock, forex and gold candles like any other\npinned market. It refuses an indicator that pins an index (\"This Indicator\nreads a market alerts cannot evaluate yet (an index).\") or a CME Group\nmarket (\"Indicator alerts are not allowed on this venue.\").\nAlerts read stock candles with extended hours, while the chart reads\nregular hours unless its own market is a US stock with extended hours on,\nso a stock leg can differ slightly between the chart and its alert.",{"start":3613,"end":3616},{"line":3614,"column":21,"offset":3615},180,9580,{"line":3617,"column":477,"offset":3618},186,10067,{"start":3620,"end":3621},{"line":3614,"column":21,"offset":3615},{"line":3617,"column":477,"offset":3618},{"type":27,"value":28},{"type":31,"tagName":188,"properties":3624,"children":3625,"position":3633},{},[3626],{"type":27,"value":3627,"position":3628},"Multi-venue aggregation",{"start":3629,"end":3631},{"line":3488,"column":195,"offset":3630},10072,{"line":3488,"column":2962,"offset":3632},10095,{"start":3634,"end":3636},{"line":3488,"column":21,"offset":3635},10069,{"line":3488,"column":2962,"offset":3632},{"type":27,"value":28},{"type":31,"tagName":32,"properties":3639,"children":3640,"position":3703},{},[3641,3649,3660,3667,3679,3685,3696],{"type":27,"value":3642,"position":3643},"The flagship pattern: one quantity, summed across exchanges. On the chart\nthe venues come in through their candles, so the natural aggregates are\ncandle ones: volume across venues, a cross-venue price spread, a\nvolume-weighted price. Each venue is one pinned ",{"start":3644,"end":3646},{"line":3493,"column":21,"offset":3645},10097,{"line":3647,"column":598,"offset":3648},193,10356,{"type":31,"tagName":62,"properties":3650,"children":3651,"position":3657},{},[3652],{"type":27,"value":622,"position":3653},{"start":3654,"end":3655},{"line":3647,"column":598,"offset":3648},{"line":3647,"column":161,"offset":3656},10363,{"start":3658,"end":3659},{"line":3647,"column":598,"offset":3648},{"line":3647,"column":161,"offset":3656},{"type":27,"value":3661,"position":3662}," input declared with\n",{"start":3663,"end":3664},{"line":3647,"column":161,"offset":3656},{"line":3665,"column":21,"offset":3666},194,10384,{"type":31,"tagName":62,"properties":3668,"children":3669,"position":3676},{},[3670],{"type":27,"value":3671,"position":3672},"missing: \"nan\"",{"start":3673,"end":3674},{"line":3665,"column":21,"offset":3666},{"line":3665,"column":212,"offset":3675},10400,{"start":3677,"end":3678},{"line":3665,"column":21,"offset":3666},{"line":3665,"column":212,"offset":3675},{"type":27,"value":3680,"position":3681},", so a venue with no candle on a bar reads ",{"start":3682,"end":3683},{"line":3665,"column":212,"offset":3675},{"line":3665,"column":151,"offset":3684},10443,{"type":31,"tagName":62,"properties":3686,"children":3687,"position":3693},{},[3688],{"type":27,"value":406,"position":3689},{"start":3690,"end":3691},{"line":3665,"column":151,"offset":3684},{"line":3665,"column":3178,"offset":3692},10448,{"start":3694,"end":3695},{"line":3665,"column":151,"offset":3684},{"line":3665,"column":3178,"offset":3692},{"type":27,"value":3697,"position":3698},", counts as\nnot reporting, and contributes nothing:",{"start":3699,"end":3700},{"line":3665,"column":3178,"offset":3692},{"line":3701,"column":671,"offset":3702},195,10499,{"start":3704,"end":3705},{"line":3493,"column":21,"offset":3645},{"line":3701,"column":671,"offset":3702},{"type":27,"value":28},{"type":14,"children":3708},[3709],{"type":31,"tagName":225,"properties":3710,"children":3712,"data":-1},{"class":227,"style":228,"tabindex":229,"data-sample":3711},"cc-multi-venue-volume",[3713],{"type":31,"tagName":62,"properties":3714,"children":3716},{"class":3715},[686],[3717,3771,3772,3780,3781,3800,3801,3856,3857,3911,3912,3950,3951,3996,3997,4044,4045,4048,4049,4086,4087,4090,4091,4099,4100,4147,4148,4182,4183,4190,4191,4194,4195,4222,4223,4264,4265,4272,4273,4276,4277,4304,4305,4330,4331,4356,4357,4398,4399,4437,4438,4468,4469,4477,4478,4573,4574,4586,4587,4600,4601,4614,4615],{"type":31,"tagName":237,"properties":3718,"children":3719},{"class":239},[3720,3724,3728,3733,3737,3742,3746,3750,3754,3758,3762,3767],{"type":31,"tagName":237,"properties":3721,"children":3722},{"style":693},[3723],{"type":27,"value":696},{"type":31,"tagName":237,"properties":3725,"children":3726},{"style":699},[3727],{"type":27,"value":702},{"type":31,"tagName":237,"properties":3729,"children":3730},{"style":705},[3731],{"type":27,"value":3732},"\"smooth\"",{"type":31,"tagName":237,"properties":3734,"children":3735},{"style":699},[3736],{"type":27,"value":713},{"type":31,"tagName":237,"properties":3738,"children":3739},{"style":716},[3740],{"type":27,"value":3741},"21",{"type":31,"tagName":237,"properties":3743,"children":3744},{"style":699},[3745],{"type":27,"value":724},{"type":31,"tagName":237,"properties":3747,"children":3748},{"style":716},[3749],{"type":27,"value":729},{"type":31,"tagName":237,"properties":3751,"children":3752},{"style":699},[3753],{"type":27,"value":734},{"type":31,"tagName":237,"properties":3755,"children":3756},{"style":716},[3757],{"type":27,"value":739},{"type":31,"tagName":237,"properties":3759,"children":3760},{"style":699},[3761],{"type":27,"value":744},{"type":31,"tagName":237,"properties":3763,"children":3764},{"style":705},[3765],{"type":27,"value":3766},"\"EMA length over the aggregated volume\"",{"type":31,"tagName":237,"properties":3768,"children":3769},{"style":699},[3770],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":3773,"children":3774},{"class":239},[3775],{"type":31,"tagName":237,"properties":3776,"children":3777},{"style":761},[3778],{"type":27,"value":3779},"// The chart's own candles are the rows; each venue's candles join onto them by timestamp.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":3782,"children":3783},{"class":239},[3784,3788,3792,3796],{"type":31,"tagName":237,"properties":3785,"children":3786},{"style":693},[3787],{"type":27,"value":147},{"type":31,"tagName":237,"properties":3789,"children":3790},{"style":699},[3791],{"type":27,"value":702},{"type":31,"tagName":237,"properties":3793,"children":3794},{"style":705},[3795],{"type":27,"value":781},{"type":31,"tagName":237,"properties":3797,"children":3798},{"style":699},[3799],{"type":27,"value":786},{"type":27,"value":28},{"type":31,"tagName":237,"properties":3802,"children":3803},{"class":239},[3804,3808,3812,3817,3822,3826,3830,3834,3839,3843,3847,3852],{"type":31,"tagName":237,"properties":3805,"children":3806},{"style":693},[3807],{"type":27,"value":147},{"type":31,"tagName":237,"properties":3809,"children":3810},{"style":699},[3811],{"type":27,"value":702},{"type":31,"tagName":237,"properties":3813,"children":3814},{"style":705},[3815],{"type":27,"value":3816},"\"vol_binance\"",{"type":31,"tagName":237,"properties":3818,"children":3819},{"style":699},[3820],{"type":27,"value":3821},", ohlcv.volume, { symbol: ",{"type":31,"tagName":237,"properties":3823,"children":3824},{"style":705},[3825],{"type":27,"value":813},{"type":31,"tagName":237,"properties":3827,"children":3828},{"style":699},[3829],{"type":27,"value":818},{"type":31,"tagName":237,"properties":3831,"children":3832},{"style":705},[3833],{"type":27,"value":823},{"type":31,"tagName":237,"properties":3835,"children":3836},{"style":699},[3837],{"type":27,"value":3838},", missing: ",{"type":31,"tagName":237,"properties":3840,"children":3841},{"style":705},[3842],{"type":27,"value":426},{"type":31,"tagName":237,"properties":3844,"children":3845},{"style":699},[3846],{"type":27,"value":744},{"type":31,"tagName":237,"properties":3848,"children":3849},{"style":705},[3850],{"type":27,"value":3851},"\"Binance BTC perpetual volume\"",{"type":31,"tagName":237,"properties":3853,"children":3854},{"style":699},[3855],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":3858,"children":3859},{"class":239},[3860,3864,3868,3873,3877,3881,3885,3890,3894,3898,3902,3907],{"type":31,"tagName":237,"properties":3861,"children":3862},{"style":693},[3863],{"type":27,"value":147},{"type":31,"tagName":237,"properties":3865,"children":3866},{"style":699},[3867],{"type":27,"value":702},{"type":31,"tagName":237,"properties":3869,"children":3870},{"style":705},[3871],{"type":27,"value":3872},"\"vol_bybit\"",{"type":31,"tagName":237,"properties":3874,"children":3875},{"style":699},[3876],{"type":27,"value":3821},{"type":31,"tagName":237,"properties":3878,"children":3879},{"style":705},[3880],{"type":27,"value":813},{"type":31,"tagName":237,"properties":3882,"children":3883},{"style":699},[3884],{"type":27,"value":818},{"type":31,"tagName":237,"properties":3886,"children":3887},{"style":705},[3888],{"type":27,"value":3889},"\"BYBIT\"",{"type":31,"tagName":237,"properties":3891,"children":3892},{"style":699},[3893],{"type":27,"value":3838},{"type":31,"tagName":237,"properties":3895,"children":3896},{"style":705},[3897],{"type":27,"value":426},{"type":31,"tagName":237,"properties":3899,"children":3900},{"style":699},[3901],{"type":27,"value":744},{"type":31,"tagName":237,"properties":3903,"children":3904},{"style":705},[3905],{"type":27,"value":3906},"\"Bybit BTC perpetual volume\"",{"type":31,"tagName":237,"properties":3908,"children":3909},{"style":699},[3910],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":3913,"children":3914},{"class":239},[3915,3919,3923,3928,3933,3937,3941,3946],{"type":31,"tagName":237,"properties":3916,"children":3917},{"style":693},[3918],{"type":27,"value":845},{"type":31,"tagName":237,"properties":3920,"children":3921},{"style":699},[3922],{"type":27,"value":702},{"type":31,"tagName":237,"properties":3924,"children":3925},{"style":705},[3926],{"type":27,"value":3927},"\"agg_volume\"",{"type":31,"tagName":237,"properties":3929,"children":3930},{"style":699},[3931],{"type":27,"value":3932},", histogram, lower, { color: ",{"type":31,"tagName":237,"properties":3934,"children":3935},{"style":705},[3936],{"type":27,"value":864},{"type":31,"tagName":237,"properties":3938,"children":3939},{"style":699},[3940],{"type":27,"value":744},{"type":31,"tagName":237,"properties":3942,"children":3943},{"style":705},[3944],{"type":27,"value":3945},"\"Volume summed over the venues that reported\"",{"type":31,"tagName":237,"properties":3947,"children":3948},{"style":699},[3949],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":3952,"children":3953},{"class":239},[3954,3958,3962,3967,3971,3975,3979,3983,3987,3992],{"type":31,"tagName":237,"properties":3955,"children":3956},{"style":693},[3957],{"type":27,"value":845},{"type":31,"tagName":237,"properties":3959,"children":3960},{"style":699},[3961],{"type":27,"value":702},{"type":31,"tagName":237,"properties":3963,"children":3964},{"style":705},[3965],{"type":27,"value":3966},"\"volume_ema\"",{"type":31,"tagName":237,"properties":3968,"children":3969},{"style":699},[3970],{"type":27,"value":859},{"type":31,"tagName":237,"properties":3972,"children":3973},{"style":705},[3974],{"type":27,"value":912},{"type":31,"tagName":237,"properties":3976,"children":3977},{"style":699},[3978],{"type":27,"value":869},{"type":31,"tagName":237,"properties":3980,"children":3981},{"style":716},[3982],{"type":27,"value":729},{"type":31,"tagName":237,"properties":3984,"children":3985},{"style":699},[3986],{"type":27,"value":744},{"type":31,"tagName":237,"properties":3988,"children":3989},{"style":705},[3990],{"type":27,"value":3991},"\"Smoothed aggregated volume\"",{"type":31,"tagName":237,"properties":3993,"children":3994},{"style":699},[3995],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":3998,"children":3999},{"class":239},[4000,4004,4008,4013,4017,4021,4026,4031,4035,4040],{"type":31,"tagName":237,"properties":4001,"children":4002},{"style":693},[4003],{"type":27,"value":845},{"type":31,"tagName":237,"properties":4005,"children":4006},{"style":699},[4007],{"type":27,"value":702},{"type":31,"tagName":237,"properties":4009,"children":4010},{"style":705},[4011],{"type":27,"value":4012},"\"binance_share\"",{"type":31,"tagName":237,"properties":4014,"children":4015},{"style":699},[4016],{"type":27,"value":859},{"type":31,"tagName":237,"properties":4018,"children":4019},{"style":705},[4020],{"type":27,"value":951},{"type":31,"tagName":237,"properties":4022,"children":4023},{"style":699},[4024],{"type":27,"value":4025},", unit: ",{"type":31,"tagName":237,"properties":4027,"children":4028},{"style":705},[4029],{"type":27,"value":4030},"\"%\"",{"type":31,"tagName":237,"properties":4032,"children":4033},{"style":699},[4034],{"type":27,"value":744},{"type":31,"tagName":237,"properties":4036,"children":4037},{"style":705},[4038],{"type":27,"value":4039},"\"Binance share of the two venues' volume\"",{"type":31,"tagName":237,"properties":4041,"children":4042},{"style":699},[4043],{"type":27,"value":754},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4046,"children":4047},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":4050,"children":4051},{"class":239},[4052,4056,4061,4065,4069,4074,4078,4082],{"type":31,"tagName":237,"properties":4053,"children":4054},{"style":975},[4055],{"type":27,"value":978},{"type":31,"tagName":237,"properties":4057,"children":4058},{"style":699},[4059],{"type":27,"value":4060}," ema ",{"type":31,"tagName":237,"properties":4062,"children":4063},{"style":975},[4064],{"type":27,"value":988},{"type":31,"tagName":237,"properties":4066,"children":4067},{"style":975},[4068],{"type":27,"value":993},{"type":31,"tagName":237,"properties":4070,"children":4071},{"style":693},[4072],{"type":27,"value":4073}," Ema",{"type":31,"tagName":237,"properties":4075,"children":4076},{"style":699},[4077],{"type":27,"value":702},{"type":31,"tagName":237,"properties":4079,"children":4080},{"style":716},[4081],{"type":27,"value":3741},{"type":31,"tagName":237,"properties":4083,"children":4084},{"style":699},[4085],{"type":27,"value":1011},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4088,"children":4089},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":4092,"children":4093},{"class":239},[4094],{"type":31,"tagName":237,"properties":4095,"children":4096},{"style":761},[4097],{"type":27,"value":4098},"// A venue with no candle on this bar reads NaN (missing: \"nan\") and contributes nothing.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4101,"children":4102},{"class":239},[4103,4107,4112,4116,4122,4126,4131,4135,4139,4143],{"type":31,"tagName":237,"properties":4104,"children":4105},{"style":975},[4106],{"type":27,"value":1062},{"type":31,"tagName":237,"properties":4108,"children":4109},{"style":693},[4110],{"type":27,"value":4111}," reported",{"type":31,"tagName":237,"properties":4113,"children":4114},{"style":699},[4115],{"type":27,"value":702},{"type":31,"tagName":237,"properties":4117,"children":4119},{"style":4118},"--shiki-dark:#FFAB70;--shiki-light:#E36209",[4120],{"type":27,"value":4121},"value",{"type":31,"tagName":237,"properties":4123,"children":4124},{"style":975},[4125],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":4127,"children":4128},{"style":693},[4129],{"type":27,"value":4130}," f64",{"type":31,"tagName":237,"properties":4132,"children":4133},{"style":699},[4134],{"type":27,"value":3174},{"type":31,"tagName":237,"properties":4136,"children":4137},{"style":975},[4138],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":4140,"children":4141},{"style":693},[4142],{"type":27,"value":4130},{"type":31,"tagName":237,"properties":4144,"children":4145},{"style":699},[4146],{"type":27,"value":1087},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4149,"children":4150},{"class":239},[4151,4156,4160,4165,4169,4173,4177],{"type":31,"tagName":237,"properties":4152,"children":4153},{"style":975},[4154],{"type":27,"value":4155},"  return",{"type":31,"tagName":237,"properties":4157,"children":4158},{"style":693},[4159],{"type":27,"value":1361},{"type":31,"tagName":237,"properties":4161,"children":4162},{"style":699},[4163],{"type":27,"value":4164},"(value) ",{"type":31,"tagName":237,"properties":4166,"children":4167},{"style":975},[4168],{"type":27,"value":1371},{"type":31,"tagName":237,"properties":4170,"children":4171},{"style":716},[4172],{"type":27,"value":1306},{"type":31,"tagName":237,"properties":4174,"children":4175},{"style":975},[4176],{"type":27,"value":1380},{"type":31,"tagName":237,"properties":4178,"children":4179},{"style":699},[4180],{"type":27,"value":4181}," value;",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4184,"children":4185},{"class":239},[4186],{"type":31,"tagName":237,"properties":4187,"children":4188},{"style":699},[4189],{"type":27,"value":1181},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4192,"children":4193},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":4196,"children":4197},{"class":239},[4198,4202,4206,4210,4214,4218],{"type":31,"tagName":237,"properties":4199,"children":4200},{"style":975},[4201],{"type":27,"value":1062},{"type":31,"tagName":237,"properties":4203,"children":4204},{"style":693},[4205],{"type":27,"value":1067},{"type":31,"tagName":237,"properties":4207,"children":4208},{"style":699},[4209],{"type":27,"value":1072},{"type":31,"tagName":237,"properties":4211,"children":4212},{"style":975},[4213],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":4215,"children":4216},{"style":716},[4217],{"type":27,"value":1082},{"type":31,"tagName":237,"properties":4219,"children":4220},{"style":699},[4221],{"type":27,"value":1087},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4224,"children":4225},{"class":239},[4226,4231,4235,4239,4243,4247,4251,4255,4260],{"type":31,"tagName":237,"properties":4227,"children":4228},{"style":699},[4229],{"type":27,"value":4230},"  ema ",{"type":31,"tagName":237,"properties":4232,"children":4233},{"style":975},[4234],{"type":27,"value":988},{"type":31,"tagName":237,"properties":4236,"children":4237},{"style":975},[4238],{"type":27,"value":993},{"type":31,"tagName":237,"properties":4240,"children":4241},{"style":693},[4242],{"type":27,"value":4073},{"type":31,"tagName":237,"properties":4244,"children":4245},{"style":699},[4246],{"type":27,"value":702},{"type":31,"tagName":237,"properties":4248,"children":4249},{"style":693},[4250],{"type":27,"value":1117},{"type":31,"tagName":237,"properties":4252,"children":4253},{"style":699},[4254],{"type":27,"value":702},{"type":31,"tagName":237,"properties":4256,"children":4257},{"style":693},[4258],{"type":27,"value":4259},"p_smooth",{"type":31,"tagName":237,"properties":4261,"children":4262},{"style":699},[4263],{"type":27,"value":1131},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4266,"children":4267},{"class":239},[4268],{"type":31,"tagName":237,"properties":4269,"children":4270},{"style":699},[4271],{"type":27,"value":1181},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4274,"children":4275},{"class":239},[],{"type":27,"value":28},{"type":31,"tagName":237,"properties":4278,"children":4279},{"class":239},[4280,4284,4288,4292,4296,4300],{"type":31,"tagName":237,"properties":4281,"children":4282},{"style":975},[4283],{"type":27,"value":1062},{"type":31,"tagName":237,"properties":4285,"children":4286},{"style":693},[4287],{"type":27,"value":1198},{"type":31,"tagName":237,"properties":4289,"children":4290},{"style":699},[4291],{"type":27,"value":1072},{"type":31,"tagName":237,"properties":4293,"children":4294},{"style":975},[4295],{"type":27,"value":1077},{"type":31,"tagName":237,"properties":4297,"children":4298},{"style":716},[4299],{"type":27,"value":1082},{"type":31,"tagName":237,"properties":4301,"children":4302},{"style":699},[4303],{"type":27,"value":1087},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4306,"children":4307},{"class":239},[4308,4312,4317,4321,4326],{"type":31,"tagName":237,"properties":4309,"children":4310},{"style":975},[4311],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":4313,"children":4314},{"style":716},[4315],{"type":27,"value":4316}," binance",{"type":31,"tagName":237,"properties":4318,"children":4319},{"style":975},[4320],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":4322,"children":4323},{"style":693},[4324],{"type":27,"value":4325}," in_vol_binance",{"type":31,"tagName":237,"properties":4327,"children":4328},{"style":699},[4329],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4332,"children":4333},{"class":239},[4334,4338,4343,4347,4352],{"type":31,"tagName":237,"properties":4335,"children":4336},{"style":975},[4337],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":4339,"children":4340},{"style":716},[4341],{"type":27,"value":4342}," bybit",{"type":31,"tagName":237,"properties":4344,"children":4345},{"style":975},[4346],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":4348,"children":4349},{"style":693},[4350],{"type":27,"value":4351}," in_vol_bybit",{"type":31,"tagName":237,"properties":4353,"children":4354},{"style":699},[4355],{"type":27,"value":1248},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4358,"children":4359},{"class":239},[4360,4364,4368,4372,4377,4381,4385,4390,4394],{"type":31,"tagName":237,"properties":4361,"children":4362},{"style":975},[4363],{"type":27,"value":1435},{"type":31,"tagName":237,"properties":4365,"children":4366},{"style":699},[4367],{"type":27,"value":416},{"type":31,"tagName":237,"properties":4369,"children":4370},{"style":693},[4371],{"type":27,"value":1444},{"type":31,"tagName":237,"properties":4373,"children":4374},{"style":699},[4375],{"type":27,"value":4376},"(binance) ",{"type":31,"tagName":237,"properties":4378,"children":4379},{"style":975},[4380],{"type":27,"value":2257},{"type":31,"tagName":237,"properties":4382,"children":4383},{"style":693},[4384],{"type":27,"value":1361},{"type":31,"tagName":237,"properties":4386,"children":4387},{"style":699},[4388],{"type":27,"value":4389},"(bybit)) ",{"type":31,"tagName":237,"properties":4391,"children":4392},{"style":975},[4393],{"type":27,"value":1468},{"type":31,"tagName":237,"properties":4395,"children":4396},{"style":699},[4397],{"type":27,"value":1339},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4400,"children":4401},{"class":239},[4402,4406,4411,4415,4419,4423,4428,4432],{"type":31,"tagName":237,"properties":4403,"children":4404},{"style":975},[4405],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":4407,"children":4408},{"style":716},[4409],{"type":27,"value":4410}," agg",{"type":31,"tagName":237,"properties":4412,"children":4413},{"style":975},[4414],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":4416,"children":4417},{"style":693},[4418],{"type":27,"value":4111},{"type":31,"tagName":237,"properties":4420,"children":4421},{"style":699},[4422],{"type":27,"value":4376},{"type":31,"tagName":237,"properties":4424,"children":4425},{"style":975},[4426],{"type":27,"value":4427},"+",{"type":31,"tagName":237,"properties":4429,"children":4430},{"style":693},[4431],{"type":27,"value":4111},{"type":31,"tagName":237,"properties":4433,"children":4434},{"style":699},[4435],{"type":27,"value":4436},"(bybit);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4439,"children":4440},{"class":239},[4441,4445,4450,4454,4459,4463],{"type":31,"tagName":237,"properties":4442,"children":4443},{"style":975},[4444],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":4446,"children":4447},{"style":716},[4448],{"type":27,"value":4449}," smoothed",{"type":31,"tagName":237,"properties":4451,"children":4452},{"style":975},[4453],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":4455,"children":4456},{"style":699},[4457],{"type":27,"value":4458}," ema.",{"type":31,"tagName":237,"properties":4460,"children":4461},{"style":693},[4462],{"type":27,"value":1390},{"type":31,"tagName":237,"properties":4464,"children":4465},{"style":699},[4466],{"type":27,"value":4467},"(agg);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4470,"children":4471},{"class":239},[4472],{"type":31,"tagName":237,"properties":4473,"children":4474},{"style":761},[4475],{"type":27,"value":4476},"  // Venue dominance: NaN rather than a fake 100% when only one venue reported.",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4479,"children":4480},{"class":239},[4481,4485,4490,4494,4498,4502,4506,4510,4515,4519,4524,4529,4533,4537,4541,4545,4549,4554,4559,4564,4568],{"type":31,"tagName":237,"properties":4482,"children":4483},{"style":975},[4484],{"type":27,"value":1223},{"type":31,"tagName":237,"properties":4486,"children":4487},{"style":716},[4488],{"type":27,"value":4489}," share",{"type":31,"tagName":237,"properties":4491,"children":4492},{"style":975},[4493],{"type":27,"value":1233},{"type":31,"tagName":237,"properties":4495,"children":4496},{"style":693},[4497],{"type":27,"value":1361},{"type":31,"tagName":237,"properties":4499,"children":4500},{"style":699},[4501],{"type":27,"value":4376},{"type":31,"tagName":237,"properties":4503,"children":4504},{"style":975},[4505],{"type":27,"value":1454},{"type":31,"tagName":237,"properties":4507,"children":4508},{"style":693},[4509],{"type":27,"value":1361},{"type":31,"tagName":237,"properties":4511,"children":4512},{"style":699},[4513],{"type":27,"value":4514},"(bybit) ",{"type":31,"tagName":237,"properties":4516,"children":4517},{"style":975},[4518],{"type":27,"value":1454},{"type":31,"tagName":237,"properties":4520,"children":4521},{"style":699},[4522],{"type":27,"value":4523}," agg ",{"type":31,"tagName":237,"properties":4525,"children":4526},{"style":975},[4527],{"type":27,"value":4528},"\u003C=",{"type":31,"tagName":237,"properties":4530,"children":4531},{"style":716},[4532],{"type":27,"value":1306},{"type":31,"tagName":237,"properties":4534,"children":4535},{"style":975},[4536],{"type":27,"value":1311},{"type":31,"tagName":237,"properties":4538,"children":4539},{"style":716},[4540],{"type":27,"value":1334},{"type":31,"tagName":237,"properties":4542,"children":4543},{"style":975},[4544],{"type":27,"value":1380},{"type":31,"tagName":237,"properties":4546,"children":4547},{"style":699},[4548],{"type":27,"value":416},{"type":31,"tagName":237,"properties":4550,"children":4551},{"style":716},[4552],{"type":27,"value":4553},"100.0",{"type":31,"tagName":237,"properties":4555,"children":4556},{"style":975},[4557],{"type":27,"value":4558}," *",{"type":31,"tagName":237,"properties":4560,"children":4561},{"style":699},[4562],{"type":27,"value":4563}," binance) ",{"type":31,"tagName":237,"properties":4565,"children":4566},{"style":975},[4567],{"type":27,"value":1321},{"type":31,"tagName":237,"properties":4569,"children":4570},{"style":699},[4571],{"type":27,"value":4572}," agg;",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4575,"children":4576},{"class":239},[4577,4582],{"type":31,"tagName":237,"properties":4578,"children":4579},{"style":693},[4580],{"type":27,"value":4581},"  out_agg_volume",{"type":31,"tagName":237,"properties":4583,"children":4584},{"style":699},[4585],{"type":27,"value":4467},{"type":27,"value":28},{"type":31,"tagName":237,"properties":4588,"children":4589},{"class":239},[4590,4595],{"type":31,"tagName":237,"properties":4591,"children":4592},{"style":693},[4593],{"type":27,"value":4594},"  out_volume_ema",{"type":31,"tagName":237,"properties":4596,"children":4597},{"style":699},[4598],{"type":27,"value":4599},"(smoothed);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4602,"children":4603},{"class":239},[4604,4609],{"type":31,"tagName":237,"properties":4605,"children":4606},{"style":693},[4607],{"type":27,"value":4608},"  out_binance_share",{"type":31,"tagName":237,"properties":4610,"children":4611},{"style":699},[4612],{"type":27,"value":4613},"(share);",{"type":27,"value":28},{"type":31,"tagName":237,"properties":4616,"children":4617},{"class":239},[4618],{"type":31,"tagName":237,"properties":4619,"children":4620},{"style":699},[4621],{"type":27,"value":1181},{"type":27,"value":28},{"type":31,"tagName":32,"properties":4624,"children":4625,"position":4723},{},[4626,4642,4649,4660,4667,4679,4686,4698,4705,4716],{"type":31,"tagName":306,"properties":4627,"children":4628,"position":4637},{},[4629],{"type":27,"value":4630,"position":4631},"Venue dominance",{"start":4632,"end":4635},{"line":4633,"column":1616,"offset":4634},232,12148,{"line":4633,"column":1619,"offset":4636},12163,{"start":4638,"end":4640},{"line":4633,"column":21,"offset":4639},12146,{"line":4633,"column":536,"offset":4641},12165,{"type":27,"value":4643,"position":4644}," is the last output: one venue's share of the\naggregate, ",{"start":4645,"end":4646},{"line":4633,"column":536,"offset":4641},{"line":4647,"column":10,"offset":4648},233,12222,{"type":31,"tagName":62,"properties":4650,"children":4651,"position":4657},{},[4652],{"type":27,"value":406,"position":4653},{"start":4654,"end":4655},{"line":4647,"column":10,"offset":4648},{"line":4647,"column":212,"offset":4656},12227,{"start":4658,"end":4659},{"line":4647,"column":10,"offset":4648},{"line":4647,"column":212,"offset":4656},{"type":27,"value":4661,"position":4662}," rather than a fake ",{"start":4663,"end":4664},{"line":4647,"column":212,"offset":4656},{"line":4647,"column":4665,"offset":4666},37,12247,{"type":31,"tagName":62,"properties":4668,"children":4669,"position":4676},{},[4670],{"type":27,"value":4671,"position":4672},"100%",{"start":4673,"end":4674},{"line":4647,"column":4665,"offset":4666},{"line":4647,"column":382,"offset":4675},12253,{"start":4677,"end":4678},{"line":4647,"column":4665,"offset":4666},{"line":4647,"column":382,"offset":4675},{"type":27,"value":4680,"position":4681}," when only one venue reported.\nThe same shape covers a spread (subtract instead of add) or a volume\nweighted price (sum ",{"start":4682,"end":4683},{"line":4647,"column":382,"offset":4675},{"line":4684,"column":216,"offset":4685},235,12373,{"type":31,"tagName":62,"properties":4687,"children":4688,"position":4695},{},[4689],{"type":27,"value":4690,"position":4691},"close * volume",{"start":4692,"end":4693},{"line":4684,"column":216,"offset":4685},{"line":4684,"column":4665,"offset":4694},12389,{"start":4696,"end":4697},{"line":4684,"column":216,"offset":4685},{"line":4684,"column":4665,"offset":4694},{"type":27,"value":4699,"position":4700}," and divide by the summed volume): one\npinned input per venue, one term per input, and a ",{"start":4701,"end":4702},{"line":4684,"column":4665,"offset":4694},{"line":4703,"column":614,"offset":4704},236,12478,{"type":31,"tagName":62,"properties":4706,"children":4707,"position":4713},{},[4708],{"type":27,"value":126,"position":4709},{"start":4710,"end":4711},{"line":4703,"column":614,"offset":4704},{"line":4703,"column":151,"offset":4712},12487,{"start":4714,"end":4715},{"line":4703,"column":614,"offset":4704},{"line":4703,"column":151,"offset":4712},{"type":27,"value":4717,"position":4718}," policy that\nsays what a silent venue means. Check that the venues count volume in the\nsame unit before you add them. Package the helpers as a class and the\nwhole family is one paste.",{"start":4719,"end":4720},{"line":4703,"column":151,"offset":4712},{"line":4721,"column":2962,"offset":4722},239,12670,{"start":4724,"end":4725},{"line":4633,"column":21,"offset":4639},{"line":4721,"column":2962,"offset":4722},{"type":27,"value":28},{"type":31,"tagName":32,"properties":4728,"children":4729,"position":4739},{},[4730],{"type":27,"value":4731,"position":4732},"Flow and derivative feeds (side-split trades, open interest, funding,\nliquidations) always read the chart's own market, so a cross-venue sum of\nthem is not available on the chart; accumulate the chart's own market\ninstead.",{"start":4733,"end":4736},{"line":4734,"column":21,"offset":4735},241,12672,{"line":4737,"column":56,"offset":4738},244,12894,{"start":4740,"end":4741},{"line":4734,"column":21,"offset":4735},{"line":4737,"column":56,"offset":4738},{"type":27,"value":28},{"type":31,"tagName":188,"properties":4744,"children":4745,"position":4754},{},[4746],{"type":27,"value":4747,"position":4748},"Higher-timeframe views of aggregates",{"start":4749,"end":4752},{"line":4750,"column":195,"offset":4751},246,12899,{"line":4750,"column":671,"offset":4753},12935,{"start":4755,"end":4757},{"line":4750,"column":21,"offset":4756},12896,{"line":4750,"column":671,"offset":4753},{"type":27,"value":28},{"type":31,"tagName":32,"properties":4760,"children":4761,"position":4808},{},[4762,4771,4783,4790,4803],{"type":27,"value":4763,"position":4764},"A fold composes with any input: bucket the aggregated series by\n",{"start":4765,"end":4768},{"line":4766,"column":21,"offset":4767},248,12937,{"line":4769,"column":21,"offset":4770},249,13001,{"type":31,"tagName":62,"properties":4772,"children":4773,"position":4780},{},[4774],{"type":27,"value":4775,"position":4776},"time.bar_open_sec",{"start":4777,"end":4778},{"line":4769,"column":21,"offset":4770},{"line":4769,"column":536,"offset":4779},13020,{"start":4781,"end":4782},{"line":4769,"column":21,"offset":4770},{"line":4769,"column":536,"offset":4779},{"type":27,"value":4784,"position":4785}," and fold it on the next bucket, and the 4h view of a\ncross-venue sum is confirmed and repaint-free exactly like a single-source\none (",{"start":4786,"end":4787},{"line":4769,"column":536,"offset":4779},{"line":4788,"column":314,"offset":4789},251,13154,{"type":31,"tagName":362,"properties":4791,"children":4792,"position":4799},{"href":364},[4793],{"type":27,"value":367,"position":4794},{"start":4795,"end":4797},{"line":4788,"column":42,"offset":4796},13155,{"line":4788,"column":1740,"offset":4798},13170,{"start":4800,"end":4801},{"line":4788,"column":314,"offset":4789},{"line":4788,"column":382,"offset":4802},13191,{"type":27,"value":3398,"position":4804},{"start":4805,"end":4806},{"line":4788,"column":382,"offset":4802},{"line":4788,"column":494,"offset":4807},13193,{"start":4809,"end":4810},{"line":4766,"column":21,"offset":4767},{"line":4788,"column":494,"offset":4807},{"type":27,"value":28},{"type":31,"tagName":188,"properties":4813,"children":4814,"position":4823},{},[4815],{"type":27,"value":4816,"position":4817},"Lower-timeframe data and raw bars",{"start":4818,"end":4821},{"line":4819,"column":195,"offset":4820},253,13198,{"line":4819,"column":4665,"offset":4822},13231,{"start":4824,"end":4826},{"line":4819,"column":21,"offset":4825},13195,{"line":4819,"column":4665,"offset":4822},{"type":27,"value":28},{"type":31,"tagName":32,"properties":4829,"children":4830,"position":4973},{},[4831,4839,4850,4857,4870,4877,4889,4896,4908,4914,4925,4932,4947,4955,4967],{"type":27,"value":4832,"position":4833},"The ",{"start":4834,"end":4837},{"line":4835,"column":21,"offset":4836},255,13233,{"line":4835,"column":39,"offset":4838},13237,{"type":31,"tagName":62,"properties":4840,"children":4841,"position":4847},{},[4842],{"type":27,"value":167,"position":4843},{"start":4844,"end":4845},{"line":4835,"column":39,"offset":4838},{"line":4835,"column":110,"offset":4846},13247,{"start":4848,"end":4849},{"line":4835,"column":39,"offset":4838},{"line":4835,"column":110,"offset":4846},{"type":27,"value":4851,"position":4852}," celled source delivers the finer bars inside each chart bar\nas cells, for the chart's own market\n(",{"start":4853,"end":4854},{"line":4835,"column":110,"offset":4846},{"line":4855,"column":1608,"offset":4856},257,13346,{"type":31,"tagName":362,"properties":4858,"children":4859,"position":4866},{"href":364},[4860],{"type":27,"value":367,"position":4861},{"start":4862,"end":4864},{"line":4855,"column":1616,"offset":4863},13347,{"line":4855,"column":1619,"offset":4865},13362,{"start":4867,"end":4868},{"line":4855,"column":1608,"offset":4856},{"line":4855,"column":70,"offset":4869},13383,{"type":27,"value":4871,"position":4872},"). There is no raw-bar request that\nreturns the last N native bars of another market as an array for drawing.\nThe celled sources slice the same bar by price (",{"start":4873,"end":4874},{"line":4855,"column":70,"offset":4869},{"line":4875,"column":598,"offset":4876},259,13541,{"type":31,"tagName":62,"properties":4878,"children":4879,"position":4886},{},[4880],{"type":27,"value":4881,"position":4882},"volume_profile",{"start":4883,"end":4884},{"line":4875,"column":598,"offset":4876},{"line":4875,"column":3178,"offset":4885},13557,{"start":4887,"end":4888},{"line":4875,"column":598,"offset":4876},{"line":4875,"column":3178,"offset":4885},{"type":27,"value":4890,"position":4891},"), by level\n(",{"start":4892,"end":4893},{"line":4875,"column":3178,"offset":4885},{"line":4894,"column":1608,"offset":4895},260,13570,{"type":31,"tagName":62,"properties":4897,"children":4898,"position":4905},{},[4899],{"type":27,"value":4900,"position":4901},"book",{"start":4902,"end":4903},{"line":4894,"column":1608,"offset":4895},{"line":4894,"column":43,"offset":4904},13576,{"start":4906,"end":4907},{"line":4894,"column":1608,"offset":4895},{"line":4894,"column":43,"offset":4904},{"type":27,"value":4909,"position":4910},"), or by time (",{"start":4911,"end":4912},{"line":4894,"column":43,"offset":4904},{"line":4894,"column":215,"offset":4913},13591,{"type":31,"tagName":62,"properties":4915,"children":4916,"position":4922},{},[4917],{"type":27,"value":167,"position":4918},{"start":4919,"end":4920},{"line":4894,"column":215,"offset":4913},{"line":4894,"column":288,"offset":4921},13601,{"start":4923,"end":4924},{"line":4894,"column":215,"offset":4913},{"line":4894,"column":288,"offset":4921},{"type":27,"value":4926,"position":4927},"), and a drawing's coordinates come from\nvalues the module computes on the chart's rows\n(",{"start":4928,"end":4929},{"line":4894,"column":288,"offset":4921},{"line":4930,"column":1608,"offset":4931},262,13690,{"type":31,"tagName":362,"properties":4933,"children":4935,"position":4943},{"href":4934},"../presentation/drawing-objects.md",[4936],{"type":27,"value":4937,"position":4938},"Drawing objects",{"start":4939,"end":4941},{"line":4930,"column":1616,"offset":4940},13691,{"line":4930,"column":1619,"offset":4942},13706,{"start":4944,"end":4945},{"line":4930,"column":1608,"offset":4931},{"line":4930,"column":670,"offset":4946},13743,{"type":27,"value":4948,"position":4949},"). To mark the last\ntwenty daily highs, keep them in a ring buffer from a daily fold or a ",{"start":4950,"end":4951},{"line":4930,"column":670,"offset":4946},{"line":4952,"column":4953,"offset":4954},263,71,13833,{"type":31,"tagName":62,"properties":4956,"children":4957,"position":4964},{},[4958],{"type":27,"value":3461,"position":4959},{"start":4960,"end":4961},{"line":4952,"column":4953,"offset":4954},{"line":4952,"column":4962,"offset":4963},75,13837,{"start":4965,"end":4966},{"line":4952,"column":4953,"offset":4954},{"line":4952,"column":4962,"offset":4963},{"type":27,"value":4968,"position":4969},"\npin and draw them as segments.",{"start":4970,"end":4971},{"line":4952,"column":4962,"offset":4963},{"line":3302,"column":59,"offset":4972},13868,{"start":4974,"end":4975},{"line":4835,"column":21,"offset":4836},{"line":3302,"column":59,"offset":4972},{"type":27,"value":28},{"type":31,"tagName":188,"properties":4978,"children":4979,"position":4987},{},[4980],{"type":27,"value":4981,"position":4982},"Sparse flow sources align to the grid",{"start":4983,"end":4985},{"line":3307,"column":195,"offset":4984},13873,{"line":3307,"column":359,"offset":4986},13910,{"start":4988,"end":4990},{"line":3307,"column":21,"offset":4989},13870,{"line":3307,"column":359,"offset":4986},{"type":27,"value":28},{"type":31,"tagName":32,"properties":4993,"children":4994,"position":5021},{},[4995,5004,5015],{"type":27,"value":4996,"position":4997},"Some market-flow feeds are naturally sparse: a liquidation, a funding\nprint, or a side-split trade bucket may simply have no event for a candle.\nThe ",{"start":4998,"end":5001},{"line":4999,"column":21,"offset":5000},268,13912,{"line":5002,"column":39,"offset":5003},270,14061,{"type":31,"tagName":62,"properties":5005,"children":5006,"position":5012},{},[5007],{"type":27,"value":126,"position":5008},{"start":5009,"end":5010},{"line":5002,"column":39,"offset":5003},{"line":5002,"column":3600,"offset":5011},14070,{"start":5013,"end":5014},{"line":5002,"column":39,"offset":5003},{"line":5002,"column":3600,"offset":5011},{"type":27,"value":5016,"position":5017}," policy is how you say what that means, per input:",{"start":5018,"end":5019},{"line":5002,"column":3600,"offset":5011},{"line":5002,"column":457,"offset":5020},14120,{"start":5022,"end":5023},{"line":4999,"column":21,"offset":5000},{"line":5002,"column":457,"offset":5020},{"type":27,"value":3045},{"type":31,"tagName":2523,"properties":5026,"children":5027,"position":5272},{},[5028,5084],{"type":31,"tagName":2527,"properties":5029,"children":5030,"position":5081},{},[5031],{"type":31,"tagName":2531,"properties":5032,"children":5033,"position":5078},{},[5034,5050,5064],{"type":31,"tagName":2535,"properties":5035,"children":5036,"position":5045},{},[5037],{"type":27,"value":5038,"position":5039},"Policy",{"start":5040,"end":5043},{"line":5041,"column":1616,"offset":5042},272,14124,{"line":5041,"column":56,"offset":5044},14130,{"start":5046,"end":5048},{"line":5041,"column":21,"offset":5047},14122,{"line":5041,"column":100,"offset":5049},14131,{"type":31,"tagName":2535,"properties":5051,"children":5052,"position":5060},{},[5053],{"type":27,"value":5054,"position":5055},"A bar with no observation reads",{"start":5056,"end":5058},{"line":5041,"column":10,"offset":5057},14133,{"line":5041,"column":382,"offset":5059},14164,{"start":5061,"end":5062},{"line":5041,"column":100,"offset":5049},{"line":5041,"column":410,"offset":5063},14165,{"type":31,"tagName":2535,"properties":5065,"children":5066,"position":5074},{},[5067],{"type":27,"value":5068,"position":5069},"Use it for",{"start":5070,"end":5072},{"line":5041,"column":420,"offset":5071},14167,{"line":5041,"column":161,"offset":5073},14177,{"start":5075,"end":5076},{"line":5041,"column":410,"offset":5063},{"line":5041,"column":571,"offset":5077},14179,{"start":5079,"end":5080},{"line":5041,"column":21,"offset":5047},{"line":5041,"column":571,"offset":5077},{"start":5082,"end":5083},{"line":5041,"column":21,"offset":5047},{"line":5041,"column":571,"offset":5077},{"type":31,"tagName":2605,"properties":5085,"children":5086,"position":5269},{},[5087,5147,5215],{"type":31,"tagName":2531,"properties":5088,"children":5089,"position":5144},{},[5090,5115,5129],{"type":31,"tagName":2612,"properties":5091,"children":5092,"position":5110},{},[5093,5104],{"type":31,"tagName":62,"properties":5094,"children":5095,"position":5098},{},[5096],{"type":27,"value":5097},"\"carry\"",{"start":5099,"end":5102},{"line":5100,"column":1616,"offset":5101},274,14202,{"line":5100,"column":10,"offset":5103},14211,{"type":27,"value":5105,"position":5106}," (default)",{"start":5107,"end":5108},{"line":5100,"column":10,"offset":5103},{"line":5100,"column":1740,"offset":5109},14221,{"start":5111,"end":5113},{"line":5100,"column":21,"offset":5112},14200,{"line":5100,"column":215,"offset":5114},14222,{"type":31,"tagName":2612,"properties":5116,"children":5117,"position":5125},{},[5118],{"type":27,"value":5119,"position":5120},"the latest value, carried forward",{"start":5121,"end":5123},{"line":5100,"column":1655,"offset":5122},14224,{"line":5100,"column":571,"offset":5124},14257,{"start":5126,"end":5127},{"line":5100,"column":215,"offset":5114},{"line":5100,"column":439,"offset":5128},14258,{"type":31,"tagName":2612,"properties":5130,"children":5131,"position":5140},{},[5132],{"type":27,"value":5133,"position":5134},"levels and states: open interest, a coarse close, a funding rate between prints",{"start":5135,"end":5138},{"line":5100,"column":5136,"offset":5137},61,14260,{"line":5100,"column":2440,"offset":5139},14339,{"start":5141,"end":5142},{"line":5100,"column":439,"offset":5128},{"line":5100,"column":2457,"offset":5143},14341,{"start":5145,"end":5146},{"line":5100,"column":21,"offset":5112},{"line":5100,"column":2457,"offset":5143},{"type":31,"tagName":2531,"properties":5148,"children":5149,"position":5212},{},[5150,5168,5184],{"type":31,"tagName":2612,"properties":5151,"children":5152,"position":5163},{},[5153],{"type":31,"tagName":62,"properties":5154,"children":5155,"position":5157},{},[5156],{"type":27,"value":426},{"start":5158,"end":5161},{"line":5159,"column":1616,"offset":5160},275,14344,{"line":5159,"column":100,"offset":5162},14351,{"start":5164,"end":5166},{"line":5159,"column":21,"offset":5165},14342,{"line":5159,"column":140,"offset":5167},14352,{"type":31,"tagName":2612,"properties":5169,"children":5170,"position":5180},{},[5171],{"type":31,"tagName":62,"properties":5172,"children":5173,"position":5175},{},[5174],{"type":27,"value":406},{"start":5176,"end":5178},{"line":5159,"column":181,"offset":5177},14354,{"line":5159,"column":1619,"offset":5179},14359,{"start":5181,"end":5182},{"line":5159,"column":140,"offset":5167},{"line":5159,"column":2759,"offset":5183},14360,{"type":31,"tagName":2612,"properties":5185,"children":5186,"position":5208},{},[5187,5194,5202],{"type":27,"value":5188,"position":5189},"\"did this venue report?\" logic: a ",{"start":5190,"end":5192},{"line":5159,"column":216,"offset":5191},14362,{"line":5159,"column":670,"offset":5193},14396,{"type":31,"tagName":62,"properties":5195,"children":5196,"position":5198},{},[5197],{"type":27,"value":406},{"start":5199,"end":5200},{"line":5159,"column":670,"offset":5193},{"line":5159,"column":151,"offset":5201},14401,{"type":27,"value":5203,"position":5204}," counts as not live and never fires a comparison",{"start":5205,"end":5206},{"line":5159,"column":151,"offset":5201},{"line":5159,"column":1719,"offset":5207},14449,{"start":5209,"end":5210},{"line":5159,"column":2759,"offset":5183},{"line":5159,"column":1736,"offset":5211},14451,{"start":5213,"end":5214},{"line":5159,"column":21,"offset":5165},{"line":5159,"column":1736,"offset":5211},{"type":31,"tagName":2531,"properties":5216,"children":5217,"position":5266},{},[5218,5236,5252],{"type":31,"tagName":2612,"properties":5219,"children":5220,"position":5231},{},[5221],{"type":31,"tagName":62,"properties":5222,"children":5223,"position":5225},{},[5224],{"type":27,"value":463},{"start":5226,"end":5229},{"line":5227,"column":1616,"offset":5228},276,14454,{"line":5227,"column":140,"offset":5230},14462,{"start":5232,"end":5234},{"line":5227,"column":21,"offset":5233},14452,{"line":5227,"column":10,"offset":5235},14463,{"type":31,"tagName":2612,"properties":5237,"children":5238,"position":5248},{},[5239],{"type":31,"tagName":62,"properties":5240,"children":5241,"position":5243},{},[5242],{"type":27,"value":229},{"start":5244,"end":5246},{"line":5227,"column":3600,"offset":5245},14465,{"line":5227,"column":212,"offset":5247},14468,{"start":5249,"end":5250},{"line":5227,"column":10,"offset":5235},{"line":5227,"column":1619,"offset":5251},14469,{"type":31,"tagName":2612,"properties":5253,"children":5254,"position":5262},{},[5255],{"type":27,"value":5256,"position":5257},"flows to be summed: liquidation volume, side-split volume, where nothing happened means zero",{"start":5258,"end":5260},{"line":5227,"column":536,"offset":5259},14471,{"line":5227,"column":1739,"offset":5261},14563,{"start":5263,"end":5264},{"line":5227,"column":1619,"offset":5251},{"line":5227,"column":2835,"offset":5265},14565,{"start":5267,"end":5268},{"line":5227,"column":21,"offset":5233},{"line":5227,"column":2835,"offset":5265},{"start":5270,"end":5271},{"line":5100,"column":21,"offset":5112},{"line":5227,"column":2835,"offset":5265},{"start":5273,"end":5274},{"line":5041,"column":21,"offset":5047},{"line":5227,"column":2835,"offset":5265},{"type":27,"value":28},{"type":31,"tagName":32,"properties":5277,"children":5278,"position":5337},{},[5279,5286,5297,5303,5314,5319,5330],{"type":27,"value":5280,"position":5281},"The rows stay the chart's candles whatever the policy, so a sparse series\nsuch as liquidations reads its fill on the bars where nothing happened.\nThe practical rule: keep an ",{"start":5282,"end":5284},{"line":3576,"column":21,"offset":5283},14567,{"line":3243,"column":347,"offset":5285},14741,{"type":31,"tagName":62,"properties":5287,"children":5288,"position":5294},{},[5289],{"type":27,"value":622,"position":5290},{"start":5291,"end":5292},{"line":3243,"column":347,"offset":5285},{"line":3243,"column":317,"offset":5293},14748,{"start":5295,"end":5296},{"line":3243,"column":347,"offset":5285},{"line":3243,"column":317,"offset":5293},{"type":27,"value":5298,"position":5299}," spine as the\nfirst input in a multi-source flow package, then read the flow sources\nbeside it. The candle grid stays stable, sparse \"nothing happened\" bars\nbecome ",{"start":5300,"end":5301},{"line":3243,"column":317,"offset":5293},{"line":3371,"column":43,"offset":5302},14912,{"type":31,"tagName":62,"properties":5304,"children":5305,"position":5311},{},[5306],{"type":27,"value":229,"position":5307},{"start":5308,"end":5309},{"line":3371,"column":43,"offset":5302},{"line":3371,"column":140,"offset":5310},14915,{"start":5312,"end":5313},{"line":3371,"column":43,"offset":5302},{"line":3371,"column":140,"offset":5310},{"type":27,"value":3468,"position":5315},{"start":5316,"end":5317},{"line":3371,"column":140,"offset":5310},{"line":3371,"column":110,"offset":5318},14919,{"type":31,"tagName":62,"properties":5320,"children":5321,"position":5327},{},[5322],{"type":27,"value":406,"position":5323},{"start":5324,"end":5325},{"line":3371,"column":110,"offset":5318},{"line":3371,"column":536,"offset":5326},14924,{"start":5328,"end":5329},{"line":3371,"column":110,"offset":5318},{"line":3371,"column":536,"offset":5326},{"type":27,"value":5331,"position":5332}," as you choose, and truly unavailable history stays\ndistinguishable from zero activity.",{"start":5333,"end":5334},{"line":3371,"column":536,"offset":5326},{"line":5335,"column":317,"offset":5336},284,15011,{"start":5338,"end":5339},{"line":3576,"column":21,"offset":5283},{"line":5335,"column":317,"offset":5336},{"type":27,"value":28},{"type":31,"tagName":188,"properties":5342,"children":5343,"position":5352},{},[5344],{"type":27,"value":5345,"position":5346},"Budgets and good citizenship",{"start":5347,"end":5350},{"line":5348,"column":195,"offset":5349},286,15016,{"line":5348,"column":274,"offset":5351},15044,{"start":5353,"end":5355},{"line":5348,"column":21,"offset":5354},15013,{"line":5348,"column":274,"offset":5351},{"type":27,"value":28},{"type":31,"tagName":32,"properties":5358,"children":5359,"position":5423},{},[5360,5368,5381,5388,5399,5405,5416],{"type":27,"value":5361,"position":5362},"On the chart a\nwrun indicator counts against your plan's per-chart indicator limit by the\nnumber of distinct sources it reads (a source name plus its pinned\nmarket), and the practical cost of each one is fetch time over the loaded\nwindow (",{"start":5363,"end":5366},{"line":5364,"column":21,"offset":5365},288,15046,{"line":3380,"column":56,"offset":5367},15285,{"type":31,"tagName":362,"properties":5369,"children":5370,"position":5377},{"href":1688},[5371],{"type":27,"value":1691,"position":5372},{"start":5373,"end":5375},{"line":3380,"column":100,"offset":5374},15286,{"line":3380,"column":1740,"offset":5376},15298,{"start":5378,"end":5379},{"line":3380,"column":56,"offset":5367},{"line":3380,"column":671,"offset":5380},15316,{"type":27,"value":5382,"position":5383},"). Declare the inputs the\ncomputation needs, pin ",{"start":5384,"end":5385},{"line":3380,"column":671,"offset":5380},{"line":5386,"column":2514,"offset":5387},293,15365,{"type":31,"tagName":62,"properties":5389,"children":5390,"position":5396},{},[5391],{"type":27,"value":66,"position":5392},{"start":5393,"end":5394},{"line":5386,"column":2514,"offset":5387},{"line":5386,"column":274,"offset":5395},15373,{"start":5397,"end":5398},{"line":5386,"column":2514,"offset":5387},{"line":5386,"column":274,"offset":5395},{"type":27,"value":5400,"position":5401}," and ",{"start":5402,"end":5403},{"line":5386,"column":274,"offset":5395},{"line":5386,"column":4665,"offset":5404},15378,{"type":31,"tagName":62,"properties":5406,"children":5407,"position":5413},{},[5408],{"type":27,"value":86,"position":5409},{"start":5410,"end":5411},{"line":5386,"column":4665,"offset":5404},{"line":5386,"column":130,"offset":5412},15388,{"start":5414,"end":5415},{"line":5386,"column":4665,"offset":5404},{"line":5386,"column":130,"offset":5412},{"type":27,"value":5417,"position":5418}," together, keep the chart's\nown candles first, and put the sparse feeds on the policy that matches\ntheir meaning.",{"start":5419,"end":5420},{"line":5386,"column":130,"offset":5412},{"line":5421,"column":110,"offset":5422},295,15501,{"start":5424,"end":5425},{"line":5364,"column":21,"offset":5365},{"line":5421,"column":110,"offset":5422},{"type":27,"value":28},{"type":31,"tagName":188,"properties":5428,"children":5429,"position":5438},{},[5430],{"type":27,"value":5431,"position":5432},"Availability",{"start":5433,"end":5436},{"line":5434,"column":195,"offset":5435},297,15506,{"line":5434,"column":198,"offset":5437},15518,{"start":5439,"end":5441},{"line":5434,"column":21,"offset":5440},15503,{"line":5434,"column":198,"offset":5437},{"type":27,"value":28},{"type":31,"tagName":32,"properties":5444,"children":5445,"position":5494},{},[5446,5455,5469,5476,5489],{"type":27,"value":5447,"position":5448},"Whether the chart can serve a feed on the market in front of you is\nanswered by name when you press ",{"start":5449,"end":5452},{"line":5450,"column":21,"offset":5451},299,15520,{"line":5453,"column":288,"offset":5454},300,15620,{"type":31,"tagName":306,"properties":5456,"children":5457,"position":5465},{},[5458],{"type":27,"value":5459,"position":5460},"Run",{"start":5461,"end":5463},{"line":5453,"column":313,"offset":5462},15622,{"line":5453,"column":120,"offset":5464},15625,{"start":5466,"end":5467},{"line":5453,"column":288,"offset":5454},{"line":5453,"column":671,"offset":5468},15627,{"type":27,"value":5470,"position":5471},", never with silent empty data\n(",{"start":5472,"end":5473},{"line":5453,"column":671,"offset":5468},{"line":5474,"column":1608,"offset":5475},301,15659,{"type":31,"tagName":362,"properties":5477,"children":5478,"position":5485},{"href":1688},[5479],{"type":27,"value":1691,"position":5480},{"start":5481,"end":5483},{"line":5474,"column":1616,"offset":5482},15660,{"line":5474,"column":110,"offset":5484},15672,{"start":5486,"end":5487},{"line":5474,"column":1608,"offset":5475},{"line":5474,"column":288,"offset":5488},15690,{"type":27,"value":3398,"position":5490},{"start":5491,"end":5492},{"line":5474,"column":288,"offset":5488},{"line":5474,"column":313,"offset":5493},15692,{"start":5495,"end":5496},{"line":5450,"column":21,"offset":5451},{"line":5474,"column":313,"offset":5493},{"type":27,"value":28},{"type":31,"tagName":188,"properties":5499,"children":5500,"position":5508},{},[5501],{"type":27,"value":5502,"position":5503},"Next",{"start":5504,"end":5506},{"line":3395,"column":195,"offset":5505},15697,{"line":3395,"column":43,"offset":5507},15701,{"start":5509,"end":5511},{"line":3395,"column":21,"offset":5510},15694,{"line":3395,"column":43,"offset":5507},{"type":27,"value":28},{"type":31,"tagName":2426,"properties":5514,"children":5515,"position":5715},{},[5516,5517,5566,5567,5615,5616,5663,5664,5714],{"type":27,"value":28},{"type":31,"tagName":302,"properties":5518,"children":5519,"position":5562},{},[5520,5535,5541,5556],{"type":31,"tagName":306,"properties":5521,"children":5522,"position":5530},{},[5523],{"type":27,"value":5524,"position":5525},"Multi-timeframe:",{"start":5526,"end":5528},{"line":3402,"column":39,"offset":5527},15707,{"line":3402,"column":216,"offset":5529},15723,{"start":5531,"end":5533},{"line":3402,"column":1616,"offset":5532},15705,{"line":3402,"column":215,"offset":5534},15725,{"type":27,"value":5536,"position":5537}," a pin at a coarser interval, read as of each bar's close (",{"start":5538,"end":5539},{"line":3402,"column":215,"offset":5534},{"line":3402,"column":2715,"offset":5540},15784,{"type":31,"tagName":362,"properties":5542,"children":5543,"position":5551},{"href":364},[5544],{"type":27,"value":367,"position":5545},{"start":5546,"end":5549},{"line":3402,"column":5547,"offset":5548},83,15785,{"line":3402,"column":2819,"offset":5550},15800,{"start":5552,"end":5553},{"line":3402,"column":2715,"offset":5540},{"line":3402,"column":5554,"offset":5555},119,15821,{"type":27,"value":3174,"position":5557},{"start":5558,"end":5559},{"line":3402,"column":5554,"offset":5555},{"line":3402,"column":5560,"offset":5561},120,15822,{"start":5563,"end":5565},{"line":3402,"column":21,"offset":5564},15703,{"line":3402,"column":5560,"offset":5561},{"type":27,"value":28},{"type":31,"tagName":302,"properties":5568,"children":5569,"position":5611},{},[5570,5586,5592,5605],{"type":31,"tagName":306,"properties":5571,"children":5572,"position":5581},{},[5573],{"type":27,"value":5574,"position":5575},"Data sources:",{"start":5576,"end":5579},{"line":5577,"column":39,"offset":5578},306,15827,{"line":5577,"column":1619,"offset":5580},15840,{"start":5582,"end":5584},{"line":5577,"column":1616,"offset":5583},15825,{"line":5577,"column":536,"offset":5585},15842,{"type":27,"value":5587,"position":5588}," every feed, its fields and its options (",{"start":5589,"end":5590},{"line":5577,"column":536,"offset":5585},{"line":5577,"column":5136,"offset":5591},15883,{"type":31,"tagName":362,"properties":5593,"children":5594,"position":5601},{"href":1688},[5595],{"type":27,"value":1691,"position":5596},{"start":5597,"end":5599},{"line":5577,"column":448,"offset":5598},15884,{"line":5577,"column":1577,"offset":5600},15896,{"start":5602,"end":5603},{"line":5577,"column":5136,"offset":5591},{"line":5577,"column":1565,"offset":5604},15914,{"type":27,"value":3174,"position":5606},{"start":5607,"end":5608},{"line":5577,"column":1565,"offset":5604},{"line":5577,"column":5609,"offset":5610},93,15915,{"start":5612,"end":5614},{"line":5577,"column":21,"offset":5613},15823,{"line":5577,"column":5609,"offset":5610},{"type":27,"value":28},{"type":31,"tagName":302,"properties":5617,"children":5618,"position":5659},{},[5619,5634,5640,5654],{"type":31,"tagName":306,"properties":5620,"children":5621,"position":5629},{},[5622],{"type":27,"value":5623,"position":5624},"Exchange and symbol format:",{"start":5625,"end":5627},{"line":3407,"column":39,"offset":5626},15920,{"line":3407,"column":274,"offset":5628},15947,{"start":5630,"end":5632},{"line":3407,"column":1616,"offset":5631},15918,{"line":3407,"column":2582,"offset":5633},15949,{"type":27,"value":5635,"position":5636}," the venue ids and symbol spellings a pin takes (",{"start":5637,"end":5638},{"line":3407,"column":2582,"offset":5633},{"line":3407,"column":5547,"offset":5639},15998,{"type":31,"tagName":362,"properties":5641,"children":5642,"position":5650},{"href":2983},[5643],{"type":27,"value":2986,"position":5644},{"start":5645,"end":5648},{"line":3407,"column":5646,"offset":5647},84,15999,{"line":3407,"column":1736,"offset":5649},16025,{"start":5651,"end":5652},{"line":3407,"column":5547,"offset":5639},{"line":3407,"column":2457,"offset":5653},16057,{"type":27,"value":3174,"position":5655},{"start":5656,"end":5657},{"line":3407,"column":2457,"offset":5653},{"line":3407,"column":2472,"offset":5658},16058,{"start":5660,"end":5662},{"line":3407,"column":21,"offset":5661},15916,{"line":3407,"column":2472,"offset":5658},{"type":27,"value":28},{"type":31,"tagName":302,"properties":5665,"children":5666,"position":5710},{},[5667,5683,5689,5705],{"type":31,"tagName":306,"properties":5668,"children":5669,"position":5678},{},[5670],{"type":27,"value":5671,"position":5672},"Alerts:",{"start":5673,"end":5676},{"line":5674,"column":39,"offset":5675},308,16063,{"line":5674,"column":10,"offset":5677},16070,{"start":5679,"end":5681},{"line":5674,"column":1616,"offset":5680},16061,{"line":5674,"column":3600,"offset":5682},16072,{"type":27,"value":5684,"position":5685}," which pinned markets an alert can evaluate (",{"start":5686,"end":5687},{"line":5674,"column":3600,"offset":5682},{"line":5674,"column":439,"offset":5688},16117,{"type":31,"tagName":362,"properties":5690,"children":5692,"position":5700},{"href":5691},"../functions/alerts.md#what-an-alert-can-evaluate",[5693],{"type":27,"value":5694,"position":5695},"Alerts",{"start":5696,"end":5698},{"line":5674,"column":151,"offset":5697},16118,{"line":5674,"column":171,"offset":5699},16124,{"start":5701,"end":5702},{"line":5674,"column":439,"offset":5688},{"line":5674,"column":5703,"offset":5704},118,16176,{"type":27,"value":3174,"position":5706},{"start":5707,"end":5708},{"line":5674,"column":5703,"offset":5704},{"line":5674,"column":5554,"offset":5709},16177,{"start":5711,"end":5713},{"line":5674,"column":21,"offset":5712},16059,{"line":5674,"column":5554,"offset":5709},{"type":27,"value":28},{"start":5716,"end":5717},{"line":3402,"column":21,"offset":5564},{"line":5674,"column":5554,"offset":5709},{"quirksMode":5719},false,{"start":5721,"end":5722},{"line":21,"column":21,"offset":22},{"line":5723,"column":21,"offset":5724},309,16178,1791265177925]