Wealth-Lab Wiki

API ChartStyles Community Components Community Indicators IndexDefinitions Knowledge Base Misc Optimizers Pending Deletion PosSizers Providers Standard Indicators TASC Traders Tips TASCIndicators Tutorial Videos Visualizers
RSS

Navigation


Quick Search
»
Advanced Search »


Syntax

public static EStdDev Series(DataSeries ds, int period)
public EStdDev(DataSeries ds, int period, string description)

Parameter Description

dsDataSeries used to build ESD
periodLookback period

Description

Standard Deviation is the statistical measure of market volatility. If prices trade in a tight narrow trading range then StdDev will return a low value indicating volatility is low. Conversely if prices swing wildly up and down then StdDev returns a high value indicating volatility is high. What it does is measure how widely prices are dispersed from the average or mean price.

What makes EStdDev (exponential standard deviation) different is the use of exponential smoothing (EMA) vs. simple averaging that takes place inside the indicator. This is believed to make the ESD bands more sensitive to the market action.

Interpretation

  • Standard deviation rises as prices become more volatile. As price action calms, standard deviation heads lower.
  • Market tops accompanied by increase volatility over short periods of time, indicate nervous and indecisive traders. Or market tops with decreasing volatility over long time frames, indicate maturing bull markets.
  • Market bottoms accompanied by decreased volatility over long periods of time, indicate bored and disinterested traders. Or market bottoms with increasing volatility over relatively sort time periods, indicate panic sell off.

Remarks

  • Avoid testing EStdDev of a Standard Price Series (Bars.Open, Bars.Close, etc.) for an absolute value since these series can be adjusted (split) in the future, which will change their historic deviations. Instead, normalize the test by dividing both StdDev and the value (or series) by the DataSeries value.

Avoid

if( EStdDev.Value( bar, Close, 20 ) < 1.5 ...

Correct

/* Normalized */
double C = Close[bar];
if( ( EStdDev.Series( Close, 20 )[bar] / C ) < ( 1.5 / C ) )...

Calculation

Unlike StdDev, EStdDev uses standard deviation of a population (compatible with Excel STDEVP).

Steps to calculate Extended Standard Deviation for n periods

  1. Calculate the extponential average price for n periods
  2. From each period's price subtract the mean, this gives you the deviation for each period.
  3. Find the sum of the squares of all deviations.
  4. Divide the sum of the squared deviations found in step 3 by ( n - 1 ).
  5. Calculate the square root of the result of the previous step.

Example

Please refer to February 2017 Traders' Tip article's code.

Important Disclaimer: The information provided by Wealth-Lab is strictly for informational purposes and is not to be construed as advice or solicitation to buy or sell any security.  The owner of Wealth-Lab.com assumes no liability resulting from the use of the material contained herein for investment purposes. By using this web site, you agree to the terms of this disclaimer and our Terms of Use.

Used under license from FMR Corp. Copyright 2008 FMR Corp. All rights reserved.


ScrewTurn Wiki. Some of the icons created by FamFamFam.