[{"data":1,"prerenderedAt":3786},["ShallowReactive",2],{"indicators:cookbook/volume-spike":3},{"slug":4,"filePath":5,"frontmatter":6,"rawMarkdown":11,"tree":12},"cookbook/volume-spike","cookbook/volume-spike.md",{"title":7,"description":8,"order":9,"section":10},"Volume Spike Detector","Flag bars whose volume blows past its trailing average, scored as a z-score against a rolling mean and standard deviation. The kScript (legacy) recipe and the…",56,"cookbook","---\ntitle: \"Volume Spike Detector\"\ndescription: \"Flag bars whose volume blows past its trailing average, scored as a z-score against a rolling mean and standard deviation. The kScript (legacy) recipe and the…\"\norder: 56\nsection: \"cookbook\"\n---\n\n\u003C!-- source: docs/indicators/cookbook/volume-spike.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit -->\n\n# Volume Spike Detector\n\nFlag bars whose volume blows past its trailing average, scored as a z-score against a rolling mean and standard deviation. The kScript (legacy) recipe and the Indicator it became, side by side.\n\nThis recipe spots unusual volume. Instead of a fixed \"alert above 1M\" threshold that means nothing across different symbols, it measures how far the current bar's volume sits above its own recent average, in standard deviations. A reading of 3 means \"three sigma above normal\" whatever the symbol or timeframe. It is the cleanest possible introduction to the Indicator loop: read one input, fold it into one class, write a few outputs.\n\n## The kScript (legacy) recipe\n\n```javascript\n//@version=2\ndefine(title=\"Volume Spike Detector\", position=\"offchart\", axis=true)\n\nvar lookback = input(name=\"lookback\", type=\"number\", defaultValue=50, label=\"Lookback\", constraints={min: 10, max: 300, step: 10})\nvar threshold = input(name=\"threshold\", type=\"slider\", defaultValue=2.5, label=\"Z-Score Threshold\", constraints={min: 1, max: 6, step: 0.1})\n\ntimeseries d = ohlcv(symbol=currentSymbol, exchange=currentExchange)\n\n// Z-score of volume against its trailing mean and standard deviation.\ntimeseries vMean = sma(source=d.volume, period=lookback)\ntimeseries vStd = stddev(d.volume, lookback)\ntimeseries z = (isnum(vStd[0]) && vStd[0] > 0) ? (d.volume[0] - vMean[0]) / vStd[0] : 0\n\nplotLine(value=z, colors=[\"#64748b\"], width=1, label=[\"Volume z-score\"], desc=[\"how many standard deviations volume sits above its trailing mean\"])\nhline(value=threshold, color=\"#ef4444\", width=1)\n\n// Flag bars whose volume z-score clears the threshold.\nvar isSpike = isnum(z[0]) && z[0] >= threshold\nif (isSpike) {\n  plotShape(value=z[0], shape=\"circle\", width=6, colors=[\"#ef4444\"], fill=true, label=[\"Spike\"], desc=[\"volume anomaly above the threshold\"])\n}\n```\n\n## The Indicator\n\n```typescript\nimport { input, line, lower, none, ohlcv, output, param, shape } from \"./sdk/declare\";\nimport { in_volume } from \"./gen/inputs\";\nimport { emitRow, out_is_spike, out_spike, out_threshold, out_z } from \"./gen/outputs\";\nimport { p_lookback, p_threshold } from \"./gen/params\";\nimport { Zscore } from \"./sdk/ta\";\n\nparam(\"lookback\", 50, { min: 10, max: 300, description: \"Bars of history that define normal volume\" });\nparam(\"threshold\", 2.5, { min: 1, max: 6, description: \"Z-score that counts as a spike\" });\ninput(\"volume\", ohlcv.volume);\noutput(\"z\", line, lower, { color: \"#64748b\", width: 1, description: \"Volume z-score\" });\noutput(\"threshold\", line, lower, { color: \"#ef4444\", width: 1 });\noutput(\"spike\", shape, lower, { color: \"#ef4444\", shape_where: \"is_spike\" });\noutput(\"is_spike\", none);\n\nlet zscore = new Zscore(50);\nlet threshold: f64 = 2.5;\nlet z: f64 = NaN;\n\nexport function init(): void {\n  zscore = new Zscore(i32(p_lookback()));\n  threshold = p_threshold();\n}\n\nexport function state(): i32 {\n  z = zscore.update(in_volume());\n  return isNaN(z) ? 0 : 1;\n}\n\nexport function finalize(): void {\n  out_z(z);\n  out_threshold(threshold);\n  out_spike(z);\n  out_is_spike(z >= threshold ? 1.0 : 0.0);\n  emitRow();\n}\n\nexport function reset(): void {\n  zscore.reset();\n  z = NaN;\n}\n```\n\n## How it works\n\n**The data.** One `input(\"volume\", ohlcv.volume)` gives the module the chart's own volume, one value per bar, read in `state()` through the generated `in_volume()` accessor. That is the only feed the detector needs. There is no `timeseries` to declare and no `d.volume[0]` to index: `state()` sees this bar's value and nothing else.\n\n**The score.** A z-score answers \"how surprising is this number?\" You need two reference points: where volume usually sits, and how much it normally wobbles. `Zscore` from `./sdk/ta` is both reference points in one class: `update(x)` folds one bar into its window and returns `(x - mean) / stdev` over that window, or `0` when the window is flat. Because it is a ratio, it is comparable across any symbol or timeframe. A whale print on BTC and a thin altcoin both light up at the same number.\n\n**The warm-up guard.** Until `lookback` bars have loaded, the class returns `NaN`, and `state()` returns `0`, which abstains the whole row: the pane stays empty there instead of drawing noise. The kScript needed an `isnum` ternary to get a quiet line; the Indicator gets the same result by not emitting a row at all ([Execution model](../core-concepts/execution-model.md)).\n\n**The output.** `z` plots as a line in its own pane (`lower`). `threshold` is a line too, written to the same value on every bar, so you can see at a glance how close any bar is to firing: it is the `hline`. `spike` is a `shape` output whose value is the z-score (where the mark sits) and whose `shape_where` gate is the data-only `is_spike` output: the mark draws only on bars where the gate is `1`. Decisions are numbers here, and the sheet turns them into looks.\n\n## What changed in the port\n\n- The `if (isSpike) plotShape(...)` block became two outputs: the mark's position (`spike`) and the decision that gates it (`is_spike`). An output cannot gate itself, so the gate is its own `none` output.\n- `hline` is an output that never changes; its value is the param, written every bar.\n- The `step` constraint has no counterpart; settings take any value inside `min`..`max`. `label` became `description`.\n- Every output is a metric. `wrun/@you/volume-spike/z` and `wrun/@you/volume-spike/is_spike` are ids a watch, a screen, or a series read can use once the package is on your machine, which the kScript's plotted series never were.\n\n## Customize it\n\n- **Sensitivity.** `threshold` is the main knob. Drop it toward `1.5` to catch milder bursts, raise it toward `4` to keep only genuine anomalies. The red line moves with it.\n- **Memory.** `lookback` sets how much history \"normal\" is measured against. A short window (20) reacts to recent conditions and treats a busy session as the new baseline; a long window (200) compares against a calmer, broader average and flags more.\n- **Two-sided.** As written, only high-volume bars fire because the gate is `z >= threshold`. To catch unusually quiet bars too, add a second gate output (`z \u003C= -threshold`) and a second `shape` output gated by it.\n- **Color and size.** The circle and line colors are hex strings on the declarations. `width` on the line output resizes it; `render.shape` picks a different mark kind than the host's default ([Drawing primitives](../functions/drawing-primitives.md)).\n- **Turn it into an alert.** Publish it, install it on your machine, and put a watch on the z-score crossing the threshold. The condition names the metric id, the market, and the interval; `--cooldown` keeps a noisy hour from firing on every tick:\n\n```bash\nom wrun install ./volume-spike --replace\nom watch create \"Volume spike\" --condition '{\"metric\":\"wrun/@you/volume-spike/z\",\"selector\":{\"exchange\":\"BINANCE_FUTURES\",\"symbol\":\"BTCUSDT\",\"interval\":\"HOUR\"},\"op\":\"crosses_above\",\"value\":3}' --cooldown 1h\n```\n\n## Concepts used\n\n- [Series functions](../functions/series-functions.md) and [TA library](../functions/ta-library.md) for `Zscore` over a trailing window\n- [Typed inputs](../functions/typed-inputs.md) for the `lookback` and `threshold` params\n- [na and scalar types](../core-concepts/na-and-scalar-types.md) for the `NaN` warm-up rule\n- [Plotting](../functions/plotting.md) and [Drawing primitives](../functions/drawing-primitives.md) for the `line` outputs and the gated `shape`\n",{"type":13,"children":14,"data":3779,"position":3781},"root",[15,25,28,29,46,47,62,63,82,83,1022,1023,1040,1041,2046,2047,2064,2065,2216,2217,2347,2348,2499,2500,2703,2704,2721,2722,3016,3017,3032,3033,3407,3408,3487,3488,3504,3505],{"type":16,"value":17,"position":18},"comment"," source: docs/indicators/cookbook/volume-spike.md; generated by packages/cli/scripts/gen-indicator-docs.ts, do not edit ",{"start":19,"end":22},{"line":20,"column":20,"offset":21},1,0,{"line":20,"column":23,"offset":24},128,127,{"type":26,"value":27},"text","\n",{"type":26,"value":27},{"type":30,"tagName":31,"properties":32,"children":33,"position":43},"element","p",{},[34],{"type":26,"value":35,"position":36},"Flag bars whose volume blows past its trailing average, scored as a z-score against a rolling mean and standard deviation. The kScript (legacy) recipe and the Indicator it became, side by side.",{"start":37,"end":40},{"line":38,"column":20,"offset":39},5,154,{"line":38,"column":41,"offset":42},194,347,{"start":44,"end":45},{"line":38,"column":20,"offset":39},{"line":38,"column":41,"offset":42},{"type":26,"value":27},{"type":30,"tagName":31,"properties":48,"children":49,"position":59},{},[50],{"type":26,"value":51,"position":52},"This recipe spots unusual volume. Instead of a fixed \"alert above 1M\" threshold that means nothing across different symbols, it measures how far the current bar's volume sits above its own recent average, in standard deviations. A reading of 3 means \"three sigma above normal\" whatever the symbol or timeframe. It is the cleanest possible introduction to the Indicator loop: read one input, fold it into one class, write a few outputs.",{"start":53,"end":56},{"line":54,"column":20,"offset":55},7,349,{"line":54,"column":57,"offset":58},436,784,{"start":60,"end":61},{"line":54,"column":20,"offset":55},{"line":54,"column":57,"offset":58},{"type":26,"value":27},{"type":30,"tagName":64,"properties":65,"children":67,"position":78},"h2",{"id":66},"the-kscript-legacy-recipe",[68],{"type":26,"value":69,"position":70},"The kScript (legacy) recipe",{"start":71,"end":75},{"line":72,"column":73,"offset":74},9,4,789,{"line":72,"column":76,"offset":77},31,816,{"start":79,"end":81},{"line":72,"column":20,"offset":80},786,{"line":72,"column":76,"offset":77},{"type":26,"value":27},{"type":13,"children":84},[85],{"type":30,"tagName":86,"properties":87,"children":91,"data":-1},"pre",{"class":88,"style":89,"tabindex":90},"shiki shiki-themes github-dark github-light","--shiki-dark:#e1e4e8;--shiki-light:#24292e;--shiki-dark-bg:#24292e;--shiki-light-bg:#fff","0",[92],{"type":30,"tagName":93,"properties":94,"children":95},"code",{},[96,107,108,169,170,173,174,295,296,407,408,411,412,452,453,456,457,465,466,506,507,529,530,662,663,666,667,756,757,804,805,808,809,817,818,879,880,893,894,1013,1014],{"type":30,"tagName":97,"properties":98,"children":100},"span",{"class":99},"line",[101],{"type":30,"tagName":97,"properties":102,"children":104},{"style":103},"--shiki-dark:#6A737D;--shiki-light:#6A737D",[105],{"type":26,"value":106},"//@version=2",{"type":26,"value":27},{"type":30,"tagName":97,"properties":109,"children":110},{"class":99},[111,117,123,129,135,140,144,149,154,158,164],{"type":30,"tagName":97,"properties":112,"children":114},{"style":113},"--shiki-dark:#B392F0;--shiki-light:#6F42C1",[115],{"type":26,"value":116},"define",{"type":30,"tagName":97,"properties":118,"children":120},{"style":119},"--shiki-dark:#E1E4E8;--shiki-light:#24292E",[121],{"type":26,"value":122},"(title",{"type":30,"tagName":97,"properties":124,"children":126},{"style":125},"--shiki-dark:#F97583;--shiki-light:#D73A49",[127],{"type":26,"value":128},"=",{"type":30,"tagName":97,"properties":130,"children":132},{"style":131},"--shiki-dark:#9ECBFF;--shiki-light:#032F62",[133],{"type":26,"value":134},"\"Volume Spike Detector\"",{"type":30,"tagName":97,"properties":136,"children":137},{"style":119},[138],{"type":26,"value":139},", position",{"type":30,"tagName":97,"properties":141,"children":142},{"style":125},[143],{"type":26,"value":128},{"type":30,"tagName":97,"properties":145,"children":146},{"style":131},[147],{"type":26,"value":148},"\"offchart\"",{"type":30,"tagName":97,"properties":150,"children":151},{"style":119},[152],{"type":26,"value":153},", axis",{"type":30,"tagName":97,"properties":155,"children":156},{"style":125},[157],{"type":26,"value":128},{"type":30,"tagName":97,"properties":159,"children":161},{"style":160},"--shiki-dark:#79B8FF;--shiki-light:#005CC5",[162],{"type":26,"value":163},"true",{"type":30,"tagName":97,"properties":165,"children":166},{"style":119},[167],{"type":26,"value":168},")",{"type":26,"value":27},{"type":30,"tagName":97,"properties":171,"children":172},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":175,"children":176},{"class":99},[177,182,187,191,196,201,205,210,215,219,224,229,233,238,243,247,252,257,261,266,271,276,281,286,290],{"type":30,"tagName":97,"properties":178,"children":179},{"style":125},[180],{"type":26,"value":181},"var",{"type":30,"tagName":97,"properties":183,"children":184},{"style":119},[185],{"type":26,"value":186}," lookback ",{"type":30,"tagName":97,"properties":188,"children":189},{"style":125},[190],{"type":26,"value":128},{"type":30,"tagName":97,"properties":192,"children":193},{"style":113},[194],{"type":26,"value":195}," input",{"type":30,"tagName":97,"properties":197,"children":198},{"style":119},[199],{"type":26,"value":200},"(name",{"type":30,"tagName":97,"properties":202,"children":203},{"style":125},[204],{"type":26,"value":128},{"type":30,"tagName":97,"properties":206,"children":207},{"style":131},[208],{"type":26,"value":209},"\"lookback\"",{"type":30,"tagName":97,"properties":211,"children":212},{"style":119},[213],{"type":26,"value":214},", type",{"type":30,"tagName":97,"properties":216,"children":217},{"style":125},[218],{"type":26,"value":128},{"type":30,"tagName":97,"properties":220,"children":221},{"style":131},[222],{"type":26,"value":223},"\"number\"",{"type":30,"tagName":97,"properties":225,"children":226},{"style":119},[227],{"type":26,"value":228},", defaultValue",{"type":30,"tagName":97,"properties":230,"children":231},{"style":125},[232],{"type":26,"value":128},{"type":30,"tagName":97,"properties":234,"children":235},{"style":160},[236],{"type":26,"value":237},"50",{"type":30,"tagName":97,"properties":239,"children":240},{"style":119},[241],{"type":26,"value":242},", label",{"type":30,"tagName":97,"properties":244,"children":245},{"style":125},[246],{"type":26,"value":128},{"type":30,"tagName":97,"properties":248,"children":249},{"style":131},[250],{"type":26,"value":251},"\"Lookback\"",{"type":30,"tagName":97,"properties":253,"children":254},{"style":119},[255],{"type":26,"value":256},", constraints",{"type":30,"tagName":97,"properties":258,"children":259},{"style":125},[260],{"type":26,"value":128},{"type":30,"tagName":97,"properties":262,"children":263},{"style":119},[264],{"type":26,"value":265},"{min: ",{"type":30,"tagName":97,"properties":267,"children":268},{"style":160},[269],{"type":26,"value":270},"10",{"type":30,"tagName":97,"properties":272,"children":273},{"style":119},[274],{"type":26,"value":275},", max: ",{"type":30,"tagName":97,"properties":277,"children":278},{"style":160},[279],{"type":26,"value":280},"300",{"type":30,"tagName":97,"properties":282,"children":283},{"style":119},[284],{"type":26,"value":285},", step: ",{"type":30,"tagName":97,"properties":287,"children":288},{"style":160},[289],{"type":26,"value":270},{"type":30,"tagName":97,"properties":291,"children":292},{"style":119},[293],{"type":26,"value":294},"})",{"type":26,"value":27},{"type":30,"tagName":97,"properties":297,"children":298},{"class":99},[299,303,308,312,316,320,324,329,333,337,342,346,350,355,359,363,368,372,376,380,385,389,394,398,403],{"type":30,"tagName":97,"properties":300,"children":301},{"style":125},[302],{"type":26,"value":181},{"type":30,"tagName":97,"properties":304,"children":305},{"style":119},[306],{"type":26,"value":307}," threshold ",{"type":30,"tagName":97,"properties":309,"children":310},{"style":125},[311],{"type":26,"value":128},{"type":30,"tagName":97,"properties":313,"children":314},{"style":113},[315],{"type":26,"value":195},{"type":30,"tagName":97,"properties":317,"children":318},{"style":119},[319],{"type":26,"value":200},{"type":30,"tagName":97,"properties":321,"children":322},{"style":125},[323],{"type":26,"value":128},{"type":30,"tagName":97,"properties":325,"children":326},{"style":131},[327],{"type":26,"value":328},"\"threshold\"",{"type":30,"tagName":97,"properties":330,"children":331},{"style":119},[332],{"type":26,"value":214},{"type":30,"tagName":97,"properties":334,"children":335},{"style":125},[336],{"type":26,"value":128},{"type":30,"tagName":97,"properties":338,"children":339},{"style":131},[340],{"type":26,"value":341},"\"slider\"",{"type":30,"tagName":97,"properties":343,"children":344},{"style":119},[345],{"type":26,"value":228},{"type":30,"tagName":97,"properties":347,"children":348},{"style":125},[349],{"type":26,"value":128},{"type":30,"tagName":97,"properties":351,"children":352},{"style":160},[353],{"type":26,"value":354},"2.5",{"type":30,"tagName":97,"properties":356,"children":357},{"style":119},[358],{"type":26,"value":242},{"type":30,"tagName":97,"properties":360,"children":361},{"style":125},[362],{"type":26,"value":128},{"type":30,"tagName":97,"properties":364,"children":365},{"style":131},[366],{"type":26,"value":367},"\"Z-Score Threshold\"",{"type":30,"tagName":97,"properties":369,"children":370},{"style":119},[371],{"type":26,"value":256},{"type":30,"tagName":97,"properties":373,"children":374},{"style":125},[375],{"type":26,"value":128},{"type":30,"tagName":97,"properties":377,"children":378},{"style":119},[379],{"type":26,"value":265},{"type":30,"tagName":97,"properties":381,"children":382},{"style":160},[383],{"type":26,"value":384},"1",{"type":30,"tagName":97,"properties":386,"children":387},{"style":119},[388],{"type":26,"value":275},{"type":30,"tagName":97,"properties":390,"children":391},{"style":160},[392],{"type":26,"value":393},"6",{"type":30,"tagName":97,"properties":395,"children":396},{"style":119},[397],{"type":26,"value":285},{"type":30,"tagName":97,"properties":399,"children":400},{"style":160},[401],{"type":26,"value":402},"0.1",{"type":30,"tagName":97,"properties":404,"children":405},{"style":119},[406],{"type":26,"value":294},{"type":26,"value":27},{"type":30,"tagName":97,"properties":409,"children":410},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":413,"children":414},{"class":99},[415,420,424,429,434,438,443,447],{"type":30,"tagName":97,"properties":416,"children":417},{"style":119},[418],{"type":26,"value":419},"timeseries d ",{"type":30,"tagName":97,"properties":421,"children":422},{"style":125},[423],{"type":26,"value":128},{"type":30,"tagName":97,"properties":425,"children":426},{"style":113},[427],{"type":26,"value":428}," ohlcv",{"type":30,"tagName":97,"properties":430,"children":431},{"style":119},[432],{"type":26,"value":433},"(symbol",{"type":30,"tagName":97,"properties":435,"children":436},{"style":125},[437],{"type":26,"value":128},{"type":30,"tagName":97,"properties":439,"children":440},{"style":119},[441],{"type":26,"value":442},"currentSymbol, exchange",{"type":30,"tagName":97,"properties":444,"children":445},{"style":125},[446],{"type":26,"value":128},{"type":30,"tagName":97,"properties":448,"children":449},{"style":119},[450],{"type":26,"value":451},"currentExchange)",{"type":26,"value":27},{"type":30,"tagName":97,"properties":454,"children":455},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":458,"children":459},{"class":99},[460],{"type":30,"tagName":97,"properties":461,"children":462},{"style":103},[463],{"type":26,"value":464},"// Z-score of volume against its trailing mean and standard deviation.",{"type":26,"value":27},{"type":30,"tagName":97,"properties":467,"children":468},{"class":99},[469,474,478,483,488,492,497,501],{"type":30,"tagName":97,"properties":470,"children":471},{"style":119},[472],{"type":26,"value":473},"timeseries vMean ",{"type":30,"tagName":97,"properties":475,"children":476},{"style":125},[477],{"type":26,"value":128},{"type":30,"tagName":97,"properties":479,"children":480},{"style":113},[481],{"type":26,"value":482}," sma",{"type":30,"tagName":97,"properties":484,"children":485},{"style":119},[486],{"type":26,"value":487},"(source",{"type":30,"tagName":97,"properties":489,"children":490},{"style":125},[491],{"type":26,"value":128},{"type":30,"tagName":97,"properties":493,"children":494},{"style":119},[495],{"type":26,"value":496},"d.volume, period",{"type":30,"tagName":97,"properties":498,"children":499},{"style":125},[500],{"type":26,"value":128},{"type":30,"tagName":97,"properties":502,"children":503},{"style":119},[504],{"type":26,"value":505},"lookback)",{"type":26,"value":27},{"type":30,"tagName":97,"properties":508,"children":509},{"class":99},[510,515,519,524],{"type":30,"tagName":97,"properties":511,"children":512},{"style":119},[513],{"type":26,"value":514},"timeseries vStd ",{"type":30,"tagName":97,"properties":516,"children":517},{"style":125},[518],{"type":26,"value":128},{"type":30,"tagName":97,"properties":520,"children":521},{"style":113},[522],{"type":26,"value":523}," stddev",{"type":30,"tagName":97,"properties":525,"children":526},{"style":119},[527],{"type":26,"value":528},"(d.volume, lookback)",{"type":26,"value":27},{"type":30,"tagName":97,"properties":531,"children":532},{"class":99},[533,538,542,547,552,557,561,566,571,576,580,585,590,595,600,605,610,614,618,623,628,632,636,641,645,649,653,658],{"type":30,"tagName":97,"properties":534,"children":535},{"style":119},[536],{"type":26,"value":537},"timeseries z ",{"type":30,"tagName":97,"properties":539,"children":540},{"style":125},[541],{"type":26,"value":128},{"type":30,"tagName":97,"properties":543,"children":544},{"style":119},[545],{"type":26,"value":546}," (",{"type":30,"tagName":97,"properties":548,"children":549},{"style":113},[550],{"type":26,"value":551},"isnum",{"type":30,"tagName":97,"properties":553,"children":554},{"style":119},[555],{"type":26,"value":556},"(vStd[",{"type":30,"tagName":97,"properties":558,"children":559},{"style":160},[560],{"type":26,"value":90},{"type":30,"tagName":97,"properties":562,"children":563},{"style":119},[564],{"type":26,"value":565},"]) ",{"type":30,"tagName":97,"properties":567,"children":568},{"style":125},[569],{"type":26,"value":570},"&&",{"type":30,"tagName":97,"properties":572,"children":573},{"style":119},[574],{"type":26,"value":575}," vStd[",{"type":30,"tagName":97,"properties":577,"children":578},{"style":160},[579],{"type":26,"value":90},{"type":30,"tagName":97,"properties":581,"children":582},{"style":119},[583],{"type":26,"value":584},"] ",{"type":30,"tagName":97,"properties":586,"children":587},{"style":125},[588],{"type":26,"value":589},">",{"type":30,"tagName":97,"properties":591,"children":592},{"style":160},[593],{"type":26,"value":594}," 0",{"type":30,"tagName":97,"properties":596,"children":597},{"style":119},[598],{"type":26,"value":599},") ",{"type":30,"tagName":97,"properties":601,"children":602},{"style":125},[603],{"type":26,"value":604},"?",{"type":30,"tagName":97,"properties":606,"children":607},{"style":119},[608],{"type":26,"value":609}," (d.volume[",{"type":30,"tagName":97,"properties":611,"children":612},{"style":160},[613],{"type":26,"value":90},{"type":30,"tagName":97,"properties":615,"children":616},{"style":119},[617],{"type":26,"value":584},{"type":30,"tagName":97,"properties":619,"children":620},{"style":125},[621],{"type":26,"value":622},"-",{"type":30,"tagName":97,"properties":624,"children":625},{"style":119},[626],{"type":26,"value":627}," vMean[",{"type":30,"tagName":97,"properties":629,"children":630},{"style":160},[631],{"type":26,"value":90},{"type":30,"tagName":97,"properties":633,"children":634},{"style":119},[635],{"type":26,"value":565},{"type":30,"tagName":97,"properties":637,"children":638},{"style":125},[639],{"type":26,"value":640},"/",{"type":30,"tagName":97,"properties":642,"children":643},{"style":119},[644],{"type":26,"value":575},{"type":30,"tagName":97,"properties":646,"children":647},{"style":160},[648],{"type":26,"value":90},{"type":30,"tagName":97,"properties":650,"children":651},{"style":119},[652],{"type":26,"value":584},{"type":30,"tagName":97,"properties":654,"children":655},{"style":125},[656],{"type":26,"value":657},":",{"type":30,"tagName":97,"properties":659,"children":660},{"style":160},[661],{"type":26,"value":594},{"type":26,"value":27},{"type":30,"tagName":97,"properties":664,"children":665},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":668,"children":669},{"class":99},[670,675,680,684,689,693,698,703,708,712,716,720,724,728,733,738,742,746,751],{"type":30,"tagName":97,"properties":671,"children":672},{"style":113},[673],{"type":26,"value":674},"plotLine",{"type":30,"tagName":97,"properties":676,"children":677},{"style":119},[678],{"type":26,"value":679},"(value",{"type":30,"tagName":97,"properties":681,"children":682},{"style":125},[683],{"type":26,"value":128},{"type":30,"tagName":97,"properties":685,"children":686},{"style":119},[687],{"type":26,"value":688},"z, colors",{"type":30,"tagName":97,"properties":690,"children":691},{"style":125},[692],{"type":26,"value":128},{"type":30,"tagName":97,"properties":694,"children":695},{"style":119},[696],{"type":26,"value":697},"[",{"type":30,"tagName":97,"properties":699,"children":700},{"style":131},[701],{"type":26,"value":702},"\"#64748b\"",{"type":30,"tagName":97,"properties":704,"children":705},{"style":119},[706],{"type":26,"value":707},"], width",{"type":30,"tagName":97,"properties":709,"children":710},{"style":125},[711],{"type":26,"value":128},{"type":30,"tagName":97,"properties":713,"children":714},{"style":160},[715],{"type":26,"value":384},{"type":30,"tagName":97,"properties":717,"children":718},{"style":119},[719],{"type":26,"value":242},{"type":30,"tagName":97,"properties":721,"children":722},{"style":125},[723],{"type":26,"value":128},{"type":30,"tagName":97,"properties":725,"children":726},{"style":119},[727],{"type":26,"value":697},{"type":30,"tagName":97,"properties":729,"children":730},{"style":131},[731],{"type":26,"value":732},"\"Volume z-score\"",{"type":30,"tagName":97,"properties":734,"children":735},{"style":119},[736],{"type":26,"value":737},"], desc",{"type":30,"tagName":97,"properties":739,"children":740},{"style":125},[741],{"type":26,"value":128},{"type":30,"tagName":97,"properties":743,"children":744},{"style":119},[745],{"type":26,"value":697},{"type":30,"tagName":97,"properties":747,"children":748},{"style":131},[749],{"type":26,"value":750},"\"how many standard deviations volume sits above its trailing mean\"",{"type":30,"tagName":97,"properties":752,"children":753},{"style":119},[754],{"type":26,"value":755},"])",{"type":26,"value":27},{"type":30,"tagName":97,"properties":758,"children":759},{"class":99},[760,765,769,773,778,782,787,792,796,800],{"type":30,"tagName":97,"properties":761,"children":762},{"style":113},[763],{"type":26,"value":764},"hline",{"type":30,"tagName":97,"properties":766,"children":767},{"style":119},[768],{"type":26,"value":679},{"type":30,"tagName":97,"properties":770,"children":771},{"style":125},[772],{"type":26,"value":128},{"type":30,"tagName":97,"properties":774,"children":775},{"style":119},[776],{"type":26,"value":777},"threshold, color",{"type":30,"tagName":97,"properties":779,"children":780},{"style":125},[781],{"type":26,"value":128},{"type":30,"tagName":97,"properties":783,"children":784},{"style":131},[785],{"type":26,"value":786},"\"#ef4444\"",{"type":30,"tagName":97,"properties":788,"children":789},{"style":119},[790],{"type":26,"value":791},", width",{"type":30,"tagName":97,"properties":793,"children":794},{"style":125},[795],{"type":26,"value":128},{"type":30,"tagName":97,"properties":797,"children":798},{"style":160},[799],{"type":26,"value":384},{"type":30,"tagName":97,"properties":801,"children":802},{"style":119},[803],{"type":26,"value":168},{"type":26,"value":27},{"type":30,"tagName":97,"properties":806,"children":807},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":810,"children":811},{"class":99},[812],{"type":30,"tagName":97,"properties":813,"children":814},{"style":103},[815],{"type":26,"value":816},"// Flag bars whose volume z-score clears the threshold.",{"type":26,"value":27},{"type":30,"tagName":97,"properties":819,"children":820},{"class":99},[821,825,830,834,839,844,848,852,856,861,865,869,874],{"type":30,"tagName":97,"properties":822,"children":823},{"style":125},[824],{"type":26,"value":181},{"type":30,"tagName":97,"properties":826,"children":827},{"style":119},[828],{"type":26,"value":829}," isSpike ",{"type":30,"tagName":97,"properties":831,"children":832},{"style":125},[833],{"type":26,"value":128},{"type":30,"tagName":97,"properties":835,"children":836},{"style":113},[837],{"type":26,"value":838}," isnum",{"type":30,"tagName":97,"properties":840,"children":841},{"style":119},[842],{"type":26,"value":843},"(z[",{"type":30,"tagName":97,"properties":845,"children":846},{"style":160},[847],{"type":26,"value":90},{"type":30,"tagName":97,"properties":849,"children":850},{"style":119},[851],{"type":26,"value":565},{"type":30,"tagName":97,"properties":853,"children":854},{"style":125},[855],{"type":26,"value":570},{"type":30,"tagName":97,"properties":857,"children":858},{"style":119},[859],{"type":26,"value":860}," z[",{"type":30,"tagName":97,"properties":862,"children":863},{"style":160},[864],{"type":26,"value":90},{"type":30,"tagName":97,"properties":866,"children":867},{"style":119},[868],{"type":26,"value":584},{"type":30,"tagName":97,"properties":870,"children":871},{"style":125},[872],{"type":26,"value":873},">=",{"type":30,"tagName":97,"properties":875,"children":876},{"style":119},[877],{"type":26,"value":878}," threshold",{"type":26,"value":27},{"type":30,"tagName":97,"properties":881,"children":882},{"class":99},[883,888],{"type":30,"tagName":97,"properties":884,"children":885},{"style":125},[886],{"type":26,"value":887},"if",{"type":30,"tagName":97,"properties":889,"children":890},{"style":119},[891],{"type":26,"value":892}," (isSpike) {",{"type":26,"value":27},{"type":30,"tagName":97,"properties":895,"children":896},{"class":99},[897,902,906,910,915,919,924,928,933,937,941,945,950,954,958,962,967,971,975,979,983,987,992,996,1000,1004,1009],{"type":30,"tagName":97,"properties":898,"children":899},{"style":113},[900],{"type":26,"value":901},"  plotShape",{"type":30,"tagName":97,"properties":903,"children":904},{"style":119},[905],{"type":26,"value":679},{"type":30,"tagName":97,"properties":907,"children":908},{"style":125},[909],{"type":26,"value":128},{"type":30,"tagName":97,"properties":911,"children":912},{"style":119},[913],{"type":26,"value":914},"z[",{"type":30,"tagName":97,"properties":916,"children":917},{"style":160},[918],{"type":26,"value":90},{"type":30,"tagName":97,"properties":920,"children":921},{"style":119},[922],{"type":26,"value":923},"], shape",{"type":30,"tagName":97,"properties":925,"children":926},{"style":125},[927],{"type":26,"value":128},{"type":30,"tagName":97,"properties":929,"children":930},{"style":131},[931],{"type":26,"value":932},"\"circle\"",{"type":30,"tagName":97,"properties":934,"children":935},{"style":119},[936],{"type":26,"value":791},{"type":30,"tagName":97,"properties":938,"children":939},{"style":125},[940],{"type":26,"value":128},{"type":30,"tagName":97,"properties":942,"children":943},{"style":160},[944],{"type":26,"value":393},{"type":30,"tagName":97,"properties":946,"children":947},{"style":119},[948],{"type":26,"value":949},", colors",{"type":30,"tagName":97,"properties":951,"children":952},{"style":125},[953],{"type":26,"value":128},{"type":30,"tagName":97,"properties":955,"children":956},{"style":119},[957],{"type":26,"value":697},{"type":30,"tagName":97,"properties":959,"children":960},{"style":131},[961],{"type":26,"value":786},{"type":30,"tagName":97,"properties":963,"children":964},{"style":119},[965],{"type":26,"value":966},"], fill",{"type":30,"tagName":97,"properties":968,"children":969},{"style":125},[970],{"type":26,"value":128},{"type":30,"tagName":97,"properties":972,"children":973},{"style":160},[974],{"type":26,"value":163},{"type":30,"tagName":97,"properties":976,"children":977},{"style":119},[978],{"type":26,"value":242},{"type":30,"tagName":97,"properties":980,"children":981},{"style":125},[982],{"type":26,"value":128},{"type":30,"tagName":97,"properties":984,"children":985},{"style":119},[986],{"type":26,"value":697},{"type":30,"tagName":97,"properties":988,"children":989},{"style":131},[990],{"type":26,"value":991},"\"Spike\"",{"type":30,"tagName":97,"properties":993,"children":994},{"style":119},[995],{"type":26,"value":737},{"type":30,"tagName":97,"properties":997,"children":998},{"style":125},[999],{"type":26,"value":128},{"type":30,"tagName":97,"properties":1001,"children":1002},{"style":119},[1003],{"type":26,"value":697},{"type":30,"tagName":97,"properties":1005,"children":1006},{"style":131},[1007],{"type":26,"value":1008},"\"volume anomaly above the threshold\"",{"type":30,"tagName":97,"properties":1010,"children":1011},{"style":119},[1012],{"type":26,"value":755},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1015,"children":1016},{"class":99},[1017],{"type":30,"tagName":97,"properties":1018,"children":1019},{"style":119},[1020],{"type":26,"value":1021},"}",{"type":26,"value":27},{"type":30,"tagName":64,"properties":1024,"children":1026,"position":1036},{"id":1025},"the-indicator",[1027],{"type":26,"value":1028,"position":1029},"The Indicator",{"start":1030,"end":1033},{"line":1031,"column":73,"offset":1032},35,1989,{"line":1031,"column":1034,"offset":1035},17,2002,{"start":1037,"end":1039},{"line":1031,"column":20,"offset":1038},1986,{"line":1031,"column":1034,"offset":1035},{"type":26,"value":27},{"type":13,"children":1042},[1043],{"type":30,"tagName":86,"properties":1044,"children":1045,"data":-1},{"class":88,"style":89,"tabindex":90},[1046],{"type":30,"tagName":93,"properties":1047,"children":1048},{},[1049,1077,1078,1103,1104,1129,1130,1155,1156,1181,1182,1185,1186,1244,1245,1297,1298,1320,1321,1368,1369,1404,1405,1444,1445,1465,1466,1469,1470,1510,1511,1545,1546,1579,1580,1583,1584,1621,1622,1665,1666,1688,1689,1696,1697,1700,1701,1734,1735,1771,1772,1812,1813,1820,1821,1824,1825,1857,1858,1871,1872,1885,1886,1898,1899,1942,1943,1955,1956,1963,1964,1967,1968,2000,2001,2018,2019,2038,2039],{"type":30,"tagName":97,"properties":1050,"children":1051},{"class":99},[1052,1057,1062,1067,1072],{"type":30,"tagName":97,"properties":1053,"children":1054},{"style":125},[1055],{"type":26,"value":1056},"import",{"type":30,"tagName":97,"properties":1058,"children":1059},{"style":119},[1060],{"type":26,"value":1061}," { input, line, lower, none, ohlcv, output, param, shape } ",{"type":30,"tagName":97,"properties":1063,"children":1064},{"style":125},[1065],{"type":26,"value":1066},"from",{"type":30,"tagName":97,"properties":1068,"children":1069},{"style":131},[1070],{"type":26,"value":1071}," \"./sdk/declare\"",{"type":30,"tagName":97,"properties":1073,"children":1074},{"style":119},[1075],{"type":26,"value":1076},";",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1079,"children":1080},{"class":99},[1081,1085,1090,1094,1099],{"type":30,"tagName":97,"properties":1082,"children":1083},{"style":125},[1084],{"type":26,"value":1056},{"type":30,"tagName":97,"properties":1086,"children":1087},{"style":119},[1088],{"type":26,"value":1089}," { in_volume } ",{"type":30,"tagName":97,"properties":1091,"children":1092},{"style":125},[1093],{"type":26,"value":1066},{"type":30,"tagName":97,"properties":1095,"children":1096},{"style":131},[1097],{"type":26,"value":1098}," \"./gen/inputs\"",{"type":30,"tagName":97,"properties":1100,"children":1101},{"style":119},[1102],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1105,"children":1106},{"class":99},[1107,1111,1116,1120,1125],{"type":30,"tagName":97,"properties":1108,"children":1109},{"style":125},[1110],{"type":26,"value":1056},{"type":30,"tagName":97,"properties":1112,"children":1113},{"style":119},[1114],{"type":26,"value":1115}," { emitRow, out_is_spike, out_spike, out_threshold, out_z } ",{"type":30,"tagName":97,"properties":1117,"children":1118},{"style":125},[1119],{"type":26,"value":1066},{"type":30,"tagName":97,"properties":1121,"children":1122},{"style":131},[1123],{"type":26,"value":1124}," \"./gen/outputs\"",{"type":30,"tagName":97,"properties":1126,"children":1127},{"style":119},[1128],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1131,"children":1132},{"class":99},[1133,1137,1142,1146,1151],{"type":30,"tagName":97,"properties":1134,"children":1135},{"style":125},[1136],{"type":26,"value":1056},{"type":30,"tagName":97,"properties":1138,"children":1139},{"style":119},[1140],{"type":26,"value":1141}," { p_lookback, p_threshold } ",{"type":30,"tagName":97,"properties":1143,"children":1144},{"style":125},[1145],{"type":26,"value":1066},{"type":30,"tagName":97,"properties":1147,"children":1148},{"style":131},[1149],{"type":26,"value":1150}," \"./gen/params\"",{"type":30,"tagName":97,"properties":1152,"children":1153},{"style":119},[1154],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1157,"children":1158},{"class":99},[1159,1163,1168,1172,1177],{"type":30,"tagName":97,"properties":1160,"children":1161},{"style":125},[1162],{"type":26,"value":1056},{"type":30,"tagName":97,"properties":1164,"children":1165},{"style":119},[1166],{"type":26,"value":1167}," { Zscore } ",{"type":30,"tagName":97,"properties":1169,"children":1170},{"style":125},[1171],{"type":26,"value":1066},{"type":30,"tagName":97,"properties":1173,"children":1174},{"style":131},[1175],{"type":26,"value":1176}," \"./sdk/ta\"",{"type":30,"tagName":97,"properties":1178,"children":1179},{"style":119},[1180],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1183,"children":1184},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":1187,"children":1188},{"class":99},[1189,1194,1199,1203,1208,1212,1217,1221,1225,1229,1234,1239],{"type":30,"tagName":97,"properties":1190,"children":1191},{"style":113},[1192],{"type":26,"value":1193},"param",{"type":30,"tagName":97,"properties":1195,"children":1196},{"style":119},[1197],{"type":26,"value":1198},"(",{"type":30,"tagName":97,"properties":1200,"children":1201},{"style":131},[1202],{"type":26,"value":209},{"type":30,"tagName":97,"properties":1204,"children":1205},{"style":119},[1206],{"type":26,"value":1207},", ",{"type":30,"tagName":97,"properties":1209,"children":1210},{"style":160},[1211],{"type":26,"value":237},{"type":30,"tagName":97,"properties":1213,"children":1214},{"style":119},[1215],{"type":26,"value":1216},", { min: ",{"type":30,"tagName":97,"properties":1218,"children":1219},{"style":160},[1220],{"type":26,"value":270},{"type":30,"tagName":97,"properties":1222,"children":1223},{"style":119},[1224],{"type":26,"value":275},{"type":30,"tagName":97,"properties":1226,"children":1227},{"style":160},[1228],{"type":26,"value":280},{"type":30,"tagName":97,"properties":1230,"children":1231},{"style":119},[1232],{"type":26,"value":1233},", description: ",{"type":30,"tagName":97,"properties":1235,"children":1236},{"style":131},[1237],{"type":26,"value":1238},"\"Bars of history that define normal volume\"",{"type":30,"tagName":97,"properties":1240,"children":1241},{"style":119},[1242],{"type":26,"value":1243}," });",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1246,"children":1247},{"class":99},[1248,1252,1256,1260,1264,1268,1272,1276,1280,1284,1288,1293],{"type":30,"tagName":97,"properties":1249,"children":1250},{"style":113},[1251],{"type":26,"value":1193},{"type":30,"tagName":97,"properties":1253,"children":1254},{"style":119},[1255],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1257,"children":1258},{"style":131},[1259],{"type":26,"value":328},{"type":30,"tagName":97,"properties":1261,"children":1262},{"style":119},[1263],{"type":26,"value":1207},{"type":30,"tagName":97,"properties":1265,"children":1266},{"style":160},[1267],{"type":26,"value":354},{"type":30,"tagName":97,"properties":1269,"children":1270},{"style":119},[1271],{"type":26,"value":1216},{"type":30,"tagName":97,"properties":1273,"children":1274},{"style":160},[1275],{"type":26,"value":384},{"type":30,"tagName":97,"properties":1277,"children":1278},{"style":119},[1279],{"type":26,"value":275},{"type":30,"tagName":97,"properties":1281,"children":1282},{"style":160},[1283],{"type":26,"value":393},{"type":30,"tagName":97,"properties":1285,"children":1286},{"style":119},[1287],{"type":26,"value":1233},{"type":30,"tagName":97,"properties":1289,"children":1290},{"style":131},[1291],{"type":26,"value":1292},"\"Z-score that counts as a spike\"",{"type":30,"tagName":97,"properties":1294,"children":1295},{"style":119},[1296],{"type":26,"value":1243},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1299,"children":1300},{"class":99},[1301,1306,1310,1315],{"type":30,"tagName":97,"properties":1302,"children":1303},{"style":113},[1304],{"type":26,"value":1305},"input",{"type":30,"tagName":97,"properties":1307,"children":1308},{"style":119},[1309],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1311,"children":1312},{"style":131},[1313],{"type":26,"value":1314},"\"volume\"",{"type":30,"tagName":97,"properties":1316,"children":1317},{"style":119},[1318],{"type":26,"value":1319},", ohlcv.volume);",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1322,"children":1323},{"class":99},[1324,1329,1333,1338,1343,1347,1352,1356,1360,1364],{"type":30,"tagName":97,"properties":1325,"children":1326},{"style":113},[1327],{"type":26,"value":1328},"output",{"type":30,"tagName":97,"properties":1330,"children":1331},{"style":119},[1332],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1334,"children":1335},{"style":131},[1336],{"type":26,"value":1337},"\"z\"",{"type":30,"tagName":97,"properties":1339,"children":1340},{"style":119},[1341],{"type":26,"value":1342},", line, lower, { color: ",{"type":30,"tagName":97,"properties":1344,"children":1345},{"style":131},[1346],{"type":26,"value":702},{"type":30,"tagName":97,"properties":1348,"children":1349},{"style":119},[1350],{"type":26,"value":1351},", width: ",{"type":30,"tagName":97,"properties":1353,"children":1354},{"style":160},[1355],{"type":26,"value":384},{"type":30,"tagName":97,"properties":1357,"children":1358},{"style":119},[1359],{"type":26,"value":1233},{"type":30,"tagName":97,"properties":1361,"children":1362},{"style":131},[1363],{"type":26,"value":732},{"type":30,"tagName":97,"properties":1365,"children":1366},{"style":119},[1367],{"type":26,"value":1243},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1370,"children":1371},{"class":99},[1372,1376,1380,1384,1388,1392,1396,1400],{"type":30,"tagName":97,"properties":1373,"children":1374},{"style":113},[1375],{"type":26,"value":1328},{"type":30,"tagName":97,"properties":1377,"children":1378},{"style":119},[1379],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1381,"children":1382},{"style":131},[1383],{"type":26,"value":328},{"type":30,"tagName":97,"properties":1385,"children":1386},{"style":119},[1387],{"type":26,"value":1342},{"type":30,"tagName":97,"properties":1389,"children":1390},{"style":131},[1391],{"type":26,"value":786},{"type":30,"tagName":97,"properties":1393,"children":1394},{"style":119},[1395],{"type":26,"value":1351},{"type":30,"tagName":97,"properties":1397,"children":1398},{"style":160},[1399],{"type":26,"value":384},{"type":30,"tagName":97,"properties":1401,"children":1402},{"style":119},[1403],{"type":26,"value":1243},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1406,"children":1407},{"class":99},[1408,1412,1416,1421,1426,1430,1435,1440],{"type":30,"tagName":97,"properties":1409,"children":1410},{"style":113},[1411],{"type":26,"value":1328},{"type":30,"tagName":97,"properties":1413,"children":1414},{"style":119},[1415],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1417,"children":1418},{"style":131},[1419],{"type":26,"value":1420},"\"spike\"",{"type":30,"tagName":97,"properties":1422,"children":1423},{"style":119},[1424],{"type":26,"value":1425},", shape, lower, { color: ",{"type":30,"tagName":97,"properties":1427,"children":1428},{"style":131},[1429],{"type":26,"value":786},{"type":30,"tagName":97,"properties":1431,"children":1432},{"style":119},[1433],{"type":26,"value":1434},", shape_where: ",{"type":30,"tagName":97,"properties":1436,"children":1437},{"style":131},[1438],{"type":26,"value":1439},"\"is_spike\"",{"type":30,"tagName":97,"properties":1441,"children":1442},{"style":119},[1443],{"type":26,"value":1243},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1446,"children":1447},{"class":99},[1448,1452,1456,1460],{"type":30,"tagName":97,"properties":1449,"children":1450},{"style":113},[1451],{"type":26,"value":1328},{"type":30,"tagName":97,"properties":1453,"children":1454},{"style":119},[1455],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1457,"children":1458},{"style":131},[1459],{"type":26,"value":1439},{"type":30,"tagName":97,"properties":1461,"children":1462},{"style":119},[1463],{"type":26,"value":1464},", none);",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1467,"children":1468},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":1471,"children":1472},{"class":99},[1473,1478,1483,1487,1492,1497,1501,1505],{"type":30,"tagName":97,"properties":1474,"children":1475},{"style":125},[1476],{"type":26,"value":1477},"let",{"type":30,"tagName":97,"properties":1479,"children":1480},{"style":119},[1481],{"type":26,"value":1482}," zscore ",{"type":30,"tagName":97,"properties":1484,"children":1485},{"style":125},[1486],{"type":26,"value":128},{"type":30,"tagName":97,"properties":1488,"children":1489},{"style":125},[1490],{"type":26,"value":1491}," new",{"type":30,"tagName":97,"properties":1493,"children":1494},{"style":113},[1495],{"type":26,"value":1496}," Zscore",{"type":30,"tagName":97,"properties":1498,"children":1499},{"style":119},[1500],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1502,"children":1503},{"style":160},[1504],{"type":26,"value":237},{"type":30,"tagName":97,"properties":1506,"children":1507},{"style":119},[1508],{"type":26,"value":1509},");",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1512,"children":1513},{"class":99},[1514,1518,1522,1526,1531,1536,1541],{"type":30,"tagName":97,"properties":1515,"children":1516},{"style":125},[1517],{"type":26,"value":1477},{"type":30,"tagName":97,"properties":1519,"children":1520},{"style":119},[1521],{"type":26,"value":878},{"type":30,"tagName":97,"properties":1523,"children":1524},{"style":125},[1525],{"type":26,"value":657},{"type":30,"tagName":97,"properties":1527,"children":1528},{"style":113},[1529],{"type":26,"value":1530}," f64",{"type":30,"tagName":97,"properties":1532,"children":1533},{"style":125},[1534],{"type":26,"value":1535}," =",{"type":30,"tagName":97,"properties":1537,"children":1538},{"style":160},[1539],{"type":26,"value":1540}," 2.5",{"type":30,"tagName":97,"properties":1542,"children":1543},{"style":119},[1544],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1547,"children":1548},{"class":99},[1549,1553,1558,1562,1566,1570,1575],{"type":30,"tagName":97,"properties":1550,"children":1551},{"style":125},[1552],{"type":26,"value":1477},{"type":30,"tagName":97,"properties":1554,"children":1555},{"style":119},[1556],{"type":26,"value":1557}," z",{"type":30,"tagName":97,"properties":1559,"children":1560},{"style":125},[1561],{"type":26,"value":657},{"type":30,"tagName":97,"properties":1563,"children":1564},{"style":113},[1565],{"type":26,"value":1530},{"type":30,"tagName":97,"properties":1567,"children":1568},{"style":125},[1569],{"type":26,"value":1535},{"type":30,"tagName":97,"properties":1571,"children":1572},{"style":160},[1573],{"type":26,"value":1574}," NaN",{"type":30,"tagName":97,"properties":1576,"children":1577},{"style":119},[1578],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1581,"children":1582},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":1585,"children":1586},{"class":99},[1587,1592,1597,1602,1607,1611,1616],{"type":30,"tagName":97,"properties":1588,"children":1589},{"style":125},[1590],{"type":26,"value":1591},"export",{"type":30,"tagName":97,"properties":1593,"children":1594},{"style":125},[1595],{"type":26,"value":1596}," function",{"type":30,"tagName":97,"properties":1598,"children":1599},{"style":113},[1600],{"type":26,"value":1601}," init",{"type":30,"tagName":97,"properties":1603,"children":1604},{"style":119},[1605],{"type":26,"value":1606},"()",{"type":30,"tagName":97,"properties":1608,"children":1609},{"style":125},[1610],{"type":26,"value":657},{"type":30,"tagName":97,"properties":1612,"children":1613},{"style":160},[1614],{"type":26,"value":1615}," void",{"type":30,"tagName":97,"properties":1617,"children":1618},{"style":119},[1619],{"type":26,"value":1620}," {",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1623,"children":1624},{"class":99},[1625,1630,1634,1638,1642,1646,1651,1655,1660],{"type":30,"tagName":97,"properties":1626,"children":1627},{"style":119},[1628],{"type":26,"value":1629},"  zscore ",{"type":30,"tagName":97,"properties":1631,"children":1632},{"style":125},[1633],{"type":26,"value":128},{"type":30,"tagName":97,"properties":1635,"children":1636},{"style":125},[1637],{"type":26,"value":1491},{"type":30,"tagName":97,"properties":1639,"children":1640},{"style":113},[1641],{"type":26,"value":1496},{"type":30,"tagName":97,"properties":1643,"children":1644},{"style":119},[1645],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1647,"children":1648},{"style":113},[1649],{"type":26,"value":1650},"i32",{"type":30,"tagName":97,"properties":1652,"children":1653},{"style":119},[1654],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1656,"children":1657},{"style":113},[1658],{"type":26,"value":1659},"p_lookback",{"type":30,"tagName":97,"properties":1661,"children":1662},{"style":119},[1663],{"type":26,"value":1664},"()));",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1667,"children":1668},{"class":99},[1669,1674,1678,1683],{"type":30,"tagName":97,"properties":1670,"children":1671},{"style":119},[1672],{"type":26,"value":1673},"  threshold ",{"type":30,"tagName":97,"properties":1675,"children":1676},{"style":125},[1677],{"type":26,"value":128},{"type":30,"tagName":97,"properties":1679,"children":1680},{"style":113},[1681],{"type":26,"value":1682}," p_threshold",{"type":30,"tagName":97,"properties":1684,"children":1685},{"style":119},[1686],{"type":26,"value":1687},"();",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1690,"children":1691},{"class":99},[1692],{"type":30,"tagName":97,"properties":1693,"children":1694},{"style":119},[1695],{"type":26,"value":1021},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1698,"children":1699},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":1702,"children":1703},{"class":99},[1704,1708,1712,1717,1721,1725,1730],{"type":30,"tagName":97,"properties":1705,"children":1706},{"style":125},[1707],{"type":26,"value":1591},{"type":30,"tagName":97,"properties":1709,"children":1710},{"style":125},[1711],{"type":26,"value":1596},{"type":30,"tagName":97,"properties":1713,"children":1714},{"style":113},[1715],{"type":26,"value":1716}," state",{"type":30,"tagName":97,"properties":1718,"children":1719},{"style":119},[1720],{"type":26,"value":1606},{"type":30,"tagName":97,"properties":1722,"children":1723},{"style":125},[1724],{"type":26,"value":657},{"type":30,"tagName":97,"properties":1726,"children":1727},{"style":113},[1728],{"type":26,"value":1729}," i32",{"type":30,"tagName":97,"properties":1731,"children":1732},{"style":119},[1733],{"type":26,"value":1620},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1736,"children":1737},{"class":99},[1738,1743,1747,1752,1757,1761,1766],{"type":30,"tagName":97,"properties":1739,"children":1740},{"style":119},[1741],{"type":26,"value":1742},"  z ",{"type":30,"tagName":97,"properties":1744,"children":1745},{"style":125},[1746],{"type":26,"value":128},{"type":30,"tagName":97,"properties":1748,"children":1749},{"style":119},[1750],{"type":26,"value":1751}," zscore.",{"type":30,"tagName":97,"properties":1753,"children":1754},{"style":113},[1755],{"type":26,"value":1756},"update",{"type":30,"tagName":97,"properties":1758,"children":1759},{"style":119},[1760],{"type":26,"value":1198},{"type":30,"tagName":97,"properties":1762,"children":1763},{"style":113},[1764],{"type":26,"value":1765},"in_volume",{"type":30,"tagName":97,"properties":1767,"children":1768},{"style":119},[1769],{"type":26,"value":1770},"());",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1773,"children":1774},{"class":99},[1775,1780,1785,1790,1794,1798,1803,1808],{"type":30,"tagName":97,"properties":1776,"children":1777},{"style":125},[1778],{"type":26,"value":1779},"  return",{"type":30,"tagName":97,"properties":1781,"children":1782},{"style":113},[1783],{"type":26,"value":1784}," isNaN",{"type":30,"tagName":97,"properties":1786,"children":1787},{"style":119},[1788],{"type":26,"value":1789},"(z) ",{"type":30,"tagName":97,"properties":1791,"children":1792},{"style":125},[1793],{"type":26,"value":604},{"type":30,"tagName":97,"properties":1795,"children":1796},{"style":160},[1797],{"type":26,"value":594},{"type":30,"tagName":97,"properties":1799,"children":1800},{"style":125},[1801],{"type":26,"value":1802}," :",{"type":30,"tagName":97,"properties":1804,"children":1805},{"style":160},[1806],{"type":26,"value":1807}," 1",{"type":30,"tagName":97,"properties":1809,"children":1810},{"style":119},[1811],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1814,"children":1815},{"class":99},[1816],{"type":30,"tagName":97,"properties":1817,"children":1818},{"style":119},[1819],{"type":26,"value":1021},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1822,"children":1823},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":1826,"children":1827},{"class":99},[1828,1832,1836,1841,1845,1849,1853],{"type":30,"tagName":97,"properties":1829,"children":1830},{"style":125},[1831],{"type":26,"value":1591},{"type":30,"tagName":97,"properties":1833,"children":1834},{"style":125},[1835],{"type":26,"value":1596},{"type":30,"tagName":97,"properties":1837,"children":1838},{"style":113},[1839],{"type":26,"value":1840}," finalize",{"type":30,"tagName":97,"properties":1842,"children":1843},{"style":119},[1844],{"type":26,"value":1606},{"type":30,"tagName":97,"properties":1846,"children":1847},{"style":125},[1848],{"type":26,"value":657},{"type":30,"tagName":97,"properties":1850,"children":1851},{"style":160},[1852],{"type":26,"value":1615},{"type":30,"tagName":97,"properties":1854,"children":1855},{"style":119},[1856],{"type":26,"value":1620},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1859,"children":1860},{"class":99},[1861,1866],{"type":30,"tagName":97,"properties":1862,"children":1863},{"style":113},[1864],{"type":26,"value":1865},"  out_z",{"type":30,"tagName":97,"properties":1867,"children":1868},{"style":119},[1869],{"type":26,"value":1870},"(z);",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1873,"children":1874},{"class":99},[1875,1880],{"type":30,"tagName":97,"properties":1876,"children":1877},{"style":113},[1878],{"type":26,"value":1879},"  out_threshold",{"type":30,"tagName":97,"properties":1881,"children":1882},{"style":119},[1883],{"type":26,"value":1884},"(threshold);",{"type":26,"value":27},{"type":30,"tagName":97,"properties":1887,"children":1888},{"class":99},[1889,1894],{"type":30,"tagName":97,"properties":1890,"children":1891},{"style":113},[1892],{"type":26,"value":1893},"  out_spike",{"type":30,"tagName":97,"properties":1895,"children":1896},{"style":119},[1897],{"type":26,"value":1870},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1900,"children":1901},{"class":99},[1902,1907,1912,1916,1920,1924,1929,1933,1938],{"type":30,"tagName":97,"properties":1903,"children":1904},{"style":113},[1905],{"type":26,"value":1906},"  out_is_spike",{"type":30,"tagName":97,"properties":1908,"children":1909},{"style":119},[1910],{"type":26,"value":1911},"(z ",{"type":30,"tagName":97,"properties":1913,"children":1914},{"style":125},[1915],{"type":26,"value":873},{"type":30,"tagName":97,"properties":1917,"children":1918},{"style":119},[1919],{"type":26,"value":307},{"type":30,"tagName":97,"properties":1921,"children":1922},{"style":125},[1923],{"type":26,"value":604},{"type":30,"tagName":97,"properties":1925,"children":1926},{"style":160},[1927],{"type":26,"value":1928}," 1.0",{"type":30,"tagName":97,"properties":1930,"children":1931},{"style":125},[1932],{"type":26,"value":1802},{"type":30,"tagName":97,"properties":1934,"children":1935},{"style":160},[1936],{"type":26,"value":1937}," 0.0",{"type":30,"tagName":97,"properties":1939,"children":1940},{"style":119},[1941],{"type":26,"value":1509},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1944,"children":1945},{"class":99},[1946,1951],{"type":30,"tagName":97,"properties":1947,"children":1948},{"style":113},[1949],{"type":26,"value":1950},"  emitRow",{"type":30,"tagName":97,"properties":1952,"children":1953},{"style":119},[1954],{"type":26,"value":1687},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1957,"children":1958},{"class":99},[1959],{"type":30,"tagName":97,"properties":1960,"children":1961},{"style":119},[1962],{"type":26,"value":1021},{"type":26,"value":27},{"type":30,"tagName":97,"properties":1965,"children":1966},{"class":99},[],{"type":26,"value":27},{"type":30,"tagName":97,"properties":1969,"children":1970},{"class":99},[1971,1975,1979,1984,1988,1992,1996],{"type":30,"tagName":97,"properties":1972,"children":1973},{"style":125},[1974],{"type":26,"value":1591},{"type":30,"tagName":97,"properties":1976,"children":1977},{"style":125},[1978],{"type":26,"value":1596},{"type":30,"tagName":97,"properties":1980,"children":1981},{"style":113},[1982],{"type":26,"value":1983}," reset",{"type":30,"tagName":97,"properties":1985,"children":1986},{"style":119},[1987],{"type":26,"value":1606},{"type":30,"tagName":97,"properties":1989,"children":1990},{"style":125},[1991],{"type":26,"value":657},{"type":30,"tagName":97,"properties":1993,"children":1994},{"style":160},[1995],{"type":26,"value":1615},{"type":30,"tagName":97,"properties":1997,"children":1998},{"style":119},[1999],{"type":26,"value":1620},{"type":26,"value":27},{"type":30,"tagName":97,"properties":2002,"children":2003},{"class":99},[2004,2009,2014],{"type":30,"tagName":97,"properties":2005,"children":2006},{"style":119},[2007],{"type":26,"value":2008},"  zscore.",{"type":30,"tagName":97,"properties":2010,"children":2011},{"style":113},[2012],{"type":26,"value":2013},"reset",{"type":30,"tagName":97,"properties":2015,"children":2016},{"style":119},[2017],{"type":26,"value":1687},{"type":26,"value":27},{"type":30,"tagName":97,"properties":2020,"children":2021},{"class":99},[2022,2026,2030,2034],{"type":30,"tagName":97,"properties":2023,"children":2024},{"style":119},[2025],{"type":26,"value":1742},{"type":30,"tagName":97,"properties":2027,"children":2028},{"style":125},[2029],{"type":26,"value":128},{"type":30,"tagName":97,"properties":2031,"children":2032},{"style":160},[2033],{"type":26,"value":1574},{"type":30,"tagName":97,"properties":2035,"children":2036},{"style":119},[2037],{"type":26,"value":1076},{"type":26,"value":27},{"type":30,"tagName":97,"properties":2040,"children":2041},{"class":99},[2042],{"type":30,"tagName":97,"properties":2043,"children":2044},{"style":119},[2045],{"type":26,"value":1021},{"type":26,"value":27},{"type":30,"tagName":64,"properties":2048,"children":2050,"position":2060},{"id":2049},"how-it-works",[2051],{"type":26,"value":2052,"position":2053},"How it works",{"start":2054,"end":2057},{"line":2055,"column":73,"offset":2056},80,3310,{"line":2055,"column":2058,"offset":2059},16,3322,{"start":2061,"end":2063},{"line":2055,"column":20,"offset":2062},3307,{"line":2055,"column":2058,"offset":2059},{"type":26,"value":27},{"type":30,"tagName":31,"properties":2066,"children":2067,"position":2213},{},[2068,2088,2095,2108,2115,2127,2134,2147,2154,2167,2174,2187,2194,2206],{"type":30,"tagName":2069,"properties":2070,"children":2071,"position":2082},"strong",{},[2072],{"type":26,"value":2073,"position":2074},"The data.",{"start":2075,"end":2079},{"line":2076,"column":2077,"offset":2078},82,3,3326,{"line":2076,"column":2080,"offset":2081},12,3335,{"start":2083,"end":2085},{"line":2076,"column":20,"offset":2084},3324,{"line":2076,"column":2086,"offset":2087},14,3337,{"type":26,"value":2089,"position":2090}," One ",{"start":2091,"end":2092},{"line":2076,"column":2086,"offset":2087},{"line":2076,"column":2093,"offset":2094},19,3342,{"type":30,"tagName":93,"properties":2096,"children":2097,"position":2105},{},[2098],{"type":26,"value":2099,"position":2100},"input(\"volume\", ohlcv.volume)",{"start":2101,"end":2102},{"line":2076,"column":2093,"offset":2094},{"line":2076,"column":2103,"offset":2104},50,3373,{"start":2106,"end":2107},{"line":2076,"column":2093,"offset":2094},{"line":2076,"column":2103,"offset":2104},{"type":26,"value":2109,"position":2110}," gives the module the chart's own volume, one value per bar, read in ",{"start":2111,"end":2112},{"line":2076,"column":2103,"offset":2104},{"line":2076,"column":2113,"offset":2114},119,3442,{"type":30,"tagName":93,"properties":2116,"children":2117,"position":2124},{},[2118],{"type":26,"value":2119,"position":2120},"state()",{"start":2121,"end":2122},{"line":2076,"column":2113,"offset":2114},{"line":2076,"column":23,"offset":2123},3451,{"start":2125,"end":2126},{"line":2076,"column":2113,"offset":2114},{"line":2076,"column":23,"offset":2123},{"type":26,"value":2128,"position":2129}," through the generated ",{"start":2130,"end":2131},{"line":2076,"column":23,"offset":2123},{"line":2076,"column":2132,"offset":2133},151,3474,{"type":30,"tagName":93,"properties":2135,"children":2136,"position":2144},{},[2137],{"type":26,"value":2138,"position":2139},"in_volume()",{"start":2140,"end":2141},{"line":2076,"column":2132,"offset":2133},{"line":2076,"column":2142,"offset":2143},164,3487,{"start":2145,"end":2146},{"line":2076,"column":2132,"offset":2133},{"line":2076,"column":2142,"offset":2143},{"type":26,"value":2148,"position":2149}," accessor. That is the only feed the detector needs. There is no ",{"start":2150,"end":2151},{"line":2076,"column":2142,"offset":2143},{"line":2076,"column":2152,"offset":2153},229,3552,{"type":30,"tagName":93,"properties":2155,"children":2156,"position":2164},{},[2157],{"type":26,"value":2158,"position":2159},"timeseries",{"start":2160,"end":2161},{"line":2076,"column":2152,"offset":2153},{"line":2076,"column":2162,"offset":2163},241,3564,{"start":2165,"end":2166},{"line":2076,"column":2152,"offset":2153},{"line":2076,"column":2162,"offset":2163},{"type":26,"value":2168,"position":2169}," to declare and no ",{"start":2170,"end":2171},{"line":2076,"column":2162,"offset":2163},{"line":2076,"column":2172,"offset":2173},260,3583,{"type":30,"tagName":93,"properties":2175,"children":2176,"position":2184},{},[2177],{"type":26,"value":2178,"position":2179},"d.volume[0]",{"start":2180,"end":2181},{"line":2076,"column":2172,"offset":2173},{"line":2076,"column":2182,"offset":2183},273,3596,{"start":2185,"end":2186},{"line":2076,"column":2172,"offset":2173},{"line":2076,"column":2182,"offset":2183},{"type":26,"value":2188,"position":2189}," to index: ",{"start":2190,"end":2191},{"line":2076,"column":2182,"offset":2183},{"line":2076,"column":2192,"offset":2193},284,3607,{"type":30,"tagName":93,"properties":2195,"children":2196,"position":2203},{},[2197],{"type":26,"value":2119,"position":2198},{"start":2199,"end":2200},{"line":2076,"column":2192,"offset":2193},{"line":2076,"column":2201,"offset":2202},293,3616,{"start":2204,"end":2205},{"line":2076,"column":2192,"offset":2193},{"line":2076,"column":2201,"offset":2202},{"type":26,"value":2207,"position":2208}," sees this bar's value and nothing else.",{"start":2209,"end":2210},{"line":2076,"column":2201,"offset":2202},{"line":2076,"column":2211,"offset":2212},333,3656,{"start":2214,"end":2215},{"line":2076,"column":20,"offset":2084},{"line":2076,"column":2211,"offset":2212},{"type":26,"value":27},{"type":30,"tagName":31,"properties":2218,"children":2219,"position":2344},{},[2220,2238,2245,2258,2265,2278,2285,2298,2305,2318,2325,2337],{"type":30,"tagName":2069,"properties":2221,"children":2222,"position":2232},{},[2223],{"type":26,"value":2224,"position":2225},"The score.",{"start":2226,"end":2229},{"line":2227,"column":2077,"offset":2228},84,3660,{"line":2227,"column":2230,"offset":2231},13,3670,{"start":2233,"end":2235},{"line":2227,"column":20,"offset":2234},3658,{"line":2227,"column":2236,"offset":2237},15,3672,{"type":26,"value":2239,"position":2240}," A z-score answers \"how surprising is this number?\" You need two reference points: where volume usually sits, and how much it normally wobbles. ",{"start":2241,"end":2242},{"line":2227,"column":2236,"offset":2237},{"line":2227,"column":2243,"offset":2244},159,3816,{"type":30,"tagName":93,"properties":2246,"children":2247,"position":2255},{},[2248],{"type":26,"value":2249,"position":2250},"Zscore",{"start":2251,"end":2252},{"line":2227,"column":2243,"offset":2244},{"line":2227,"column":2253,"offset":2254},167,3824,{"start":2256,"end":2257},{"line":2227,"column":2243,"offset":2244},{"line":2227,"column":2253,"offset":2254},{"type":26,"value":2259,"position":2260}," from ",{"start":2261,"end":2262},{"line":2227,"column":2253,"offset":2254},{"line":2227,"column":2263,"offset":2264},173,3830,{"type":30,"tagName":93,"properties":2266,"children":2267,"position":2275},{},[2268],{"type":26,"value":2269,"position":2270},"./sdk/ta",{"start":2271,"end":2272},{"line":2227,"column":2263,"offset":2264},{"line":2227,"column":2273,"offset":2274},183,3840,{"start":2276,"end":2277},{"line":2227,"column":2263,"offset":2264},{"line":2227,"column":2273,"offset":2274},{"type":26,"value":2279,"position":2280}," is both reference points in one class: ",{"start":2281,"end":2282},{"line":2227,"column":2273,"offset":2274},{"line":2227,"column":2283,"offset":2284},223,3880,{"type":30,"tagName":93,"properties":2286,"children":2287,"position":2295},{},[2288],{"type":26,"value":2289,"position":2290},"update(x)",{"start":2291,"end":2292},{"line":2227,"column":2283,"offset":2284},{"line":2227,"column":2293,"offset":2294},234,3891,{"start":2296,"end":2297},{"line":2227,"column":2283,"offset":2284},{"line":2227,"column":2293,"offset":2294},{"type":26,"value":2299,"position":2300}," folds one bar into its window and returns ",{"start":2301,"end":2302},{"line":2227,"column":2293,"offset":2294},{"line":2227,"column":2303,"offset":2304},277,3934,{"type":30,"tagName":93,"properties":2306,"children":2307,"position":2315},{},[2308],{"type":26,"value":2309,"position":2310},"(x - mean) / stdev",{"start":2311,"end":2312},{"line":2227,"column":2303,"offset":2304},{"line":2227,"column":2313,"offset":2314},297,3954,{"start":2316,"end":2317},{"line":2227,"column":2303,"offset":2304},{"line":2227,"column":2313,"offset":2314},{"type":26,"value":2319,"position":2320}," over that window, or ",{"start":2321,"end":2322},{"line":2227,"column":2313,"offset":2314},{"line":2227,"column":2323,"offset":2324},319,3976,{"type":30,"tagName":93,"properties":2326,"children":2327,"position":2334},{},[2328],{"type":26,"value":90,"position":2329},{"start":2330,"end":2331},{"line":2227,"column":2323,"offset":2324},{"line":2227,"column":2332,"offset":2333},322,3979,{"start":2335,"end":2336},{"line":2227,"column":2323,"offset":2324},{"line":2227,"column":2332,"offset":2333},{"type":26,"value":2338,"position":2339}," when the window is flat. Because it is a ratio, it is comparable across any symbol or timeframe. A whale print on BTC and a thin altcoin both light up at the same number.",{"start":2340,"end":2341},{"line":2227,"column":2332,"offset":2333},{"line":2227,"column":2342,"offset":2343},493,4150,{"start":2345,"end":2346},{"line":2227,"column":20,"offset":2234},{"line":2227,"column":2342,"offset":2343},{"type":26,"value":27},{"type":30,"tagName":31,"properties":2349,"children":2350,"position":2496},{},[2351,2369,2376,2389,2396,2408,2415,2427,2434,2446,2453,2464,2471,2489],{"type":30,"tagName":2069,"properties":2352,"children":2353,"position":2363},{},[2354],{"type":26,"value":2355,"position":2356},"The warm-up guard.",{"start":2357,"end":2360},{"line":2358,"column":2077,"offset":2359},86,4154,{"line":2358,"column":2361,"offset":2362},21,4172,{"start":2364,"end":2366},{"line":2358,"column":20,"offset":2365},4152,{"line":2358,"column":2367,"offset":2368},23,4174,{"type":26,"value":2370,"position":2371}," Until ",{"start":2372,"end":2373},{"line":2358,"column":2367,"offset":2368},{"line":2358,"column":2374,"offset":2375},30,4181,{"type":30,"tagName":93,"properties":2377,"children":2378,"position":2386},{},[2379],{"type":26,"value":2380,"position":2381},"lookback",{"start":2382,"end":2383},{"line":2358,"column":2374,"offset":2375},{"line":2358,"column":2384,"offset":2385},40,4191,{"start":2387,"end":2388},{"line":2358,"column":2374,"offset":2375},{"line":2358,"column":2384,"offset":2385},{"type":26,"value":2390,"position":2391}," bars have loaded, the class returns ",{"start":2392,"end":2393},{"line":2358,"column":2384,"offset":2385},{"line":2358,"column":2394,"offset":2395},77,4228,{"type":30,"tagName":93,"properties":2397,"children":2398,"position":2405},{},[2399],{"type":26,"value":2400,"position":2401},"NaN",{"start":2402,"end":2403},{"line":2358,"column":2394,"offset":2395},{"line":2358,"column":2076,"offset":2404},4233,{"start":2406,"end":2407},{"line":2358,"column":2394,"offset":2395},{"line":2358,"column":2076,"offset":2404},{"type":26,"value":2409,"position":2410},", and ",{"start":2411,"end":2412},{"line":2358,"column":2076,"offset":2404},{"line":2358,"column":2413,"offset":2414},88,4239,{"type":30,"tagName":93,"properties":2416,"children":2417,"position":2424},{},[2418],{"type":26,"value":2119,"position":2419},{"start":2420,"end":2421},{"line":2358,"column":2413,"offset":2414},{"line":2358,"column":2422,"offset":2423},97,4248,{"start":2425,"end":2426},{"line":2358,"column":2413,"offset":2414},{"line":2358,"column":2422,"offset":2423},{"type":26,"value":2428,"position":2429}," returns ",{"start":2430,"end":2431},{"line":2358,"column":2422,"offset":2423},{"line":2358,"column":2432,"offset":2433},106,4257,{"type":30,"tagName":93,"properties":2435,"children":2436,"position":2443},{},[2437],{"type":26,"value":90,"position":2438},{"start":2439,"end":2440},{"line":2358,"column":2432,"offset":2433},{"line":2358,"column":2441,"offset":2442},109,4260,{"start":2444,"end":2445},{"line":2358,"column":2432,"offset":2433},{"line":2358,"column":2441,"offset":2442},{"type":26,"value":2447,"position":2448},", which abstains the whole row: the pane stays empty there instead of drawing noise. The kScript needed an ",{"start":2449,"end":2450},{"line":2358,"column":2441,"offset":2442},{"line":2358,"column":2451,"offset":2452},216,4367,{"type":30,"tagName":93,"properties":2454,"children":2455,"position":2461},{},[2456],{"type":26,"value":551,"position":2457},{"start":2458,"end":2459},{"line":2358,"column":2451,"offset":2452},{"line":2358,"column":2283,"offset":2460},4374,{"start":2462,"end":2463},{"line":2358,"column":2451,"offset":2452},{"line":2358,"column":2283,"offset":2460},{"type":26,"value":2465,"position":2466}," ternary to get a quiet line; the Indicator gets the same result by not emitting a row at all (",{"start":2467,"end":2468},{"line":2358,"column":2283,"offset":2460},{"line":2358,"column":2469,"offset":2470},318,4469,{"type":30,"tagName":2472,"properties":2473,"children":2475,"position":2484},"a",{"href":2474},"../core-concepts/execution-model.md",[2476],{"type":26,"value":2477,"position":2478},"Execution model",{"start":2479,"end":2481},{"line":2358,"column":2323,"offset":2480},4470,{"line":2358,"column":2482,"offset":2483},334,4485,{"start":2485,"end":2486},{"line":2358,"column":2469,"offset":2470},{"line":2358,"column":2487,"offset":2488},372,4523,{"type":26,"value":2490,"position":2491},").",{"start":2492,"end":2493},{"line":2358,"column":2487,"offset":2488},{"line":2358,"column":2494,"offset":2495},374,4525,{"start":2497,"end":2498},{"line":2358,"column":20,"offset":2365},{"line":2358,"column":2494,"offset":2495},{"type":26,"value":27},{"type":30,"tagName":31,"properties":2501,"children":2502,"position":2700},{},[2503,2518,2524,2537,2544,2557,2564,2577,2584,2596,2603,2615,2622,2634,2641,2654,2661,2674,2681,2693],{"type":30,"tagName":2069,"properties":2504,"children":2505,"position":2513},{},[2506],{"type":26,"value":2507,"position":2508},"The output.",{"start":2509,"end":2511},{"line":2413,"column":2077,"offset":2510},4529,{"line":2413,"column":2086,"offset":2512},4540,{"start":2514,"end":2516},{"line":2413,"column":20,"offset":2515},4527,{"line":2413,"column":2058,"offset":2517},4542,{"type":26,"value":2519,"position":2520}," ",{"start":2521,"end":2522},{"line":2413,"column":2058,"offset":2517},{"line":2413,"column":1034,"offset":2523},4543,{"type":30,"tagName":93,"properties":2525,"children":2526,"position":2534},{},[2527],{"type":26,"value":2528,"position":2529},"z",{"start":2530,"end":2531},{"line":2413,"column":1034,"offset":2523},{"line":2413,"column":2532,"offset":2533},20,4546,{"start":2535,"end":2536},{"line":2413,"column":1034,"offset":2523},{"line":2413,"column":2532,"offset":2533},{"type":26,"value":2538,"position":2539}," plots as a line in its own pane (",{"start":2540,"end":2541},{"line":2413,"column":2532,"offset":2533},{"line":2413,"column":2542,"offset":2543},54,4580,{"type":30,"tagName":93,"properties":2545,"children":2546,"position":2554},{},[2547],{"type":26,"value":2548,"position":2549},"lower",{"start":2550,"end":2551},{"line":2413,"column":2542,"offset":2543},{"line":2413,"column":2552,"offset":2553},61,4587,{"start":2555,"end":2556},{"line":2413,"column":2542,"offset":2543},{"line":2413,"column":2552,"offset":2553},{"type":26,"value":2558,"position":2559},"). ",{"start":2560,"end":2561},{"line":2413,"column":2552,"offset":2553},{"line":2413,"column":2562,"offset":2563},64,4590,{"type":30,"tagName":93,"properties":2565,"children":2566,"position":2574},{},[2567],{"type":26,"value":2568,"position":2569},"threshold",{"start":2570,"end":2571},{"line":2413,"column":2562,"offset":2563},{"line":2413,"column":2572,"offset":2573},75,4601,{"start":2575,"end":2576},{"line":2413,"column":2562,"offset":2563},{"line":2413,"column":2572,"offset":2573},{"type":26,"value":2578,"position":2579}," is a line too, written to the same value on every bar, so you can see at a glance how close any bar is to firing: it is the ",{"start":2580,"end":2581},{"line":2413,"column":2572,"offset":2573},{"line":2413,"column":2582,"offset":2583},200,4726,{"type":30,"tagName":93,"properties":2585,"children":2586,"position":2593},{},[2587],{"type":26,"value":764,"position":2588},{"start":2589,"end":2590},{"line":2413,"column":2582,"offset":2583},{"line":2413,"column":2591,"offset":2592},207,4733,{"start":2594,"end":2595},{"line":2413,"column":2582,"offset":2583},{"line":2413,"column":2591,"offset":2592},{"type":26,"value":2597,"position":2598},". ",{"start":2599,"end":2600},{"line":2413,"column":2591,"offset":2592},{"line":2413,"column":2601,"offset":2602},209,4735,{"type":30,"tagName":93,"properties":2604,"children":2605,"position":2612},{},[2606],{"type":26,"value":2607,"position":2608},"spike",{"start":2609,"end":2610},{"line":2413,"column":2601,"offset":2602},{"line":2413,"column":2451,"offset":2611},4742,{"start":2613,"end":2614},{"line":2413,"column":2601,"offset":2602},{"line":2413,"column":2451,"offset":2611},{"type":26,"value":2616,"position":2617}," is a ",{"start":2618,"end":2619},{"line":2413,"column":2451,"offset":2611},{"line":2413,"column":2620,"offset":2621},222,4748,{"type":30,"tagName":93,"properties":2623,"children":2624,"position":2631},{},[2625],{"type":26,"value":2626,"position":2627},"shape",{"start":2628,"end":2629},{"line":2413,"column":2620,"offset":2621},{"line":2413,"column":2152,"offset":2630},4755,{"start":2632,"end":2633},{"line":2413,"column":2620,"offset":2621},{"line":2413,"column":2152,"offset":2630},{"type":26,"value":2635,"position":2636}," output whose value is the z-score (where the mark sits) and whose ",{"start":2637,"end":2638},{"line":2413,"column":2152,"offset":2630},{"line":2413,"column":2639,"offset":2640},296,4822,{"type":30,"tagName":93,"properties":2642,"children":2643,"position":2651},{},[2644],{"type":26,"value":2645,"position":2646},"shape_where",{"start":2647,"end":2648},{"line":2413,"column":2639,"offset":2640},{"line":2413,"column":2649,"offset":2650},309,4835,{"start":2652,"end":2653},{"line":2413,"column":2639,"offset":2640},{"line":2413,"column":2649,"offset":2650},{"type":26,"value":2655,"position":2656}," gate is the data-only ",{"start":2657,"end":2658},{"line":2413,"column":2649,"offset":2650},{"line":2413,"column":2659,"offset":2660},332,4858,{"type":30,"tagName":93,"properties":2662,"children":2663,"position":2671},{},[2664],{"type":26,"value":2665,"position":2666},"is_spike",{"start":2667,"end":2668},{"line":2413,"column":2659,"offset":2660},{"line":2413,"column":2669,"offset":2670},342,4868,{"start":2672,"end":2673},{"line":2413,"column":2659,"offset":2660},{"line":2413,"column":2669,"offset":2670},{"type":26,"value":2675,"position":2676}," output: the mark draws only on bars where the gate is ",{"start":2677,"end":2678},{"line":2413,"column":2669,"offset":2670},{"line":2413,"column":2679,"offset":2680},397,4923,{"type":30,"tagName":93,"properties":2682,"children":2683,"position":2690},{},[2684],{"type":26,"value":384,"position":2685},{"start":2686,"end":2687},{"line":2413,"column":2679,"offset":2680},{"line":2413,"column":2688,"offset":2689},400,4926,{"start":2691,"end":2692},{"line":2413,"column":2679,"offset":2680},{"line":2413,"column":2688,"offset":2689},{"type":26,"value":2694,"position":2695},". Decisions are numbers here, and the sheet turns them into looks.",{"start":2696,"end":2697},{"line":2413,"column":2688,"offset":2689},{"line":2413,"column":2698,"offset":2699},466,4992,{"start":2701,"end":2702},{"line":2413,"column":20,"offset":2515},{"line":2413,"column":2698,"offset":2699},{"type":26,"value":27},{"type":30,"tagName":64,"properties":2705,"children":2707,"position":2717},{"id":2706},"what-changed-in-the-port",[2708],{"type":26,"value":2709,"position":2710},"What changed in the port",{"start":2711,"end":2714},{"line":2712,"column":73,"offset":2713},90,4997,{"line":2712,"column":2715,"offset":2716},28,5021,{"start":2718,"end":2720},{"line":2712,"column":20,"offset":2719},4994,{"line":2712,"column":2715,"offset":2716},{"type":26,"value":27},{"type":30,"tagName":2723,"properties":2724,"children":2725,"position":3013},"ul",{},[2726,2727,2820,2821,2848,2849,2957,2958,3012],{"type":26,"value":27},{"type":30,"tagName":2728,"properties":2729,"children":2730,"position":2816},"li",{},[2731,2739,2752,2758,2770,2777,2789,2796,2809],{"type":26,"value":2732,"position":2733},"The ",{"start":2734,"end":2737},{"line":2735,"column":2077,"offset":2736},92,5025,{"line":2735,"column":54,"offset":2738},5029,{"type":30,"tagName":93,"properties":2740,"children":2741,"position":2749},{},[2742],{"type":26,"value":2743,"position":2744},"if (isSpike) plotShape(...)",{"start":2745,"end":2746},{"line":2735,"column":54,"offset":2738},{"line":2735,"column":2747,"offset":2748},36,5058,{"start":2750,"end":2751},{"line":2735,"column":54,"offset":2738},{"line":2735,"column":2747,"offset":2748},{"type":26,"value":2753,"position":2754}," block became two outputs: the mark's position (",{"start":2755,"end":2756},{"line":2735,"column":2747,"offset":2748},{"line":2735,"column":2227,"offset":2757},5106,{"type":30,"tagName":93,"properties":2759,"children":2760,"position":2767},{},[2761],{"type":26,"value":2607,"position":2762},{"start":2763,"end":2764},{"line":2735,"column":2227,"offset":2757},{"line":2735,"column":2765,"offset":2766},91,5113,{"start":2768,"end":2769},{"line":2735,"column":2227,"offset":2757},{"line":2735,"column":2765,"offset":2766},{"type":26,"value":2771,"position":2772},") and the decision that gates it (",{"start":2773,"end":2774},{"line":2735,"column":2765,"offset":2766},{"line":2735,"column":2775,"offset":2776},125,5147,{"type":30,"tagName":93,"properties":2778,"children":2779,"position":2786},{},[2780],{"type":26,"value":2665,"position":2781},{"start":2782,"end":2783},{"line":2735,"column":2775,"offset":2776},{"line":2735,"column":2784,"offset":2785},135,5157,{"start":2787,"end":2788},{"line":2735,"column":2775,"offset":2776},{"line":2735,"column":2784,"offset":2785},{"type":26,"value":2790,"position":2791},"). An output cannot gate itself, so the gate is its own ",{"start":2792,"end":2793},{"line":2735,"column":2784,"offset":2785},{"line":2735,"column":2794,"offset":2795},191,5213,{"type":30,"tagName":93,"properties":2797,"children":2798,"position":2806},{},[2799],{"type":26,"value":2800,"position":2801},"none",{"start":2802,"end":2803},{"line":2735,"column":2794,"offset":2795},{"line":2735,"column":2804,"offset":2805},197,5219,{"start":2807,"end":2808},{"line":2735,"column":2794,"offset":2795},{"line":2735,"column":2804,"offset":2805},{"type":26,"value":2810,"position":2811}," output.",{"start":2812,"end":2813},{"line":2735,"column":2804,"offset":2805},{"line":2735,"column":2814,"offset":2815},205,5227,{"start":2817,"end":2819},{"line":2735,"column":20,"offset":2818},5023,{"line":2735,"column":2814,"offset":2815},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":2822,"children":2823,"position":2844},{},[2824,2838],{"type":30,"tagName":93,"properties":2825,"children":2826,"position":2835},{},[2827],{"type":26,"value":764,"position":2828},{"start":2829,"end":2832},{"line":2830,"column":2077,"offset":2831},93,5230,{"line":2830,"column":2833,"offset":2834},10,5237,{"start":2836,"end":2837},{"line":2830,"column":2077,"offset":2831},{"line":2830,"column":2833,"offset":2834},{"type":26,"value":2839,"position":2840}," is an output that never changes; its value is the param, written every bar.",{"start":2841,"end":2842},{"line":2830,"column":2833,"offset":2834},{"line":2830,"column":2358,"offset":2843},5313,{"start":2845,"end":2847},{"line":2830,"column":20,"offset":2846},5228,{"line":2830,"column":2358,"offset":2843},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":2850,"children":2851,"position":2953},{},[2852,2859,2871,2878,2891,2898,2910,2915,2927,2934,2947],{"type":26,"value":2732,"position":2853},{"start":2854,"end":2857},{"line":2855,"column":2077,"offset":2856},94,5316,{"line":2855,"column":54,"offset":2858},5320,{"type":30,"tagName":93,"properties":2860,"children":2861,"position":2868},{},[2862],{"type":26,"value":2863,"position":2864},"step",{"start":2865,"end":2866},{"line":2855,"column":54,"offset":2858},{"line":2855,"column":2230,"offset":2867},5326,{"start":2869,"end":2870},{"line":2855,"column":54,"offset":2858},{"line":2855,"column":2230,"offset":2867},{"type":26,"value":2872,"position":2873}," constraint has no counterpart; settings take any value inside ",{"start":2874,"end":2875},{"line":2855,"column":2230,"offset":2867},{"line":2855,"column":2876,"offset":2877},76,5389,{"type":30,"tagName":93,"properties":2879,"children":2880,"position":2888},{},[2881],{"type":26,"value":2882,"position":2883},"min",{"start":2884,"end":2885},{"line":2855,"column":2876,"offset":2877},{"line":2855,"column":2886,"offset":2887},81,5394,{"start":2889,"end":2890},{"line":2855,"column":2876,"offset":2877},{"line":2855,"column":2886,"offset":2887},{"type":26,"value":2892,"position":2893},"..",{"start":2894,"end":2895},{"line":2855,"column":2886,"offset":2887},{"line":2855,"column":2896,"offset":2897},83,5396,{"type":30,"tagName":93,"properties":2899,"children":2900,"position":2907},{},[2901],{"type":26,"value":2902,"position":2903},"max",{"start":2904,"end":2905},{"line":2855,"column":2896,"offset":2897},{"line":2855,"column":2413,"offset":2906},5401,{"start":2908,"end":2909},{"line":2855,"column":2896,"offset":2897},{"line":2855,"column":2413,"offset":2906},{"type":26,"value":2597,"position":2911},{"start":2912,"end":2913},{"line":2855,"column":2413,"offset":2906},{"line":2855,"column":2712,"offset":2914},5403,{"type":30,"tagName":93,"properties":2916,"children":2917,"position":2924},{},[2918],{"type":26,"value":2919,"position":2920},"label",{"start":2921,"end":2922},{"line":2855,"column":2712,"offset":2914},{"line":2855,"column":2422,"offset":2923},5410,{"start":2925,"end":2926},{"line":2855,"column":2712,"offset":2914},{"line":2855,"column":2422,"offset":2923},{"type":26,"value":2928,"position":2929}," became ",{"start":2930,"end":2931},{"line":2855,"column":2422,"offset":2923},{"line":2855,"column":2932,"offset":2933},105,5418,{"type":30,"tagName":93,"properties":2935,"children":2936,"position":2944},{},[2937],{"type":26,"value":2938,"position":2939},"description",{"start":2940,"end":2941},{"line":2855,"column":2932,"offset":2933},{"line":2855,"column":2942,"offset":2943},118,5431,{"start":2945,"end":2946},{"line":2855,"column":2932,"offset":2933},{"line":2855,"column":2942,"offset":2943},{"type":26,"value":2948,"position":2949},".",{"start":2950,"end":2951},{"line":2855,"column":2942,"offset":2943},{"line":2855,"column":2113,"offset":2952},5432,{"start":2954,"end":2956},{"line":2855,"column":20,"offset":2955},5314,{"line":2855,"column":2113,"offset":2952},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":2959,"children":2960,"position":3008},{},[2961,2970,2983,2990,3002],{"type":26,"value":2962,"position":2963},"Every output is a metric. ",{"start":2964,"end":2967},{"line":2965,"column":2077,"offset":2966},95,5435,{"line":2965,"column":2968,"offset":2969},29,5461,{"type":30,"tagName":93,"properties":2971,"children":2972,"position":2980},{},[2973],{"type":26,"value":2974,"position":2975},"wrun/@you/volume-spike/z",{"start":2976,"end":2977},{"line":2965,"column":2968,"offset":2969},{"line":2965,"column":2978,"offset":2979},55,5487,{"start":2981,"end":2982},{"line":2965,"column":2968,"offset":2969},{"line":2965,"column":2978,"offset":2979},{"type":26,"value":2984,"position":2985}," and ",{"start":2986,"end":2987},{"line":2965,"column":2978,"offset":2979},{"line":2965,"column":2988,"offset":2989},60,5492,{"type":30,"tagName":93,"properties":2991,"children":2992,"position":2999},{},[2993],{"type":26,"value":2994,"position":2995},"wrun/@you/volume-spike/is_spike",{"start":2996,"end":2997},{"line":2965,"column":2988,"offset":2989},{"line":2965,"column":2830,"offset":2998},5525,{"start":3000,"end":3001},{"line":2965,"column":2988,"offset":2989},{"line":2965,"column":2830,"offset":2998},{"type":26,"value":3003,"position":3004}," are ids a watch, a screen, or a series read can use once the package is on your machine, which the kScript's plotted series never were.",{"start":3005,"end":3006},{"line":2965,"column":2830,"offset":2998},{"line":2965,"column":2152,"offset":3007},5661,{"start":3009,"end":3011},{"line":2965,"column":20,"offset":3010},5433,{"line":2965,"column":2152,"offset":3007},{"type":26,"value":27},{"start":3014,"end":3015},{"line":2735,"column":20,"offset":2818},{"line":2965,"column":2152,"offset":3007},{"type":26,"value":27},{"type":30,"tagName":64,"properties":3018,"children":3020,"position":3028},{"id":3019},"customize-it",[3021],{"type":26,"value":3022,"position":3023},"Customize it",{"start":3024,"end":3026},{"line":2422,"column":73,"offset":3025},5666,{"line":2422,"column":2058,"offset":3027},5678,{"start":3029,"end":3031},{"line":2422,"column":20,"offset":3030},5663,{"line":2422,"column":2058,"offset":3027},{"type":26,"value":27},{"type":30,"tagName":2723,"properties":3034,"children":3035,"position":3404},{},[3036,3037,3123,3124,3171,3172,3258,3259,3351,3352,3403],{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3038,"children":3039,"position":3119},{},[3040,3056,3061,3072,3079,3092,3099,3112],{"type":30,"tagName":2069,"properties":3041,"children":3042,"position":3051},{},[3043],{"type":26,"value":3044,"position":3045},"Sensitivity.",{"start":3046,"end":3049},{"line":3047,"column":38,"offset":3048},99,5684,{"line":3047,"column":1034,"offset":3050},5696,{"start":3052,"end":3054},{"line":3047,"column":2077,"offset":3053},5682,{"line":3047,"column":2093,"offset":3055},5698,{"type":26,"value":2519,"position":3057},{"start":3058,"end":3059},{"line":3047,"column":2093,"offset":3055},{"line":3047,"column":2532,"offset":3060},5699,{"type":30,"tagName":93,"properties":3062,"children":3063,"position":3069},{},[3064],{"type":26,"value":2568,"position":3065},{"start":3066,"end":3067},{"line":3047,"column":2532,"offset":3060},{"line":3047,"column":76,"offset":3068},5710,{"start":3070,"end":3071},{"line":3047,"column":2532,"offset":3060},{"line":3047,"column":76,"offset":3068},{"type":26,"value":3073,"position":3074}," is the main knob. Drop it toward ",{"start":3075,"end":3076},{"line":3047,"column":76,"offset":3068},{"line":3047,"column":3077,"offset":3078},65,5744,{"type":30,"tagName":93,"properties":3080,"children":3081,"position":3089},{},[3082],{"type":26,"value":3083,"position":3084},"1.5",{"start":3085,"end":3086},{"line":3047,"column":3077,"offset":3078},{"line":3047,"column":3087,"offset":3088},70,5749,{"start":3090,"end":3091},{"line":3047,"column":3077,"offset":3078},{"line":3047,"column":3087,"offset":3088},{"type":26,"value":3093,"position":3094}," to catch milder bursts, raise it toward ",{"start":3095,"end":3096},{"line":3047,"column":3087,"offset":3088},{"line":3047,"column":3097,"offset":3098},111,5790,{"type":30,"tagName":93,"properties":3100,"children":3101,"position":3109},{},[3102],{"type":26,"value":3103,"position":3104},"4",{"start":3105,"end":3106},{"line":3047,"column":3097,"offset":3098},{"line":3047,"column":3107,"offset":3108},114,5793,{"start":3110,"end":3111},{"line":3047,"column":3097,"offset":3098},{"line":3047,"column":3107,"offset":3108},{"type":26,"value":3113,"position":3114}," to keep only genuine anomalies. The red line moves with it.",{"start":3115,"end":3116},{"line":3047,"column":3107,"offset":3108},{"line":3047,"column":3117,"offset":3118},174,5853,{"start":3120,"end":3122},{"line":3047,"column":20,"offset":3121},5680,{"line":3047,"column":3117,"offset":3118},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3125,"children":3126,"position":3167},{},[3127,3143,3148,3160],{"type":30,"tagName":2069,"properties":3128,"children":3129,"position":3138},{},[3130],{"type":26,"value":3131,"position":3132},"Memory.",{"start":3133,"end":3136},{"line":3134,"column":38,"offset":3135},100,5858,{"line":3134,"column":2080,"offset":3137},5865,{"start":3139,"end":3141},{"line":3134,"column":2077,"offset":3140},5856,{"line":3134,"column":2086,"offset":3142},5867,{"type":26,"value":2519,"position":3144},{"start":3145,"end":3146},{"line":3134,"column":2086,"offset":3142},{"line":3134,"column":2236,"offset":3147},5868,{"type":30,"tagName":93,"properties":3149,"children":3150,"position":3157},{},[3151],{"type":26,"value":2380,"position":3152},{"start":3153,"end":3154},{"line":3134,"column":2236,"offset":3147},{"line":3134,"column":3155,"offset":3156},25,5878,{"start":3158,"end":3159},{"line":3134,"column":2236,"offset":3147},{"line":3134,"column":3155,"offset":3156},{"type":26,"value":3161,"position":3162}," sets how much history \"normal\" is measured against. A short window (20) reacts to recent conditions and treats a busy session as the new baseline; a long window (200) compares against a calmer, broader average and flags more.",{"start":3163,"end":3164},{"line":3134,"column":3155,"offset":3156},{"line":3134,"column":3165,"offset":3166},251,6104,{"start":3168,"end":3170},{"line":3134,"column":20,"offset":3169},5854,{"line":3134,"column":3165,"offset":3166},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3173,"children":3174,"position":3254},{},[3175,3191,3197,3209,3216,3228,3235,3247],{"type":30,"tagName":2069,"properties":3176,"children":3177,"position":3186},{},[3178],{"type":26,"value":3179,"position":3180},"Two-sided.",{"start":3181,"end":3184},{"line":3182,"column":38,"offset":3183},101,6109,{"line":3182,"column":2236,"offset":3185},6119,{"start":3187,"end":3189},{"line":3182,"column":2077,"offset":3188},6107,{"line":3182,"column":1034,"offset":3190},6121,{"type":26,"value":3192,"position":3193}," As written, only high-volume bars fire because the gate is ",{"start":3194,"end":3195},{"line":3182,"column":1034,"offset":3190},{"line":3182,"column":2394,"offset":3196},6181,{"type":30,"tagName":93,"properties":3198,"children":3199,"position":3206},{},[3200],{"type":26,"value":3201,"position":3202},"z >= threshold",{"start":3203,"end":3204},{"line":3182,"column":2394,"offset":3196},{"line":3182,"column":2830,"offset":3205},6197,{"start":3207,"end":3208},{"line":3182,"column":2394,"offset":3196},{"line":3182,"column":2830,"offset":3205},{"type":26,"value":3210,"position":3211},". To catch unusually quiet bars too, add a second gate output (",{"start":3212,"end":3213},{"line":3182,"column":2830,"offset":3205},{"line":3182,"column":3214,"offset":3215},156,6260,{"type":30,"tagName":93,"properties":3217,"children":3218,"position":3225},{},[3219],{"type":26,"value":3220,"position":3221},"z \u003C= -threshold",{"start":3222,"end":3223},{"line":3182,"column":3214,"offset":3215},{"line":3182,"column":2263,"offset":3224},6277,{"start":3226,"end":3227},{"line":3182,"column":3214,"offset":3215},{"line":3182,"column":2263,"offset":3224},{"type":26,"value":3229,"position":3230},") and a second ",{"start":3231,"end":3232},{"line":3182,"column":2263,"offset":3224},{"line":3182,"column":3233,"offset":3234},188,6292,{"type":30,"tagName":93,"properties":3236,"children":3237,"position":3244},{},[3238],{"type":26,"value":2626,"position":3239},{"start":3240,"end":3241},{"line":3182,"column":3233,"offset":3234},{"line":3182,"column":3242,"offset":3243},195,6299,{"start":3245,"end":3246},{"line":3182,"column":3233,"offset":3234},{"line":3182,"column":3242,"offset":3243},{"type":26,"value":3248,"position":3249}," output gated by it.",{"start":3250,"end":3251},{"line":3182,"column":3242,"offset":3243},{"line":3182,"column":3252,"offset":3253},215,6319,{"start":3255,"end":3257},{"line":3182,"column":20,"offset":3256},6105,{"line":3182,"column":3252,"offset":3253},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3260,"children":3261,"position":3347},{},[3262,3279,3286,3298,3305,3318,3324,3341],{"type":30,"tagName":2069,"properties":3263,"children":3264,"position":3273},{},[3265],{"type":26,"value":3266,"position":3267},"Color and size.",{"start":3268,"end":3271},{"line":3269,"column":38,"offset":3270},102,6324,{"line":3269,"column":2532,"offset":3272},6339,{"start":3274,"end":3276},{"line":3269,"column":2077,"offset":3275},6322,{"line":3269,"column":3277,"offset":3278},22,6341,{"type":26,"value":3280,"position":3281}," The circle and line colors are hex strings on the declarations. ",{"start":3282,"end":3283},{"line":3269,"column":3277,"offset":3278},{"line":3269,"column":3284,"offset":3285},87,6406,{"type":30,"tagName":93,"properties":3287,"children":3288,"position":3295},{},[3289],{"type":26,"value":3290,"position":3291},"width",{"start":3292,"end":3293},{"line":3269,"column":3284,"offset":3285},{"line":3269,"column":2855,"offset":3294},6413,{"start":3296,"end":3297},{"line":3269,"column":3284,"offset":3285},{"line":3269,"column":2855,"offset":3294},{"type":26,"value":3299,"position":3300}," on the line output resizes it; ",{"start":3301,"end":3302},{"line":3269,"column":2855,"offset":3294},{"line":3269,"column":3303,"offset":3304},126,6445,{"type":30,"tagName":93,"properties":3306,"children":3307,"position":3315},{},[3308],{"type":26,"value":3309,"position":3310},"render.shape",{"start":3311,"end":3312},{"line":3269,"column":3303,"offset":3304},{"line":3269,"column":3313,"offset":3314},140,6459,{"start":3316,"end":3317},{"line":3269,"column":3303,"offset":3304},{"line":3269,"column":3313,"offset":3314},{"type":26,"value":3319,"position":3320}," picks a different mark kind than the host's default (",{"start":3321,"end":3322},{"line":3269,"column":3313,"offset":3314},{"line":3269,"column":41,"offset":3323},6513,{"type":30,"tagName":2472,"properties":3325,"children":3327,"position":3336},{"href":3326},"../functions/drawing-primitives.md",[3328],{"type":26,"value":3329,"position":3330},"Drawing primitives",{"start":3331,"end":3333},{"line":3269,"column":3242,"offset":3332},6514,{"line":3269,"column":3334,"offset":3335},213,6532,{"start":3337,"end":3338},{"line":3269,"column":41,"offset":3323},{"line":3269,"column":3339,"offset":3340},250,6569,{"type":26,"value":2490,"position":3342},{"start":3343,"end":3344},{"line":3269,"column":3339,"offset":3340},{"line":3269,"column":3345,"offset":3346},252,6571,{"start":3348,"end":3350},{"line":3269,"column":20,"offset":3349},6320,{"line":3269,"column":3345,"offset":3346},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3353,"children":3354,"position":3399},{},[3355,3372,3379,3392],{"type":30,"tagName":2069,"properties":3356,"children":3357,"position":3367},{},[3358],{"type":26,"value":3359,"position":3360},"Turn it into an alert.",{"start":3361,"end":3364},{"line":3362,"column":38,"offset":3363},103,6576,{"line":3362,"column":3365,"offset":3366},27,6598,{"start":3368,"end":3370},{"line":3362,"column":2077,"offset":3369},6574,{"line":3362,"column":2968,"offset":3371},6600,{"type":26,"value":3373,"position":3374}," Publish it, install it on your machine, and put a watch on the z-score crossing the threshold. The condition names the metric id, the market, and the interval; ",{"start":3375,"end":3376},{"line":3362,"column":2968,"offset":3371},{"line":3362,"column":3377,"offset":3378},190,6761,{"type":30,"tagName":93,"properties":3380,"children":3381,"position":3389},{},[3382],{"type":26,"value":3383,"position":3384},"--cooldown",{"start":3385,"end":3386},{"line":3362,"column":3377,"offset":3378},{"line":3362,"column":3387,"offset":3388},202,6773,{"start":3390,"end":3391},{"line":3362,"column":3377,"offset":3378},{"line":3362,"column":3387,"offset":3388},{"type":26,"value":3393,"position":3394}," keeps a noisy hour from firing on every tick:",{"start":3395,"end":3396},{"line":3362,"column":3387,"offset":3388},{"line":3362,"column":3397,"offset":3398},248,6819,{"start":3400,"end":3402},{"line":3362,"column":20,"offset":3401},6572,{"line":3362,"column":3397,"offset":3398},{"type":26,"value":27},{"start":3405,"end":3406},{"line":3047,"column":20,"offset":3121},{"line":3362,"column":3397,"offset":3398},{"type":26,"value":27},{"type":13,"children":3409},[3410],{"type":30,"tagName":86,"properties":3411,"children":3412,"data":-1},{"class":88,"style":89,"tabindex":90},[3413],{"type":30,"tagName":93,"properties":3414,"children":3415},{},[3416,3444,3445],{"type":30,"tagName":97,"properties":3417,"children":3418},{"class":99},[3419,3424,3429,3434,3439],{"type":30,"tagName":97,"properties":3420,"children":3421},{"style":113},[3422],{"type":26,"value":3423},"om",{"type":30,"tagName":97,"properties":3425,"children":3426},{"style":131},[3427],{"type":26,"value":3428}," wrun",{"type":30,"tagName":97,"properties":3430,"children":3431},{"style":131},[3432],{"type":26,"value":3433}," install",{"type":30,"tagName":97,"properties":3435,"children":3436},{"style":131},[3437],{"type":26,"value":3438}," ./volume-spike",{"type":30,"tagName":97,"properties":3440,"children":3441},{"style":160},[3442],{"type":26,"value":3443}," --replace",{"type":26,"value":27},{"type":30,"tagName":97,"properties":3446,"children":3447},{"class":99},[3448,3452,3457,3462,3467,3472,3477,3482],{"type":30,"tagName":97,"properties":3449,"children":3450},{"style":113},[3451],{"type":26,"value":3423},{"type":30,"tagName":97,"properties":3453,"children":3454},{"style":131},[3455],{"type":26,"value":3456}," watch",{"type":30,"tagName":97,"properties":3458,"children":3459},{"style":131},[3460],{"type":26,"value":3461}," create",{"type":30,"tagName":97,"properties":3463,"children":3464},{"style":131},[3465],{"type":26,"value":3466}," \"Volume spike\"",{"type":30,"tagName":97,"properties":3468,"children":3469},{"style":160},[3470],{"type":26,"value":3471}," --condition",{"type":30,"tagName":97,"properties":3473,"children":3474},{"style":131},[3475],{"type":26,"value":3476}," '{\"metric\":\"wrun/@you/volume-spike/z\",\"selector\":{\"exchange\":\"BINANCE_FUTURES\",\"symbol\":\"BTCUSDT\",\"interval\":\"HOUR\"},\"op\":\"crosses_above\",\"value\":3}'",{"type":30,"tagName":97,"properties":3478,"children":3479},{"style":160},[3480],{"type":26,"value":3481}," --cooldown",{"type":30,"tagName":97,"properties":3483,"children":3484},{"style":131},[3485],{"type":26,"value":3486}," 1h",{"type":26,"value":27},{"type":30,"tagName":64,"properties":3489,"children":3491,"position":3500},{"id":3490},"concepts-used",[3492],{"type":26,"value":3493,"position":3494},"Concepts used",{"start":3495,"end":3498},{"line":3496,"column":73,"offset":3497},110,7085,{"line":3496,"column":1034,"offset":3499},7098,{"start":3501,"end":3503},{"line":3496,"column":20,"offset":3502},7082,{"line":3496,"column":1034,"offset":3499},{"type":26,"value":27},{"type":30,"tagName":2723,"properties":3506,"children":3507,"position":3776},{},[3508,3509,3579,3580,3645,3646,3693,3694,3775],{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3510,"children":3511,"position":3575},{},[3512,3529,3534,3550,3556,3568],{"type":30,"tagName":2472,"properties":3513,"children":3515,"position":3524},{"href":3514},"../functions/series-functions.md",[3516],{"type":26,"value":3517,"position":3518},"Series functions",{"start":3519,"end":3522},{"line":3520,"column":73,"offset":3521},112,7103,{"line":3520,"column":2532,"offset":3523},7119,{"start":3525,"end":3527},{"line":3520,"column":2077,"offset":3526},7102,{"line":3520,"column":2978,"offset":3528},7154,{"type":26,"value":2984,"position":3530},{"start":3531,"end":3532},{"line":3520,"column":2978,"offset":3528},{"line":3520,"column":2988,"offset":3533},7159,{"type":30,"tagName":2472,"properties":3535,"children":3537,"position":3546},{"href":3536},"../functions/ta-library.md",[3538],{"type":26,"value":3539,"position":3540},"TA library",{"start":3541,"end":3543},{"line":3520,"column":2552,"offset":3542},7160,{"line":3520,"column":3544,"offset":3545},71,7170,{"start":3547,"end":3548},{"line":3520,"column":2988,"offset":3533},{"line":3520,"column":3134,"offset":3549},7199,{"type":26,"value":3551,"position":3552}," for ",{"start":3553,"end":3554},{"line":3520,"column":3134,"offset":3549},{"line":3520,"column":2932,"offset":3555},7204,{"type":30,"tagName":93,"properties":3557,"children":3558,"position":3565},{},[3559],{"type":26,"value":2249,"position":3560},{"start":3561,"end":3562},{"line":3520,"column":2932,"offset":3555},{"line":3520,"column":3563,"offset":3564},113,7212,{"start":3566,"end":3567},{"line":3520,"column":2932,"offset":3555},{"line":3520,"column":3563,"offset":3564},{"type":26,"value":3569,"position":3570}," over a trailing window",{"start":3571,"end":3572},{"line":3520,"column":3563,"offset":3564},{"line":3520,"column":3573,"offset":3574},136,7235,{"start":3576,"end":3578},{"line":3520,"column":20,"offset":3577},7100,{"line":3520,"column":3573,"offset":3574},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3581,"children":3582,"position":3641},{},[3583,3600,3606,3618,3623,3634],{"type":30,"tagName":2472,"properties":3584,"children":3586,"position":3594},{"href":3585},"../functions/typed-inputs.md",[3587],{"type":26,"value":3588,"position":3589},"Typed inputs",{"start":3590,"end":3592},{"line":3563,"column":73,"offset":3591},7239,{"line":3563,"column":2058,"offset":3593},7251,{"start":3595,"end":3597},{"line":3563,"column":2077,"offset":3596},7238,{"line":3563,"column":3598,"offset":3599},47,7282,{"type":26,"value":3601,"position":3602}," for the ",{"start":3603,"end":3604},{"line":3563,"column":3598,"offset":3599},{"line":3563,"column":9,"offset":3605},7291,{"type":30,"tagName":93,"properties":3607,"children":3608,"position":3615},{},[3609],{"type":26,"value":2380,"position":3610},{"start":3611,"end":3612},{"line":3563,"column":9,"offset":3605},{"line":3563,"column":3613,"offset":3614},66,7301,{"start":3616,"end":3617},{"line":3563,"column":9,"offset":3605},{"line":3563,"column":3613,"offset":3614},{"type":26,"value":2984,"position":3619},{"start":3620,"end":3621},{"line":3563,"column":3613,"offset":3614},{"line":3563,"column":3544,"offset":3622},7306,{"type":30,"tagName":93,"properties":3624,"children":3625,"position":3631},{},[3626],{"type":26,"value":2568,"position":3627},{"start":3628,"end":3629},{"line":3563,"column":3544,"offset":3622},{"line":3563,"column":2076,"offset":3630},7317,{"start":3632,"end":3633},{"line":3563,"column":3544,"offset":3622},{"line":3563,"column":2076,"offset":3630},{"type":26,"value":3635,"position":3636}," params",{"start":3637,"end":3638},{"line":3563,"column":2076,"offset":3630},{"line":3563,"column":3639,"offset":3640},89,7324,{"start":3642,"end":3644},{"line":3563,"column":20,"offset":3643},7236,{"line":3563,"column":3639,"offset":3640},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3647,"children":3648,"position":3689},{},[3649,3665,3671,3683],{"type":30,"tagName":2472,"properties":3650,"children":3652,"position":3660},{"href":3651},"../core-concepts/na-and-scalar-types.md",[3653],{"type":26,"value":3654,"position":3655},"na and scalar types",{"start":3656,"end":3658},{"line":3107,"column":73,"offset":3657},7328,{"line":3107,"column":2367,"offset":3659},7347,{"start":3661,"end":3663},{"line":3107,"column":2077,"offset":3662},7327,{"line":3107,"column":3077,"offset":3664},7389,{"type":26,"value":3601,"position":3666},{"start":3667,"end":3668},{"line":3107,"column":3077,"offset":3664},{"line":3107,"column":3669,"offset":3670},74,7398,{"type":30,"tagName":93,"properties":3672,"children":3673,"position":3680},{},[3674],{"type":26,"value":2400,"position":3675},{"start":3676,"end":3677},{"line":3107,"column":3669,"offset":3670},{"line":3107,"column":3678,"offset":3679},79,7403,{"start":3681,"end":3682},{"line":3107,"column":3669,"offset":3670},{"line":3107,"column":3678,"offset":3679},{"type":26,"value":3684,"position":3685}," warm-up rule",{"start":3686,"end":3687},{"line":3107,"column":3678,"offset":3679},{"line":3107,"column":2735,"offset":3688},7416,{"start":3690,"end":3692},{"line":3107,"column":20,"offset":3691},7325,{"line":3107,"column":2735,"offset":3688},{"type":26,"value":27},{"type":30,"tagName":2728,"properties":3695,"children":3696,"position":3771},{},[3697,3715,3721,3736,3741,3752,3759],{"type":30,"tagName":2472,"properties":3698,"children":3700,"position":3709},{"href":3699},"../functions/plotting.md",[3701],{"type":26,"value":3702,"position":3703},"Plotting",{"start":3704,"end":3707},{"line":3705,"column":73,"offset":3706},115,7420,{"line":3705,"column":2080,"offset":3708},7428,{"start":3710,"end":3712},{"line":3705,"column":2077,"offset":3711},7419,{"line":3705,"column":3713,"offset":3714},39,7455,{"type":26,"value":2984,"position":3716},{"start":3717,"end":3718},{"line":3705,"column":3713,"offset":3714},{"line":3705,"column":3719,"offset":3720},44,7460,{"type":30,"tagName":2472,"properties":3722,"children":3723,"position":3732},{"href":3326},[3724],{"type":26,"value":3329,"position":3725},{"start":3726,"end":3729},{"line":3705,"column":3727,"offset":3728},45,7461,{"line":3705,"column":3730,"offset":3731},63,7479,{"start":3733,"end":3734},{"line":3705,"column":3719,"offset":3720},{"line":3705,"column":3134,"offset":3735},7516,{"type":26,"value":3601,"position":3737},{"start":3738,"end":3739},{"line":3705,"column":3134,"offset":3735},{"line":3705,"column":2441,"offset":3740},7525,{"type":30,"tagName":93,"properties":3742,"children":3743,"position":3749},{},[3744],{"type":26,"value":99,"position":3745},{"start":3746,"end":3747},{"line":3705,"column":2441,"offset":3740},{"line":3705,"column":3705,"offset":3748},7531,{"start":3750,"end":3751},{"line":3705,"column":2441,"offset":3740},{"line":3705,"column":3705,"offset":3748},{"type":26,"value":3753,"position":3754}," outputs and the gated ",{"start":3755,"end":3756},{"line":3705,"column":3705,"offset":3748},{"line":3705,"column":3757,"offset":3758},138,7554,{"type":30,"tagName":93,"properties":3760,"children":3761,"position":3768},{},[3762],{"type":26,"value":2626,"position":3763},{"start":3764,"end":3765},{"line":3705,"column":3757,"offset":3758},{"line":3705,"column":3766,"offset":3767},145,7561,{"start":3769,"end":3770},{"line":3705,"column":3757,"offset":3758},{"line":3705,"column":3766,"offset":3767},{"start":3772,"end":3774},{"line":3705,"column":20,"offset":3773},7417,{"line":3705,"column":3766,"offset":3767},{"type":26,"value":27},{"start":3777,"end":3778},{"line":3520,"column":20,"offset":3577},{"line":3705,"column":3766,"offset":3767},{"quirksMode":3780},false,{"start":3782,"end":3783},{"line":20,"column":20,"offset":21},{"line":3784,"column":20,"offset":3785},116,7562,1790157162074]