# Lumen Charts documentation

Public integration documentation for a proprietary library. Runtime access is separately authorized. Exported API signatures do not imply that all legacy capabilities are supported; preserve compatibility notes when using these documents.

<!-- Public documentation export; not library implementation source. -->
# Indicators

Ask the runtime which indicators are available instead of assuming every name in the compatibility declarations works.

```js
const available = widget.getStudiesList();
const id = await widget.activeChart().createStudy(
  'Moving Average', false, false, { length: 20 },
);
```

## Inputs and placement

To see which inputs an indicator supports, call `getStudyInputs(name)`. Pass inputs by their IDs, with values of the right type. A label shown in the UI isn't always the same as the input ID. Each indicator decides whether it sits on the price chart or in its own pane. Supported scale options control how it shares a price scale.

## Updates and removal

Get the indicator's handle by its ID to change supported inputs or properties. Some work happens asynchronously, so watch the indicator's loading and error state. Remove an indicator through the chart API and clean up your subscriptions. Treat a missing ID or an unsupported indicator name as an error.

## Defaults versus saved templates

Indicator overrides change how indicators look. Indicator templates save a set of indicator settings. Neither one saves the whole chart layout. See [Templates](https://docs.lumencharts.com/charting-library/persistence/templates) for how they differ.

[Interactive chart example](https://docs.lumencharts.com/charting-library/studies/) — runs in a browser with synthetic data.

## Custom study boundaries

For the calculations in the catalog, use the built-in indicators. For script-based analysis, use optional Pine where it's supported. The compatibility declarations for custom studies don't guarantee every vendor-specific metainfo field or JavaScript hook.

### Before you add a custom study

Check the entry point and metainfo format you plan to use against the release you ship. Decide where the input bars come from, how missing values are represented, where the study appears and how it gets cleaned up. Test what happens with invalid inputs, and when the chart is removed while a calculation is still running.

### Try these first

If you just need an existing calculation with different settings, start with a [built-in indicator](https://docs.lumencharts.com/charting-library/studies). For script-based analysis, use [optional Pine](https://docs.lumencharts.com/charting-library/studies/pine) with its matching worker files. Don't import internal study classes into your app as a shortcut; they aren't a public API.

### Error handling

When a study fails, show an error the user can act on, and let them remove the study. Don't quietly swap an unsupported calculation for a different indicator. For any script you ship, document exactly which language features and calculations it supports.

---
Documentation page: https://docs.lumencharts.com/charting-library/studies/


---

<!-- Public documentation export; not library implementation source. -->
# Indicator catalog

This list comes straight from the runtime's built-in indicators. To see what your loaded runtime can actually run, call `widget.getStudiesList()`. To see an indicator's inputs, call `getStudyInputs(name)`. Each indicator has its own inputs and styles.

| Name | Canonical ID | Style |
| --- | --- | --- |
| Moving Average | `Moving Average@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaverageindicatoroverrides) |
| Moving Average Exponential | `Moving Average Exponential@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaverageexponentialindicatoroverrides) |
| Moving Average Weighted | `Moving Average Weighted@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaverageweightedindicatoroverrides) |
| Arnaud Legoux Moving Average | `Arnaud Legoux Moving Average@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#arnaudlegouxmovingaverageindicatoroverrides) |
| Average True Range | `Average True Range@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#averagetruerangeindicatoroverrides) |
| Relative Strength Index | `Relative Strength Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#relativestrengthindexindicatoroverrides) |
| MACD | `Moving Average Convergence/Divergence@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#macdindicatoroverrides) |
| Bollinger Bands | `Bollinger Bands@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#bollingerbandsindicatoroverrides) |
| Bollinger Bands %B | `Bollinger Bands %B@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#bollingerbandsbindicatoroverrides) |
| Bollinger Bands Width | `Bollinger Bands Width@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#bollingerbandswidthindicatoroverrides) |
| Momentum | `Momentum@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#momentumindicatoroverrides) |
| Rate Of Change | `rate_of_change@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#rateofchangeindicatoroverrides) |
| Standard Deviation | `Standard Deviation@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#standarddeviationindicatoroverrides) |
| Commodity Channel Index | `Commodity Channel Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#commoditychannelindexindicatoroverrides) |
| Stochastic | `Stochastic@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#stochasticindicatoroverrides) |
| SuperTrend | `SuperTrend@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#supertrendindicatoroverrides) |
| Williams %R | `Willams %R@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#williamsrindicatoroverrides) |
| On Balance Volume | `On Balance Volume@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#onbalancevolumeindicatoroverrides) |
| Accumulation/Distribution | `Accumulation/Distribution@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#accumulationdistributionindicatoroverrides) |
| Balance of Power | `Balance of Power@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#balanceofpowerindicatoroverrides) |
| Awesome Oscillator | `Awesome Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#awesomeoscillatorindicatoroverrides) |
| Accumulative Swing Index | `Accumulative Swing Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#accumulativeswingindexindicatoroverrides) |
| Advance/Decline | `Advance/Decline@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#advancedeclineindicatoroverrides) |
| Aroon | `Aroon@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#aroonindicatoroverrides) |
| Average Price | `AveragePrice@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#averagepriceindicatoroverrides) |
| Average Directional Index | `average_directional_Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#averagedirectionalindexindicatoroverrides) |
| Accelerator Oscillator | `Accelerator Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#acceleratoroscillatorindicatoroverrides) |
| Chaikin Money Flow | `Chaikin Money Flow@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#chaikinmoneyflowindicatoroverrides) |
| Chaikin Oscillator | `Chaikin Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#chaikinoscillatorindicatoroverrides) |
| Chaikin Volatility | `Chaikin Volatility@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#chaikinvolatilityindicatoroverrides) |
| Chande Kroll Stop | `Chande Kroll Stop@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#chandekrollstopindicatoroverrides) |
| Chande Momentum Oscillator | `Chande Momentum Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#chandemomentumoscillatorindicatoroverrides) |
| Chop Zone | `chop_zone@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#chopzoneindicatoroverrides) |
| Choppiness Index | `Choppiness Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#choppinessindexindicatoroverrides) |
| Connors RSI | `Connors RSI@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#connorsrsiindicatoroverrides) |
| Correlation Coefficient | `Correlation Coeff@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#correlationcoefficientindicatoroverrides) |
| Correlation - Log | `Correlation - Log@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#correlationlogindicatoroverrides) |
| Coppock Curve | `Coppock Curve@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#coppockcurveindicatoroverrides) |
| Detrended Price Oscillator | `detrended_price_oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#detrendedpriceoscillatorindicatoroverrides) |
| Directional Movement | `Directional Movement Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#directionalmovementindicatoroverrides) |
| Donchian Channels | `Donchian Channels@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#donchianchannelsindicatoroverrides) |
| Double EMA | `Double Exponential Moving Average@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#doubleemaindicatoroverrides) |
| Ease Of Movement | `Ease of Movement@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#easeofmovementindicatoroverrides) |
| Elder's Force Index | `Elders Force Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#eldersforceindexindicatoroverrides) |
| EMA Cross | `EMA Cross@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#emacrossindicatoroverrides) |
| Envelopes | `Envelope@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#envelopesindicatoroverrides) |
| Standard Error | `Standard Error@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#standarderrorindicatoroverrides) |
| Standard Error Bands | `Standard Error Bands@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#standarderrorbandsindicatoroverrides) |
| Fisher Transform | `fisher_transform@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#fishertransformindicatoroverrides) |
| Hull Moving Average | `Hull MA@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#hullmovingaverageindicatoroverrides) |
| Historical Volatility | `historical_volatility@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#historicalvolatilityindicatoroverrides) |
| Ichimoku Cloud | `Ichimoku Cloud@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#ichimokucloudindicatoroverrides) |
| Keltner Channels | `Keltner Channels@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#keltnerchannelsindicatoroverrides) |
| Klinger Oscillator | `Klinger Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#klingeroscillatorindicatoroverrides) |
| Know Sure Thing | `Know Sure Thing@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#knowsurethingindicatoroverrides) |
| Least Squares Moving Average | `Least Squares Moving Average@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#leastsquaresmovingaverageindicatoroverrides) |
| Linear Regression Curve | `Linear Regression Curve@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#linearregressioncurveindicatoroverrides) |
| Linear Regression Slope | `Linear Regression Slope@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#linearregressionslopeindicatoroverrides) |
| MA Cross | `MA Cross@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#macrossindicatoroverrides) |
| MA with EMA Cross | `MA with EMA Cross@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#mawithemacrossindicatoroverrides) |
| Mass Index | `Mass Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#massindexindicatoroverrides) |
| McGinley Dynamic | `mcginley_dynamic@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#mcginleydynamicindicatoroverrides) |
| Median Price | `Median Price@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#medianpriceindicatoroverrides) |
| Money Flow Index | `Money Flow@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#moneyflowindexindicatoroverrides) |
| Moving Average Channel | `Moving Average Channel@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaveragechannelindicatoroverrides) |
| Moving Average Double | `Moving Average Double@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaveragedoubleindicatoroverrides) |
| Moving Average Triple | `Moving Average Triple@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaveragetripleindicatoroverrides) |
| Moving Average Adaptive | `Moving Average Adaptive@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaverageadaptiveindicatoroverrides) |
| Moving Average Hamming | `Moving Average Hamming@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaveragehammingindicatoroverrides) |
| Moving Average Multiple | `Moving Average Multiple@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#movingaveragemultipleindicatoroverrides) |
| Majority Rule | `Majority Rule@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#majorityruleindicatoroverrides) |
| Net Volume | `Net Volume@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#netvolumeindicatoroverrides) |
| Parabolic SAR | `Parabolic SAR@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#parabolicsarindicatoroverrides) |
| Pivot Points Standard | `PivotPointsStandard@chart-studies-80` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#pivotpointsstandardindicatoroverrides) |
| Price Channel | `Price Channel@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#pricechannelindicatoroverrides) |
| Price Oscillator | `Price Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#priceoscillatorindicatoroverrides) |
| Price Volume Trend | `price_volume_trend@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#pricevolumetrendindicatoroverrides) |
| Ratio | `Ratio@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#ratioindicatoroverrides) |
| Relative Vigor Index | `Relative Vigor Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#relativevigorindexindicatoroverrides) |
| Relative Volatility Index | `Relative Volatility Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#relativevolatilityindexindicatoroverrides) |
| SMI Ergodic Indicator/Oscillator | `SMI Ergodic Indicator/Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#smiergodicindicatoroscillatorindicatoroverrides) |
| Spread | `Spread@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#spreadindicatoroverrides) |
| Smoothed Moving Average | `smoothed_moving_average@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#smoothedmovingaverageindicatoroverrides) |
| Stochastic RSI | `Stochastic RSI@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#stochasticrsiindicatoroverrides) |
| TRIX | `TRIX@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#trixindicatoroverrides) |
| Triple EMA | `Triple EMA@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#tripleemaindicatoroverrides) |
| True Strength Index | `True Strength Indicator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#truestrengthindexindicatoroverrides) |
| Trend Strength Index | `Trend Strength Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#trendstrengthindexindicatoroverrides) |
| Typical Price | `TypicalPrice@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#typicalpriceindicatoroverrides) |
| Ultimate Oscillator | `ultimate_oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#ultimateoscillatorindicatoroverrides) |
| Volatility Close-to-Close | `Volatility Close-to-Close@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volatilityclosetocloseindicatoroverrides) |
| Volatility Zero Trend Close-to-Close | `Volatility Zero Trend Close-to-Close@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volatilityzerotrendclosetocloseindicatoroverrides) |
| Volatility O-H-L-C | `Volatility O-H-L-C@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volatilityohlcindicatoroverrides) |
| Volatility Index | `Volatility Index@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volatilityindexindicatoroverrides) |
| VWMA | `VWMA@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#vwmaindicatoroverrides) |
| VWAP | `VWAP@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#vwapindicatoroverrides) |
| Volume | `Volume@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volumeindicatoroverrides) |
| Volume Oscillator | `Volume Oscillator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volumeoscillatorindicatoroverrides) |
| Volume Profile Visible Range | `VbPVisible@chart-studies-49` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#volumeprofilevisiblerangeindicatoroverrides) |
| Vortex Indicator | `vortex_indicator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#vortexindicatorindicatoroverrides) |
| Williams Alligator | `Williams Alligator@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#williamsalligatorindicatoroverrides) |
| Williams Fractal | `Williams Fractals@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#williamsfractalindicatoroverrides) |
| Guppy Multiple Moving Average | `Guppy Multiple Moving Average@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#guppymultiplemovingaverageindicatoroverrides) |
| 52 Week High/Low | `52 Week High/Low@chart-studies-1` |  |
| Zig Zag | `ZigZag@chart-studies-1` | [Overrides](https://docs.lumencharts.com/charting-library/api/indicator-overrides#zigzagindicatoroverrides) |

[Indicators](https://docs.lumencharts.com/charting-library/studies/) · [Study API](https://docs.lumencharts.com/charting-library/api/IStudyApi)

---
Documentation page: https://docs.lumencharts.com/charting-library/studies/catalog


---

<!-- Public documentation export; not library implementation source. -->
# Optional Pine integration

Pine is optional. To use it, you need both the configuration and the matching worker and editor files. Shipping the files alone won't let scripts run.

Pine executes scripts over chart data. Separately, [AI integration](https://docs.lumencharts.com/charting-library/automation/) orchestrates chart operations and exposes data/capture ports. Pine does not require an AI provider or the automation runtime.

> Pine Script® is a trademark of TradingView, Inc. Lumen Charts is not affiliated with, sponsored by or endorsed by TradingView. References to Pine Script describe language compatibility only.

## Turn on Pine

```js
const widget = new LumenChartingLibrary.widget({
  container: 'chart', library_path: '/lumen_charting_library/',
  datafeed, symbol: 'AAPL', interval: '1D', locale: 'en',
  pine_script: { enabled: true },
});
widget.onChartReady(async () => {
  const id = await widget.activeChart().createPineStudy(
    '//@version=5\nindicator("Average", overlay=true)\nplot(ta.sma(close, 20))',
  );
  console.log(id);
});
```

## Matching files and errors

Your code, the worker and the optional editor must all come from the same manifest. Catch compile and run errors, and let users fix or remove the script. Having an editor doesn't mean every part of the Pine language is supported. Anything unsupported should fail with a clear error.

## Local versus hosted features

Running scripts locally doesn't set up cloud workspaces, publishing, external libraries or alert delivery. Those need their own providers and identity setup. An alert event on the chart doesn't prove that a notification actually reached anyone.

## Lifecycle

Remove scripts you no longer need, unsubscribe from progress and log listeners, and remove the chart before you throw away its host. If the inputs, source or data change, don't reuse the old results.

[Interactive chart example](https://docs.lumencharts.com/charting-library/studies/pine) — runs in a browser with synthetic data.

---
Documentation page: https://docs.lumencharts.com/charting-library/studies/pine
