Standard Error Bands (Native AFL).afl
上传用户:shiqiang
上传日期:2009-06-12
资源大小:1289k
文件大小:3k
源码类别:

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    Standard Error Bands (Native AFL)
  4. //  Author/Uploader: William Peters 
  5. //  E-mail:          williampeters@sympatico.ca
  6. //  Date/Time Added: 2003-12-20 19:04:15
  7. //  Origin:          Mr. Jon Andersen
  8. //  Keywords:        Standard Error Bands
  9. //  Level:           medium
  10. //  Flags:           indicator
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=317
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=317
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  Description:
  17. //
  18. //  Standard Error Bands are a type of envelope developed by Jon Andersen. They
  19. //  are similar to Bollinger Bands in appearance, but they are calculated and
  20. //  interpreted quite differently. Where Bollinger Bands are plotted at
  21. //  standard deviation levels above and below a moving average, Standard Error
  22. //  Bands are plotted at standard error levels above and below a linear
  23. //  regression plot.
  24. //
  25. //  Interpretation:
  26. //
  27. //  When using Standard Error Bands, you are required to enter the number of
  28. //  periods in the bands. Mr. Andersen recommends default values of "21" for
  29. //  the number of periods, a 3-day simple moving average for the smoothing, and
  30. //  "2" standard errors. He also notes that very short time frames tend to
  31. //  produce unreliable results.
  32. //
  33. //  These interpretational comments refer to bands on the security's closing
  34. //  price.
  35. //
  36. //  Because the spacing between Standard Error Bands is based on the standard
  37. //  error of the security, the bands widen when the volatility around the
  38. //  current trend increases, and contract when volatility around the current
  39. //  trend decreases.
  40. //
  41. //  Since Standard Error Bands are statistically based, other statistical
  42. //  indicators such as r-squared, Standard Error, Linear Regression, etc. work
  43. //  well for trade confirmation.
  44. //
  45. //  Mr. Andersen notes the following characteristics of Standard Error Bands.
  46. //
  47. //  - Tight bands are an indication of a strong trend.
  48. //
  49. //  - Prices tend to bounce between the bands when the bands are wide.
  50. //
  51. //  - Tight bands followed by a widening of the bands may indicate the
  52. //  exhaustion of a trend and a possible reversal.
  53. //
  54. //  - When the bands reverse direction after an exhausted trend, prices tend to
  55. //  move in the direction of the bands.
  56. //
  57. //  - The r-squared indicator works well in combination with Standard Error
  58. //  Bands. A high r-squared value combined with tight bands confirms a strong
  59. //  trend. A low r-squared value combined with wide bands confirms that prices
  60. //  are consolidating.
  61. //
  62. //------------------------------------------------------------------------------
  63. /* Standard Error Bands */
  64. Periods = Param("Standard Error", 18, 1, 100, 1); 
  65. function SteBand( array, periods, upper ) 
  66.   Lr = LinearReg( array, periods ); 
  67.   se = StdErr( array, periods ); 
  68.   return LR + IIf( upper, 1, -1 ) * 2 * se; 
  69. upperstderrband = SteBand( C, Periods, True ); 
  70. lowerstderrband = SteBand( C, Periods, False ); 
  71. midstderrband = (upperstderrband + lowerstderrband )/2; 
  72. Plot( Close, "Close", colorBlack, styleCandle );
  73. Plot( upperstderrband , "upperstderrband ", colorGreen, 4 );
  74. Plot( lowerstderrband , "lowerstderrband ", colorRed, 4 ); 
  75. Plot( midstderrband , "midstderrband ", colorBlack , styleLine); 
  76. GraphXSpace = 3;