QUANTHEON Lab
Guide

Custom indicators: build once, reuse everywhere, see where they're used

A custom indicator is a formula you define once — then drop into any strategy. AI Import reconstructs non-standard indicators exactly (not approximated), saves them to your library, and shows you which strategies rely on each one. Here's how it works.

What is a custom indicator?

Most platforms ship a fixed menu of indicators. A custom (formula) indicator lets you define your own: an arithmetic expression built from the built-in indicators, raw price, and constants. A volatility-normalised momentum (ROC(10) ÷ ATR(14)), an ATR-as-a-fraction-of-price gauge, LazyBear's Squeeze Momentum, a Linear Regression / LSMA — anything you can express as a formula becomes a reusable block you can compare, combine and optimise like any other.

Once saved, it lives in your My Indicators library and can be dropped onto the canvas of any strategy with one click.

Three ways to create one

Import it

Paste a Pine Script (or thinkScript / MQL) strategy. Any indicator the engine doesn't have built in is reconstructed and saved to your library automatically — you don't have to do anything.

Describe it

In My Indicators, choose Add and describe the indicator in plain English — or paste a code snippet for just that one indicator. AI turns it into an editable formula and saves it.

Build it by hand

Wire the formula together on the canvas from built-in blocks, then save the result as a named indicator to reuse later.

Reuse it

From the palette, drop a saved indicator into any strategy. Re-import a strategy that already uses it and it's reused by name — never duplicated.

Exact, not "approximated"

This is the part most importers get wrong. When a strategy uses an indicator that isn't a standard built-in, the lazy approach is to substitute something close and move on — quietly changing what the strategy does. QUANTHEON Lab instead rebuilds the real calculation.

Take LazyBear's Squeeze Momentum. Its momentum histogram is a linear regression of price minus the average of the Bollinger basis and a Keltner-style midline. Because the engine has a true Linear Regression / LSMA primitive, the import reproduces that formula exactly — the same numbers you'd see on TradingView, not a lookalike. The same is true for a Choppiness Index, Heikin-Ashi candles, pivot points and your own arithmetic formulas. Only genuinely un-mappable code — loops, arrays, bar-by-bar stateful functions — is approximated, and when it is, it's flagged for review rather than hidden.

Self-contained strategies, shared indicators

When you use a custom indicator in a strategy, its formula is inlined into that strategy — so the strategy is fully self-contained and its backtest stays reproducible forever, even if you later rename or change the saved indicator. Editing the saved version never silently rewrites a strategy you've already validated. You get the convenience of a shared library without the fragility of a hidden dependency.

Traceability: “Used in”

A library is only useful if you can remember why each thing is in it. Every custom indicator in My Indicators shows “Used in” — the list of saved strategies that rely on it — or “not used in a saved strategy yet”. Whether the indicator came from dragging it onto a canvas or from an AI import, the strategies that use it are linked back, so your library never decays into a pile of mystery formulas you're afraid to delete.

The custom-indicator checklist

  • Is the formula exact, or an approximation that's been flagged?
  • Does it read back in plain English the way you intended?
  • Is it saved to your library so you can reuse it?
  • Does “Used in” show the strategies that depend on it?
  • If you optimise it, does the edge survive out-of-sample? (More knobs = more overfitting.)

How QUANTHEON Lab does this for you

Import a strategy and the AI rebuilds every indicator it needs, saving the non-standard ones to your library exactly. Reuse them across strategies, optimise them, and validate the result with the Overfitting Polygraph — Walk-Forward on unseen data, Monte-Carlo and a Deflated-Sharpe haircut. Custom blocks make it easy to add another optimisable knob, so the honesty tests matter more, not less.

FAQ

What is a custom indicator?

A formula you define from built-in indicators, price and constants — for example ROC divided by ATR, or LazyBear's Squeeze Momentum. Once saved to your library you can drop it into any strategy and treat it like any other indicator.

Are imported custom indicators exact or approximated?

Exact, whenever the formula maps to the engine's primitives — including Linear Regression / LSMA and Squeeze Momentum. Only constructs that can't map one-to-one (loops, arrays, stateful functions) are approximated, and those are flagged after import.

Can I reuse a custom indicator across strategies?

Yes. It's saved to your My Indicators library and can be dropped onto any strategy. Its formula is inlined into each strategy so the backtest stays reproducible, and re-importing a strategy that uses it reuses it by name instead of creating a duplicate.

How do I see which strategies use an indicator?

Open My Indicators — each custom indicator shows a “Used in” list of the saved strategies that rely on it, so you always know its impact before you change or delete it.


Related: Pine Script → no-code · What is overfitting? · Adaptive position sizing · How to backtest a strategy

Keep reading