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

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    Demand Index
  4. //  Author/Uploader: Steve Wiser 
  5. //  E-mail:          slwiserr@erols.com
  6. //  Date/Time Added: 2001-07-05 19:12:36
  7. //  Origin:          
  8. //  Keywords:        
  9. //  Level:           medium
  10. //  Flags:           system,exploration,indicator
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=58
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=58
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  Uses the demand index for a system test.
  17. //
  18. //------------------------------------------------------------------------------
  19. /* Demand Index */
  20. /* Steve Wiser at slwiserr@erols.com */
  21. /* Exploration, System and indicator */
  22. GraphMax=9;
  23. A=(H+L+2*C);
  24. B=ema((HHV(H,2)-LLV(L,2)),19);
  25. BuyP= 
  26. /*{BuyPower}*/
  27.  V/ema(V,19) * ((A>=Ref(A,-1)) +(A<Ref(A,-1)) / Exp((0.375 * (A+Ref(A,-1)) /B ) *(Ref(A,-1)-A) / A));
  28. SellP = 
  29. /*{SellPressure}*/ 
  30. V/ema(V,19) * ((A<=Ref(A,-1)) + (A>Ref(A,-1)) / Exp((0.375 * (A+Ref(A,-1)) / B ) * (A-Ref(A,-1)) / Ref(A,-1)));
  31. mabp=ema(BuyP,19);       
  32. masp=ema(SellP,19);        /*{smooth Selling Pressure}*/
  33. divsor=iif(mabp>masp,mabp,masp);         /*{BP:SP ratio}*/
  34. divend=iif(mabp<masp,mabp,masp);       /*{biggest=divisor}*/
  35. var2=1-(divend/divsor);                               /*{adjust ratio to plot in}*/
  36. var3=iif( (masp>mabp) , -var2 , var2  )  ;       /*{range -100 to 100}*/
  37. var4=var3*100;  
  38. Graph1 = var4;
  39. Graph1Style=5;
  40. var5=ma(var4,30);
  41. Graph2=var5;;
  42. Graph2Style=5;
  43. Graph2Color=6;
  44. /*  Zero Line  */
  45. Graph0=0;
  46. Buy=cross(var4,var5); /* originally var5 was a zero */
  47. sell=cross(0,var4);
  48. buy=exrem(buy,sell);
  49. sell=exrem(sell,buy);
  50. short=sell;
  51. cover=buy;
  52. Filter= (Buy == 1 or Sell == 1)  ;
  53. numcolumns = 7;
  54. column0 =  IIF(Buy == 1, 1, IIF(Sell == 1, -1, 0 )  );
  55. column0format = 1.0;
  56. column0name = "B/S";
  57. column1 = C;
  58. column1name = "Close       ";
  59. column1format = 1.2;
  60. column2 = ma(v,17);
  61. column2name = "17 Ma Vol   ";
  62. column2format = 1.0;
  63. column3 = ma(C,17)/ma(c,50);
  64. column3name = "% 17/50 ";
  65. column3format = 1.2;
  66. column3format = 1.2;
  67. column4= ma(c,17);
  68. column4name="17 C ma";
  69. column4format = 1.2;
  70. column4= ma(c,50);
  71. column4name="50 C ma";
  72. column4format = 1.2;
  73. Column5=ROC(var4,2);
  74. column5Name="ROC DI";
  75. Column5Format=1.2;  
  76. Column6=Cum(1);
  77. Column6Name = "#Bars";
  78. Column6format = 1.0;
  79. /*  End of Exploration Code. */