[{"data":1,"prerenderedAt":4656},["ShallowReactive",2],{"kscript:faq/best-practices":3},{"slug":4,"filePath":5,"frontmatter":6,"rawMarkdown":9,"tree":10},"faq/best-practices","faq/best-practices.md",{"title":7,"description":8},"Best Practices","Guidelines and recommendations for writing efficient, maintainable, and error-free kScript code.","---\ntitle: Best Practices\ndescription: >-\n  Guidelines and recommendations for writing efficient, maintainable, and\n  error-free kScript code.\n---\n\n\u003Cdiv class=\"flex gap-3 mb-6\">\n  \u003Cspan class=\"inline-flex items-center gap-1.5 px-3 py-1 rounded-full bg-yellow-50 text-yellow-600 text-sm font-medium\">\n    Guidelines\n  \u003C/span>\n  \u003Cspan class=\"inline-flex items-center gap-1.5 px-3 py-1 rounded-full bg-gray-100 text-gray-600 text-sm font-medium\">\n    8 min read\n  \u003C/span>\n\u003C/div>\n\n## Code Structure\n\nFundamental patterns for organizing your kScript code.\n\n### Variable Declarations\n\nUse the appropriate variable type for your data.\n\n**Static variables for constants:**\n\nUse for constants and values that never change across bars (e.g., periods, thresholds, multipliers).\n\n```javascript title=\"Static Variables\" lines wrap\nstatic period = 14\nstatic multiplier = 2.0\n```\n\n**Regular variables for dynamic values:**\n\nUse for dynamic values that change per bar but don't need historical access (e.g., signals, calculations).\n\n```javascript title=\"Regular Variables\" lines wrap\nvar signal = 0\nvar trend_direction = \"up\"\n```\n\n**Timeseries for historical data:**\n\nUse **only when absolutely necessary** as they consume more memory. Declare as timeseries when you need to:\n\n- Store data source outputs: `timeseries price_data = ohlcv(...)`\n- Access past values at previous candle indices: `sma_values[5]`\n\nWhile indicator functions like `sma()`, `ema()`, and `rsi()` require a **timeseries as input**, their return values should be stored as `var` unless you specifically need to access historical values (e.g., `sma_values[5]`). This saves memory and improves performance.\n\n```javascript title=\"Timeseries Usage\" lines wrap\n// ✓ Good - Data source stored as timeseries\ntimeseries price_data = ohlcv(currentSymbol, currentExchange)\n\n// ✓ Good - Indicator return value stored as var (unless you need history)\nvar sma_value = sma(price_data.close, period)\nvar rsi_value = rsi(price_data.close, 14)\n\n// ✓ Only use timeseries if you need to access historical values\ntimeseries sma_series = sma(price_data.close, period)\nvar previous_sma = sma_series[5]  // Accessing 5 bars ago\n```\n\n## Technical Indicators\n\nGuidelines for working with technical indicators effectively.\n\n### Explicit Parameters\n\nAlways specify parameters explicitly for clarity. This makes your code more readable and maintainable.\n\n```javascript title=\"Explicit Parameters\" lines wrap\n// ✓ Good - Parameters are explicit and clear\ntimeseries sma20 = sma(price_data.close, period=20)\ntimeseries rsi14 = rsi(price_data.close, period=14)\n\n// ❌ Avoid - Relying on defaults makes intent unclear\ntimeseries sma_default = sma(price_data.close)\n```\n\n### Historical Data Access\n\nUse bracket notation to access historical values safely.\n\n```javascript title=\"Historical Data Access\" lines wrap\n// Access previous bar values\nvar prev_close = price_data.close[1]\nvar close_5_bars_ago = price_data.close[5]\n\n// Use in calculations\nvar price_change = price_data.close - price_data.close[1]\n```\n\n## Plotting & Visualization\n\nCreate clear and informative visualizations.\n\n### Descriptive Plots\n\nUse meaningful colors and widths to make your plots easy to distinguish.\n\n```javascript title=\"Descriptive Plots\" lines wrap\n// Use meaningful colors and widths\nplotLine(value=sma20, width=2, colors=[\"blue\"], label=[\"SMA 20\"], desc=[\"20-period Simple Moving Average\"])\nplotLine(value=sma50, width=2, colors=[\"red\"], label=[\"SMA 50\"], desc=[\"50-period Simple Moving Average\"])\n\n// Conditional plotting with ternary operators\nvar signal_value = trend_up ? price_data.high : na\nplotShape(value=signal_value, shape=\"circle\", width=2, colors=[\"green\"], label=[\"Signal\"], desc=[\"Trading Signal\"])\n```\n\n### Choose Appropriate Plot Types\n\nSelect the right plot function for your data type.\n\n{% hint style=\"info\" %}\n**Plot Types**\n\n- `plotLine()` for continuous lines\n- `plotBar()` for histogram data\n- `plotCandle()` for OHLC data\n- `plotShape()` for discrete signals\n{% endhint %}\n\n## Debugging\n\nBest practices for debugging and inspecting your kScript code.\n\n### Use printTimeSeries for Timeseries Objects\n\nAlways use `printTimeSeries()` for timeseries objects instead of `print()`. The `print()` function only outputs the first value (e.g., only \"open\" for OHLCV data), while `printTimeSeries()` displays the complete timeseries structure.\n\n```javascript title=\"printTimeSeries for Timeseries Objects\" lines wrap\n// ❌ Avoid - print() only shows first value (open)\ntimeseries price_data = ohlcv(currentSymbol, currentExchange)\nprint(\"Price data:\", price_data)  // Only prints open values\n\n// ✓ Good - printTimeSeries() shows complete OHLCV structure\nprintTimeSeries(price_data)  // Prints [timeseriesInMs, open, high, low, close, volume]\n\n// You can also specify which field to print\nprintTimeSeries(price_data, priceIndex=4)  // Print [timeseriesInMs, close] prices\n```\n\n## Error Prevention\n\nProtect your code against common runtime errors.\n\n### Null Checking\n\nAlways check for invalid data before performing calculations.\n\n```javascript title=\"Null Checking\" lines wrap\n// Check for invalid data before calculations\nvar calculation = !isnan(price_data.close) ? price_data.close * multiplier : na\n\n// Alternative using isnum()\nif (isnum(price_data.close) && price_data.close > 0) {\n    var result = price_data.close * 2\n}\n```\n\n### Division by Zero\n\nProtect against division by zero errors.\n\n```javascript title=\"Division by Zero\" lines wrap\n// Protect against division by zero\nvar ratio = denominator != 0 ? numerator / denominator : na\n\n// With additional safety checks\nvar safe_ratio = isnum(denominator) && denominator != 0 ? numerator / denominator : na\n```\n\n### Array Bounds\n\nBe careful when accessing historical data to avoid index errors.\n\n```javascript title=\"Array Bounds\" lines wrap\n// Check bar index before accessing historical data\nvar safe_previous = barIndex > 0 ? price_data.close[1] : price_data.close\n\n// For multiple bars back\nvar safe_value = barIndex >= 5 ? price_data.close[5] : price_data.close\n```\n\n## Performance Optimization\n\nWrite efficient code that executes quickly.\n\n### Avoid Redundant Calculations\n\nStore frequently used calculations in variables instead of recalculating.\n\n```javascript title=\"Avoid Redundant Calculations\" lines wrap\n// ✓ Good - Calculate once and reuse\nstatic lookback_period = 20\ntimeseries typical_price = (price_data.high + price_data.low + price_data.close) / 3\ntimeseries sma_typical = sma(typical_price, lookback_period)\n\n// ❌ Avoid - Recalculating the same value multiple times\nvar value1 = sma((price_data.high + price_data.low + price_data.close) / 3, 20)\nvar value2 = sma((price_data.high + price_data.low + price_data.close) / 3, 20)\n```\n\n### Use Static Variables\n\nDeclare constants as `static` to avoid unnecessary recalculation on every bar.\n\n```javascript title=\"Use Static Variables\" lines wrap\n// ✓ Good - Declare constants as static\nstatic fibonacci_ratio = 0.618\nstatic golden_ratio = 1.618\nstatic pi = 3.14159\n\n// These values don't change, so no need to recalculate each bar\n```\n\n## Code Organization\n\nStructure your code for maximum readability and maintainability.\n\n### Group Related Code\n\nOrganize your code into logical sections: inputs, data sources, calculations, signals, and plotting.\n\n```javascript title=\"Group Related Code\" lines wrap\n// @version=2\ndefine(\"My Strategy\", \"overlay\", overlay=true)\n\n// Input parameters\nvar period = input(\"Period\", \"number\", defaultValue=14)\nvar threshold = input(\"Threshold\", \"number\", defaultValue=0.5)\n\n// Data sources\ntimeseries price_data = ohlcv(currentSymbol, currentExchange)\n\n// Calculations\ntimeseries ma_fast = sma(price_data.close, period)\ntimeseries ma_slow = sma(price_data.close, period * 2)\n\n// Signals\nvar buy_signal = crossover(ma_fast, ma_slow)\nvar sell_signal = crossunder(ma_fast, ma_slow)\n\n// Plotting\nplotLine(value=ma_fast, width=2, colors=[\"blue\"], label=[\"Fast MA\"], desc=[\"Fast Moving Average\"])\nplotLine(value=ma_slow, width=2, colors=[\"red\"], label=[\"Slow MA\"], desc=[\"Slow Moving Average\"])\nplotShape(value=buy_signal ? price_data.low : na, shape=\"circle\", width=2, colors=[\"green\"], label=[\"Buy Signal\"], desc=[\"Buy Signal Marker\"])\n```\n\n### Use Comments Effectively\n\nWrite clear comments that explain the \"why\" behind your code logic.\n\n```javascript title=\"Use Comments Effectively\" lines wrap\n// Calculate RSI divergence\nvar rsi_current = rsi(price_data.close, 14)\nvar rsi_previous = rsi_current[1]\n\n// Look for bullish divergence:\n// Price makes lower low but RSI makes higher low\nvar price_lower_low = price_data.low \u003C price_data.low[1]\nvar rsi_higher_low = rsi_current > rsi_previous\nvar bullish_divergence = price_lower_low && rsi_higher_low\n```\n\n### Use Descriptive Labels and Descriptions\n\nAlways include `label` and `desc` parameters in your plotting functions. These parameters improve autocomplete functionality, make scripts more readable, and help with script organization in the editor.\n\n```javascript title=\"Use Descriptive Labels and Descriptions\" lines wrap\n// ✓ Always use label and desc parameters for better organization\ntimeseries price_data = ohlcv(currentSymbol, currentExchange)\nvar sma20 = sma(price_data.close, 20)\nvar sma50 = sma(price_data.close, 50)\nvar rsi = rsi(price_data.close, 14)\n\n// Good: Descriptive labels help with autocomplete and script organization\nplotLine(value=sma20, width=2, colors=[\"blue\"], label=[\"SMA 20\"], desc=[\"20-period Simple Moving Average\"])\nplotLine(value=sma50, width=2, colors=[\"red\"], label=[\"SMA 50\"], desc=[\"50-period Simple Moving Average\"])\nplotLine(value=rsi, width=2, colors=[\"purple\"], label=[\"RSI\"], desc=[\"14-period Relative Strength Index\"])\n\n// ❌ Avoid: Missing labels make scripts harder to understand\nplotLine(value=sma20, width=2, colors=[\"blue\"])\nplotLine(value=sma50, width=2, colors=[\"red\"])\nplotLine(value=rsi, width=2, colors=[\"purple\"])\n```\n",{"type":11,"children":12,"data":4649,"position":4651},"root",[13,100,101,118,119,135,136,154,155,170,171,195,196,211,212,266,267,291,292,306,307,361,362,383,384,421,422,489,490,624,625,815,816,833,834,849,850,865,866,881,882,1001,1002,1018,1019,1034,1035,1164,1165,1182,1183,1198,1199,1216,1217,1232,1233,1579,1580,1596,1597,1611,1612,1763,1764,1780,1781,1796,1797,1814,1815,1903,1904,2047,2048,2064,2065,2079,2080,2096,2097,2111,2112,2285,2286,2303,2304,2318,2319,2473,2474,2490,2491,2505,2506,2646,2647,2663,2664,2679,2680,2696,2697,2711,2712,2950,2951,2968,2969,3002,3003,3086,3087,3103,3104,3118,3119,3136,3137,3151,3152,3796,3797,3813,3814,3829,3830,4030,4031,4047,4048,4098,4099],{"type":14,"tagName":15,"properties":16,"children":21,"position":95},"element","div",{"className":17},[18,19,20],"flex","gap-3","mb-6",[22,34,63,69,88],{"type":23,"value":24,"position":25},"text","\n  ",{"start":26,"end":30},{"line":27,"column":28,"offset":29},1,30,29,{"line":31,"column":32,"offset":33},2,3,32,{"type":14,"tagName":35,"properties":36,"children":48,"position":58},"span",{"className":37},[38,39,40,41,42,43,44,45,46,47],"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-full","bg-yellow-50","text-yellow-600","text-sm","font-medium",[49],{"type":23,"value":50,"position":51},"\n    Guidelines\n  ",{"start":52,"end":55},{"line":31,"column":53,"offset":54},122,151,{"line":56,"column":32,"offset":57},4,169,{"start":59,"end":60},{"line":31,"column":32,"offset":33},{"line":56,"column":61,"offset":62},10,176,{"type":23,"value":24,"position":64},{"start":65,"end":66},{"line":56,"column":61,"offset":62},{"line":67,"column":32,"offset":68},5,179,{"type":14,"tagName":35,"properties":70,"children":74,"position":84},{"className":71},[38,39,40,41,42,43,72,73,46,47],"bg-gray-100","text-gray-600",[75],{"type":23,"value":76,"position":77},"\n    8 min read\n  ",{"start":78,"end":81},{"line":67,"column":79,"offset":80},119,295,{"line":82,"column":32,"offset":83},7,313,{"start":85,"end":86},{"line":67,"column":32,"offset":68},{"line":82,"column":61,"offset":87},320,{"type":23,"value":89,"position":90},"\n",{"start":91,"end":92},{"line":82,"column":61,"offset":87},{"line":93,"column":27,"offset":94},8,321,{"start":96,"end":98},{"line":27,"column":27,"offset":97},0,{"line":93,"column":82,"offset":99},327,{"type":23,"value":89},{"type":14,"tagName":102,"properties":103,"children":105,"position":114},"h2",{"id":104},"code-structure",[106],{"type":23,"value":107,"position":108},"Code Structure",{"start":109,"end":111},{"line":61,"column":56,"offset":110},332,{"line":61,"column":112,"offset":113},18,346,{"start":115,"end":117},{"line":61,"column":27,"offset":116},329,{"line":61,"column":112,"offset":113},{"type":23,"value":89},{"type":14,"tagName":120,"properties":121,"children":122,"position":132},"p",{},[123],{"type":23,"value":124,"position":125},"Fundamental patterns for organizing your kScript code.",{"start":126,"end":129},{"line":127,"column":27,"offset":128},12,348,{"line":127,"column":130,"offset":131},55,402,{"start":133,"end":134},{"line":127,"column":27,"offset":128},{"line":127,"column":130,"offset":131},{"type":23,"value":89},{"type":14,"tagName":137,"properties":138,"children":140,"position":150},"h3",{"id":139},"variable-declarations",[141],{"type":23,"value":142,"position":143},"Variable Declarations",{"start":144,"end":147},{"line":145,"column":67,"offset":146},14,408,{"line":145,"column":148,"offset":149},26,429,{"start":151,"end":153},{"line":145,"column":27,"offset":152},404,{"line":145,"column":148,"offset":149},{"type":23,"value":89},{"type":14,"tagName":120,"properties":156,"children":157,"position":167},{},[158],{"type":23,"value":159,"position":160},"Use the appropriate variable type for your data.",{"start":161,"end":164},{"line":162,"column":27,"offset":163},16,431,{"line":162,"column":165,"offset":166},49,479,{"start":168,"end":169},{"line":162,"column":27,"offset":163},{"line":162,"column":165,"offset":166},{"type":23,"value":89},{"type":14,"tagName":120,"properties":172,"children":173,"position":192},{},[174],{"type":14,"tagName":175,"properties":176,"children":177,"position":186},"strong",{},[178],{"type":23,"value":179,"position":180},"Static variables for constants:",{"start":181,"end":183},{"line":112,"column":32,"offset":182},483,{"line":112,"column":184,"offset":185},34,514,{"start":187,"end":189},{"line":112,"column":27,"offset":188},481,{"line":112,"column":190,"offset":191},36,516,{"start":193,"end":194},{"line":112,"column":27,"offset":188},{"line":112,"column":190,"offset":191},{"type":23,"value":89},{"type":14,"tagName":120,"properties":197,"children":198,"position":208},{},[199],{"type":23,"value":200,"position":201},"Use for constants and values that never change across bars (e.g., periods, thresholds, multipliers).",{"start":202,"end":205},{"line":203,"column":27,"offset":204},20,518,{"line":203,"column":206,"offset":207},101,618,{"start":209,"end":210},{"line":203,"column":27,"offset":204},{"line":203,"column":206,"offset":207},{"type":23,"value":89},{"type":11,"children":213},[214],{"type":14,"tagName":215,"properties":216,"children":221,"data":-1},"pre",{"class":217,"style":218,"tabindex":219,"title":220},"shiki shiki-themes github-dark github-light","--shiki-dark:#e1e4e8;--shiki-light:#24292e;--shiki-dark-bg:#24292e;--shiki-light-bg:#fff","0","Static Variables",[222],{"type":14,"tagName":223,"properties":224,"children":225},"code",{},[226,248,249],{"type":14,"tagName":35,"properties":227,"children":229},{"class":228},"line",[230,236,242],{"type":14,"tagName":35,"properties":231,"children":233},{"style":232},"--shiki-dark:#E1E4E8;--shiki-light:#24292E",[234],{"type":23,"value":235},"static period ",{"type":14,"tagName":35,"properties":237,"children":239},{"style":238},"--shiki-dark:#F97583;--shiki-light:#D73A49",[240],{"type":23,"value":241},"=",{"type":14,"tagName":35,"properties":243,"children":245},{"style":244},"--shiki-dark:#79B8FF;--shiki-light:#005CC5",[246],{"type":23,"value":247}," 14",{"type":23,"value":89},{"type":14,"tagName":35,"properties":250,"children":251},{"class":228},[252,257,261],{"type":14,"tagName":35,"properties":253,"children":254},{"style":232},[255],{"type":23,"value":256},"static multiplier ",{"type":14,"tagName":35,"properties":258,"children":259},{"style":238},[260],{"type":23,"value":241},{"type":14,"tagName":35,"properties":262,"children":263},{"style":244},[264],{"type":23,"value":265}," 2.0",{"type":23,"value":89},{"type":14,"tagName":120,"properties":268,"children":269,"position":288},{},[270],{"type":14,"tagName":175,"properties":271,"children":272,"position":282},{},[273],{"type":23,"value":274,"position":275},"Regular variables for dynamic values:",{"start":276,"end":279},{"line":277,"column":32,"offset":278},27,720,{"line":277,"column":280,"offset":281},40,757,{"start":283,"end":285},{"line":277,"column":27,"offset":284},718,{"line":277,"column":286,"offset":287},42,759,{"start":289,"end":290},{"line":277,"column":27,"offset":284},{"line":277,"column":286,"offset":287},{"type":23,"value":89},{"type":14,"tagName":120,"properties":293,"children":294,"position":303},{},[295],{"type":23,"value":296,"position":297},"Use for dynamic values that change per bar but don't need historical access (e.g., signals, calculations).",{"start":298,"end":300},{"line":29,"column":27,"offset":299},761,{"line":29,"column":301,"offset":302},107,867,{"start":304,"end":305},{"line":29,"column":27,"offset":299},{"line":29,"column":301,"offset":302},{"type":23,"value":89},{"type":11,"children":308},[309],{"type":14,"tagName":215,"properties":310,"children":312,"data":-1},{"class":217,"style":218,"tabindex":219,"title":311},"Regular Variables",[313],{"type":14,"tagName":223,"properties":314,"children":315},{},[316,338,339],{"type":14,"tagName":35,"properties":317,"children":318},{"class":228},[319,324,329,333],{"type":14,"tagName":35,"properties":320,"children":321},{"style":238},[322],{"type":23,"value":323},"var",{"type":14,"tagName":35,"properties":325,"children":326},{"style":232},[327],{"type":23,"value":328}," signal ",{"type":14,"tagName":35,"properties":330,"children":331},{"style":238},[332],{"type":23,"value":241},{"type":14,"tagName":35,"properties":334,"children":335},{"style":244},[336],{"type":23,"value":337}," 0",{"type":23,"value":89},{"type":14,"tagName":35,"properties":340,"children":341},{"class":228},[342,346,351,355],{"type":14,"tagName":35,"properties":343,"children":344},{"style":238},[345],{"type":23,"value":323},{"type":14,"tagName":35,"properties":347,"children":348},{"style":232},[349],{"type":23,"value":350}," trend_direction ",{"type":14,"tagName":35,"properties":352,"children":353},{"style":238},[354],{"type":23,"value":241},{"type":14,"tagName":35,"properties":356,"children":358},{"style":357},"--shiki-dark:#9ECBFF;--shiki-light:#032F62",[359],{"type":23,"value":360}," \"up\"",{"type":23,"value":89},{"type":14,"tagName":120,"properties":363,"children":364,"position":380},{},[365],{"type":14,"tagName":175,"properties":366,"children":367,"position":375},{},[368],{"type":23,"value":369,"position":370},"Timeseries for historical data:",{"start":371,"end":373},{"line":190,"column":32,"offset":372},969,{"line":190,"column":184,"offset":374},1000,{"start":376,"end":378},{"line":190,"column":27,"offset":377},967,{"line":190,"column":190,"offset":379},1002,{"start":381,"end":382},{"line":190,"column":27,"offset":377},{"line":190,"column":190,"offset":379},{"type":23,"value":89},{"type":14,"tagName":120,"properties":385,"children":386,"position":418},{},[387,395,411],{"type":23,"value":388,"position":389},"Use ",{"start":390,"end":393},{"line":391,"column":27,"offset":392},38,1004,{"line":391,"column":67,"offset":394},1008,{"type":14,"tagName":175,"properties":396,"children":397,"position":406},{},[398],{"type":23,"value":399,"position":400},"only when absolutely necessary",{"start":401,"end":403},{"line":391,"column":82,"offset":402},1010,{"line":391,"column":404,"offset":405},37,1040,{"start":407,"end":408},{"line":391,"column":67,"offset":394},{"line":391,"column":409,"offset":410},39,1042,{"type":23,"value":412,"position":413}," as they consume more memory. Declare as timeseries when you need to:",{"start":414,"end":415},{"line":391,"column":409,"offset":410},{"line":391,"column":416,"offset":417},108,1111,{"start":419,"end":420},{"line":391,"column":27,"offset":392},{"line":391,"column":416,"offset":417},{"type":23,"value":89},{"type":14,"tagName":423,"properties":424,"children":425,"position":486},"ul",{},[426,427,455,456,485],{"type":23,"value":89},{"type":14,"tagName":428,"properties":429,"children":430,"position":451},"li",{},[431,438],{"type":23,"value":432,"position":433},"Store data source outputs: ",{"start":434,"end":436},{"line":280,"column":32,"offset":435},1115,{"line":280,"column":28,"offset":437},1142,{"type":14,"tagName":223,"properties":439,"children":440,"position":448},{},[441],{"type":23,"value":442,"position":443},"timeseries price_data = ohlcv(...)",{"start":444,"end":445},{"line":280,"column":28,"offset":437},{"line":280,"column":446,"offset":447},66,1178,{"start":449,"end":450},{"line":280,"column":28,"offset":437},{"line":280,"column":446,"offset":447},{"start":452,"end":454},{"line":280,"column":27,"offset":453},1113,{"line":280,"column":446,"offset":447},{"type":23,"value":89},{"type":14,"tagName":428,"properties":457,"children":458,"position":481},{},[459,468],{"type":23,"value":460,"position":461},"Access past values at previous candle indices: ",{"start":462,"end":465},{"line":463,"column":32,"offset":464},41,1181,{"line":463,"column":466,"offset":467},50,1228,{"type":14,"tagName":223,"properties":469,"children":470,"position":478},{},[471],{"type":23,"value":472,"position":473},"sma_values[5]",{"start":474,"end":475},{"line":463,"column":466,"offset":467},{"line":463,"column":476,"offset":477},65,1243,{"start":479,"end":480},{"line":463,"column":466,"offset":467},{"line":463,"column":476,"offset":477},{"start":482,"end":484},{"line":463,"column":27,"offset":483},1179,{"line":463,"column":476,"offset":477},{"type":23,"value":89},{"start":487,"end":488},{"line":280,"column":27,"offset":453},{"line":463,"column":476,"offset":477},{"type":23,"value":89},{"type":14,"tagName":120,"properties":491,"children":492,"position":621},{},[493,501,513,519,532,539,552,559,576,583,595,602,614],{"type":23,"value":494,"position":495},"While indicator functions like ",{"start":496,"end":499},{"line":497,"column":27,"offset":498},43,1245,{"line":497,"column":33,"offset":500},1276,{"type":14,"tagName":223,"properties":502,"children":503,"position":510},{},[504],{"type":23,"value":505,"position":506},"sma()",{"start":507,"end":508},{"line":497,"column":33,"offset":500},{"line":497,"column":409,"offset":509},1283,{"start":511,"end":512},{"line":497,"column":33,"offset":500},{"line":497,"column":409,"offset":509},{"type":23,"value":514,"position":515},", ",{"start":516,"end":517},{"line":497,"column":409,"offset":509},{"line":497,"column":463,"offset":518},1285,{"type":14,"tagName":223,"properties":520,"children":521,"position":529},{},[522],{"type":23,"value":523,"position":524},"ema()",{"start":525,"end":526},{"line":497,"column":463,"offset":518},{"line":497,"column":527,"offset":528},48,1292,{"start":530,"end":531},{"line":497,"column":463,"offset":518},{"line":497,"column":527,"offset":528},{"type":23,"value":533,"position":534},", and ",{"start":535,"end":536},{"line":497,"column":527,"offset":528},{"line":497,"column":537,"offset":538},54,1298,{"type":14,"tagName":223,"properties":540,"children":541,"position":549},{},[542],{"type":23,"value":543,"position":544},"rsi()",{"start":545,"end":546},{"line":497,"column":537,"offset":538},{"line":497,"column":547,"offset":548},61,1305,{"start":550,"end":551},{"line":497,"column":537,"offset":538},{"line":497,"column":547,"offset":548},{"type":23,"value":553,"position":554}," require a ",{"start":555,"end":556},{"line":497,"column":547,"offset":548},{"line":497,"column":557,"offset":558},72,1316,{"type":14,"tagName":175,"properties":560,"children":561,"position":571},{},[562],{"type":23,"value":563,"position":564},"timeseries as input",{"start":565,"end":568},{"line":497,"column":566,"offset":567},74,1318,{"line":497,"column":569,"offset":570},93,1337,{"start":572,"end":573},{"line":497,"column":557,"offset":558},{"line":497,"column":574,"offset":575},95,1339,{"type":23,"value":577,"position":578},", their return values should be stored as ",{"start":579,"end":580},{"line":497,"column":574,"offset":575},{"line":497,"column":581,"offset":582},137,1381,{"type":14,"tagName":223,"properties":584,"children":585,"position":592},{},[586],{"type":23,"value":323,"position":587},{"start":588,"end":589},{"line":497,"column":581,"offset":582},{"line":497,"column":590,"offset":591},142,1386,{"start":593,"end":594},{"line":497,"column":581,"offset":582},{"line":497,"column":590,"offset":591},{"type":23,"value":596,"position":597}," unless you specifically need to access historical values (e.g., ",{"start":598,"end":599},{"line":497,"column":590,"offset":591},{"line":497,"column":600,"offset":601},207,1451,{"type":14,"tagName":223,"properties":603,"children":604,"position":611},{},[605],{"type":23,"value":472,"position":606},{"start":607,"end":608},{"line":497,"column":600,"offset":601},{"line":497,"column":609,"offset":610},222,1466,{"start":612,"end":613},{"line":497,"column":600,"offset":601},{"line":497,"column":609,"offset":610},{"type":23,"value":615,"position":616},"). This saves memory and improves performance.",{"start":617,"end":618},{"line":497,"column":609,"offset":610},{"line":497,"column":619,"offset":620},268,1512,{"start":622,"end":623},{"line":497,"column":27,"offset":498},{"line":497,"column":619,"offset":620},{"type":23,"value":89},{"type":11,"children":626},[627],{"type":14,"tagName":215,"properties":628,"children":630,"data":-1},{"class":217,"style":218,"tabindex":219,"title":629},"Timeseries Usage",[631],{"type":14,"tagName":223,"properties":632,"children":633},{},[634,643,644,667,668,671,672,680,681,707,708,744,745,748,749,757,758,778,779],{"type":14,"tagName":35,"properties":635,"children":636},{"class":228},[637],{"type":14,"tagName":35,"properties":638,"children":640},{"style":639},"--shiki-dark:#6A737D;--shiki-light:#6A737D",[641],{"type":23,"value":642},"// ✓ Good - Data source stored as timeseries",{"type":23,"value":89},{"type":14,"tagName":35,"properties":645,"children":646},{"class":228},[647,652,656,662],{"type":14,"tagName":35,"properties":648,"children":649},{"style":232},[650],{"type":23,"value":651},"timeseries price_data ",{"type":14,"tagName":35,"properties":653,"children":654},{"style":238},[655],{"type":23,"value":241},{"type":14,"tagName":35,"properties":657,"children":659},{"style":658},"--shiki-dark:#B392F0;--shiki-light:#6F42C1",[660],{"type":23,"value":661}," ohlcv",{"type":14,"tagName":35,"properties":663,"children":664},{"style":232},[665],{"type":23,"value":666},"(currentSymbol, currentExchange)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":669,"children":670},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":673,"children":674},{"class":228},[675],{"type":14,"tagName":35,"properties":676,"children":677},{"style":639},[678],{"type":23,"value":679},"// ✓ Good - Indicator return value stored as var (unless you need history)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":682,"children":683},{"class":228},[684,688,693,697,702],{"type":14,"tagName":35,"properties":685,"children":686},{"style":238},[687],{"type":23,"value":323},{"type":14,"tagName":35,"properties":689,"children":690},{"style":232},[691],{"type":23,"value":692}," sma_value ",{"type":14,"tagName":35,"properties":694,"children":695},{"style":238},[696],{"type":23,"value":241},{"type":14,"tagName":35,"properties":698,"children":699},{"style":658},[700],{"type":23,"value":701}," sma",{"type":14,"tagName":35,"properties":703,"children":704},{"style":232},[705],{"type":23,"value":706},"(price_data.close, period)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":709,"children":710},{"class":228},[711,715,720,724,729,734,739],{"type":14,"tagName":35,"properties":712,"children":713},{"style":238},[714],{"type":23,"value":323},{"type":14,"tagName":35,"properties":716,"children":717},{"style":232},[718],{"type":23,"value":719}," rsi_value ",{"type":14,"tagName":35,"properties":721,"children":722},{"style":238},[723],{"type":23,"value":241},{"type":14,"tagName":35,"properties":725,"children":726},{"style":658},[727],{"type":23,"value":728}," rsi",{"type":14,"tagName":35,"properties":730,"children":731},{"style":232},[732],{"type":23,"value":733},"(price_data.close, ",{"type":14,"tagName":35,"properties":735,"children":736},{"style":244},[737],{"type":23,"value":738},"14",{"type":14,"tagName":35,"properties":740,"children":741},{"style":232},[742],{"type":23,"value":743},")",{"type":23,"value":89},{"type":14,"tagName":35,"properties":746,"children":747},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":750,"children":751},{"class":228},[752],{"type":14,"tagName":35,"properties":753,"children":754},{"style":639},[755],{"type":23,"value":756},"// ✓ Only use timeseries if you need to access historical values",{"type":23,"value":89},{"type":14,"tagName":35,"properties":759,"children":760},{"class":228},[761,766,770,774],{"type":14,"tagName":35,"properties":762,"children":763},{"style":232},[764],{"type":23,"value":765},"timeseries sma_series ",{"type":14,"tagName":35,"properties":767,"children":768},{"style":238},[769],{"type":23,"value":241},{"type":14,"tagName":35,"properties":771,"children":772},{"style":658},[773],{"type":23,"value":701},{"type":14,"tagName":35,"properties":775,"children":776},{"style":232},[777],{"type":23,"value":706},{"type":23,"value":89},{"type":14,"tagName":35,"properties":780,"children":781},{"class":228},[782,786,791,795,800,805,810],{"type":14,"tagName":35,"properties":783,"children":784},{"style":238},[785],{"type":23,"value":323},{"type":14,"tagName":35,"properties":787,"children":788},{"style":232},[789],{"type":23,"value":790}," previous_sma ",{"type":14,"tagName":35,"properties":792,"children":793},{"style":238},[794],{"type":23,"value":241},{"type":14,"tagName":35,"properties":796,"children":797},{"style":232},[798],{"type":23,"value":799}," sma_series[",{"type":14,"tagName":35,"properties":801,"children":802},{"style":244},[803],{"type":23,"value":804},"5",{"type":14,"tagName":35,"properties":806,"children":807},{"style":232},[808],{"type":23,"value":809},"]  ",{"type":14,"tagName":35,"properties":811,"children":812},{"style":639},[813],{"type":23,"value":814},"// Accessing 5 bars ago",{"type":23,"value":89},{"type":14,"tagName":102,"properties":817,"children":819,"position":829},{"id":818},"technical-indicators",[820],{"type":23,"value":821,"position":822},"Technical Indicators",{"start":823,"end":826},{"line":824,"column":56,"offset":825},58,2021,{"line":824,"column":827,"offset":828},24,2041,{"start":830,"end":832},{"line":824,"column":27,"offset":831},2018,{"line":824,"column":827,"offset":828},{"type":23,"value":89},{"type":14,"tagName":120,"properties":835,"children":836,"position":846},{},[837],{"type":23,"value":838,"position":839},"Guidelines for working with technical indicators effectively.",{"start":840,"end":843},{"line":841,"column":27,"offset":842},60,2043,{"line":841,"column":844,"offset":845},62,2104,{"start":847,"end":848},{"line":841,"column":27,"offset":842},{"line":841,"column":844,"offset":845},{"type":23,"value":89},{"type":14,"tagName":137,"properties":851,"children":853,"position":861},{"id":852},"explicit-parameters",[854],{"type":23,"value":855,"position":856},"Explicit Parameters",{"start":857,"end":859},{"line":844,"column":67,"offset":858},2110,{"line":844,"column":827,"offset":860},2129,{"start":862,"end":864},{"line":844,"column":27,"offset":863},2106,{"line":844,"column":827,"offset":860},{"type":23,"value":89},{"type":14,"tagName":120,"properties":867,"children":868,"position":878},{},[869],{"type":23,"value":870,"position":871},"Always specify parameters explicitly for clarity. This makes your code more readable and maintainable.",{"start":872,"end":875},{"line":873,"column":27,"offset":874},64,2131,{"line":873,"column":876,"offset":877},103,2233,{"start":879,"end":880},{"line":873,"column":27,"offset":874},{"line":873,"column":876,"offset":877},{"type":23,"value":89},{"type":11,"children":883},[884],{"type":14,"tagName":215,"properties":885,"children":886,"data":-1},{"class":217,"style":218,"tabindex":219,"title":855},[887],{"type":14,"tagName":223,"properties":888,"children":889},{},[890,898,899,933,934,966,967,970,971,979,980],{"type":14,"tagName":35,"properties":891,"children":892},{"class":228},[893],{"type":14,"tagName":35,"properties":894,"children":895},{"style":639},[896],{"type":23,"value":897},"// ✓ Good - Parameters are explicit and clear",{"type":23,"value":89},{"type":14,"tagName":35,"properties":900,"children":901},{"class":228},[902,907,911,915,920,924,929],{"type":14,"tagName":35,"properties":903,"children":904},{"style":232},[905],{"type":23,"value":906},"timeseries sma20 ",{"type":14,"tagName":35,"properties":908,"children":909},{"style":238},[910],{"type":23,"value":241},{"type":14,"tagName":35,"properties":912,"children":913},{"style":658},[914],{"type":23,"value":701},{"type":14,"tagName":35,"properties":916,"children":917},{"style":232},[918],{"type":23,"value":919},"(price_data.close, period",{"type":14,"tagName":35,"properties":921,"children":922},{"style":238},[923],{"type":23,"value":241},{"type":14,"tagName":35,"properties":925,"children":926},{"style":244},[927],{"type":23,"value":928},"20",{"type":14,"tagName":35,"properties":930,"children":931},{"style":232},[932],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":935,"children":936},{"class":228},[937,942,946,950,954,958,962],{"type":14,"tagName":35,"properties":938,"children":939},{"style":232},[940],{"type":23,"value":941},"timeseries rsi14 ",{"type":14,"tagName":35,"properties":943,"children":944},{"style":238},[945],{"type":23,"value":241},{"type":14,"tagName":35,"properties":947,"children":948},{"style":658},[949],{"type":23,"value":728},{"type":14,"tagName":35,"properties":951,"children":952},{"style":232},[953],{"type":23,"value":919},{"type":14,"tagName":35,"properties":955,"children":956},{"style":238},[957],{"type":23,"value":241},{"type":14,"tagName":35,"properties":959,"children":960},{"style":244},[961],{"type":23,"value":738},{"type":14,"tagName":35,"properties":963,"children":964},{"style":232},[965],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":968,"children":969},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":972,"children":973},{"class":228},[974],{"type":14,"tagName":35,"properties":975,"children":976},{"style":639},[977],{"type":23,"value":978},"// ❌ Avoid - Relying on defaults makes intent unclear",{"type":23,"value":89},{"type":14,"tagName":35,"properties":981,"children":982},{"class":228},[983,988,992,996],{"type":14,"tagName":35,"properties":984,"children":985},{"style":232},[986],{"type":23,"value":987},"timeseries sma_default ",{"type":14,"tagName":35,"properties":989,"children":990},{"style":238},[991],{"type":23,"value":241},{"type":14,"tagName":35,"properties":993,"children":994},{"style":658},[995],{"type":23,"value":701},{"type":14,"tagName":35,"properties":997,"children":998},{"style":232},[999],{"type":23,"value":1000},"(price_data.close)",{"type":23,"value":89},{"type":14,"tagName":137,"properties":1003,"children":1005,"position":1014},{"id":1004},"historical-data-access",[1006],{"type":23,"value":1007,"position":1008},"Historical Data Access",{"start":1009,"end":1012},{"line":1010,"column":67,"offset":1011},75,2549,{"line":1010,"column":277,"offset":1013},2571,{"start":1015,"end":1017},{"line":1010,"column":27,"offset":1016},2545,{"line":1010,"column":277,"offset":1013},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1020,"children":1021,"position":1031},{},[1022],{"type":23,"value":1023,"position":1024},"Use bracket notation to access historical values safely.",{"start":1025,"end":1028},{"line":1026,"column":27,"offset":1027},77,2573,{"line":1026,"column":1029,"offset":1030},57,2629,{"start":1032,"end":1033},{"line":1026,"column":27,"offset":1027},{"line":1026,"column":1029,"offset":1030},{"type":23,"value":89},{"type":11,"children":1036},[1037],{"type":14,"tagName":215,"properties":1038,"children":1039,"data":-1},{"class":217,"style":218,"tabindex":219,"title":1007},[1040],{"type":14,"tagName":223,"properties":1041,"children":1042},{},[1043,1051,1052,1083,1084,1112,1113,1116,1117,1125,1126],{"type":14,"tagName":35,"properties":1044,"children":1045},{"class":228},[1046],{"type":14,"tagName":35,"properties":1047,"children":1048},{"style":639},[1049],{"type":23,"value":1050},"// Access previous bar values",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1053,"children":1054},{"class":228},[1055,1059,1064,1068,1073,1078],{"type":14,"tagName":35,"properties":1056,"children":1057},{"style":238},[1058],{"type":23,"value":323},{"type":14,"tagName":35,"properties":1060,"children":1061},{"style":232},[1062],{"type":23,"value":1063}," prev_close ",{"type":14,"tagName":35,"properties":1065,"children":1066},{"style":238},[1067],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1069,"children":1070},{"style":232},[1071],{"type":23,"value":1072}," price_data.close[",{"type":14,"tagName":35,"properties":1074,"children":1075},{"style":244},[1076],{"type":23,"value":1077},"1",{"type":14,"tagName":35,"properties":1079,"children":1080},{"style":232},[1081],{"type":23,"value":1082},"]",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1085,"children":1086},{"class":228},[1087,1091,1096,1100,1104,1108],{"type":14,"tagName":35,"properties":1088,"children":1089},{"style":238},[1090],{"type":23,"value":323},{"type":14,"tagName":35,"properties":1092,"children":1093},{"style":232},[1094],{"type":23,"value":1095}," close_5_bars_ago ",{"type":14,"tagName":35,"properties":1097,"children":1098},{"style":238},[1099],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1101,"children":1102},{"style":232},[1103],{"type":23,"value":1072},{"type":14,"tagName":35,"properties":1105,"children":1106},{"style":244},[1107],{"type":23,"value":804},{"type":14,"tagName":35,"properties":1109,"children":1110},{"style":232},[1111],{"type":23,"value":1082},{"type":23,"value":89},{"type":14,"tagName":35,"properties":1114,"children":1115},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":1118,"children":1119},{"class":228},[1120],{"type":14,"tagName":35,"properties":1121,"children":1122},{"style":639},[1123],{"type":23,"value":1124},"// Use in calculations",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1127,"children":1128},{"class":228},[1129,1133,1138,1142,1147,1152,1156,1160],{"type":14,"tagName":35,"properties":1130,"children":1131},{"style":238},[1132],{"type":23,"value":323},{"type":14,"tagName":35,"properties":1134,"children":1135},{"style":232},[1136],{"type":23,"value":1137}," price_change ",{"type":14,"tagName":35,"properties":1139,"children":1140},{"style":238},[1141],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1143,"children":1144},{"style":232},[1145],{"type":23,"value":1146}," price_data.close ",{"type":14,"tagName":35,"properties":1148,"children":1149},{"style":238},[1150],{"type":23,"value":1151},"-",{"type":14,"tagName":35,"properties":1153,"children":1154},{"style":232},[1155],{"type":23,"value":1072},{"type":14,"tagName":35,"properties":1157,"children":1158},{"style":244},[1159],{"type":23,"value":1077},{"type":14,"tagName":35,"properties":1161,"children":1162},{"style":232},[1163],{"type":23,"value":1082},{"type":23,"value":89},{"type":14,"tagName":102,"properties":1166,"children":1168,"position":1178},{"id":1167},"plotting-and-visualization",[1169],{"type":23,"value":1170,"position":1171},"Plotting & Visualization",{"start":1172,"end":1175},{"line":1173,"column":56,"offset":1174},88,2887,{"line":1173,"column":1176,"offset":1177},28,2911,{"start":1179,"end":1181},{"line":1173,"column":27,"offset":1180},2884,{"line":1173,"column":1176,"offset":1177},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1184,"children":1185,"position":1195},{},[1186],{"type":23,"value":1187,"position":1188},"Create clear and informative visualizations.",{"start":1189,"end":1192},{"line":1190,"column":27,"offset":1191},90,2913,{"line":1190,"column":1193,"offset":1194},45,2957,{"start":1196,"end":1197},{"line":1190,"column":27,"offset":1191},{"line":1190,"column":1193,"offset":1194},{"type":23,"value":89},{"type":14,"tagName":137,"properties":1200,"children":1202,"position":1212},{"id":1201},"descriptive-plots",[1203],{"type":23,"value":1204,"position":1205},"Descriptive Plots",{"start":1206,"end":1209},{"line":1207,"column":67,"offset":1208},92,2963,{"line":1207,"column":1210,"offset":1211},22,2980,{"start":1213,"end":1215},{"line":1207,"column":27,"offset":1214},2959,{"line":1207,"column":1210,"offset":1211},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1218,"children":1219,"position":1229},{},[1220],{"type":23,"value":1221,"position":1222},"Use meaningful colors and widths to make your plots easy to distinguish.",{"start":1223,"end":1226},{"line":1224,"column":27,"offset":1225},94,2982,{"line":1224,"column":1227,"offset":1228},73,3054,{"start":1230,"end":1231},{"line":1224,"column":27,"offset":1225},{"line":1224,"column":1227,"offset":1228},{"type":23,"value":89},{"type":11,"children":1234},[1235],{"type":14,"tagName":215,"properties":1236,"children":1237,"data":-1},{"class":217,"style":218,"tabindex":219,"title":1204},[1238],{"type":14,"tagName":223,"properties":1239,"children":1240},{},[1241,1249,1250,1341,1342,1425,1426,1429,1430,1438,1439,1480,1481],{"type":14,"tagName":35,"properties":1242,"children":1243},{"class":228},[1244],{"type":14,"tagName":35,"properties":1245,"children":1246},{"style":639},[1247],{"type":23,"value":1248},"// Use meaningful colors and widths",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1251,"children":1252},{"class":228},[1253,1258,1263,1267,1272,1276,1281,1286,1290,1295,1300,1305,1309,1313,1318,1323,1327,1331,1336],{"type":14,"tagName":35,"properties":1254,"children":1255},{"style":658},[1256],{"type":23,"value":1257},"plotLine",{"type":14,"tagName":35,"properties":1259,"children":1260},{"style":232},[1261],{"type":23,"value":1262},"(value",{"type":14,"tagName":35,"properties":1264,"children":1265},{"style":238},[1266],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1268,"children":1269},{"style":232},[1270],{"type":23,"value":1271},"sma20, width",{"type":14,"tagName":35,"properties":1273,"children":1274},{"style":238},[1275],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1277,"children":1278},{"style":244},[1279],{"type":23,"value":1280},"2",{"type":14,"tagName":35,"properties":1282,"children":1283},{"style":232},[1284],{"type":23,"value":1285},", colors",{"type":14,"tagName":35,"properties":1287,"children":1288},{"style":238},[1289],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1291,"children":1292},{"style":232},[1293],{"type":23,"value":1294},"[",{"type":14,"tagName":35,"properties":1296,"children":1297},{"style":357},[1298],{"type":23,"value":1299},"\"blue\"",{"type":14,"tagName":35,"properties":1301,"children":1302},{"style":232},[1303],{"type":23,"value":1304},"], label",{"type":14,"tagName":35,"properties":1306,"children":1307},{"style":238},[1308],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1310,"children":1311},{"style":232},[1312],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1314,"children":1315},{"style":357},[1316],{"type":23,"value":1317},"\"SMA 20\"",{"type":14,"tagName":35,"properties":1319,"children":1320},{"style":232},[1321],{"type":23,"value":1322},"], desc",{"type":14,"tagName":35,"properties":1324,"children":1325},{"style":238},[1326],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1328,"children":1329},{"style":232},[1330],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1332,"children":1333},{"style":357},[1334],{"type":23,"value":1335},"\"20-period Simple Moving Average\"",{"type":14,"tagName":35,"properties":1337,"children":1338},{"style":232},[1339],{"type":23,"value":1340},"])",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1343,"children":1344},{"class":228},[1345,1349,1353,1357,1362,1366,1370,1374,1378,1382,1387,1391,1395,1399,1404,1408,1412,1416,1421],{"type":14,"tagName":35,"properties":1346,"children":1347},{"style":658},[1348],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":1350,"children":1351},{"style":232},[1352],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":1354,"children":1355},{"style":238},[1356],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1358,"children":1359},{"style":232},[1360],{"type":23,"value":1361},"sma50, width",{"type":14,"tagName":35,"properties":1363,"children":1364},{"style":238},[1365],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1367,"children":1368},{"style":244},[1369],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":1371,"children":1372},{"style":232},[1373],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":1375,"children":1376},{"style":238},[1377],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1379,"children":1380},{"style":232},[1381],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1383,"children":1384},{"style":357},[1385],{"type":23,"value":1386},"\"red\"",{"type":14,"tagName":35,"properties":1388,"children":1389},{"style":232},[1390],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":1392,"children":1393},{"style":238},[1394],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1396,"children":1397},{"style":232},[1398],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1400,"children":1401},{"style":357},[1402],{"type":23,"value":1403},"\"SMA 50\"",{"type":14,"tagName":35,"properties":1405,"children":1406},{"style":232},[1407],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":1409,"children":1410},{"style":238},[1411],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1413,"children":1414},{"style":232},[1415],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1417,"children":1418},{"style":357},[1419],{"type":23,"value":1420},"\"50-period Simple Moving Average\"",{"type":14,"tagName":35,"properties":1422,"children":1423},{"style":232},[1424],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":1427,"children":1428},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":1431,"children":1432},{"class":228},[1433],{"type":14,"tagName":35,"properties":1434,"children":1435},{"style":639},[1436],{"type":23,"value":1437},"// Conditional plotting with ternary operators",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1440,"children":1441},{"class":228},[1442,1446,1451,1455,1460,1465,1470,1475],{"type":14,"tagName":35,"properties":1443,"children":1444},{"style":238},[1445],{"type":23,"value":323},{"type":14,"tagName":35,"properties":1447,"children":1448},{"style":232},[1449],{"type":23,"value":1450}," signal_value ",{"type":14,"tagName":35,"properties":1452,"children":1453},{"style":238},[1454],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1456,"children":1457},{"style":232},[1458],{"type":23,"value":1459}," trend_up ",{"type":14,"tagName":35,"properties":1461,"children":1462},{"style":238},[1463],{"type":23,"value":1464},"?",{"type":14,"tagName":35,"properties":1466,"children":1467},{"style":232},[1468],{"type":23,"value":1469}," price_data.high ",{"type":14,"tagName":35,"properties":1471,"children":1472},{"style":238},[1473],{"type":23,"value":1474},":",{"type":14,"tagName":35,"properties":1476,"children":1477},{"style":232},[1478],{"type":23,"value":1479}," na",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1482,"children":1483},{"class":228},[1484,1489,1493,1497,1502,1506,1511,1516,1520,1524,1528,1532,1536,1541,1545,1549,1553,1558,1562,1566,1570,1575],{"type":14,"tagName":35,"properties":1485,"children":1486},{"style":658},[1487],{"type":23,"value":1488},"plotShape",{"type":14,"tagName":35,"properties":1490,"children":1491},{"style":232},[1492],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":1494,"children":1495},{"style":238},[1496],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1498,"children":1499},{"style":232},[1500],{"type":23,"value":1501},"signal_value, shape",{"type":14,"tagName":35,"properties":1503,"children":1504},{"style":238},[1505],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1507,"children":1508},{"style":357},[1509],{"type":23,"value":1510},"\"circle\"",{"type":14,"tagName":35,"properties":1512,"children":1513},{"style":232},[1514],{"type":23,"value":1515},", width",{"type":14,"tagName":35,"properties":1517,"children":1518},{"style":238},[1519],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1521,"children":1522},{"style":244},[1523],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":1525,"children":1526},{"style":232},[1527],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":1529,"children":1530},{"style":238},[1531],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1533,"children":1534},{"style":232},[1535],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1537,"children":1538},{"style":357},[1539],{"type":23,"value":1540},"\"green\"",{"type":14,"tagName":35,"properties":1542,"children":1543},{"style":232},[1544],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":1546,"children":1547},{"style":238},[1548],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1550,"children":1551},{"style":232},[1552],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1554,"children":1555},{"style":357},[1556],{"type":23,"value":1557},"\"Signal\"",{"type":14,"tagName":35,"properties":1559,"children":1560},{"style":232},[1561],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":1563,"children":1564},{"style":238},[1565],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1567,"children":1568},{"style":232},[1569],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":1571,"children":1572},{"style":357},[1573],{"type":23,"value":1574},"\"Trading Signal\"",{"type":14,"tagName":35,"properties":1576,"children":1577},{"style":232},[1578],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":137,"properties":1581,"children":1583,"position":1592},{"id":1582},"choose-appropriate-plot-types",[1584],{"type":23,"value":1585,"position":1586},"Choose Appropriate Plot Types",{"start":1587,"end":1590},{"line":1588,"column":67,"offset":1589},106,3582,{"line":1588,"column":184,"offset":1591},3611,{"start":1593,"end":1595},{"line":1588,"column":27,"offset":1594},3578,{"line":1588,"column":184,"offset":1591},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1598,"children":1599,"position":1608},{},[1600],{"type":23,"value":1601,"position":1602},"Select the right plot function for your data type.",{"start":1603,"end":1605},{"line":416,"column":27,"offset":1604},3613,{"line":416,"column":1606,"offset":1607},51,3663,{"start":1609,"end":1610},{"line":416,"column":27,"offset":1604},{"line":416,"column":1606,"offset":1607},{"type":23,"value":89},{"type":14,"tagName":1613,"properties":1614,"children":1616},"hint",{"type":1615},"info",[1617,1641],{"type":14,"tagName":120,"properties":1618,"children":1619,"position":1638},{},[1620],{"type":14,"tagName":175,"properties":1621,"children":1622,"position":1632},{},[1623],{"type":23,"value":1624,"position":1625},"Plot Types",{"start":1626,"end":1629},{"line":1627,"column":32,"offset":1628},113,3693,{"line":1627,"column":1630,"offset":1631},13,3703,{"start":1633,"end":1635},{"line":1627,"column":27,"offset":1634},3691,{"line":1627,"column":1636,"offset":1637},15,3705,{"start":1639,"end":1640},{"line":1627,"column":27,"offset":1634},{"line":1627,"column":1636,"offset":1637},{"type":14,"tagName":423,"properties":1642,"children":1643,"position":1760},{},[1644,1645,1672,1673,1701,1702,1731,1732,1759],{"type":23,"value":89},{"type":14,"tagName":428,"properties":1646,"children":1647,"position":1668},{},[1648,1662],{"type":14,"tagName":223,"properties":1649,"children":1650,"position":1659},{},[1651],{"type":23,"value":1652,"position":1653},"plotLine()",{"start":1654,"end":1657},{"line":1655,"column":32,"offset":1656},115,3709,{"line":1655,"column":1636,"offset":1658},3721,{"start":1660,"end":1661},{"line":1655,"column":32,"offset":1656},{"line":1655,"column":1636,"offset":1658},{"type":23,"value":1663,"position":1664}," for continuous lines",{"start":1665,"end":1666},{"line":1655,"column":1636,"offset":1658},{"line":1655,"column":190,"offset":1667},3742,{"start":1669,"end":1671},{"line":1655,"column":27,"offset":1670},3707,{"line":1655,"column":190,"offset":1667},{"type":23,"value":89},{"type":14,"tagName":428,"properties":1674,"children":1675,"position":1697},{},[1676,1690],{"type":14,"tagName":223,"properties":1677,"children":1678,"position":1687},{},[1679],{"type":23,"value":1680,"position":1681},"plotBar()",{"start":1682,"end":1685},{"line":1683,"column":32,"offset":1684},116,3745,{"line":1683,"column":145,"offset":1686},3756,{"start":1688,"end":1689},{"line":1683,"column":32,"offset":1684},{"line":1683,"column":145,"offset":1686},{"type":23,"value":1691,"position":1692}," for histogram data",{"start":1693,"end":1694},{"line":1683,"column":145,"offset":1686},{"line":1683,"column":1695,"offset":1696},33,3775,{"start":1698,"end":1700},{"line":1683,"column":27,"offset":1699},3743,{"line":1683,"column":1695,"offset":1696},{"type":23,"value":89},{"type":14,"tagName":428,"properties":1703,"children":1704,"position":1727},{},[1705,1720],{"type":14,"tagName":223,"properties":1706,"children":1707,"position":1717},{},[1708],{"type":23,"value":1709,"position":1710},"plotCandle()",{"start":1711,"end":1714},{"line":1712,"column":32,"offset":1713},117,3778,{"line":1712,"column":1715,"offset":1716},17,3792,{"start":1718,"end":1719},{"line":1712,"column":32,"offset":1713},{"line":1712,"column":1715,"offset":1716},{"type":23,"value":1721,"position":1722}," for OHLC data",{"start":1723,"end":1724},{"line":1712,"column":1715,"offset":1716},{"line":1712,"column":1725,"offset":1726},31,3806,{"start":1728,"end":1730},{"line":1712,"column":27,"offset":1729},3776,{"line":1712,"column":1725,"offset":1726},{"type":23,"value":89},{"type":14,"tagName":428,"properties":1733,"children":1734,"position":1755},{},[1735,1749],{"type":14,"tagName":223,"properties":1736,"children":1737,"position":1746},{},[1738],{"type":23,"value":1739,"position":1740},"plotShape()",{"start":1741,"end":1744},{"line":1742,"column":32,"offset":1743},118,3809,{"line":1742,"column":162,"offset":1745},3822,{"start":1747,"end":1748},{"line":1742,"column":32,"offset":1743},{"line":1742,"column":162,"offset":1745},{"type":23,"value":1750,"position":1751}," for discrete signals",{"start":1752,"end":1753},{"line":1742,"column":162,"offset":1745},{"line":1742,"column":404,"offset":1754},3843,{"start":1756,"end":1758},{"line":1742,"column":27,"offset":1757},3807,{"line":1742,"column":404,"offset":1754},{"type":23,"value":89},{"start":1761,"end":1762},{"line":1655,"column":27,"offset":1670},{"line":1742,"column":404,"offset":1754},{"type":23,"value":89},{"type":14,"tagName":102,"properties":1765,"children":1767,"position":1776},{"id":1766},"debugging",[1768],{"type":23,"value":1769,"position":1770},"Debugging",{"start":1771,"end":1774},{"line":1772,"column":56,"offset":1773},123,3864,{"line":1772,"column":1630,"offset":1775},3873,{"start":1777,"end":1779},{"line":1772,"column":27,"offset":1778},3861,{"line":1772,"column":1630,"offset":1775},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1782,"children":1783,"position":1793},{},[1784],{"type":23,"value":1785,"position":1786},"Best practices for debugging and inspecting your kScript code.",{"start":1787,"end":1790},{"line":1788,"column":27,"offset":1789},125,3875,{"line":1788,"column":1791,"offset":1792},63,3937,{"start":1794,"end":1795},{"line":1788,"column":27,"offset":1789},{"line":1788,"column":1791,"offset":1792},{"type":23,"value":89},{"type":14,"tagName":137,"properties":1798,"children":1800,"position":1810},{"id":1799},"use-printtimeseries-for-timeseries-objects",[1801],{"type":23,"value":1802,"position":1803},"Use printTimeSeries for Timeseries Objects",{"start":1804,"end":1807},{"line":1805,"column":67,"offset":1806},127,3943,{"line":1805,"column":1808,"offset":1809},47,3985,{"start":1811,"end":1813},{"line":1805,"column":27,"offset":1812},3939,{"line":1805,"column":1808,"offset":1809},{"type":23,"value":89},{"type":14,"tagName":120,"properties":1816,"children":1817,"position":1900},{},[1818,1826,1838,1844,1856,1863,1874,1881,1893],{"type":23,"value":1819,"position":1820},"Always use ",{"start":1821,"end":1824},{"line":1822,"column":27,"offset":1823},129,3987,{"line":1822,"column":127,"offset":1825},3998,{"type":14,"tagName":223,"properties":1827,"children":1828,"position":1835},{},[1829],{"type":23,"value":1830,"position":1831},"printTimeSeries()",{"start":1832,"end":1833},{"line":1822,"column":127,"offset":1825},{"line":1822,"column":1725,"offset":1834},4017,{"start":1836,"end":1837},{"line":1822,"column":127,"offset":1825},{"line":1822,"column":1725,"offset":1834},{"type":23,"value":1839,"position":1840}," for timeseries objects instead of ",{"start":1841,"end":1842},{"line":1822,"column":1725,"offset":1834},{"line":1822,"column":446,"offset":1843},4052,{"type":14,"tagName":223,"properties":1845,"children":1846,"position":1853},{},[1847],{"type":23,"value":1848,"position":1849},"print()",{"start":1850,"end":1851},{"line":1822,"column":446,"offset":1843},{"line":1822,"column":1010,"offset":1852},4061,{"start":1854,"end":1855},{"line":1822,"column":446,"offset":1843},{"line":1822,"column":1010,"offset":1852},{"type":23,"value":1857,"position":1858},". The ",{"start":1859,"end":1860},{"line":1822,"column":1010,"offset":1852},{"line":1822,"column":1861,"offset":1862},81,4067,{"type":14,"tagName":223,"properties":1864,"children":1865,"position":1871},{},[1866],{"type":23,"value":1848,"position":1867},{"start":1868,"end":1869},{"line":1822,"column":1861,"offset":1862},{"line":1822,"column":1190,"offset":1870},4076,{"start":1872,"end":1873},{"line":1822,"column":1861,"offset":1862},{"line":1822,"column":1190,"offset":1870},{"type":23,"value":1875,"position":1876}," function only outputs the first value (e.g., only \"open\" for OHLCV data), while ",{"start":1877,"end":1878},{"line":1822,"column":1190,"offset":1870},{"line":1822,"column":1879,"offset":1880},171,4157,{"type":14,"tagName":223,"properties":1882,"children":1883,"position":1890},{},[1884],{"type":23,"value":1830,"position":1885},{"start":1886,"end":1887},{"line":1822,"column":1879,"offset":1880},{"line":1822,"column":1888,"offset":1889},190,4176,{"start":1891,"end":1892},{"line":1822,"column":1879,"offset":1880},{"line":1822,"column":1888,"offset":1889},{"type":23,"value":1894,"position":1895}," displays the complete timeseries structure.",{"start":1896,"end":1897},{"line":1822,"column":1888,"offset":1889},{"line":1822,"column":1898,"offset":1899},234,4220,{"start":1901,"end":1902},{"line":1822,"column":27,"offset":1823},{"line":1822,"column":1898,"offset":1899},{"type":23,"value":89},{"type":11,"children":1905},[1906],{"type":14,"tagName":215,"properties":1907,"children":1909,"data":-1},{"class":217,"style":218,"tabindex":219,"title":1908},"printTimeSeries for Timeseries Objects",[1910],{"type":14,"tagName":223,"properties":1911,"children":1912},{},[1913,1921,1922,1941,1942,1970,1971,1974,1975,1983,1984,2002,2003,2006,2007,2015,2016],{"type":14,"tagName":35,"properties":1914,"children":1915},{"class":228},[1916],{"type":14,"tagName":35,"properties":1917,"children":1918},{"style":639},[1919],{"type":23,"value":1920},"// ❌ Avoid - print() only shows first value (open)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1923,"children":1924},{"class":228},[1925,1929,1933,1937],{"type":14,"tagName":35,"properties":1926,"children":1927},{"style":232},[1928],{"type":23,"value":651},{"type":14,"tagName":35,"properties":1930,"children":1931},{"style":238},[1932],{"type":23,"value":241},{"type":14,"tagName":35,"properties":1934,"children":1935},{"style":658},[1936],{"type":23,"value":661},{"type":14,"tagName":35,"properties":1938,"children":1939},{"style":232},[1940],{"type":23,"value":666},{"type":23,"value":89},{"type":14,"tagName":35,"properties":1943,"children":1944},{"class":228},[1945,1950,1955,1960,1965],{"type":14,"tagName":35,"properties":1946,"children":1947},{"style":658},[1948],{"type":23,"value":1949},"print",{"type":14,"tagName":35,"properties":1951,"children":1952},{"style":232},[1953],{"type":23,"value":1954},"(",{"type":14,"tagName":35,"properties":1956,"children":1957},{"style":357},[1958],{"type":23,"value":1959},"\"Price data:\"",{"type":14,"tagName":35,"properties":1961,"children":1962},{"style":232},[1963],{"type":23,"value":1964},", price_data)  ",{"type":14,"tagName":35,"properties":1966,"children":1967},{"style":639},[1968],{"type":23,"value":1969},"// Only prints open values",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1972,"children":1973},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":1976,"children":1977},{"class":228},[1978],{"type":14,"tagName":35,"properties":1979,"children":1980},{"style":639},[1981],{"type":23,"value":1982},"// ✓ Good - printTimeSeries() shows complete OHLCV structure",{"type":23,"value":89},{"type":14,"tagName":35,"properties":1985,"children":1986},{"class":228},[1987,1992,1997],{"type":14,"tagName":35,"properties":1988,"children":1989},{"style":658},[1990],{"type":23,"value":1991},"printTimeSeries",{"type":14,"tagName":35,"properties":1993,"children":1994},{"style":232},[1995],{"type":23,"value":1996},"(price_data)  ",{"type":14,"tagName":35,"properties":1998,"children":1999},{"style":639},[2000],{"type":23,"value":2001},"// Prints [timeseriesInMs, open, high, low, close, volume]",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2004,"children":2005},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":2008,"children":2009},{"class":228},[2010],{"type":14,"tagName":35,"properties":2011,"children":2012},{"style":639},[2013],{"type":23,"value":2014},"// You can also specify which field to print",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2017,"children":2018},{"class":228},[2019,2023,2028,2032,2037,2042],{"type":14,"tagName":35,"properties":2020,"children":2021},{"style":658},[2022],{"type":23,"value":1991},{"type":14,"tagName":35,"properties":2024,"children":2025},{"style":232},[2026],{"type":23,"value":2027},"(price_data, priceIndex",{"type":14,"tagName":35,"properties":2029,"children":2030},{"style":238},[2031],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2033,"children":2034},{"style":244},[2035],{"type":23,"value":2036},"4",{"type":14,"tagName":35,"properties":2038,"children":2039},{"style":232},[2040],{"type":23,"value":2041},")  ",{"type":14,"tagName":35,"properties":2043,"children":2044},{"style":639},[2045],{"type":23,"value":2046},"// Print [timeseriesInMs, close] prices",{"type":23,"value":89},{"type":14,"tagName":102,"properties":2049,"children":2051,"position":2060},{"id":2050},"error-prevention",[2052],{"type":23,"value":2053,"position":2054},"Error Prevention",{"start":2055,"end":2058},{"line":2056,"column":56,"offset":2057},143,4755,{"line":2056,"column":203,"offset":2059},4771,{"start":2061,"end":2063},{"line":2056,"column":27,"offset":2062},4752,{"line":2056,"column":203,"offset":2059},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2066,"children":2067,"position":2076},{},[2068],{"type":23,"value":2069,"position":2070},"Protect your code against common runtime errors.",{"start":2071,"end":2074},{"line":2072,"column":27,"offset":2073},145,4773,{"line":2072,"column":165,"offset":2075},4821,{"start":2077,"end":2078},{"line":2072,"column":27,"offset":2073},{"line":2072,"column":165,"offset":2075},{"type":23,"value":89},{"type":14,"tagName":137,"properties":2081,"children":2083,"position":2092},{"id":2082},"null-checking",[2084],{"type":23,"value":2085,"position":2086},"Null Checking",{"start":2087,"end":2090},{"line":2088,"column":67,"offset":2089},147,4827,{"line":2088,"column":112,"offset":2091},4840,{"start":2093,"end":2095},{"line":2088,"column":27,"offset":2094},4823,{"line":2088,"column":112,"offset":2091},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2098,"children":2099,"position":2108},{},[2100],{"type":23,"value":2101,"position":2102},"Always check for invalid data before performing calculations.",{"start":2103,"end":2106},{"line":2104,"column":27,"offset":2105},149,4842,{"line":2104,"column":844,"offset":2107},4903,{"start":2109,"end":2110},{"line":2104,"column":27,"offset":2105},{"line":2104,"column":844,"offset":2107},{"type":23,"value":89},{"type":11,"children":2113},[2114],{"type":14,"tagName":215,"properties":2115,"children":2116,"data":-1},{"class":217,"style":218,"tabindex":219,"title":2085},[2117],{"type":14,"tagName":223,"properties":2118,"children":2119},{},[2120,2128,2129,2186,2187,2190,2191,2199,2200,2245,2246,2276,2277],{"type":14,"tagName":35,"properties":2121,"children":2122},{"class":228},[2123],{"type":14,"tagName":35,"properties":2124,"children":2125},{"style":639},[2126],{"type":23,"value":2127},"// Check for invalid data before calculations",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2130,"children":2131},{"class":228},[2132,2136,2141,2145,2150,2155,2160,2164,2168,2173,2178,2182],{"type":14,"tagName":35,"properties":2133,"children":2134},{"style":238},[2135],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2137,"children":2138},{"style":232},[2139],{"type":23,"value":2140}," calculation ",{"type":14,"tagName":35,"properties":2142,"children":2143},{"style":238},[2144],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2146,"children":2147},{"style":238},[2148],{"type":23,"value":2149}," !",{"type":14,"tagName":35,"properties":2151,"children":2152},{"style":658},[2153],{"type":23,"value":2154},"isnan",{"type":14,"tagName":35,"properties":2156,"children":2157},{"style":232},[2158],{"type":23,"value":2159},"(price_data.close) ",{"type":14,"tagName":35,"properties":2161,"children":2162},{"style":238},[2163],{"type":23,"value":1464},{"type":14,"tagName":35,"properties":2165,"children":2166},{"style":232},[2167],{"type":23,"value":1146},{"type":14,"tagName":35,"properties":2169,"children":2170},{"style":238},[2171],{"type":23,"value":2172},"*",{"type":14,"tagName":35,"properties":2174,"children":2175},{"style":232},[2176],{"type":23,"value":2177}," multiplier ",{"type":14,"tagName":35,"properties":2179,"children":2180},{"style":238},[2181],{"type":23,"value":1474},{"type":14,"tagName":35,"properties":2183,"children":2184},{"style":232},[2185],{"type":23,"value":1479},{"type":23,"value":89},{"type":14,"tagName":35,"properties":2188,"children":2189},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":2192,"children":2193},{"class":228},[2194],{"type":14,"tagName":35,"properties":2195,"children":2196},{"style":639},[2197],{"type":23,"value":2198},"// Alternative using isnum()",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2201,"children":2202},{"class":228},[2203,2208,2213,2218,2222,2227,2231,2236,2240],{"type":14,"tagName":35,"properties":2204,"children":2205},{"style":238},[2206],{"type":23,"value":2207},"if",{"type":14,"tagName":35,"properties":2209,"children":2210},{"style":232},[2211],{"type":23,"value":2212}," (",{"type":14,"tagName":35,"properties":2214,"children":2215},{"style":658},[2216],{"type":23,"value":2217},"isnum",{"type":14,"tagName":35,"properties":2219,"children":2220},{"style":232},[2221],{"type":23,"value":2159},{"type":14,"tagName":35,"properties":2223,"children":2224},{"style":238},[2225],{"type":23,"value":2226},"&&",{"type":14,"tagName":35,"properties":2228,"children":2229},{"style":232},[2230],{"type":23,"value":1146},{"type":14,"tagName":35,"properties":2232,"children":2233},{"style":238},[2234],{"type":23,"value":2235},">",{"type":14,"tagName":35,"properties":2237,"children":2238},{"style":244},[2239],{"type":23,"value":337},{"type":14,"tagName":35,"properties":2241,"children":2242},{"style":232},[2243],{"type":23,"value":2244},") {",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2247,"children":2248},{"class":228},[2249,2254,2259,2263,2267,2271],{"type":14,"tagName":35,"properties":2250,"children":2251},{"style":238},[2252],{"type":23,"value":2253},"    var",{"type":14,"tagName":35,"properties":2255,"children":2256},{"style":232},[2257],{"type":23,"value":2258}," result ",{"type":14,"tagName":35,"properties":2260,"children":2261},{"style":238},[2262],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2264,"children":2265},{"style":232},[2266],{"type":23,"value":1146},{"type":14,"tagName":35,"properties":2268,"children":2269},{"style":238},[2270],{"type":23,"value":2172},{"type":14,"tagName":35,"properties":2272,"children":2273},{"style":244},[2274],{"type":23,"value":2275}," 2",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2278,"children":2279},{"class":228},[2280],{"type":14,"tagName":35,"properties":2281,"children":2282},{"style":232},[2283],{"type":23,"value":2284},"}",{"type":23,"value":89},{"type":14,"tagName":137,"properties":2287,"children":2289,"position":2299},{"id":2288},"division-by-zero",[2290],{"type":23,"value":2291,"position":2292},"Division by Zero",{"start":2293,"end":2296},{"line":2294,"column":67,"offset":2295},161,5212,{"line":2294,"column":2297,"offset":2298},21,5228,{"start":2300,"end":2302},{"line":2294,"column":27,"offset":2301},5208,{"line":2294,"column":2297,"offset":2298},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2305,"children":2306,"position":2315},{},[2307],{"type":23,"value":2308,"position":2309},"Protect against division by zero errors.",{"start":2310,"end":2313},{"line":2311,"column":27,"offset":2312},163,5230,{"line":2311,"column":463,"offset":2314},5270,{"start":2316,"end":2317},{"line":2311,"column":27,"offset":2312},{"line":2311,"column":463,"offset":2314},{"type":23,"value":89},{"type":11,"children":2320},[2321],{"type":14,"tagName":215,"properties":2322,"children":2323,"data":-1},{"class":217,"style":218,"tabindex":219,"title":2291},[2324],{"type":14,"tagName":223,"properties":2325,"children":2326},{},[2327,2335,2336,2393,2394,2397,2398,2406,2407],{"type":14,"tagName":35,"properties":2328,"children":2329},{"class":228},[2330],{"type":14,"tagName":35,"properties":2331,"children":2332},{"style":639},[2333],{"type":23,"value":2334},"// Protect against division by zero",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2337,"children":2338},{"class":228},[2339,2343,2348,2352,2357,2362,2366,2371,2376,2381,2385,2389],{"type":14,"tagName":35,"properties":2340,"children":2341},{"style":238},[2342],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2344,"children":2345},{"style":232},[2346],{"type":23,"value":2347}," ratio ",{"type":14,"tagName":35,"properties":2349,"children":2350},{"style":238},[2351],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2353,"children":2354},{"style":232},[2355],{"type":23,"value":2356}," denominator ",{"type":14,"tagName":35,"properties":2358,"children":2359},{"style":238},[2360],{"type":23,"value":2361},"!=",{"type":14,"tagName":35,"properties":2363,"children":2364},{"style":244},[2365],{"type":23,"value":337},{"type":14,"tagName":35,"properties":2367,"children":2368},{"style":238},[2369],{"type":23,"value":2370}," ?",{"type":14,"tagName":35,"properties":2372,"children":2373},{"style":232},[2374],{"type":23,"value":2375}," numerator ",{"type":14,"tagName":35,"properties":2377,"children":2378},{"style":238},[2379],{"type":23,"value":2380},"/",{"type":14,"tagName":35,"properties":2382,"children":2383},{"style":232},[2384],{"type":23,"value":2356},{"type":14,"tagName":35,"properties":2386,"children":2387},{"style":238},[2388],{"type":23,"value":1474},{"type":14,"tagName":35,"properties":2390,"children":2391},{"style":232},[2392],{"type":23,"value":1479},{"type":23,"value":89},{"type":14,"tagName":35,"properties":2395,"children":2396},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":2399,"children":2400},{"class":228},[2401],{"type":14,"tagName":35,"properties":2402,"children":2403},{"style":639},[2404],{"type":23,"value":2405},"// With additional safety checks",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2408,"children":2409},{"class":228},[2410,2414,2419,2423,2428,2433,2437,2441,2445,2449,2453,2457,2461,2465,2469],{"type":14,"tagName":35,"properties":2411,"children":2412},{"style":238},[2413],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2415,"children":2416},{"style":232},[2417],{"type":23,"value":2418}," safe_ratio ",{"type":14,"tagName":35,"properties":2420,"children":2421},{"style":238},[2422],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2424,"children":2425},{"style":658},[2426],{"type":23,"value":2427}," isnum",{"type":14,"tagName":35,"properties":2429,"children":2430},{"style":232},[2431],{"type":23,"value":2432},"(denominator) ",{"type":14,"tagName":35,"properties":2434,"children":2435},{"style":238},[2436],{"type":23,"value":2226},{"type":14,"tagName":35,"properties":2438,"children":2439},{"style":232},[2440],{"type":23,"value":2356},{"type":14,"tagName":35,"properties":2442,"children":2443},{"style":238},[2444],{"type":23,"value":2361},{"type":14,"tagName":35,"properties":2446,"children":2447},{"style":244},[2448],{"type":23,"value":337},{"type":14,"tagName":35,"properties":2450,"children":2451},{"style":238},[2452],{"type":23,"value":2370},{"type":14,"tagName":35,"properties":2454,"children":2455},{"style":232},[2456],{"type":23,"value":2375},{"type":14,"tagName":35,"properties":2458,"children":2459},{"style":238},[2460],{"type":23,"value":2380},{"type":14,"tagName":35,"properties":2462,"children":2463},{"style":232},[2464],{"type":23,"value":2356},{"type":14,"tagName":35,"properties":2466,"children":2467},{"style":238},[2468],{"type":23,"value":1474},{"type":14,"tagName":35,"properties":2470,"children":2471},{"style":232},[2472],{"type":23,"value":1479},{"type":23,"value":89},{"type":14,"tagName":137,"properties":2475,"children":2477,"position":2486},{"id":2476},"array-bounds",[2478],{"type":23,"value":2479,"position":2480},"Array Bounds",{"start":2481,"end":2484},{"line":2482,"column":67,"offset":2483},173,5548,{"line":2482,"column":1715,"offset":2485},5560,{"start":2487,"end":2489},{"line":2482,"column":27,"offset":2488},5544,{"line":2482,"column":1715,"offset":2485},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2492,"children":2493,"position":2502},{},[2494],{"type":23,"value":2495,"position":2496},"Be careful when accessing historical data to avoid index errors.",{"start":2497,"end":2500},{"line":2498,"column":27,"offset":2499},175,5562,{"line":2498,"column":476,"offset":2501},5626,{"start":2503,"end":2504},{"line":2498,"column":27,"offset":2499},{"line":2498,"column":476,"offset":2501},{"type":23,"value":89},{"type":11,"children":2507},[2508],{"type":14,"tagName":215,"properties":2509,"children":2510,"data":-1},{"class":217,"style":218,"tabindex":219,"title":2479},[2511],{"type":14,"tagName":223,"properties":2512,"children":2513},{},[2514,2522,2523,2578,2579,2582,2583,2591,2592],{"type":14,"tagName":35,"properties":2515,"children":2516},{"class":228},[2517],{"type":14,"tagName":35,"properties":2518,"children":2519},{"style":639},[2520],{"type":23,"value":2521},"// Check bar index before accessing historical data",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2524,"children":2525},{"class":228},[2526,2530,2535,2539,2544,2548,2552,2556,2560,2564,2569,2573],{"type":14,"tagName":35,"properties":2527,"children":2528},{"style":238},[2529],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2531,"children":2532},{"style":232},[2533],{"type":23,"value":2534}," safe_previous ",{"type":14,"tagName":35,"properties":2536,"children":2537},{"style":238},[2538],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2540,"children":2541},{"style":232},[2542],{"type":23,"value":2543}," barIndex ",{"type":14,"tagName":35,"properties":2545,"children":2546},{"style":238},[2547],{"type":23,"value":2235},{"type":14,"tagName":35,"properties":2549,"children":2550},{"style":244},[2551],{"type":23,"value":337},{"type":14,"tagName":35,"properties":2553,"children":2554},{"style":238},[2555],{"type":23,"value":2370},{"type":14,"tagName":35,"properties":2557,"children":2558},{"style":232},[2559],{"type":23,"value":1072},{"type":14,"tagName":35,"properties":2561,"children":2562},{"style":244},[2563],{"type":23,"value":1077},{"type":14,"tagName":35,"properties":2565,"children":2566},{"style":232},[2567],{"type":23,"value":2568},"] ",{"type":14,"tagName":35,"properties":2570,"children":2571},{"style":238},[2572],{"type":23,"value":1474},{"type":14,"tagName":35,"properties":2574,"children":2575},{"style":232},[2576],{"type":23,"value":2577}," price_data.close",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2580,"children":2581},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":2584,"children":2585},{"class":228},[2586],{"type":14,"tagName":35,"properties":2587,"children":2588},{"style":639},[2589],{"type":23,"value":2590},"// For multiple bars back",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2593,"children":2594},{"class":228},[2595,2599,2604,2608,2612,2617,2622,2626,2630,2634,2638,2642],{"type":14,"tagName":35,"properties":2596,"children":2597},{"style":238},[2598],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2600,"children":2601},{"style":232},[2602],{"type":23,"value":2603}," safe_value ",{"type":14,"tagName":35,"properties":2605,"children":2606},{"style":238},[2607],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2609,"children":2610},{"style":232},[2611],{"type":23,"value":2543},{"type":14,"tagName":35,"properties":2613,"children":2614},{"style":238},[2615],{"type":23,"value":2616},">=",{"type":14,"tagName":35,"properties":2618,"children":2619},{"style":244},[2620],{"type":23,"value":2621}," 5",{"type":14,"tagName":35,"properties":2623,"children":2624},{"style":238},[2625],{"type":23,"value":2370},{"type":14,"tagName":35,"properties":2627,"children":2628},{"style":232},[2629],{"type":23,"value":1072},{"type":14,"tagName":35,"properties":2631,"children":2632},{"style":244},[2633],{"type":23,"value":804},{"type":14,"tagName":35,"properties":2635,"children":2636},{"style":232},[2637],{"type":23,"value":2568},{"type":14,"tagName":35,"properties":2639,"children":2640},{"style":238},[2641],{"type":23,"value":1474},{"type":14,"tagName":35,"properties":2643,"children":2644},{"style":232},[2645],{"type":23,"value":2577},{"type":23,"value":89},{"type":14,"tagName":102,"properties":2648,"children":2650,"position":2659},{"id":2649},"performance-optimization",[2651],{"type":23,"value":2652,"position":2653},"Performance Optimization",{"start":2654,"end":2657},{"line":2655,"column":56,"offset":2656},185,5907,{"line":2655,"column":1176,"offset":2658},5931,{"start":2660,"end":2662},{"line":2655,"column":27,"offset":2661},5904,{"line":2655,"column":1176,"offset":2658},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2665,"children":2666,"position":2676},{},[2667],{"type":23,"value":2668,"position":2669},"Write efficient code that executes quickly.",{"start":2670,"end":2673},{"line":2671,"column":27,"offset":2672},187,5933,{"line":2671,"column":2674,"offset":2675},44,5976,{"start":2677,"end":2678},{"line":2671,"column":27,"offset":2672},{"line":2671,"column":2674,"offset":2675},{"type":23,"value":89},{"type":14,"tagName":137,"properties":2681,"children":2683,"position":2692},{"id":2682},"avoid-redundant-calculations",[2684],{"type":23,"value":2685,"position":2686},"Avoid Redundant Calculations",{"start":2687,"end":2690},{"line":2688,"column":67,"offset":2689},189,5982,{"line":2688,"column":1695,"offset":2691},6010,{"start":2693,"end":2695},{"line":2688,"column":27,"offset":2694},5978,{"line":2688,"column":1695,"offset":2691},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2698,"children":2699,"position":2708},{},[2700],{"type":23,"value":2701,"position":2702},"Store frequently used calculations in variables instead of recalculating.",{"start":2703,"end":2706},{"line":2704,"column":27,"offset":2705},191,6012,{"line":2704,"column":566,"offset":2707},6085,{"start":2709,"end":2710},{"line":2704,"column":27,"offset":2705},{"line":2704,"column":566,"offset":2707},{"type":23,"value":89},{"type":11,"children":2713},[2714],{"type":14,"tagName":215,"properties":2715,"children":2716,"data":-1},{"class":217,"style":218,"tabindex":219,"title":2685},[2717],{"type":14,"tagName":223,"properties":2718,"children":2719},{},[2720,2728,2729,2746,2747,2792,2793,2814,2815,2818,2819,2827,2828,2889,2890],{"type":14,"tagName":35,"properties":2721,"children":2722},{"class":228},[2723],{"type":14,"tagName":35,"properties":2724,"children":2725},{"style":639},[2726],{"type":23,"value":2727},"// ✓ Good - Calculate once and reuse",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2730,"children":2731},{"class":228},[2732,2737,2741],{"type":14,"tagName":35,"properties":2733,"children":2734},{"style":232},[2735],{"type":23,"value":2736},"static lookback_period ",{"type":14,"tagName":35,"properties":2738,"children":2739},{"style":238},[2740],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2742,"children":2743},{"style":244},[2744],{"type":23,"value":2745}," 20",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2748,"children":2749},{"class":228},[2750,2755,2759,2764,2769,2774,2778,2783,2787],{"type":14,"tagName":35,"properties":2751,"children":2752},{"style":232},[2753],{"type":23,"value":2754},"timeseries typical_price ",{"type":14,"tagName":35,"properties":2756,"children":2757},{"style":238},[2758],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2760,"children":2761},{"style":232},[2762],{"type":23,"value":2763}," (price_data.high ",{"type":14,"tagName":35,"properties":2765,"children":2766},{"style":238},[2767],{"type":23,"value":2768},"+",{"type":14,"tagName":35,"properties":2770,"children":2771},{"style":232},[2772],{"type":23,"value":2773}," price_data.low ",{"type":14,"tagName":35,"properties":2775,"children":2776},{"style":238},[2777],{"type":23,"value":2768},{"type":14,"tagName":35,"properties":2779,"children":2780},{"style":232},[2781],{"type":23,"value":2782}," price_data.close) ",{"type":14,"tagName":35,"properties":2784,"children":2785},{"style":238},[2786],{"type":23,"value":2380},{"type":14,"tagName":35,"properties":2788,"children":2789},{"style":244},[2790],{"type":23,"value":2791}," 3",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2794,"children":2795},{"class":228},[2796,2801,2805,2809],{"type":14,"tagName":35,"properties":2797,"children":2798},{"style":232},[2799],{"type":23,"value":2800},"timeseries sma_typical ",{"type":14,"tagName":35,"properties":2802,"children":2803},{"style":238},[2804],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2806,"children":2807},{"style":658},[2808],{"type":23,"value":701},{"type":14,"tagName":35,"properties":2810,"children":2811},{"style":232},[2812],{"type":23,"value":2813},"(typical_price, lookback_period)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2816,"children":2817},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":2820,"children":2821},{"class":228},[2822],{"type":14,"tagName":35,"properties":2823,"children":2824},{"style":639},[2825],{"type":23,"value":2826},"// ❌ Avoid - Recalculating the same value multiple times",{"type":23,"value":89},{"type":14,"tagName":35,"properties":2829,"children":2830},{"class":228},[2831,2835,2840,2844,2848,2853,2857,2861,2865,2869,2873,2877,2881,2885],{"type":14,"tagName":35,"properties":2832,"children":2833},{"style":238},[2834],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2836,"children":2837},{"style":232},[2838],{"type":23,"value":2839}," value1 ",{"type":14,"tagName":35,"properties":2841,"children":2842},{"style":238},[2843],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2845,"children":2846},{"style":658},[2847],{"type":23,"value":701},{"type":14,"tagName":35,"properties":2849,"children":2850},{"style":232},[2851],{"type":23,"value":2852},"((price_data.high ",{"type":14,"tagName":35,"properties":2854,"children":2855},{"style":238},[2856],{"type":23,"value":2768},{"type":14,"tagName":35,"properties":2858,"children":2859},{"style":232},[2860],{"type":23,"value":2773},{"type":14,"tagName":35,"properties":2862,"children":2863},{"style":238},[2864],{"type":23,"value":2768},{"type":14,"tagName":35,"properties":2866,"children":2867},{"style":232},[2868],{"type":23,"value":2782},{"type":14,"tagName":35,"properties":2870,"children":2871},{"style":238},[2872],{"type":23,"value":2380},{"type":14,"tagName":35,"properties":2874,"children":2875},{"style":244},[2876],{"type":23,"value":2791},{"type":14,"tagName":35,"properties":2878,"children":2879},{"style":232},[2880],{"type":23,"value":514},{"type":14,"tagName":35,"properties":2882,"children":2883},{"style":244},[2884],{"type":23,"value":928},{"type":14,"tagName":35,"properties":2886,"children":2887},{"style":232},[2888],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":2891,"children":2892},{"class":228},[2893,2897,2902,2906,2910,2914,2918,2922,2926,2930,2934,2938,2942,2946],{"type":14,"tagName":35,"properties":2894,"children":2895},{"style":238},[2896],{"type":23,"value":323},{"type":14,"tagName":35,"properties":2898,"children":2899},{"style":232},[2900],{"type":23,"value":2901}," value2 ",{"type":14,"tagName":35,"properties":2903,"children":2904},{"style":238},[2905],{"type":23,"value":241},{"type":14,"tagName":35,"properties":2907,"children":2908},{"style":658},[2909],{"type":23,"value":701},{"type":14,"tagName":35,"properties":2911,"children":2912},{"style":232},[2913],{"type":23,"value":2852},{"type":14,"tagName":35,"properties":2915,"children":2916},{"style":238},[2917],{"type":23,"value":2768},{"type":14,"tagName":35,"properties":2919,"children":2920},{"style":232},[2921],{"type":23,"value":2773},{"type":14,"tagName":35,"properties":2923,"children":2924},{"style":238},[2925],{"type":23,"value":2768},{"type":14,"tagName":35,"properties":2927,"children":2928},{"style":232},[2929],{"type":23,"value":2782},{"type":14,"tagName":35,"properties":2931,"children":2932},{"style":238},[2933],{"type":23,"value":2380},{"type":14,"tagName":35,"properties":2935,"children":2936},{"style":244},[2937],{"type":23,"value":2791},{"type":14,"tagName":35,"properties":2939,"children":2940},{"style":232},[2941],{"type":23,"value":514},{"type":14,"tagName":35,"properties":2943,"children":2944},{"style":244},[2945],{"type":23,"value":928},{"type":14,"tagName":35,"properties":2947,"children":2948},{"style":232},[2949],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":137,"properties":2952,"children":2954,"position":2964},{"id":2953},"use-static-variables",[2955],{"type":23,"value":2956,"position":2957},"Use Static Variables",{"start":2958,"end":2961},{"line":2959,"column":67,"offset":2960},204,6587,{"line":2959,"column":2962,"offset":2963},25,6607,{"start":2965,"end":2967},{"line":2959,"column":27,"offset":2966},6583,{"line":2959,"column":2962,"offset":2963},{"type":23,"value":89},{"type":14,"tagName":120,"properties":2970,"children":2971,"position":2999},{},[2972,2980,2992],{"type":23,"value":2973,"position":2974},"Declare constants as ",{"start":2975,"end":2978},{"line":2976,"column":27,"offset":2977},206,6609,{"line":2976,"column":1210,"offset":2979},6630,{"type":14,"tagName":223,"properties":2981,"children":2982,"position":2989},{},[2983],{"type":23,"value":2984,"position":2985},"static",{"start":2986,"end":2987},{"line":2976,"column":1210,"offset":2979},{"line":2976,"column":28,"offset":2988},6638,{"start":2990,"end":2991},{"line":2976,"column":1210,"offset":2979},{"line":2976,"column":28,"offset":2988},{"type":23,"value":2993,"position":2994}," to avoid unnecessary recalculation on every bar.",{"start":2995,"end":2996},{"line":2976,"column":28,"offset":2988},{"line":2976,"column":2997,"offset":2998},79,6687,{"start":3000,"end":3001},{"line":2976,"column":27,"offset":2977},{"line":2976,"column":2997,"offset":2998},{"type":23,"value":89},{"type":11,"children":3004},[3005],{"type":14,"tagName":215,"properties":3006,"children":3007,"data":-1},{"class":217,"style":218,"tabindex":219,"title":2956},[3008],{"type":14,"tagName":223,"properties":3009,"children":3010},{},[3011,3019,3020,3037,3038,3055,3056,3073,3074,3077,3078],{"type":14,"tagName":35,"properties":3012,"children":3013},{"class":228},[3014],{"type":14,"tagName":35,"properties":3015,"children":3016},{"style":639},[3017],{"type":23,"value":3018},"// ✓ Good - Declare constants as static",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3021,"children":3022},{"class":228},[3023,3028,3032],{"type":14,"tagName":35,"properties":3024,"children":3025},{"style":232},[3026],{"type":23,"value":3027},"static fibonacci_ratio ",{"type":14,"tagName":35,"properties":3029,"children":3030},{"style":238},[3031],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3033,"children":3034},{"style":244},[3035],{"type":23,"value":3036}," 0.618",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3039,"children":3040},{"class":228},[3041,3046,3050],{"type":14,"tagName":35,"properties":3042,"children":3043},{"style":232},[3044],{"type":23,"value":3045},"static golden_ratio ",{"type":14,"tagName":35,"properties":3047,"children":3048},{"style":238},[3049],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3051,"children":3052},{"style":244},[3053],{"type":23,"value":3054}," 1.618",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3057,"children":3058},{"class":228},[3059,3064,3068],{"type":14,"tagName":35,"properties":3060,"children":3061},{"style":232},[3062],{"type":23,"value":3063},"static pi ",{"type":14,"tagName":35,"properties":3065,"children":3066},{"style":238},[3067],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3069,"children":3070},{"style":244},[3071],{"type":23,"value":3072}," 3.14159",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3075,"children":3076},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3079,"children":3080},{"class":228},[3081],{"type":14,"tagName":35,"properties":3082,"children":3083},{"style":639},[3084],{"type":23,"value":3085},"// These values don't change, so no need to recalculate each bar",{"type":23,"value":89},{"type":14,"tagName":102,"properties":3088,"children":3090,"position":3099},{"id":3089},"code-organization",[3091],{"type":23,"value":3092,"position":3093},"Code Organization",{"start":3094,"end":3097},{"line":3095,"column":56,"offset":3096},217,6936,{"line":3095,"column":2297,"offset":3098},6953,{"start":3100,"end":3102},{"line":3095,"column":27,"offset":3101},6933,{"line":3095,"column":2297,"offset":3098},{"type":23,"value":89},{"type":14,"tagName":120,"properties":3105,"children":3106,"position":3115},{},[3107],{"type":23,"value":3108,"position":3109},"Structure your code for maximum readability and maintainability.",{"start":3110,"end":3113},{"line":3111,"column":27,"offset":3112},219,6955,{"line":3111,"column":476,"offset":3114},7019,{"start":3116,"end":3117},{"line":3111,"column":27,"offset":3112},{"line":3111,"column":476,"offset":3114},{"type":23,"value":89},{"type":14,"tagName":137,"properties":3120,"children":3122,"position":3132},{"id":3121},"group-related-code",[3123],{"type":23,"value":3124,"position":3125},"Group Related Code",{"start":3126,"end":3129},{"line":3127,"column":67,"offset":3128},221,7025,{"line":3127,"column":3130,"offset":3131},23,7043,{"start":3133,"end":3135},{"line":3127,"column":27,"offset":3134},7021,{"line":3127,"column":3130,"offset":3131},{"type":23,"value":89},{"type":14,"tagName":120,"properties":3138,"children":3139,"position":3148},{},[3140],{"type":23,"value":3141,"position":3142},"Organize your code into logical sections: inputs, data sources, calculations, signals, and plotting.",{"start":3143,"end":3146},{"line":3144,"column":27,"offset":3145},223,7045,{"line":3144,"column":206,"offset":3147},7145,{"start":3149,"end":3150},{"line":3144,"column":27,"offset":3145},{"line":3144,"column":206,"offset":3147},{"type":23,"value":89},{"type":11,"children":3153},[3154],{"type":14,"tagName":215,"properties":3155,"children":3156,"data":-1},{"class":217,"style":218,"tabindex":219,"title":3124},[3157],{"type":14,"tagName":223,"properties":3158,"children":3159},{},[3160,3168,3169,3213,3214,3217,3218,3226,3227,3283,3284,3338,3339,3342,3343,3351,3352,3371,3372,3375,3376,3384,3385,3405,3406,3439,3440,3443,3444,3452,3453,3479,3480,3505,3506,3509,3510,3518,3519,3601,3602,3684,3685],{"type":14,"tagName":35,"properties":3161,"children":3162},{"class":228},[3163],{"type":14,"tagName":35,"properties":3164,"children":3165},{"style":639},[3166],{"type":23,"value":3167},"// @version=2",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3170,"children":3171},{"class":228},[3172,3177,3181,3186,3190,3195,3200,3204,3209],{"type":14,"tagName":35,"properties":3173,"children":3174},{"style":658},[3175],{"type":23,"value":3176},"define",{"type":14,"tagName":35,"properties":3178,"children":3179},{"style":232},[3180],{"type":23,"value":1954},{"type":14,"tagName":35,"properties":3182,"children":3183},{"style":357},[3184],{"type":23,"value":3185},"\"My Strategy\"",{"type":14,"tagName":35,"properties":3187,"children":3188},{"style":232},[3189],{"type":23,"value":514},{"type":14,"tagName":35,"properties":3191,"children":3192},{"style":357},[3193],{"type":23,"value":3194},"\"overlay\"",{"type":14,"tagName":35,"properties":3196,"children":3197},{"style":232},[3198],{"type":23,"value":3199},", overlay",{"type":14,"tagName":35,"properties":3201,"children":3202},{"style":238},[3203],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3205,"children":3206},{"style":244},[3207],{"type":23,"value":3208},"true",{"type":14,"tagName":35,"properties":3210,"children":3211},{"style":232},[3212],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3215,"children":3216},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3219,"children":3220},{"class":228},[3221],{"type":14,"tagName":35,"properties":3222,"children":3223},{"style":639},[3224],{"type":23,"value":3225},"// Input parameters",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3228,"children":3229},{"class":228},[3230,3234,3239,3243,3248,3252,3257,3261,3266,3271,3275,3279],{"type":14,"tagName":35,"properties":3231,"children":3232},{"style":238},[3233],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3235,"children":3236},{"style":232},[3237],{"type":23,"value":3238}," period ",{"type":14,"tagName":35,"properties":3240,"children":3241},{"style":238},[3242],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3244,"children":3245},{"style":658},[3246],{"type":23,"value":3247}," input",{"type":14,"tagName":35,"properties":3249,"children":3250},{"style":232},[3251],{"type":23,"value":1954},{"type":14,"tagName":35,"properties":3253,"children":3254},{"style":357},[3255],{"type":23,"value":3256},"\"Period\"",{"type":14,"tagName":35,"properties":3258,"children":3259},{"style":232},[3260],{"type":23,"value":514},{"type":14,"tagName":35,"properties":3262,"children":3263},{"style":357},[3264],{"type":23,"value":3265},"\"number\"",{"type":14,"tagName":35,"properties":3267,"children":3268},{"style":232},[3269],{"type":23,"value":3270},", defaultValue",{"type":14,"tagName":35,"properties":3272,"children":3273},{"style":238},[3274],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3276,"children":3277},{"style":244},[3278],{"type":23,"value":738},{"type":14,"tagName":35,"properties":3280,"children":3281},{"style":232},[3282],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3285,"children":3286},{"class":228},[3287,3291,3296,3300,3304,3308,3313,3317,3321,3325,3329,3334],{"type":14,"tagName":35,"properties":3288,"children":3289},{"style":238},[3290],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3292,"children":3293},{"style":232},[3294],{"type":23,"value":3295}," threshold ",{"type":14,"tagName":35,"properties":3297,"children":3298},{"style":238},[3299],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3301,"children":3302},{"style":658},[3303],{"type":23,"value":3247},{"type":14,"tagName":35,"properties":3305,"children":3306},{"style":232},[3307],{"type":23,"value":1954},{"type":14,"tagName":35,"properties":3309,"children":3310},{"style":357},[3311],{"type":23,"value":3312},"\"Threshold\"",{"type":14,"tagName":35,"properties":3314,"children":3315},{"style":232},[3316],{"type":23,"value":514},{"type":14,"tagName":35,"properties":3318,"children":3319},{"style":357},[3320],{"type":23,"value":3265},{"type":14,"tagName":35,"properties":3322,"children":3323},{"style":232},[3324],{"type":23,"value":3270},{"type":14,"tagName":35,"properties":3326,"children":3327},{"style":238},[3328],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3330,"children":3331},{"style":244},[3332],{"type":23,"value":3333},"0.5",{"type":14,"tagName":35,"properties":3335,"children":3336},{"style":232},[3337],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3340,"children":3341},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3344,"children":3345},{"class":228},[3346],{"type":14,"tagName":35,"properties":3347,"children":3348},{"style":639},[3349],{"type":23,"value":3350},"// Data sources",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3353,"children":3354},{"class":228},[3355,3359,3363,3367],{"type":14,"tagName":35,"properties":3356,"children":3357},{"style":232},[3358],{"type":23,"value":651},{"type":14,"tagName":35,"properties":3360,"children":3361},{"style":238},[3362],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3364,"children":3365},{"style":658},[3366],{"type":23,"value":661},{"type":14,"tagName":35,"properties":3368,"children":3369},{"style":232},[3370],{"type":23,"value":666},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3373,"children":3374},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3377,"children":3378},{"class":228},[3379],{"type":14,"tagName":35,"properties":3380,"children":3381},{"style":639},[3382],{"type":23,"value":3383},"// Calculations",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3386,"children":3387},{"class":228},[3388,3393,3397,3401],{"type":14,"tagName":35,"properties":3389,"children":3390},{"style":232},[3391],{"type":23,"value":3392},"timeseries ma_fast ",{"type":14,"tagName":35,"properties":3394,"children":3395},{"style":238},[3396],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3398,"children":3399},{"style":658},[3400],{"type":23,"value":701},{"type":14,"tagName":35,"properties":3402,"children":3403},{"style":232},[3404],{"type":23,"value":706},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3407,"children":3408},{"class":228},[3409,3414,3418,3422,3427,3431,3435],{"type":14,"tagName":35,"properties":3410,"children":3411},{"style":232},[3412],{"type":23,"value":3413},"timeseries ma_slow ",{"type":14,"tagName":35,"properties":3415,"children":3416},{"style":238},[3417],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3419,"children":3420},{"style":658},[3421],{"type":23,"value":701},{"type":14,"tagName":35,"properties":3423,"children":3424},{"style":232},[3425],{"type":23,"value":3426},"(price_data.close, period ",{"type":14,"tagName":35,"properties":3428,"children":3429},{"style":238},[3430],{"type":23,"value":2172},{"type":14,"tagName":35,"properties":3432,"children":3433},{"style":244},[3434],{"type":23,"value":2275},{"type":14,"tagName":35,"properties":3436,"children":3437},{"style":232},[3438],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3441,"children":3442},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3445,"children":3446},{"class":228},[3447],{"type":14,"tagName":35,"properties":3448,"children":3449},{"style":639},[3450],{"type":23,"value":3451},"// Signals",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3454,"children":3455},{"class":228},[3456,3460,3465,3469,3474],{"type":14,"tagName":35,"properties":3457,"children":3458},{"style":238},[3459],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3461,"children":3462},{"style":232},[3463],{"type":23,"value":3464}," buy_signal ",{"type":14,"tagName":35,"properties":3466,"children":3467},{"style":238},[3468],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3470,"children":3471},{"style":658},[3472],{"type":23,"value":3473}," crossover",{"type":14,"tagName":35,"properties":3475,"children":3476},{"style":232},[3477],{"type":23,"value":3478},"(ma_fast, ma_slow)",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3481,"children":3482},{"class":228},[3483,3487,3492,3496,3501],{"type":14,"tagName":35,"properties":3484,"children":3485},{"style":238},[3486],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3488,"children":3489},{"style":232},[3490],{"type":23,"value":3491}," sell_signal ",{"type":14,"tagName":35,"properties":3493,"children":3494},{"style":238},[3495],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3497,"children":3498},{"style":658},[3499],{"type":23,"value":3500}," crossunder",{"type":14,"tagName":35,"properties":3502,"children":3503},{"style":232},[3504],{"type":23,"value":3478},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3507,"children":3508},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3511,"children":3512},{"class":228},[3513],{"type":14,"tagName":35,"properties":3514,"children":3515},{"style":639},[3516],{"type":23,"value":3517},"// Plotting",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3520,"children":3521},{"class":228},[3522,3526,3530,3534,3539,3543,3547,3551,3555,3559,3563,3567,3571,3575,3580,3584,3588,3592,3597],{"type":14,"tagName":35,"properties":3523,"children":3524},{"style":658},[3525],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":3527,"children":3528},{"style":232},[3529],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":3531,"children":3532},{"style":238},[3533],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3535,"children":3536},{"style":232},[3537],{"type":23,"value":3538},"ma_fast, width",{"type":14,"tagName":35,"properties":3540,"children":3541},{"style":238},[3542],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3544,"children":3545},{"style":244},[3546],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":3548,"children":3549},{"style":232},[3550],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":3552,"children":3553},{"style":238},[3554],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3556,"children":3557},{"style":232},[3558],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3560,"children":3561},{"style":357},[3562],{"type":23,"value":1299},{"type":14,"tagName":35,"properties":3564,"children":3565},{"style":232},[3566],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":3568,"children":3569},{"style":238},[3570],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3572,"children":3573},{"style":232},[3574],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3576,"children":3577},{"style":357},[3578],{"type":23,"value":3579},"\"Fast MA\"",{"type":14,"tagName":35,"properties":3581,"children":3582},{"style":232},[3583],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":3585,"children":3586},{"style":238},[3587],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3589,"children":3590},{"style":232},[3591],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3593,"children":3594},{"style":357},[3595],{"type":23,"value":3596},"\"Fast Moving Average\"",{"type":14,"tagName":35,"properties":3598,"children":3599},{"style":232},[3600],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3603,"children":3604},{"class":228},[3605,3609,3613,3617,3622,3626,3630,3634,3638,3642,3646,3650,3654,3658,3663,3667,3671,3675,3680],{"type":14,"tagName":35,"properties":3606,"children":3607},{"style":658},[3608],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":3610,"children":3611},{"style":232},[3612],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":3614,"children":3615},{"style":238},[3616],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3618,"children":3619},{"style":232},[3620],{"type":23,"value":3621},"ma_slow, width",{"type":14,"tagName":35,"properties":3623,"children":3624},{"style":238},[3625],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3627,"children":3628},{"style":244},[3629],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":3631,"children":3632},{"style":232},[3633],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":3635,"children":3636},{"style":238},[3637],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3639,"children":3640},{"style":232},[3641],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3643,"children":3644},{"style":357},[3645],{"type":23,"value":1386},{"type":14,"tagName":35,"properties":3647,"children":3648},{"style":232},[3649],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":3651,"children":3652},{"style":238},[3653],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3655,"children":3656},{"style":232},[3657],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3659,"children":3660},{"style":357},[3661],{"type":23,"value":3662},"\"Slow MA\"",{"type":14,"tagName":35,"properties":3664,"children":3665},{"style":232},[3666],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":3668,"children":3669},{"style":238},[3670],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3672,"children":3673},{"style":232},[3674],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3676,"children":3677},{"style":357},[3678],{"type":23,"value":3679},"\"Slow Moving Average\"",{"type":14,"tagName":35,"properties":3681,"children":3682},{"style":232},[3683],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3686,"children":3687},{"class":228},[3688,3692,3696,3700,3705,3709,3713,3717,3722,3726,3730,3734,3738,3742,3746,3750,3754,3758,3762,3766,3770,3775,3779,3783,3787,3792],{"type":14,"tagName":35,"properties":3689,"children":3690},{"style":658},[3691],{"type":23,"value":1488},{"type":14,"tagName":35,"properties":3693,"children":3694},{"style":232},[3695],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":3697,"children":3698},{"style":238},[3699],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3701,"children":3702},{"style":232},[3703],{"type":23,"value":3704},"buy_signal ",{"type":14,"tagName":35,"properties":3706,"children":3707},{"style":238},[3708],{"type":23,"value":1464},{"type":14,"tagName":35,"properties":3710,"children":3711},{"style":232},[3712],{"type":23,"value":2773},{"type":14,"tagName":35,"properties":3714,"children":3715},{"style":238},[3716],{"type":23,"value":1474},{"type":14,"tagName":35,"properties":3718,"children":3719},{"style":232},[3720],{"type":23,"value":3721}," na, shape",{"type":14,"tagName":35,"properties":3723,"children":3724},{"style":238},[3725],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3727,"children":3728},{"style":357},[3729],{"type":23,"value":1510},{"type":14,"tagName":35,"properties":3731,"children":3732},{"style":232},[3733],{"type":23,"value":1515},{"type":14,"tagName":35,"properties":3735,"children":3736},{"style":238},[3737],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3739,"children":3740},{"style":244},[3741],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":3743,"children":3744},{"style":232},[3745],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":3747,"children":3748},{"style":238},[3749],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3751,"children":3752},{"style":232},[3753],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3755,"children":3756},{"style":357},[3757],{"type":23,"value":1540},{"type":14,"tagName":35,"properties":3759,"children":3760},{"style":232},[3761],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":3763,"children":3764},{"style":238},[3765],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3767,"children":3768},{"style":232},[3769],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3771,"children":3772},{"style":357},[3773],{"type":23,"value":3774},"\"Buy Signal\"",{"type":14,"tagName":35,"properties":3776,"children":3777},{"style":232},[3778],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":3780,"children":3781},{"style":238},[3782],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3784,"children":3785},{"style":232},[3786],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":3788,"children":3789},{"style":357},[3790],{"type":23,"value":3791},"\"Buy Signal Marker\"",{"type":14,"tagName":35,"properties":3793,"children":3794},{"style":232},[3795],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":137,"properties":3798,"children":3800,"position":3809},{"id":3799},"use-comments-effectively",[3801],{"type":23,"value":3802,"position":3803},"Use Comments Effectively",{"start":3804,"end":3807},{"line":3805,"column":67,"offset":3806},250,8068,{"line":3805,"column":29,"offset":3808},8092,{"start":3810,"end":3812},{"line":3805,"column":27,"offset":3811},8064,{"line":3805,"column":29,"offset":3808},{"type":23,"value":89},{"type":14,"tagName":120,"properties":3815,"children":3816,"position":3826},{},[3817],{"type":23,"value":3818,"position":3819},"Write clear comments that explain the \"why\" behind your code logic.",{"start":3820,"end":3823},{"line":3821,"column":27,"offset":3822},252,8094,{"line":3821,"column":3824,"offset":3825},68,8161,{"start":3827,"end":3828},{"line":3821,"column":27,"offset":3822},{"line":3821,"column":3824,"offset":3825},{"type":23,"value":89},{"type":11,"children":3831},[3832],{"type":14,"tagName":215,"properties":3833,"children":3834,"data":-1},{"class":217,"style":218,"tabindex":219,"title":3802},[3835],{"type":14,"tagName":223,"properties":3836,"children":3837},{},[3838,3846,3847,3879,3880,3909,3910,3913,3914,3922,3923,3931,3932,3970,3971,4000,4001],{"type":14,"tagName":35,"properties":3839,"children":3840},{"class":228},[3841],{"type":14,"tagName":35,"properties":3842,"children":3843},{"style":639},[3844],{"type":23,"value":3845},"// Calculate RSI divergence",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3848,"children":3849},{"class":228},[3850,3854,3859,3863,3867,3871,3875],{"type":14,"tagName":35,"properties":3851,"children":3852},{"style":238},[3853],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3855,"children":3856},{"style":232},[3857],{"type":23,"value":3858}," rsi_current ",{"type":14,"tagName":35,"properties":3860,"children":3861},{"style":238},[3862],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3864,"children":3865},{"style":658},[3866],{"type":23,"value":728},{"type":14,"tagName":35,"properties":3868,"children":3869},{"style":232},[3870],{"type":23,"value":733},{"type":14,"tagName":35,"properties":3872,"children":3873},{"style":244},[3874],{"type":23,"value":738},{"type":14,"tagName":35,"properties":3876,"children":3877},{"style":232},[3878],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3881,"children":3882},{"class":228},[3883,3887,3892,3896,3901,3905],{"type":14,"tagName":35,"properties":3884,"children":3885},{"style":238},[3886],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3888,"children":3889},{"style":232},[3890],{"type":23,"value":3891}," rsi_previous ",{"type":14,"tagName":35,"properties":3893,"children":3894},{"style":238},[3895],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3897,"children":3898},{"style":232},[3899],{"type":23,"value":3900}," rsi_current[",{"type":14,"tagName":35,"properties":3902,"children":3903},{"style":244},[3904],{"type":23,"value":1077},{"type":14,"tagName":35,"properties":3906,"children":3907},{"style":232},[3908],{"type":23,"value":1082},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3911,"children":3912},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":3915,"children":3916},{"class":228},[3917],{"type":14,"tagName":35,"properties":3918,"children":3919},{"style":639},[3920],{"type":23,"value":3921},"// Look for bullish divergence:",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3924,"children":3925},{"class":228},[3926],{"type":14,"tagName":35,"properties":3927,"children":3928},{"style":639},[3929],{"type":23,"value":3930},"// Price makes lower low but RSI makes higher low",{"type":23,"value":89},{"type":14,"tagName":35,"properties":3933,"children":3934},{"class":228},[3935,3939,3944,3948,3952,3957,3962,3966],{"type":14,"tagName":35,"properties":3936,"children":3937},{"style":238},[3938],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3940,"children":3941},{"style":232},[3942],{"type":23,"value":3943}," price_lower_low ",{"type":14,"tagName":35,"properties":3945,"children":3946},{"style":238},[3947],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3949,"children":3950},{"style":232},[3951],{"type":23,"value":2773},{"type":14,"tagName":35,"properties":3953,"children":3954},{"style":238},[3955],{"type":23,"value":3956},"\u003C",{"type":14,"tagName":35,"properties":3958,"children":3959},{"style":232},[3960],{"type":23,"value":3961}," price_data.low[",{"type":14,"tagName":35,"properties":3963,"children":3964},{"style":244},[3965],{"type":23,"value":1077},{"type":14,"tagName":35,"properties":3967,"children":3968},{"style":232},[3969],{"type":23,"value":1082},{"type":23,"value":89},{"type":14,"tagName":35,"properties":3972,"children":3973},{"class":228},[3974,3978,3983,3987,3991,3995],{"type":14,"tagName":35,"properties":3975,"children":3976},{"style":238},[3977],{"type":23,"value":323},{"type":14,"tagName":35,"properties":3979,"children":3980},{"style":232},[3981],{"type":23,"value":3982}," rsi_higher_low ",{"type":14,"tagName":35,"properties":3984,"children":3985},{"style":238},[3986],{"type":23,"value":241},{"type":14,"tagName":35,"properties":3988,"children":3989},{"style":232},[3990],{"type":23,"value":3858},{"type":14,"tagName":35,"properties":3992,"children":3993},{"style":238},[3994],{"type":23,"value":2235},{"type":14,"tagName":35,"properties":3996,"children":3997},{"style":232},[3998],{"type":23,"value":3999}," rsi_previous",{"type":23,"value":89},{"type":14,"tagName":35,"properties":4002,"children":4003},{"class":228},[4004,4008,4013,4017,4021,4025],{"type":14,"tagName":35,"properties":4005,"children":4006},{"style":238},[4007],{"type":23,"value":323},{"type":14,"tagName":35,"properties":4009,"children":4010},{"style":232},[4011],{"type":23,"value":4012}," bullish_divergence ",{"type":14,"tagName":35,"properties":4014,"children":4015},{"style":238},[4016],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4018,"children":4019},{"style":232},[4020],{"type":23,"value":3943},{"type":14,"tagName":35,"properties":4022,"children":4023},{"style":238},[4024],{"type":23,"value":2226},{"type":14,"tagName":35,"properties":4026,"children":4027},{"style":232},[4028],{"type":23,"value":4029}," rsi_higher_low",{"type":23,"value":89},{"type":14,"tagName":137,"properties":4032,"children":4034,"position":4043},{"id":4033},"use-descriptive-labels-and-descriptions",[4035],{"type":23,"value":4036,"position":4037},"Use Descriptive Labels and Descriptions",{"start":4038,"end":4041},{"line":4039,"column":67,"offset":4040},266,8583,{"line":4039,"column":2674,"offset":4042},8622,{"start":4044,"end":4046},{"line":4039,"column":27,"offset":4045},8579,{"line":4039,"column":2674,"offset":4042},{"type":23,"value":89},{"type":14,"tagName":120,"properties":4049,"children":4050,"position":4095},{},[4051,4058,4070,4076,4088],{"type":23,"value":4052,"position":4053},"Always include ",{"start":4054,"end":4056},{"line":619,"column":27,"offset":4055},8624,{"line":619,"column":162,"offset":4057},8639,{"type":14,"tagName":223,"properties":4059,"children":4060,"position":4067},{},[4061],{"type":23,"value":4062,"position":4063},"label",{"start":4064,"end":4065},{"line":619,"column":162,"offset":4057},{"line":619,"column":3130,"offset":4066},8646,{"start":4068,"end":4069},{"line":619,"column":162,"offset":4057},{"line":619,"column":3130,"offset":4066},{"type":23,"value":4071,"position":4072}," and ",{"start":4073,"end":4074},{"line":619,"column":3130,"offset":4066},{"line":619,"column":1176,"offset":4075},8651,{"type":14,"tagName":223,"properties":4077,"children":4078,"position":4085},{},[4079],{"type":23,"value":4080,"position":4081},"desc",{"start":4082,"end":4083},{"line":619,"column":1176,"offset":4075},{"line":619,"column":184,"offset":4084},8657,{"start":4086,"end":4087},{"line":619,"column":1176,"offset":4075},{"line":619,"column":184,"offset":4084},{"type":23,"value":4089,"position":4090}," parameters in your plotting functions. These parameters improve autocomplete functionality, make scripts more readable, and help with script organization in the editor.",{"start":4091,"end":4092},{"line":619,"column":184,"offset":4084},{"line":619,"column":4093,"offset":4094},203,8826,{"start":4096,"end":4097},{"line":619,"column":27,"offset":4055},{"line":619,"column":4093,"offset":4094},{"type":23,"value":89},{"type":11,"children":4100},[4101],{"type":14,"tagName":215,"properties":4102,"children":4103,"data":-1},{"class":217,"style":218,"tabindex":219,"title":4036},[4104],{"type":14,"tagName":223,"properties":4105,"children":4106},{},[4107,4115,4116,4135,4136,4168,4169,4202,4203,4235,4236,4239,4240,4248,4249,4328,4329,4408,4409,4492,4493,4496,4497,4505,4506,4553,4554,4601,4602],{"type":14,"tagName":35,"properties":4108,"children":4109},{"class":228},[4110],{"type":14,"tagName":35,"properties":4111,"children":4112},{"style":639},[4113],{"type":23,"value":4114},"// ✓ Always use label and desc parameters for better organization",{"type":23,"value":89},{"type":14,"tagName":35,"properties":4117,"children":4118},{"class":228},[4119,4123,4127,4131],{"type":14,"tagName":35,"properties":4120,"children":4121},{"style":232},[4122],{"type":23,"value":651},{"type":14,"tagName":35,"properties":4124,"children":4125},{"style":238},[4126],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4128,"children":4129},{"style":658},[4130],{"type":23,"value":661},{"type":14,"tagName":35,"properties":4132,"children":4133},{"style":232},[4134],{"type":23,"value":666},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4137,"children":4138},{"class":228},[4139,4143,4148,4152,4156,4160,4164],{"type":14,"tagName":35,"properties":4140,"children":4141},{"style":238},[4142],{"type":23,"value":323},{"type":14,"tagName":35,"properties":4144,"children":4145},{"style":232},[4146],{"type":23,"value":4147}," sma20 ",{"type":14,"tagName":35,"properties":4149,"children":4150},{"style":238},[4151],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4153,"children":4154},{"style":658},[4155],{"type":23,"value":701},{"type":14,"tagName":35,"properties":4157,"children":4158},{"style":232},[4159],{"type":23,"value":733},{"type":14,"tagName":35,"properties":4161,"children":4162},{"style":244},[4163],{"type":23,"value":928},{"type":14,"tagName":35,"properties":4165,"children":4166},{"style":232},[4167],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4170,"children":4171},{"class":228},[4172,4176,4181,4185,4189,4193,4198],{"type":14,"tagName":35,"properties":4173,"children":4174},{"style":238},[4175],{"type":23,"value":323},{"type":14,"tagName":35,"properties":4177,"children":4178},{"style":232},[4179],{"type":23,"value":4180}," sma50 ",{"type":14,"tagName":35,"properties":4182,"children":4183},{"style":238},[4184],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4186,"children":4187},{"style":658},[4188],{"type":23,"value":701},{"type":14,"tagName":35,"properties":4190,"children":4191},{"style":232},[4192],{"type":23,"value":733},{"type":14,"tagName":35,"properties":4194,"children":4195},{"style":244},[4196],{"type":23,"value":4197},"50",{"type":14,"tagName":35,"properties":4199,"children":4200},{"style":232},[4201],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4204,"children":4205},{"class":228},[4206,4210,4215,4219,4223,4227,4231],{"type":14,"tagName":35,"properties":4207,"children":4208},{"style":238},[4209],{"type":23,"value":323},{"type":14,"tagName":35,"properties":4211,"children":4212},{"style":232},[4213],{"type":23,"value":4214}," rsi ",{"type":14,"tagName":35,"properties":4216,"children":4217},{"style":238},[4218],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4220,"children":4221},{"style":658},[4222],{"type":23,"value":728},{"type":14,"tagName":35,"properties":4224,"children":4225},{"style":232},[4226],{"type":23,"value":733},{"type":14,"tagName":35,"properties":4228,"children":4229},{"style":244},[4230],{"type":23,"value":738},{"type":14,"tagName":35,"properties":4232,"children":4233},{"style":232},[4234],{"type":23,"value":743},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4237,"children":4238},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":4241,"children":4242},{"class":228},[4243],{"type":14,"tagName":35,"properties":4244,"children":4245},{"style":639},[4246],{"type":23,"value":4247},"// Good: Descriptive labels help with autocomplete and script organization",{"type":23,"value":89},{"type":14,"tagName":35,"properties":4250,"children":4251},{"class":228},[4252,4256,4260,4264,4268,4272,4276,4280,4284,4288,4292,4296,4300,4304,4308,4312,4316,4320,4324],{"type":14,"tagName":35,"properties":4253,"children":4254},{"style":658},[4255],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":4257,"children":4258},{"style":232},[4259],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":4261,"children":4262},{"style":238},[4263],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4265,"children":4266},{"style":232},[4267],{"type":23,"value":1271},{"type":14,"tagName":35,"properties":4269,"children":4270},{"style":238},[4271],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4273,"children":4274},{"style":244},[4275],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":4277,"children":4278},{"style":232},[4279],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":4281,"children":4282},{"style":238},[4283],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4285,"children":4286},{"style":232},[4287],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4289,"children":4290},{"style":357},[4291],{"type":23,"value":1299},{"type":14,"tagName":35,"properties":4293,"children":4294},{"style":232},[4295],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":4297,"children":4298},{"style":238},[4299],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4301,"children":4302},{"style":232},[4303],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4305,"children":4306},{"style":357},[4307],{"type":23,"value":1317},{"type":14,"tagName":35,"properties":4309,"children":4310},{"style":232},[4311],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":4313,"children":4314},{"style":238},[4315],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4317,"children":4318},{"style":232},[4319],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4321,"children":4322},{"style":357},[4323],{"type":23,"value":1335},{"type":14,"tagName":35,"properties":4325,"children":4326},{"style":232},[4327],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4330,"children":4331},{"class":228},[4332,4336,4340,4344,4348,4352,4356,4360,4364,4368,4372,4376,4380,4384,4388,4392,4396,4400,4404],{"type":14,"tagName":35,"properties":4333,"children":4334},{"style":658},[4335],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":4337,"children":4338},{"style":232},[4339],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":4341,"children":4342},{"style":238},[4343],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4345,"children":4346},{"style":232},[4347],{"type":23,"value":1361},{"type":14,"tagName":35,"properties":4349,"children":4350},{"style":238},[4351],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4353,"children":4354},{"style":244},[4355],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":4357,"children":4358},{"style":232},[4359],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":4361,"children":4362},{"style":238},[4363],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4365,"children":4366},{"style":232},[4367],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4369,"children":4370},{"style":357},[4371],{"type":23,"value":1386},{"type":14,"tagName":35,"properties":4373,"children":4374},{"style":232},[4375],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":4377,"children":4378},{"style":238},[4379],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4381,"children":4382},{"style":232},[4383],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4385,"children":4386},{"style":357},[4387],{"type":23,"value":1403},{"type":14,"tagName":35,"properties":4389,"children":4390},{"style":232},[4391],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":4393,"children":4394},{"style":238},[4395],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4397,"children":4398},{"style":232},[4399],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4401,"children":4402},{"style":357},[4403],{"type":23,"value":1420},{"type":14,"tagName":35,"properties":4405,"children":4406},{"style":232},[4407],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4410,"children":4411},{"class":228},[4412,4416,4420,4424,4429,4433,4437,4441,4445,4449,4454,4458,4462,4466,4471,4475,4479,4483,4488],{"type":14,"tagName":35,"properties":4413,"children":4414},{"style":658},[4415],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":4417,"children":4418},{"style":232},[4419],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":4421,"children":4422},{"style":238},[4423],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4425,"children":4426},{"style":232},[4427],{"type":23,"value":4428},"rsi, width",{"type":14,"tagName":35,"properties":4430,"children":4431},{"style":238},[4432],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4434,"children":4435},{"style":244},[4436],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":4438,"children":4439},{"style":232},[4440],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":4442,"children":4443},{"style":238},[4444],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4446,"children":4447},{"style":232},[4448],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4450,"children":4451},{"style":357},[4452],{"type":23,"value":4453},"\"purple\"",{"type":14,"tagName":35,"properties":4455,"children":4456},{"style":232},[4457],{"type":23,"value":1304},{"type":14,"tagName":35,"properties":4459,"children":4460},{"style":238},[4461],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4463,"children":4464},{"style":232},[4465],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4467,"children":4468},{"style":357},[4469],{"type":23,"value":4470},"\"RSI\"",{"type":14,"tagName":35,"properties":4472,"children":4473},{"style":232},[4474],{"type":23,"value":1322},{"type":14,"tagName":35,"properties":4476,"children":4477},{"style":238},[4478],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4480,"children":4481},{"style":232},[4482],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4484,"children":4485},{"style":357},[4486],{"type":23,"value":4487},"\"14-period Relative Strength Index\"",{"type":14,"tagName":35,"properties":4489,"children":4490},{"style":232},[4491],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4494,"children":4495},{"class":228},[],{"type":23,"value":89},{"type":14,"tagName":35,"properties":4498,"children":4499},{"class":228},[4500],{"type":14,"tagName":35,"properties":4501,"children":4502},{"style":639},[4503],{"type":23,"value":4504},"// ❌ Avoid: Missing labels make scripts harder to understand",{"type":23,"value":89},{"type":14,"tagName":35,"properties":4507,"children":4508},{"class":228},[4509,4513,4517,4521,4525,4529,4533,4537,4541,4545,4549],{"type":14,"tagName":35,"properties":4510,"children":4511},{"style":658},[4512],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":4514,"children":4515},{"style":232},[4516],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":4518,"children":4519},{"style":238},[4520],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4522,"children":4523},{"style":232},[4524],{"type":23,"value":1271},{"type":14,"tagName":35,"properties":4526,"children":4527},{"style":238},[4528],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4530,"children":4531},{"style":244},[4532],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":4534,"children":4535},{"style":232},[4536],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":4538,"children":4539},{"style":238},[4540],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4542,"children":4543},{"style":232},[4544],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4546,"children":4547},{"style":357},[4548],{"type":23,"value":1299},{"type":14,"tagName":35,"properties":4550,"children":4551},{"style":232},[4552],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4555,"children":4556},{"class":228},[4557,4561,4565,4569,4573,4577,4581,4585,4589,4593,4597],{"type":14,"tagName":35,"properties":4558,"children":4559},{"style":658},[4560],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":4562,"children":4563},{"style":232},[4564],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":4566,"children":4567},{"style":238},[4568],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4570,"children":4571},{"style":232},[4572],{"type":23,"value":1361},{"type":14,"tagName":35,"properties":4574,"children":4575},{"style":238},[4576],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4578,"children":4579},{"style":244},[4580],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":4582,"children":4583},{"style":232},[4584],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":4586,"children":4587},{"style":238},[4588],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4590,"children":4591},{"style":232},[4592],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4594,"children":4595},{"style":357},[4596],{"type":23,"value":1386},{"type":14,"tagName":35,"properties":4598,"children":4599},{"style":232},[4600],{"type":23,"value":1340},{"type":23,"value":89},{"type":14,"tagName":35,"properties":4603,"children":4604},{"class":228},[4605,4609,4613,4617,4621,4625,4629,4633,4637,4641,4645],{"type":14,"tagName":35,"properties":4606,"children":4607},{"style":658},[4608],{"type":23,"value":1257},{"type":14,"tagName":35,"properties":4610,"children":4611},{"style":232},[4612],{"type":23,"value":1262},{"type":14,"tagName":35,"properties":4614,"children":4615},{"style":238},[4616],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4618,"children":4619},{"style":232},[4620],{"type":23,"value":4428},{"type":14,"tagName":35,"properties":4622,"children":4623},{"style":238},[4624],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4626,"children":4627},{"style":244},[4628],{"type":23,"value":1280},{"type":14,"tagName":35,"properties":4630,"children":4631},{"style":232},[4632],{"type":23,"value":1285},{"type":14,"tagName":35,"properties":4634,"children":4635},{"style":238},[4636],{"type":23,"value":241},{"type":14,"tagName":35,"properties":4638,"children":4639},{"style":232},[4640],{"type":23,"value":1294},{"type":14,"tagName":35,"properties":4642,"children":4643},{"style":357},[4644],{"type":23,"value":4453},{"type":14,"tagName":35,"properties":4646,"children":4647},{"style":232},[4648],{"type":23,"value":1340},{"quirksMode":4650},false,{"start":4652,"end":4653},{"line":27,"column":27,"offset":97},{"line":4654,"column":27,"offset":4655},287,9748,1781011072741]