Skip to Content
Welcome to Level2 Help Center
DocumentationCreate a StrategyCanvas OverviewIndicator Block — “Measure the Market”

Indicator Block — “Measure the Market”

Purpose

Indicator blocks are the sensory organs of your trading strategy. They process raw market data—such as price, volume, and time—and transform it into structured numerical insights. These blocks describe the current state of the market, allowing the strategy to “understand” whether a trend is forming or momentum is shifting.


What It Does

Indicators perform the heavy mathematical lifting required for technical analysis:

  • Mathematical Processing: They run complex formulas on historical price and volume data.
  • Structured Output: They produce specific values representing market characteristics like Trend, Momentum, Volatility, and Volume.
  • Passive Observation: Indicators are purely analytical. They do not make decisions, evaluate logic, or place trades on their own.

Usage in Algorithmic Systems

In manual trading, you might look at a chart and “feel” that a move is strong. In algorithmic systems, you must quantify that feeling. Indicator blocks convert visual chart patterns into consistent, programmable measurements that can be fed into Logic Blocks.

CategoryIndicators ExamplesMeasurement Focus
TrendSMA, EMA, VWAPDetermining the general direction of the market.
MomentumRSI, Stochastic, MACDMeasuring the speed and strength of price changes.
VolatilityBollinger Bands, ATRIdentifying the “noise” or range of price movement.
VolumeVolume, VWMAGauging the level of market participation.

Key Characteristics

  • Programmable Parameters: You can configure indicators to look at different time windows (e.g., a 14-period RSI vs. a 50-period RSI).
  • Non-Decision Nodes: An indicator will tell you the RSI is “75,” but it won’t tell you to “Sell.” You need a Logic Block to decide that 75 is too high.
  • Standardization: Indicators ensure that your strategy reacts the same way every time a specific market condition is met, removing human inconsistency.

Technical Analysis Indicators Library

This reference covers the primary categories of technical indicators used to analyze market trends, volume flow, volatility, and momentum.


1. Volume-Based Indicators

1.1 Accumulation / Distribution & Money Flow

These indicators measure the flow of capital in and out of a security by combining price action with volume.

  • Accumulation/Distribution Line (ADL): Cumulative indicator measuring money flow based on the close’s position within the candle range.

Sample Output

Day High Low Close Volume Money Flow Multiplier AD (Output) 1 110 100 108 1,000 +0.6 600 2 115 105 106 2,000 -0.8 -1,000 3 112 110 111 1,500 0.0 -1,000 4 120 110 119 5,000 +0.8 3,000
  • Accumulation/Distribution Oscillator: A MACD-style momentum oscillator derived from the ADL.

Sample Output

Period AD Line (Base) Fast EMA (3) Slow EMA (10) ADOSC_3_10 (Output) Interpretation 0-9 Warmup NaN NaN NaN Initializing averages 10 15,000 14,800 14,200 600.0 Bullish momentum 11 15,500 15,150 14,450 700.0 Strengthening buy-flow 12 14,000 14,575 14,360 215.0 Momentum slowing 13 12,000 13,280 13,930 -650.0 Bearish Cross
  • Chaikin Money Flow (CMF): Measures buying and selling pressure using volume-weighted price over a fixed period.

Sample Output

Day Price Action Money Flow Volume (AD) Total Volume (20d Sum) CMF_20 (Output) 0-18 Initializing ... ... NaN 19 Strong Bullish Closes +500,000 2,500,000 0.20 20 Even Stronger Buying +600,000 2,400,000 0.25 21 Price stalls, High Vol -100,000 2,600,000 -0.03 22 Aggressive Selling -800,000 3,000,000 -0.26
  • Price-Volume Trend (PVT): Tracks money flow by combining price rate of change with volume.

Sample Output

Period Close ROC (1) Volume PV (ROC × Vol) PVT (Output) 0 100.00 NaN 1,000 0.0 0.0 1 102.00 0.02 5,000 100.0 100.0 2 103.00 0.0098 2,000 19.6 119.6 3 101.00 -0.0194 10,000 -194.0 -74.4 4 105.00 0.0396 3,000 118.8 44.4
  • Money Flow Index (MFI): An RSI-like oscillator that incorporates both price movement and volume.

Sample Output

Period Typical Price (TP) Volume Raw Money Flow (RMF) TP Diff Flow Dir MFI_14 (Output) 13 100.00 1,000 100,000 +0.50 Positive NaN (Warmup) 14 102.00 2,000 204,000 +2.00 Positive 65.40 15 105.00 5,000 525,000 +3.00 Positive 78.20 16 104.00 1,500 156,000 -1.00 Negative 72.10 17 103.00 8,000 824,000 -1.00 Negative 45.30
  • Elder’s Force Index (EFI): Measures the strength behind price movements using price change and volume.

Sample Output

Period Close Change ($) Volume Force (Raw) EFI_13 (EMA) Interpretation 0-11 ... ... ... ... NaN Warmup 12 150.00 +2.00 10,000 20,000 12,500 Bullish pressure 13 155.00 +5.00 20,000 100,000 28,500 Massive buying force 14 154.00 -1.00 5,000 -5,000 22,300 Minor cooling off 15 145.00 -9.00 30,000 -270,000 -15,400 Bearish Reversal

1.2 Cumulative Volume Indicators

  • On Balance Volume (OBV): Accumulates volume based on whether the price closes higher or lower than the previous period.

Sample Output

Period Close Price Price Change Volume OBV (Calculation) Interpretation 0 100.00 -- 1,000 1,000 Initial volume 1 102.00 Up (+) 5,000 6,000 Bullish pressure (1k + 5k) 2 101.00 Down (-) 3,000 3,000 Bearish pressure (6k − 3k) 3 101.00 Unchanged 2,000 3,000 No change in pressure 4 105.00 Up (+) 10,000 13,000 Strong accumulation
  • Positive Volume Index (PVI): Focuses on price changes during periods of increasing volume.

Sample Output

Period Close Volume Vol Change ROC (Price) PVI_1 (Output) Logic 0 100.00 1,000 -- -- 1000.00 Initial baseline 1 102.00 1,500 Up (+) 0.02 1020.00 1000 + (1000 × 0.02) 2 105.00 1,200 Down (-) 0.03 1020.00 No change (Vol decreased) 3 107.00 2,000 Up (+) 0.019 1039.38 1020 + (1020 × 0.019) 4 104.00 2,500 Up (+) -0.028 1010.27 1039 − (1039 × 0.028)
  • Negative Volume Index (NVI): Emphasizes price action during declining volume to detect “smart money” accumulation.

Sample Output

Period Close Volume Vol Change ROC (Price) NVI_1 (Output) Logic 0 100.00 1,000 -- -- 1000.00 Initial baseline 1 102.00 800 Down (-) 0.02 1020.00 1000 + (1000 × 0.02) 2 105.00 1,200 Up (+) 0.03 1020.00 Flatline (Vol increased) 3 104.00 900 Down (-) -0.01 1009.80 1020 − (1020 × 0.01) 4 106.00 700 Down (-) 0.019 1028.98 1009.8 + (1009.8 × 0.019)

1.3 Volume Oscillators & Ratios

  • Percentage Volume Oscillator (PVO): Measures the percentage difference between two volume EMAs.

Sample Output

Period Close ROC (Price Change %) Volume PV (Incremental) PVT (Cumulative) 0 100.00 -- 1,000 0.0 0.0 1 102.00 +0.02 (2%) 5,000 +100.0 100.0 2 102.10 +0.001 (0.1%) 5,000 +5.0 105.0 3 100.00 -0.0205 (-2.05%) 10,000 -205.0 -100.0
  • Relative Volume Indicator (RVOL): Compares current volume to historical averages to detect abnormal activity.

Sample Output

Period Close Volume Change PVOL (Output) Interpretation 1 100.00 1,000 -- 100,000 Initial Baseline 2 105.00 2,000 Up (+) 210,000 High-value buying pressure 3 103.00 1,500 Down (-) -154,500 High-value selling pressure 4 103.00 3,000 Flat 309,000 Neutral / Accumulation value
  • Ease of Movement (EOM): Quantifies how easily the price moves relative to the volume traded.

Sample Output

Period Distance (Price Move) Box Ratio (Friction) EOM Raw EOM_14 (SMA) Market State 13 0.50 0.05 10.0 NaN Warmup 14 1.20 0.02 60.0 15.4 Easy Advance 15 0.05 0.80 0.06 12.1 Trend Stalling 16 -0.80 0.04 -20.0 8.5 Pullback
  • Price Volume Rank (PVR): Ranks price-volume combinations to identify accumulation or distribution zones.

Sample Output

Day Price Vol Price Change Vol Change PVR (Output) State 1 100 1000 -- -- 1.0 Baseline (treated as up/up) 2 105 1500 +5 +500 1.0 Strong Buying 3 107 1200 +2 -300 2.0 Price rise, Low interest 4 103 1300 -4 +100 3.0 Aggressive Selling 5 101 900 -2 -400 4.0 Lack of buyers

2. Volatility Indicators

2.1 Range & True Range Based

  • True Range (TR): Expands the price range to account for gaps between trading sessions.

Sample Output

Day Previous Close High Low Close Classic Range True Range (Output) Why? 1 100.0 105.0 102.0 103.0 3.0 3.0 Normal day. 2 103.0 115.0 110.0 112.0 5.0 12.0 Gap Up! (115 High−103 Prev Close) 3 112.0 114.0 111.0 113.0 3.0 3.0 Normal day.
  • Average True Range (ATR): The standard measure of average market volatility over a set period.

Sample Output

Day Close True Range (TR) ATR_14 (Output) Meaning 1-13 100.0 ~2.0 NaN Warming up the moving average 14 102.0 2.5 2.15 Typical daily move is $2.15 15 115.0 13.0 3.02 Volatility spike detected! 16 114.0 2.0 2.95 Volatility beginning to settle
  • Normalized Average True Range (NATR): ATR expressed as a percentage of price for cross-asset comparison.

Sample Output

Asset Price ATR NATR (Output) Volatility Profile A $1,000 $20.00 2.0% Low relative volatility B $10 $1.00 10.0% High relative volatility C $50 $5.00 10.0% Equal risk to Asset B

2.2 Band & Channel Indicators

  • Bollinger Bands (BBands): Volatility bands plotted around a moving average using standard deviation.

Sample Output

Date/Index BBL_5_2.0 BBM_5_2.0 BBU_5_2.0 BBB_5_2.0 BBP_5_2.0 0 NaN NaN NaN NaN NaN 4 98.45 100.20 101.95 3.49 0.85 5 97.20 102.50 107.80 10.34 1.15 6 96.80 105.00 113.20 15.62 0.92
  • Keltner Channel: A volatility channel based on ATR and an Exponential Moving Average (EMA).

Sample Output

Index KCL_e_20_2.0 (Lower) KCB_e_20_2.0 (Basis) KCU_e_20_2.0 (Upper) 0 NaN NaN NaN ... ... ... ... 19 142.45 150.20 157.95 20 143.10 151.05 159.00 21 145.50 153.40 161.30 22 144.20 152.80 161.40
  • Donchian Channel: Tracks the highest high and lowest low over a fixed lookback period.

Sample Output

Index DCL_20_20 (Lower) DCM_20_20 (Mid) DCU_20_20 (Upper) 0-18 NaN NaN NaN 19 140.00 150.00 160.00 20 140.00 152.50 165.00 21 142.50 153.75 165.00
  • Acceleration Bands: Price envelopes that expand dynamically as volatility increases.

Sample Output

Index ACCBL_20 (Lower) ACCBM_20 (Mid) ACCBU_20 (Upper) 0-18 NaN NaN NaN 19 145.20 150.00 154.80 20 146.10 151.10 156.10 21 148.50 153.25 158.00

2.3 Volatility Structure & Expansion

  • Mass Index: Uses range expansion to identify potential trend reversals.

Sample Output

Index High Low HL_Range hl_ratio MASSI_9_25 State 0-24 ... ... ... ... NaN Warmup (Needs 25 periods) 25 155 150 5.0 1.02 25.10 Normal Volatility 26 160 148 12.0 1.15 26.85 Volatility Increasing 27 162 145 17.0 1.22 27.05 Bulge Triggered (>27) 28 158 152 6.0 1.05 26.40 Reversal Signal (<26.5)
  • Relative Volatility Index (RVI): An RSI-style indicator that uses standard deviation instead of price change.

Sample Output

Period Close Stdev Direction Pos_Std Neg_Std RVI (Output) 14 105.0 2.5 Up (+) 2.5 0.0 55.4 15 108.0 3.1 Up (+) 3.1 0.0 62.1 16 107.5 3.2 Down (-) 0.0 3.2 58.5 17 104.0 4.0 Down (-) 0.0 4.0 48.2
  • Squeeze: When the volatility increases, so does the distance between the bands; conversely, when the volatility declines, the distance also decreases.

Sample Output

Index SQZ_20_2.0_20_1.5 SQZ_ON SQZ_OFF SQZ_NO Interpretation 3 -0.12 1 0 0 Squeeze On: Volatility is very low. 4 0.05 1 0 0 Squeeze On: Momentum turning positive. 5 0.85 0 1 0 Squeeze Off: Breakout has started! 6 2.10 0 0 1 No Squeeze: Volatility expanding. 7 3.45 0 0 1 No Squeeze: Strong upward momentum.
  • Squeeze Pro: When the volatility increases, so does the distance between the bands; conversely, when the volatility declines, the distance also decreases.

Sample Output

Index SQZPRO_20_2.0 ON_WIDE ON_NORMAL ON_NARROW OFF Interpretation 3 -0.45 1 0 0 0 Wide Squeeze: Volatility is dropping. 4 -0.82 1 1 0 0 Normal Squeeze: Range is tightening. 5 -1.10 1 1 1 0 Narrow Squeeze: Extreme compression! 6 0.20 0 0 0 1 Squeeze Fired: Breakout starts. 7 1.50 0 0 0 0 No Squeeze: Trend is in play.
  • Price Distance: Measures the magnitude of price movement over a specific time horizon.

Sample Output

Period Open High Low Close Prev Close Logic PDIST (Output) 1 100 105 95 102 -- -- NaN 2 105 110 103 104 102 Gap Up (+3) 16.0 3 104 105 103 104 104 Tight Range 4.0 4 104 120 100 110 104 High Volatility 34.0

3. Momentum Indicators

3.1 Price-Based Oscillators

  • Momentum: Measures the basic speed of price movement.

Sample Output

Period Close Close (10 days ago) MOM_10 (Output) Market State 0-9 ... -- NaN Warm-up period 10 150.00 140.00 10.00 Positive Momentum 11 152.00 145.00 7.00 Momentum slowing (deceleration) 12 148.00 155.00 -7.00 Negative Momentum (Trend Reversal)
  • Rate of Change (ROC): The percentage change from a prior price point.

Sample Output

Period Close Close (n ago) MOM ROC_10 (Output) Interpretation 10 110 100 10 10.00% Strong Bullish Momentum 11 115 105 10 9.52% Price rising, but ROC slowing 12 100 110 -10 -9.09% Sharp Bearish Turn
  • MACD: A trend-following momentum indicator showing the relationship between two EMAs.

Sample Output

Index MACD_12_26_9 MACDh_12_26_9 MACDs_12_26_9 Signal 30 2.50 0.40 2.10 Bullish (MACD > Signal) 31 2.30 0.05 2.25 Momentum fading 32 2.15 -0.15 2.30 Bearish crossover
  • PPO: Percentage-based version of MACD.

Sample Output

Index PPO_12_26_9 PPOh_12_26_9 PPOs_12_26_9 Meaning 30 1.25 0.15 1.10 Bullish (PPO above Signal) 31 1.35 0.20 1.15 Strengthening bullish momentum 32 1.30 0.08 1.22 Momentum decelerating (histogram shrinking) 33 1.15 -0.05 1.20 Bearish crossover (PPO below Signal)
  • APO: Difference between two EMAs to measure momentum.

Sample Output

Index Close Fast MA (12) Slow MA (26) APO_12_26 Interpretation 25 150.00 148.00 145.00 3.00 Bullish momentum 26 155.00 150.00 146.00 4.00 Momentum increasing 27 145.00 149.00 147.00 2.00 Momentum fading 28 140.00 146.00 146.50 -0.50 Bearish crossover
  • TRIX: A triple-smoothed EMA oscillator used to filter out market noise.

Sample Output

Index TRIX_30_9 TRIXs_30_9 Interpretation 50 0.05 0.02 Bullish Momentum 51 0.08 0.04 Trend Accelerating 52 0.07 0.05 Trend Decelerating 53 0.04 0.05 Bearish Signal Cross

3.2 Overbought / Oversold (OB/OS)

  • RSI (Relative Strength Index): The classic momentum strength and OB/OS indicator.

Sample Output

Period Close Gain Loss RSI_14 (Output) 13 150 -- -- NaN (Warm-up) 14 155 5 0 58.2 15 162 7 0 65.4 16 170 8 0 72.1 (Overbought)
  • Percentage Volume Oscillator: Percentage Volume Oscillator is a Momentum Oscillator for Volume.

Sample Output

Index PVO_12_26_9 PVOh_12_26_9 PVOs_12_26_9 Interpretation 7 45.20 15.10 30.10 High activity; volume is 45% above average. 8 22.40 -5.20 27.60 Volume fading; PVO crossed below Signal. 9 5.10 -15.40 20.50 Rapidly declining interest. 10 -8.30 -18.20 9.90 Below average volume. 11 -15.40 -15.80 0.40 Extended quiet period.
  • Stochastic Oscillator: Compares a closing price to its price range over a given period.

Sample Output

Index STOCHk_14_3_3 STOCHd_14_3_3 Interpretation 15 75.20 70.10 Rising Momentum 16 82.50 75.90 Overbought Area (>80) 17 79.10 78.93 Momentum Slowing 18 72.40 78.00 Bearish Cross (K < D)
  • Stochastic RSI: Applies stochastic calculation to RSI values.

Sample Output

Index STOCHRSIk STOCHRSId Interpretation 30 15.0 10.5 Oversold Area 31 22.0 15.8 Bullish Cross (K > D) 32 45.0 27.3 Rapidly Rising Momentum 33 85.0 50.6 Overbought Area (>80)
  • Williams %R: A momentum indicator measuring the level of the close relative to the high-low range.

Sample Output

Period Close High (14d) Low (14d) WILLR_14 (Output) 13 100 110 90 -50.0 (Mid-range) 14 108 110 90 -10.0 (Overbought) 15 110 110 90 0.0 (At High) 16 92 110 90 -90.0 (Oversold)
  • CCI (Commodity Channel Index): Identifies cyclical turns by measuring deviations from the mean.

Sample Output

Period Typical Price SMA (14) MAD (14) CCI_14 (Output) 13 155.0 150.0 2.5 133.3 (Bullish) 14 148.0 150.5 3.0 -55.5 (Neutral) 15 140.0 149.0 4.2 -142.8 (Bearish)
  • CMO: Momentum oscillator measuring net price change.

Sample Output

Period Price Change Up Sum Down Sum CMO_14 (Output) 14 +10 40 10 60.0 (Overbought) 15 -5 35 15 40.0 (Cooling off) 16 -20 15 35 -40.0 (Bearish)
  • Ultimate Oscillator: Combines momentum over multiple timeframes.

Sample Output

Index Close BP TR UO_7_14_28 (Output) Interpretation 27 100 ... ... NaN Warm-up period (needs 28 rows) 28 105 5 7 52.4 Neutral 29 110 6 8 68.2 Approaching Overbought 30 112 2 5 71.5 Overbought (> 70)

3.3 Advanced & Smoothed Momentum

  • RSX: Noise-reduced, smoothed version of RSI.

Sample Output

Period Close RSI (Classic) RSX_14 (Output) Observation 100 150.2 65.4 64.12 Both rising 101 150.1 61.2 63.85 RSI drops sharply; RSX nudges down
  • Pretty Good Oscillator (PGO): Measures price deviation from SMA in ATR terms.

Sample Output

Index Close SMA (14) Smoothed ATR PGO_14 (Output) State 14 100.0 95.0 2.0 2.50 Strong Momentum 15 104.0 96.0 2.2 3.64 Bullish Breakout (>3) 16 102.0 97.0 2.3 2.17 Returning to Mean
  • Awesome Oscillator: A 34-period and 5-period SMA comparison using midpoints.

Sample Output

Index Median Price SMA (5) SMA (34) AO_5_34 (Output) Momentum State 33 100.0 98.0 95.0 3.0 Bullish 34 102.0 99.5 95.2 4.3 Accelerating Up 35 101.0 100.0 100.5 -0.5 Bearish Cross
  • Coppock Curve: Designed for long-term trend confirmation.

Sample Output

Index Price Change Fast ROC Slow ROC COPC_11_14_10 (Output) State 20 -10% -5.0 -8.0 -12.5 Deep Bearish 21 -2% -4.0 -6.0 -10.2 Turn Up (Potential Buy) 22 +5% +1.0 -2.0 -4.5 Recovering 23 +8% +4.0 +1.0 +2.1 Bullish Cross (>0)
  • KST (Know Sure Thing): A “summed” ROC oscillator for multi-timeframe confirmation.

Sample Output

Index KST_10_15_20_30 KSTs_9 (Signal) Interpretation 50 12.5 10.2 Bullish trend active 51 11.8 10.8 Momentum fading 52 9.5 11.2 Bearish Signal Cross 53 -2.1 8.5 Zero Line Cross (Bearish)
  • Center of Gravity (COG): Zero-lag indicator for identifying turning points

Sample Output

Index Close Weighting Calculation CG_10 (Output) Observation 9 100 Initial window sum -5.5 Center of 10-period window 10 105 Price weight shifts right -5.2 Rising CG (Bullish) 11 108 More weight on recent high -4.9 Accelerating Up 12 104 Price drops; weight shifts -5.3 Immediate Turn Down
  • Chande Forecast Oscillator: Measures deviation from linear regression forecast.

Sample Output

Index Close Linear Reg (TSF) CFO_9 (Output) Observation 10 100 98.5 1.50 Bullish (Price beating forecast) 11 102 101.0 0.98 Trend slowing 12 99 101.5 -2.52 Bearish Break (Price below forecast)
  • Inertia: Smoothed Relative Vigor Index for momentum confirmation.

Sample Output

Index RVI (Base) LinReg (20) INERTIA (Output) Observation 34 55.2 51.4 51.8 Bullish trend starting 35 48.1 51.8 52.2 Price dipped, but Inertia stayed bullish 36 42.0 50.5 49.8 Bearish Signal Cross (<50)
  • Relative Vigor Index (RVI): Assesses trend strength by comparing closing prices to the daily range.

Sample Output

Index RVGI_4_4 RVGIs_4_4 10 0.4521 0.4120 11 0.5104 0.4682 12 0.4892 0.4955 13 0.5345 0.5123 14 0.5812 0.5489
  • Elder Ray Index: Measures bull and bear power relative to a moving average.

Sample Output

Index BULLP_5 BEARP_5 10 1.12 -3.88 11 0.25 -4.75 12 1.48 -3.52 13 2.85 -2.15 14 3.92 -1.08
  • Bias: Measures deviation of price from its moving average.

Sample Output

Index BIAS_SMA_5 Percentage Equivalent 10 -0.0117 -1.17% 11 -0.0328 -3.28% 12 -0.0335 -3.35% 13 -0.0443 -4.43% 14 -0.0535 -5.35%
  • Slope: Quantifies trend direction and steepness.

Sample Output

Index Close Raw_Slope Angle_Degrees Interpretation 5 110 0.0 0.00° Flat / No Momentum 6 108 -2.0 -63.43° Sharp Descent 7 105 -3.0 -71.57° Accelerating Downward 8 101 -4.0 -75.96° Heavy Selling 9 98 -3.0 -71.57° Slight Deceleration
  • Correlation Trend Indicator: Measures how closely the price follows a linear trend.

Sample Output

Index Price CTI_5 Value Trend Strength 4 14.0 0.99 Extremely Strong Uptrend (Perfect Line) 6 14.5 0.85 Weakening Uptrend (Slight Deviation) 8 13.5 -0.65 Transitioning / Choppy Downtrend 10 12.0 -0.98 Strong Linear Downtrend 12 10.0 -0.99 Extremely Strong Downtrend
  • Efficiency Ratio: Quantifies trend efficiency versus market noise.

Sample Output

Index Close ER_10 Value Market Description 10 110.0 0.92 High Efficiency: Price is trending strongly with very few pullbacks. 11 110.5 0.50 Moderate Efficiency: Trending, but with noticeable "zig-zags." 12 108.0 0.15 Low Efficiency: Highly volatile/sideways market; lots of noise. 13 108.2 0.03 Congestion: Price is flat; noise outweighs any net movement.

3.4 Sentiment & Power

  • Balance of Power (BOP): Balance of Power measures the market strength of buyers against sellers.

Sample Output

Index Price Action BOP Value Interpretation 0 Closed near high, far from open 0.53 Strong Bullish Power 1 Opened high, closed near low -0.66 Strong Bearish Power 2 Narrow range, small green body 0.50 Moderate Bullish 3 Closed significantly below open -0.60 Selling Pressure 4 Gapped up, closed near high 0.25 Weak Bullish (Range was wide)
  • Willingness Index (BR): Measures trader conviction using closing prices.
  • Percentage Price Oscillator: The Percentage Price Oscillator is similar to MACD in measuring momentum.

Sample Output

Index PPO_12_26_9 PPOh_12_26_9 PPOs_12_26_9 25 1.8542 0.2411 1.6131 26 1.4230 -0.1521 1.5751 27 0.9812 -0.4751 1.4563 28 0.5241 -0.7458 1.2699 29 0.0520 -0.9743 1.0263
  • Emotion Index (AR): Measures market sentiment based on opening prices.

4. Overlap (Price-Overlay) Indicators

These indicators are plotted directly on the price chart to identify trends and support/resistance levels.

  • Simple Moving Average(SMA): The Simple Moving Average is the classic moving average that is the equally weighted average over n periods.

Sample Output

Index Close SMA_5 Interpretation 4 14 12.8 First calculation: (10+12+13+15+14)/5 5 16 14.0 Average is rising 6 18 15.2 Price is well above average (Bullish) 7 20 16.6 Strong upward momentum 8 19 17.4 Price dips, but stays above the SMA 9 21 18.8 Trend continues
  • Exponential Moving Average(EMA): The weights are determined by alpha, which is proportional to its length.

Sample Output

Index Close EMA_5 Analysis 4 10 10.40 Initial value (SMA of first 5 bars) 5 20 13.60 Reactive: Moves up sharply compared to an SMA 6 21 16.07 Catching up to the new price level 7 22 18.04 Closely tracking the trend 8 23 19.70 Minimal lag compared to standard averages 9 24 21.13 Strong bullish trend signal
  • Double Exponential Moving Average(DEMA): The Double Exponential Moving Average attempts to achieve a smoother average with less lag than the normal Exponential Moving Average (EMA).

Sample Output

Index Close DEMA_5 Observation 5 110 108.45 Reacting almost instantly to the jump. 6 115 114.20 Nearly overlapping with the current price. 7 120 120.05 Effectively "zero-lag" in a strong trend. 8 125 125.80 Can actually "lead" price slightly in extreme moves. 9 130 131.50 Strongest trend-following sensitivity.
  • Triple Exponential Moving Average(TEMA): A less laggy Exponential Moving Average.

Sample Output

Index Close TEMA_5 Observation 5 115 116.20 Ultra-Fast: Overtakes price due to momentum. 6 122 125.15 Aggressively tracking the steep slope. 7 130 134.40 Maximum lag compensation. 8 135 139.10 Excellent for trailing stops in parabolic moves. 9 140 143.25 Stays "ahead" of the trend to prevent late exits.
  • Zero-Lag Exponential Moving Average(ZLEMA): The Zero-Lag Moving Average attempts to eliminate the lag associated with moving averages. This is an adaptation created by John Ehler and Ric Way.

Sample Output

Index Close SMA_5 EMA_5 ZLMA_5 Interpretation 6 115.0 104.8 107.0 116.33 ZLMA reacts instantly to the surge. 7 120.0 108.4 111.33 123.56 ZLMA stays "tight" to the new high. 8 118.0 111.4 113.56 121.37 ZLMA begins turning with the price. 9 110.0 113.4 112.37 110.25 Crossover: ZLMA is already near the price. 10 105.0 113.6 109.91 100.08 SMA/EMA are still way "above" price. 11 102.0 111.0 107.28 95.39 ZLMA captures the full move down.
  • Kaufman Adaptive Moving Average(KAMA): Developed by Perry Kaufman, Kaufman’s Adaptive Moving Average (KAMA) is a moving average designed to account for market noise or volatility.

Sample Output

Index Close KAMA Behavior 4 100.0 100.0 Sideways: KAMA is flat, ignoring the ±1 noise. 5 105.0 100.4 Start of breakout; KAMA begins to react. 6 110.0 102.3 ER Increasing: KAMA starts accelerating. 7 115.0 106.8 Moving faster as the trend clarifies. 8 120.0 113.2 High Speed: Catching up to the trend. 9 125.0 121.1 Closely following the efficient price move.
  • Variable Index Dynamic Average (VIDYA): It was developed by Tushar Chande. It is similar to an Exponential Moving Average, but it has a dynamically adjusted lookback period that depends on relative price volatility, as measured by the Chande Momentum Oscillator (CMO).

Sample output

Index Close VIDYA Behavior 4 100.0 99.98 Consolidation: CMO is low; VIDYA barely moves. 5 105.0 100.52 Momentum Shift: CMO spikes; VIDYA wakes up. 6 112.0 103.11 Accelerating to catch the trend. 7 120.0 107.95 Highly efficient tracking. 8 128.0 114.63 High Velocity: Minimal lag during the move. 9 135.0 122.42 Firmly supporting the uptrend.
  • Arnaud Legoux Moving Average(ALMA): This moving average reduces the lag of the data in conjunction with smoothing to reduce noise. Implemented for Pandas TA by rengel8 based on the source provided below.

Sample Output

Index Close ALMA Interpretation 5 105.0 103.11 Catching up to the trend breakout. 6 107.0 105.12 Firmly supporting the move. 7 106.0 106.43 Pullback: Price dips, but ALMA stays steady. 8 108.0 107.18 Quickly resumes tracking as price recovers. 9 110.0 109.12 Near-zero lag at the current peak.
  • T3 Moving Average: Tim Tillson’s T3 Moving Average is considered a smoother and more responsive moving average relative to other moving averages.

Sample Output

Index Close T3_5 Interpretation 6 100.0 102.54 Price Dip: T3 begins to bend but doesn't "crash" with the price. 7 108.0 102.73 Recovery: T3 remains stable, confirming the dip was temporary. 8 112.0 104.56 Turning upward aggressively to follow the new momentum. 9 115.0 107.69 Moving vertically as the trend accelerates. 10 118.0 111.53 Catching up to the price with minimal lag. 11 120.0 115.31 Firmly supporting the new uptrend.
  • The Volume Weighted Moving Average (VWMA): It is a simple yet powerful technical indicator that bridges the gap between price and volume.

Sample Output

Index Close Volume SMA_5 VWMA_5 Observation 5 100.00 1,000 98.00 98.50 Normal trading; SMA and VWMA are close. 6 105.00 5,000 100.00 102.80 High Vol Surge: VWMA jumps to catch the "Smart Money." 7 106.00 1,000 102.50 103.50 Price rises, but low volume keeps VWMA steady. 8 104.00 800 103.50 103.80 Minor dip on low volume; VWMA holds support. 9 98.00 6,000 102.60 100.20 High Vol Drop: VWMA crashes down immediately.
  • Pascal’s Weighted Moving Average: Pascal’s Weighted Moving Average is similar to a symmetric triangular window except PWMA’s weights are based on Pascal’s Triangle.

Sample Output

Index Close SMA_5 PWMA_5 Observation 5 100.00 98.00 99.50 Smoothly following the trend. 6 105.00 100.00 101.80 Reacts to the surge with a graceful curve. 7 110.00 103.00 105.20 Higher weights in the center stabilize the line. 8 108.00 105.80 107.90 Ignores minor "flickers" better than WMA. 9 107.00 106.00 108.10 Stays stable even as price starts to range.
  • Fibonacci: Fibonacci’s Weighted Moving Average is similar to a Weighted Moving Average (WMA) where the weights are based on the Fibonacci Sequence.

Sample Output

Index Close SMA_5 FWMA_5 Observation 5 100.00 98.00 99.10 FWMA is already hugging the current price. 6 105.00 100.00 102.45 Sharp jump: Fibonacci weights prioritize the 105. 7 110.00 103.00 107.15 FWMA captures nearly the entire move. 8 108.00 105.80 108.35 Price dips; FWMA reacts instantly to the change. 9 107.00 106.00 107.40 Trend flattens; FWMA stays tight.
  • The Volume Weighted Average Price (VWAP): Moving averages only look at price over time; VWAP incorporates Volume, providing the “true” average price paid for a security during a specific session.

Sample Output

Time (TP) Volume TP × Vol VWAP Analysis 09:30 100.00 1,000 100,000 100.00 Session begins. 09:35 102.00 500 51,000 100.67 Rising on low volume. 09:40 105.00 5,000 525,000 104.00 Heavy Volume: VWAP jumps to follow the "Big Money." 09:45 104.00 1,000 104,000 104.00 Consolidation near VWAP. 09:50 103.00 500 51,500 103.93 Price dips below VWAP (Bearish bias).
  • Weighted Moving Average (WMA): It is a step up in complexity from the Simple Moving Average (SMA). While an SMA gives equal importance to every day in the lookback period, the WMA assigns a linear weight to each data point.

Sample Output

Index Close SMA_5 WMA_5 Observation 1 10.0 - - Warming up... 5 12.0 11.00 11.33 WMA is already pulling ahead of SMA. 6 15.0 12.00 13.00 Sharp jump: WMA reacts much faster. 7 18.0 13.40 15.47 WMA captures the momentum better. 8 17.0 14.40 16.33 Price dips: WMA turns faster than SMA.
  • Ichimoku: Uses mid-prices (the average of the high and low over a specific period) to find the “equilibrium” of the market.

Sample Output

Index Close ITS_9 (Tenkan) IKS_26 (Kijun) ISA_9 (Span A) ISB_26 (Span B) ICS_26 (Chikou) 96 152.00 150.50 148.00 145.20 144.10 148.50 97 153.50 151.25 148.00 145.45 144.10 147.20 98 155.00 152.50 149.50 145.80 144.50 149.00 99 154.50 153.00 149.50 146.10 144.50 146.50 100 156.00 154.50 150.00 147.20 145.00 NaN
  • LINREG: LinReg attempts to find the actual current trend value.

Sample Output

Index Close LinReg (LSMA) Slope (m) Analysis 10 100.0 98.50 0.20 Strong fit; price-leading trend. 11 101.5 99.10 0.35 Slope increasing; trend accelerating. 12 102.0 100.20 0.40 Trend Follower: LinReg stays below price. 13 100.5 100.80 -0.10 Reversal: Slope turns negative; LinReg > Price. 14 99.0 99.40 -0.30 Confirmed downward trend.

5. Trend & Statistical Indicators

5.1 Trend Identification

  • Aroon: The Aroon indicator measures the time elapsed since the highest high and lowest low within a specific window (default is 14 periods).

Sample Output

Period AROOND_14 (Down) AROONU_14 (Up) AROONOSC_14 (Oscillator) Trend Signal 13 NaN NaN NaN Warmup period 14 21.43 92.86 71.43 Strong Uptrend 15 14.29 100.00 85.71 New High Reached 16 7.14 92.86 85.72 Consolidation 17 100.00 85.71 -14.29 Reversal (New Low) 18 92.86 78.57 -14.29 Downward Momentum
  • Vortex: The Vortex Indicator (VTX) is based on the flow of water and identifies the start of a new trend. It consists of two lines: VI+ (Positive) and VI- (Negative). When these lines cross, it typically signals a trend reversal.

Sample Output

Period Close VTXP_14 (VI+) VTXM_14 (VI-) Signal 13 100.0 NaN NaN Warmup period 14 105.0 1.15 0.82 Bullish Trend (VI+ > VI-) 15 106.0 1.22 0.75 Strong Uptrend 16 102.0 0.98 1.05 Bearish Cross (VI- > VI+) 17 98.0 0.81 1.18 Strong Downtrend
  • **Linear Decay:**The Decay indicator is typically used to create a “fading” memory of a signal (like a price spike or a technical crossover). It ensures that a value stays high immediately after an event and gradually decreases until it hits zero or is “reset” by a new high price.

Sample Output

Period Close (Input) LDECAY_5 (Output) Logic / Interpretation 0 0.0 0.00 Starting base. 1 1.0 1.00 Spike! Indicator matches the close. 2 0.0 0.80 1.0 − (1/5) = 0.8 3 0.0 0.60 0.8 − (1/5) = 0.6 4 0.0 0.40 0.6 − (1/5) = 0.4 5 0.5 0.50 New Signal: Price (0.5) > Decay (0.2), so it resets. 6 0.0 0.30 0.5 − (1/5) = 0.3
  • VHF: The Vertical Horizontal Filter (VHF) is a trend-intensity indicator. Rather than telling you the direction of the market, it helps you decide which type of indicator to use: a trend-following indicator (like Moving Averages) or a momentum oscillator (like RSI).

Sample Output

Period Price Action VHF_28 Value Meaning 0-26 Loading data NaN Warmup 28 Aggressive Rally 0.65 Strong Trending 35 Parabolic Move 0.82 Extreme Trend (Watch for peak) 45 Choppy Sideways 0.35 Ranging Market 60 Tight Consolidation 0.15 Low Volatility / Congestion
  • PSAR: The Parabolic SAR (PSAR) is unique because it populates either the long column (dots below price) or the short column (dots above price), but never both at the same time.

Sample Output

Row PSARl_0.02_0.2 PSARs_0.02_0.2 PSARaf_0.02_0.2 PSARr_0.02_0.2 0 100.00 NaN 0.02 0 1 100.04 NaN 0.02 0 2 100.12 NaN 0.04 0 3 NaN 105.00 0.02 1 4 NaN 104.88 0.02 0
  • Detrended Price Oscillator (DPO): It is a unique tool that strips away long-term trends to highlight short-term cycles. Unlike most oscillators that use a difference between two moving averages (like MACD), DPO compares the price to a shifted moving average.

Sample Output

Period Close Price DPO_20 Interpretation 10 105.00 -1.25 Below trend (trough) 11 108.00 2.10 Crossing above trend 12 112.00 5.45 Cyclical High ... ... ... ... 18 115.00 NaN Shifted (No data yet) 19 116.00 NaN Shifted (No data yet)
  • Qstick: The Q Stick indicator, developed by Tushar Chande, is a simple yet effective way to quantify the “internal strength” of candlesticks over a set period. It essentially measures the average distance between the closing and opening prices.

Sample Output

Period Open Close Diff (C-O) QS_10 (SMA) Market Sentiment 9 100 102 +2 NaN Warmup 10 102 105 +3 0.85 Bullish Accumulation 11 105 106 +1 1.10 Rising Momentum 12 106 104 -2 0.90 Slight Pullback 13 104 100 -4 -0.15 Bearish Reversal (Cross below 0)
  • Choppiness Index: The Choppiness Index (CHOP) is a range-bound indicator that measures market “noise” rather than direction. Unlike the previous indicators, it doesn’t tell you if the price is going up or down; it tells you if the price is trending or sideways.

Sample Output

Period Price Action Context CHOP_14_1_100 Interpretation 0-13 Warmup NaN Insufficient data 14 Strong upward surge 32.45 Trending (Low value) 15 Continued trend 28.10 Strong Trend 16 Price stalls, starts ranging 45.30 Moving toward neutral 17 Sideways "sawtooth" movement 63.15 Choppy (High value) 18 Tight consolidation 68.90 Highly Congested

5.2 Statistical Analysis

  • Variance: Variance is a statistical measure that quantifies the spread of price data points around their mean over a specific lookback period.

Sample Output

Index Close Mean (5-p) VAR_5 Interpretation 4 100.0 100.0 0.00 Perfectly flat price; no variance. 5 102.0 100.4 0.80 Small movement starts increasing variance. 6 105.0 101.4 4.30 Increasing spread as price climbs. 7 115.0 104.4 37.30 Spike: Large price deviation creates high variance. 8 116.0 107.6 51.30 High volatility persists. 9 115.5 110.7 42.70 Variance stabilizes as price clusters at the new high.
  • Std Dev: It tells how much the price is “stretching” away from its average.

Sample Output

Index Close Mean (5-p) STDEV_5 Interpretation 10 100.00 100.00 0.00 No volatility; price is flat. 11 102.00 100.50 0.89 Slight movement detected. 12 110.00 103.00 4.12 Volatility Spike: Deviation from the mean is growing. 13 112.00 106.00 5.30 Strong upward expansion. 14 108.00 108.40 3.90 Volatility cooling as prices
  • MAD: Mean Absolute Deviation is a robust statistical measure of market volatility.

Sample Output

Index Close Mean (5-p) MAD_5 Interpretation 1 100 100.0 0.00 No deviation. 2 102 101.0 1.00 Price is 1 unit away from the mean on average. 3 105 102.3 2.04 Dispersion is increasing. 4 112 104.8 4.16 Volatility Spike: Significant stretch from mean. 5 110 107.8 3.84 Price pulls back; MAD begins to stabilize.
  • **Quantile:**The Rolling Quantile is a powerful statistical tool used to determine the relative standing of a current price within its recent history.

Sample Output

Index Close Median (q=0.5) Upper Quantile(q=0.9) Interpretation 20 100 98.0 102.5 Normal price action. 21 105 98.5 104.2 Price is "breaking out" of the 90th percentile. 22 110 99.0 108.5 Extremely rare price territory. 23 109 100.5 109.8 Upper threshold rising to meet the new high. 24 105 101.0 110.0 Price pulls back, but the 90% "ceiling" stays high.
  • Median: The Median finds the middle value in a sorted list of prices.

Sample Output

Index Close SMA_5 MEDIAN_5 Interpretation 10 100 100.0 100.0 Base level. 11 101 100.2 100.5 Slight upward movement. 12 120 104.2 101.0 The Spike: Median stays grounded; SMA jumps. 13 101 104.4 101.0 Price returns; Median barely moved. 14 102 104.8 101.0 SMA is still "bleeding" from the $120 spike.
  • Z-Score: Standardizes price relative to its mean.

Sample Output

Index Close Mean (20-p) Stdev (20-p) Z-Score Interpretation 11 100.00 100.00 2.50 0.00 Price at equilibrium. 12 105.00 101.00 3.20 1.25 Moving into "overbought" territory. 13 110.00 102.50 3.07 2.44 Extreme: Potentially overextended. 14 108.00 103.00 3.50 1.43 Mean reversion begins. 15 95.00 102.00 4.00 -1.75 Approaching an "oversold" floor.
  • Skew: Skewness (or Skew) measures the asymmetry of the price distribution over a set period.

Sample Output

Index Close Trend SKEW_30 Interpretation 11 100.0 Neutral 0.05 Nearly symmetrical distribution. 12 105.0 Rising 0.85 Positive Skew: Upside outliers are appearing. 13 106.0 Rising 0.60 Trend stabilizing. 14 85.0 Crash -1.20 Negative Skew: A major downside outlier has occurred. 15 86.0 Recovery -1.10 Distribution remains heavily "left-tailed".
  • Kurtosis: Describe distribution shape.

Sample Output

Index Close Behavior KURT_30 Interpretation 50 100.0 Steady 0.05 Normal, bell-curve behavior. 51 100.2 Range-bound -0.50 Platykurtic: Very stable, no outliers. 52 115.0 Flash Spike 2.40 Leptokurtic: An outlier has appeared. 53 116.0 Extreme Vol 3.10 Tailedness increasing; high risk of "tail events". 54 105.0 Mean Reverting 1.80 Outliers are still dominating the 30-day window.
  • Entropy: Measures randomness and unpredictability.

Sample Output

Index Close Behavior ENTP_10 Interpretation 20 100.5 Sideways 3.32 High randomness (market is "noisy"). 21 100.2 Choppy 3.31 Maximum uncertainty. 22 105.0 Breakout 3.15 Entropy Falling: The market is finding order. 23 110.0 Strong Trend 2.95 Low randomness; high information conviction. 24 115.0 Parabolic 2.80 Market is highly ordered (Predictable momentum).

6. Cycle Indicators

  • Even Better Sinewave: Detects cyclical market behavior with reduced noise

Sample Output

Index Close EBSW Value Signal State Market Phase 50 150.00 0.05 Crossing Up Cycle turning Bullish 51 152.50 0.85 Near Peak High Momentum 52 153.00 1.00 Cycle Peak Exhaustion point 53 152.00 0.70 Falling Cycle Reversing 54 148.00 -0.90 Near Bottom Deeply Oversold (Cyclical) 55 147.50 -1.00 Cycle Trough Accumulation zone

7. Data Inputs

OHLCV Data

All technical indicators are derived from these five core inputs:

  1. Open: Starting price.
  2. High: Peak price.
  3. Low: Bottom price.
  4. Close: Final price.
  5. Volume: Total units traded.

8. Fundamental Indicators

  • Earnings Indicator: The Earnings Indicator is a volatility-based trading tool designed to capture statistically significant price reactions following corporate earnings announcements. Its objective is to identify short-term momentum opportunities arising from abnormal volatility and volume following earnings releases.

Objective

The Earnings Indicator helps traders:

  • Detect statistically significant post-earnings moves.
  • Filter out “normal” volatility reactions.
  • Avoid low-probability trades.
  • Systematically execute earnings momentum strategies.

How the Indicator Works

The model is primarily driven by volatility scaling.

Core Logic

  1. Analysis: The system analyzes intraday volatility over the past 10 trading days.
  2. Calculation: It computes a scaled return (a volatility-adjusted price move).
  3. Threshold: It generates a signal only if the move exceeds a defined threshold.

Default Threshold: ±1.5 Volatility Units

The selection of 1.5 is a strategic balance to ensure data quality:

  • Above 1.5: Indicates a significant abnormal move (Statistically significant).
  • Below 1.5: Often represents market noise.
  • Above 2.0: Results in too few trade opportunities.
  • Below 1.0: Generates too many low-quality, “noisy” trades.

This design avoids overfitting while successfully capturing meaningful statistical outliers.


Earnings Timing Logic (Critical)

Correct timing is essential for both live execution and backtesting accuracy. The Earnings Indicator supports two specific cases based on when the company reports:

Before Market Open (BMO)

If earnings are released before the market opens:

  • The strategy triggers on the same trading day.
  • Signal detection begins immediately upon that day’s opening.

After Market Close (AMC)

If earnings are released after the market has closed:

  • The strategy triggers on the next trading day (T+1).
  • T = The day the earnings were released.
  • T+1 = The day the signal detection and execution begin.

Important

This timing logic is strictly consistent for both Forward Testing and Backtesting. There is no discrepancy between live deployment and historical results, ensuring your strategy behaves as expected in all environments.

Note: Technical indicators are most effective when used in combination (e.g., a trend indicator paired with a momentum oscillator) rather than in isolation.

Last updated on