Library
Every indicator, explained. With its formula and a chart.
Every indicator of the engine with its formula and a chart, the strategy templates and the plugins.
To the libraryWhat each indicator of the engine measures, how it is calculated and how to read it, computed by the engine itself and drawn on a chart. Beside them the strategy templates, with the figures measured when they were made, and the plugins for the desktop app.
Computed by the engine
Every line on a chart here is the engine's own calculation, the same values a strategy reads in a backtest.
Checked against a reference
Each indicator is tested against TA-Lib or its published formula, and its page names that reference.
One line in a strategy
A Python strategy reads any of them with ctx.ind and its inputs, and the chart in the app draws it with the same ones.
In the library
120
Pick a group to show only those.
Everything in the library
Indicators 86
Built into the engine. Use them in Python, C#, Rust, Blocks and on the chart, and they go along when a strategy is exported to MT5, cTrader or Pine.
Strategy templates 3
A ready strategy with figures the engine measured when it was made. The app opens it with one click.
Plugins 31
Python extensions for the desktop app: data sources, indicators of your own and exporters. They are not exported to MT5, cTrader or Pine.
120 of 120
Indicators 86
- IndicatorTrendOn the price
Simple moving average
The plain average of the last prices over the chosen length, a smoothed line that shows the direction of the trend.
SMADetails - IndicatorTrendOn the price
Exponential moving average
An average of recent prices that gives the newest bars the most weight, so it follows price sooner than a simple average of the same length.
EMADetails - IndicatorTrendOn the price
Weighted moving average
An average of recent prices in which the weight falls in a straight line from the newest bar to the oldest.
WMADetails - IndicatorTrendOn the price
Hull moving average
Alan Hull's moving average, built to follow price with little lag while staying smooth.
HMADetails - IndicatorTrendOn the price
Double exponential moving average
Patrick Mulloy's double exponential average, which removes part of the lag of an ordinary EMA.
DEMADetails - IndicatorTrendOn the price
Triple exponential moving average
Patrick Mulloy's triple exponential average, with even less lag than DEMA.
TEMADetails - IndicatorTrendOn the price
Triangular moving average
A doubly smoothed average whose weights rise towards the middle of the window and fall again, very smooth and slower than an SMA.
TRIMADetails - IndicatorTrendOn the price
Kaufman adaptive moving average
Perry Kaufman's adaptive average: it moves fast when price trends cleanly and almost stops when price only swings back and forth.
KAMADetails - IndicatorTrendOn the price
Tillson T3 moving average
Tim Tillson's T3, a smooth average with little lag made of six EMAs in a row.
T3Details - IndicatorTrendOn the price
Wilder's moving average
Welles Wilder's moving average, a slow exponential average that RSI, ATR and ADX use inside.
RMADetails - IndicatorTrendOn the price
Volume weighted moving average
An average of recent prices in which each bar counts in proportion to the volume traded on it.
VWMADetails - IndicatorTrendOn the price
Arnaud Legoux moving average
Arnaud Legoux's moving average: a bell shaped weighting moved towards the newest bars, meant to be smooth and responsive at once.
ALMADetails - IndicatorTrendOn the price
SuperTrend
A trailing line from the ATR that sits below price in an uptrend and above it in a downtrend, and changes side when price breaks through it.
SuperTrendDetails - IndicatorTrendOn the price
Parabolic SAR
Welles Wilder's Parabolic stop and reverse: a trailing stop that closes in on price faster the longer a trend runs, and changes side when it is hit.
PSARDetails - IndicatorTrendOn the price
Ichimoku Kinko Hyo
Goichi Hosoda's Ichimoku Kinko Hyo: five lines for trend, momentum and support or resistance at once; the area between span A and span B is the cloud.
IchimokuDetails - IndicatorTrendOwn pane
Aroon
Tushar Chande's Aroon: how many bars have passed since the highest high and since the lowest low, as two lines from 0 to 100.
AroonDetails - IndicatorTrendOwn pane
Directional movement index
Welles Wilder's directional movement: +DI and -DI show which side moves more, the ADX how strong the trend is, whatever its direction.
DMIDetails - IndicatorTrendOn the price
Linear regression
The end point of the straight line that fits the last bars best, a moving average that follows the trend with little lag.
LinRegDetails - IndicatorTrendOwn pane
Vortex indicator
Botes and Siepman's vortex indicator: two lines that compare upward with downward price movement to catch the start of a trend.
VIDetails - IndicatorTrendOn the price
Heikin Ashi
Heikin Ashi candles, averaged candles that smooth the bars so a trend reads as a run of one colour, with their direction and how long the run has lasted.
HADetails - IndicatorTrendOn the price
Renko bricks
Renko bricks: a brick of fixed size each time the close has moved that far, ignoring time, so only moves of at least one brick show.
RenkoDetails - IndicatorMomentumOwn pane
Relative strength index
How strongly the recent closes rose against how strongly they fell, on a scale from 0 to 100.
RSIDetails - IndicatorMomentumOwn pane
Moving average convergence divergence
The gap between a fast and a slow exponential average of price, with a signal line and a histogram, to show the direction of a trend and when it gains or loses pace.
MACDDetails - IndicatorMomentumOwn pane
Stochastic oscillator
Where the close sits within the high to low range of the last bars, from 0 at the lowest low to 100 at the highest high.
StochDetails - IndicatorMomentumOwn pane
Stochastic RSI
Where the RSI sits within its own range of the last bars, from 0 at its lowest to 100 at its highest. It turns faster than the RSI itself.
StochRSIDetails - IndicatorMomentumOwn pane
Commodity channel index
How far the typical price is from its average, in units of its mean deviation, scaled so that most values fall between -100 and 100.
CCIDetails - IndicatorMomentumOwn pane
Rate of change
How much price has changed over the last bars, in percent.
ROCDetails - IndicatorMomentumOwn pane
Momentum
How far price has moved over the last bars, in price units.
MOMDetails - IndicatorMomentumOwn pane
Williams %R
Where the close sits within the high to low range of the last bars, on a scale from 0 at the highest high to -100 at the lowest low.
%RDetails - IndicatorMomentumOwn pane
True strength index
The smoothed bar to bar price change against the smoothed size of those changes, from -100 to 100: the direction of momentum and how steady it is.
TSIDetails - IndicatorMomentumOwn pane
Ultimate oscillator
Buying pressure against the true range over three lengths at once, weighted toward the shortest, on a scale from 0 to 100.
UODetails - IndicatorMomentumOwn pane
Awesome oscillator
The gap between a short and a long simple average of the bar midpoints: whether recent momentum is stronger or weaker than the longer term one.
AODetails - IndicatorMomentumOwn pane
Chande momentum oscillator
The balance of up moves against down moves over the last bars, from -100 when every change was down to 100 when every change was up.
CMODetails - IndicatorMomentumOwn pane
Percentage price oscillator
The gap between a fast and a slow exponential average as a percentage of the slow one: MACD in percent, so it can be compared across markets and price levels.
PPODetails - IndicatorMomentumOwn pane
TRIX
The bar to bar change of a triple smoothed exponential average, in percent: the slope of the trend with most short term noise removed.
TRIXDetails - IndicatorMomentumOwn pane
Absolute price oscillator
The gap between a fast and a slow exponential average of price, in price units: the MACD line without its signal.
APODetails - IndicatorMomentumOwn pane
Balance of power
How far each bar closed from its open, against its full range, averaged over the last bars: whether buyers or sellers controlled the bars.
BOPDetails - IndicatorMomentumOwn pane
Detrended price oscillator
How far price stands above or below its moving average with the trend taken out, to show the shorter cycles and their length.
DPODetails - IndicatorMomentumOwn pane
Coppock curve
A smoothed sum of two long rates of change, made by Coppock to spot the end of bear markets on monthly charts of a stock index.
CoppockDetails - IndicatorVolatilityOwn pane
Average true range
How far price typically moves in one bar, gaps from the previous close included, averaged over the length. It is in price units, so it grows and shrinks with the market's own swings.
ATRDetails - IndicatorVolatilityOn the price
Bollinger Bands
A moving average with a band above and below it whose width follows the price's standard deviation, so the bands widen when price swings and narrow when it calms down.
BBDetails - IndicatorVolatilityOwn pane
Normalized average true range
The average true range as a percentage of the close, so the typical bar size can be compared across markets and price levels.
NATRDetails - IndicatorVolatilityOwn pane
True range
The full range of a single bar, including any gap from the previous close. It is the raw building block of ATR.
TRDetails - IndicatorVolatilityOwn pane
Bollinger %B
Where the price sits within the Bollinger Bands: 0 at the lower band, 1 at the upper band, 0.5 at the middle. Below 0 or above 1 the price is outside the bands.
%BDetails - IndicatorVolatilityOwn pane
Bollinger BandWidth
How wide the Bollinger Bands are relative to their middle band. It turns the squeeze, the narrowing of the bands, into one number.
BBWDetails - IndicatorVolatilityOn the price
Keltner Channels
A channel around an exponential moving average whose width is a multiple of the average true range. It follows volatility like Bollinger Bands, but more calmly, since ATR reacts less to single closes than a standard deviation.
KCDetails - IndicatorVolatilityOn the price
Donchian Channels
The highest high and the lowest low of the last bars, with their midpoint. The channel shows the range the market has traded in over the length.
DCDetails - IndicatorVolatilityOwn pane
Standard deviation
How widely the price spreads around its own average over the length, in price units. It is the volatility measure inside Bollinger Bands.
StdDevDetails - IndicatorVolatilityOwn pane
Chaikin volatility
How fast the average bar range is growing or shrinking, as a percentage change. It shows volatility expanding or contracting, not how large it is.
CHVDetails - IndicatorVolatilityOwn pane
Historical volatility
How much the closes have moved from bar to bar, as an annualised volatility in percent, the unit options traders quote.
HVDetails - IndicatorVolatilityOwn pane
Choppiness index
Whether the market is trending or moving sideways, on a scale from 0 to 100. High values mean choppy, sideways trade, low values a directional move. It says nothing about the direction itself.
CHOPDetails - IndicatorVolumeOwn pane
On balance volume
Whether volume goes with rising or with falling closes: a running total that adds a bar's volume when the close rises and takes it off when the close falls.
OBVDetails - IndicatorVolumeOn the price
Volume weighted average price
The average price paid since the start of the current day, week or month, each bar weighted by its volume.
VWAPDetails - IndicatorVolumeOwn pane
Accumulation/distribution line
Whether volume comes with closes near the high or near the low of each bar: a running total of buying and selling pressure.
A/DDetails - IndicatorVolumeOwn pane
Chaikin oscillator
The momentum of the accumulation/distribution line: whether buying or selling pressure is building up or fading.
ADOSCDetails - IndicatorVolumeOwn pane
Chaikin money flow
The share of the volume of the last n bars that came with closes near the high rather than near the low, from minus 1 to plus 1.
CMFDetails - IndicatorVolumeOwn pane
Money flow index
A volume weighted RSI: how much money flowed on bars with a rising typical price against all the money that flowed, on a scale from 0 to 100.
MFIDetails - IndicatorVolumeOwn pane
Elder force index
The force behind a move: the change of the close times the volume, smoothed, so a large move on heavy volume counts more than the same move on little volume.
EFIDetails - IndicatorVolumeOwn pane
Ease of movement
How easily price moves for the volume traded: a large move on little volume is easy, a small move on heavy volume is hard.
EOMDetails - IndicatorVolumeOwn pane
Volume oscillator
Whether volume is picking up or drying up: how far a fast average of volume is above or below a slow one, in percent.
VODetails - IndicatorVolumeOwn pane
Price volume trend
Like on balance volume, but each bar adds volume in proportion to the percentage change of the close, so small moves count little.
PVTDetails - IndicatorLevelsOn the price
Pivot points
Support and resistance levels for the current day, week or month, worked out from the high, low and close of the one before.
PivotsDetails - IndicatorLevelsOn the price
ZigZag
The swing highs and lows that a reversal of at least the set percentage has confirmed, drawn as a level that steps to each new swing.
ZigZagDetails - IndicatorMarket structureOn the price
Market structure
The swing highs and lows, the trend they form and the bars where price breaks them: a break of structure (BoS) with the trend, a change of character (CHoCH) against it.
BoS/CHoCHDetails - IndicatorMarket structureOn the price
Fair value gaps
Three bar price gaps: ranges price jumped over so fast that the first and the third candle do not overlap, which often act as support or resistance when price comes back.
FVGDetails - IndicatorMarket structureOn the price
Inversion fair value gaps
Fair value gaps that price has closed through, kept as zones of the opposite side: a bullish gap broken down turns into resistance, a bearish gap broken up into support.
iFVGDetails - IndicatorMarket structureOn the price
Order blocks
The last opposite coloured candle before the move that broke structure, the zone where the move started and price often reacts when it comes back.
OBDetails - IndicatorMarket structureOn the price
Breaker blocks
Order blocks that failed: price closed through them, and they are kept as zones of the opposite side, a broken bullish block as resistance, a broken bearish one as support.
BreakerDetails - IndicatorMarket structureOn the price
Fibonacci retracement
How far price has pulled back into the last swing leg, at the Fibonacci ratios 0.236, 0.382, 0.5, 0.618 and 0.786 between the last confirmed swing high and low.
FibDetails - IndicatorMarket structureOn the price
Fibonacci extension
Targets beyond the last swing leg: where the leg ends if it runs on 1.272, 1.618, 2 or 2.618 times its own length, measured from its start.
Fib extDetails - IndicatorMarket structureOn the price
Premium and discount
The dealing range between the last swing high and low, its middle (equilibrium) and whether price is in the upper half, premium, or the lower half, discount.
P/DDetails - IndicatorMarket structureOn the price
Optimal trade entry
The optimal trade entry zone: the 0.62 to 0.79 retracement of the last swing leg, where a pullback offers the best price before the leg resumes.
OTEDetails - IndicatorMarket structureOn the price
Liquidity sweep
Stop runs: bars that trade beyond a swing high or low still holding liquidity and close back inside, the stops taken and the move rejected.
SweepDetails - IndicatorMarket structureOn the price
Equal highs and lows
Liquidity pools: two or more swing highs (or lows) at about the same price, where the stops of many traders sit together and price is drawn to take them.
EQH/EQLDetails - IndicatorMarket structureOn the price
Buy and sell side liquidity
Where the resting stops are: the nearest swing high no later price has traded above (buy side) and the nearest swing low none has traded below (sell side).
LiquidityDetails - IndicatorMarket structureOn the price
Balanced price range
Balanced price ranges: the overlap of a bullish and a bearish fair value gap, a range price has crossed fast in both directions and often reacts to when it returns.
BPRDetails - IndicatorMarket structureOn the price
Mitigation blocks
The candle that made a swing, after a failure swing breaks that swing: traders trapped there wait to get out at break even, so price often turns when it comes back.
MBDetails - IndicatorMarket structureOn the price
Rejection blocks
The long wick at a swing high or low, where price was pushed back hard; the range from the body to the wick's tip often rejects price again.
RBDetails - IndicatorMarket structureOn the price
Displacement
Displacement: a candle with a body far larger than usual that leaves a fair value gap behind, the footprint of large orders moving price in one go.
DispDetails - IndicatorMarket structureOn the price
Kill zones
The ICT kill zones, the hours when the big centres move price most: Asia, the London open, the New York open and the London close, and each zone's high and low.
Kill zonesDetails - IndicatorMarket structureOn the price
Midnight open
The true day open of ICT: the price at 00:00 New York, and whether the close is above or below it, the reference for premium and discount within the day.
MidnightDetails - IndicatorMarket structureOn the price
Opening gaps
The new week opening gap (NWOG) between Friday's close and the week's first open, and the new day opening gap (NDOG) between a day's last close and the next day's first open.
NWOG/NDOGDetails - IndicatorTimeOn the price
Trading sessions
Which of the four FX centres is open on each bar, whether London and New York overlap, and the high and low of the session you follow, so far and of the last one.
SessionsDetails - IndicatorTimeOn the price
Prior period levels
The open, high, low and close of the last finished day, week or month, and the open, high and low of the running one so far.
PriorDetails - IndicatorTimeOn the price
Opening range
The high and low of the first minutes after a market opens, the range's middle and size, the size against a daily ATR, and where the close is against the range.
ORDetails - IndicatorTimeOwn pane
Seasonality
How the instrument did in the past in periods like the current one: the mean return, the share that went up and a t statistic for the bar's month, weekday, turn of the month or hour.
SeasonDetails
Strategies 3
- StrategyMean reversion
Bar strength reversion, Nasdaq 100 (USTEC)
Buys a close in the lowest fifth of the day's range, and sells a close in the top 40 percent of the range. Long only. Risks 2 percent of the balance per trade.
Out of sample +23.6 %Details - StrategyTrend
Trend filter, Bitcoin (BTCUSD)
Long while the close is above its 50 day average, short while it is below. Risks 2 percent of the balance per trade.
Out of sample +39.6 %Details - StrategyMomentum
Time series momentum, Bitcoin (BTCUSD)
Long when the close is above the close 60 days ago, flat otherwise. Risks 2 percent of the balance per trade.
Out of sample +39.5 %Details
Plugins 31
- PluginData source
Exchange calendar
Holidays, early closes, the days around a holiday, the turn of the month and expiry days for NYSE, LSE, Xetra, Tokyo and FX, as feeds.
CalendarDetails - PluginData source
Binance spot bars
Downloads closed Binance spot bars from M1 to D1 for crypto pairs like BTCUSDT, and writes daily close feeds for pairs a strategy wants to watch.
CryptoDetails - PluginData source
ECB euro reference rates
The daily euro reference rates of the European Central Bank for about 30 currencies since 1999, one feed per currency, plus the cross for your pair.
CurrenciesDetails - PluginData source
US macro releases (FRED)
CPI, core CPI, core PCE, payrolls, unemployment, jobless claims, industrial production and retail sales from FRED, each under a conservative release date.
Macro dataDetails - PluginData source
CFTC Commitments of Traders
Weekly futures positioning from the CFTC for the market behind your instrument: speculators, leveraged funds, asset managers and a 0 to 100 COT index.
PositioningDetails - PluginData source
Central bank policy rates
Daily policy rates of the Fed, ECB, BoE, BoJ, SNB, BoC, RBA, RBNZ, Norges Bank and Riksbank, with the last change and the rate gap of your pair.
Interest ratesDetails - PluginData source
US rates curve
US Treasury yields from 3 months to 30 years, the real 10 year yield and the fed funds rate, with curve spreads and breakeven inflation, from the Treasury and the New York Fed.
Interest ratesDetails - PluginData source
Crypto Fear & Greed Index
alternative.me's daily crypto sentiment number, 0 (extreme fear) to 100 (extreme greed), with its label as feeds.
SentimentDetails - PluginData source
VIX close
The daily Cboe VIX close from FRED as a feed, so a strategy can stand aside when volatility is high.
VolatilityDetails - PluginIndicator
Heikin Ashi
Heikin Ashi candles for a strategy: HA open, high, low and close, the candle color, the run of same colored candles and a no opposite wick flag.
Chart typesDetails - PluginIndicator
Renko Bricks
Renko bricks built from bar closes, fixed or start ATR size: direction, last brick level, new bricks this bar, run length and reversals.
Chart typesDetails - PluginIndicator
Bollinger Bands (how to write an indicator)
A short streaming indicator to copy from: one bar in, the middle, upper and lower band out.
ExamplesDetails - PluginIndicator
Prior period levels
Yesterday's, last week's or last month's open, high, low and close, the running period's range, and how far price is from them in ATR.
Price levelsDetails - PluginIndicator
Opening range
The high and low of the first minutes after a market opens, its size in daily ATR and where price is now, never before the window has closed.
Sessions and timeDetails - PluginIndicator
Trading sessions
Which FX centre is open on each bar, the London and New York overlap, and the high and low of the session you follow.
Sessions and timeDetails - PluginIndicator
Pair correlation and beta
Rolling correlation, beta and relative strength of the instrument's daily returns against another market, a yield or any feed you have.
StatisticsDetails - PluginIndicator
Seasonality
How the instrument did in past months, weekdays, turns of the month or hours like the current one: mean return, hit rate, count and t-statistic.
StatisticsDetails - PluginIndicator
Fair Value Gaps
Three bar fair value gaps with a minimum size in ATR: the nearest open gap on each side, how far each is filled, and an event when one is filled.
Market structureDetails - PluginIndicator
Market Structure
Confirmed swing highs and lows without repainting, the trend they form (HH and HL or LH and LL), and the last break of structure and change of character.
Market structureDetails - PluginIndicator
Market Structure Toolkit
An example that bundles the nineteen catalogue elements of the market structure group (BoS, CHoCH, FVG, order blocks, Fibonacci, OTE, liquidity, kill zones) in one plugin indicator.
Market structureDetails - PluginStrategy template
London breakout
Trades the break of the Asian range in the London session: buffer, stop at the other side, target in R, out by the New York afternoon.
BreakoutDetails - PluginStrategy template
Opening range breakout
Trades the break of the first minutes after a market opens: one trade a day, stop at the other side, target in R, flat before the close.
BreakoutDetails - PluginStrategy template
RSI trend pullback
Buys short, sharp dips while price is above its 200 bar SMA and sells rallies below it, out when RSI(2) recovers or price crosses the 5 bar SMA.
Mean reversionDetails - PluginStrategy template
Power of Three
ICT's Power of Three from the market structure blocks: the Asian range, a London sweep of it, and the trade the other way until the London close.
Market structureDetails - PluginStrategy template
Silver Bullet
ICT's Silver Bullet from the market structure blocks: in a kill zone a liquidity sweep, then a limit order in the fair value gap that follows.
Market structureDetails - PluginStrategy template
Turtle breakout
The Turtle Traders' published rules: channel breakouts, a stop at 2N, units sized by risk and the System 1 skip-after-winner filter.
Trend followingDetails - PluginExporter
Webhook summary
Posts a run's headline figures to a webhook of your own, as generic JSON, a Discord message or a Slack message. HTTPS only, summary only by default.
IntegrationsDetails - PluginExporter
CSV report
Writes a finished backtest as one CSV file: the headline statistics, then every trade.
ReportsDetails - PluginExporter
Notebook JSON export
Writes a whole run as one versioned, documented JSON file plus a trades CSV and a JSON Schema, ready for pandas or any notebook.
ReportsDetails - PluginExporter
Realised P&L by year
Sums a run's closed trades per calendar year and instrument: gross gains, losses, commission, swap and net, as CSV and Markdown, in EUR when ECB rates are cached.
ReportsDetails - PluginExporter
Trade journal CSV
Writes every trade of a run as one CSV row for your trading journal, with local times, session, pips, R and empty columns for notes.
ReportsDetails
