Reverse EMA function.afl
上传用户:shiqiang
上传日期:2009-06-12
资源大小:1289k
文件大小:2k
源码类别:

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    Reverse EMA function
  4. //  Author/Uploader: Dimitris Tsokakis 
  5. //  E-mail:          tsokakis@oneway.gr
  6. //  Date/Time Added: 2003-06-13 03:44:35
  7. //  Origin:          
  8. //  Keywords:        
  9. //  Level:           basic
  10. //  Flags:           indicator
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=286
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=286
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  EMA is a function of todays Close and yesterdays EMA.
  17. //
  18. //  The mechanism is analytically described in AFL>AFL Scripting
  19. //  Host>Examples>a) Indicator example - Exponential moving average
  20. //
  21. //  After the math transormation, we may solve for C and get the Reverse EMA
  22. //  function.
  23. //
  24. //  I will call it CLOSEviaEMA to be more expressive.
  25. //
  26. //  In Indicator builder paste the
  27. //
  28. //  // Reverse EMA function, by D.Tsokakis, June 2003
  29. //
  30. //  P=20;
  31. //
  32. //  CLOSEviaEMA=0.5*((P+1)*EMA(C,P)-(P-1)*Ref(EMA(C,P),-1));
  33. //
  34. //  Plot(C,"CLOSE",1,1);
  35. //
  36. //  Plot(CLOSEviaEMA,"CLOSEviaEMA",7,8);
  37. //
  38. //  to see actual Close and CLOSEviaEMA matching.
  39. //
  40. //  The Reverse EMA function is useful to anticipate next bar Close, if we
  41. //  suppose next bar EMA.
  42. //
  43. //------------------------------------------------------------------------------
  44. // Reverse EMA function, by D.Tsokakis, June 2003
  45. P=20;
  46. CLOSEviaEMA=0.5*((P+1)*EMA(C,P)-(P-1)*Ref(EMA(C,P),-1));
  47. Plot(C,"CLOSE",1,1);
  48. Plot(CLOSEviaEMA,"CLOSEviaEMA",7,8);