Category: Tradestation – Indicator
Description Variable Moving Average is an Exponential Moving Average that automatically adjust the smoothing constant based on the volatility of the data series. The volatility index calculation is based on the absolute value of Chande Momentum Oscillator with nine bar length calculation. 

Equation


Source Code (Easy Language)
{******************************************************************* Inputs: Price(NumericSeries), Period(NumericSimple), CMOPeriod(NumericSimple); factor = 2/(Period+1); VI = AbsValue(CMO(Price, CMOPeriod)/100); if CurrentBar <= 1 then 

Graph 

Interpretation As shown on the picture VMA (red) will avoid the price whipsaws when trending up and trending down as compared to SMA (yellow), thus will provide better crossover entry and exit trading signal. The graph on the bottom shows CMO indicator, which measure the volatility. 
Description Modified Moving Average is an algebraic tool which makes averages more amenable to price shifts. The first point of the modified moving average is calculated precisely as the first point of the simple moving average is calculated. However, all following points are measured by adding the new price and afterwards subtracting from the resulting sum the last average. 

Equation


Source Code (Easy Language)
{******************************************************************* Inputs: Price(NumericSeries), Period(NumericSimple); PriceSum = 0; for counter = 0 to Period1 MMA = SMA(Price,Period) + (6*PriceSum)/((Period+1)*Period); 

Graph  
Interpretation As you can see that MMA (magenta) is a very responsive type of moving average as compared to SMA (cyan). 
Description Smoothed Moving Average is a method of smoothing the moving average by addition of price summation and the simple moving average. 

Equation


Source Code (Easy Language)
{******************************************************************* if CurrentBar <= 1 then 

Graph  
Interpretation The smoothing process causes the SMMA (cyan) performs sluggishly as compared to SMA (red) 
Description Hull Moving Average basically a Weighted Moving Average that dampen the smoothing effect and resulting a lag by using a square root of period. It reacts more quickly on the price changes as compared to typical WMA. 
Equation 
Source Code (Easy Language)
{******************************************************************* HMA = WMA(2*WMA(Price, Period/2) – WMA(Price,Period), IntPortion(SquareRoot(Period))); 
Graph 
Interpretation The HMA (magenta) response to the price changes rapidly as compared to standard SMA (red). 
Description Sine Weighted Moving Average has a characteristic of sine wave which are smoother as compared to other type of moving average calculation. 

Equation 

Source Code (Easy Language)
{******************************************************************* Inputs: Price(NumericSeries), Period(NumericSimple); NumSum = 0; for counter=1 to 5 SWMA = NumSum/DenomSum; 

Graph 

Interpretation The SWMA (magenta line) shows better conformity toward the price trend changes as compared to SMA (red line). 
Description Triangular Moving Average is actually a method of reaveraging a Simple Moving Average to make it smoother. 

Equation 

Source Code (Easy Language)
{******************************************************************* Inputs: Price(NumericSeries), Period(NumericSimple); TPeriod = Ceiling((Period+1)/2); TMA = SMA(SMA(Price,TPeriod), TPeriod); 

Graph 

Interpretation The TMA (yellow line) shows a smoother ripple as compared to SMA (red line). 
Description Wilder Moving Average is a special moving average which actually developed for RSI, ATR, ADX indicators. So it will have sluggish performance if directly implemented for price. 

Equation 

Source Code (Easy Language)
{******************************************************************* Inputs: Price(NumericSeries), Period(NumericSimple); if currentbar <= 1 then 

Graph  
Interpretation WiMA (magenta line) has more sluggish movement as compared to EMA (blue line). 
Description Zero Lag Exponential Moving Average tries to removes the lagging characteristic of Exponential Moving Average so it provide better price trend averaging and more responsive toward price swinging. 

Equation 

Source Code (Easy Language)
{******************************************************************* Inputs: Price(NumericSeries), Period(NumericSimple); if CurrentBar <= 1 then 

Graph 

Interpretation ZLEMA (red line) gives better prices conformation as compared to EMA (blue line). 