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

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    ATR Study
  4. //  Author/Uploader: steve wiser 
  5. //  E-mail:          slwiserr@erols.com
  6. //  Date/Time Added: 2001-11-23 18:09:31
  7. //  Origin:          
  8. //  Keywords:        ATR
  9. //  Level:           medium
  10. //  Flags:           system,exploration,indicator
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=135
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=135
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  This was simply a study at seeing how I could use the ATR function in a
  17. //  trading system.
  18. //
  19. //  System settings:
  20. //
  21. //  25 $ per trade
  22. //
  23. //  Buy and sell on signal one day delay for both
  24. //
  25. //  Start equity of $10000
  26. //
  27. //  Long trades only on daily selection
  28. //
  29. //  Stops controlled by code
  30. //
  31. //------------------------------------------------------------------------------
  32. //* ATR Study:  */
  33. Exclude = MA(V,50)<200 ;
  34. MaxGraph = 12;
  35. Graph0 = C;
  36. Graph0Color = 1;
  37. Graph0Style = 64;
  38. BuyOffSet = 18;//Optimize("BuyOffSet",18,15,20,1);
  39. SellOffset = BuyOffSet;//Optimize("SellOffset",2,2,14,2);
  40. RegLength = 5;//Optimize("RegLength",5, 2,11,2);
  41. BuyATRPeriod = 2;//Optimize("BuyATRPeriod",2,2,5,1);
  42. SellATRPeriod = BuyATRPeriod;//Optimize("SellATRPeriod",4,2,11,2);
  43. ATRMultiplier = 1;//Optimize("ATRMultiplier",1,0.7,1.25,.05);
  44. Graph8 = HHV(H-ATRMultiplier*ATR(BuyATRPeriod),BuyOffset);   /* RED */
  45. Graph9 = LLV(L+ATRMultiplier*ATR(SellATRPeriod),SellOffset);  /*  GREEN */
  46. Graph8Style=Graph9Style = 5;
  47. Graph9Color=  5;  /* 5 is green */
  48. Graph8Color = 4;  /* 4 is red */
  49. ticker = 0.0;//Optimize("Tickerk",0,0,1,0.125);
  50. Buy = Cross(C,Graph8) AND C>Graph9 AND LinRegSlope(EMA(C,17),2)>0;
  51. Sell = Cross(Graph8,C) AND LinRegSlope(C,2)<0;
  52. Buy = ExRem(Buy,Sell);
  53. Sell = ExRem(Sell,Buy);
  54. BuyStop = Ref(Graph8,-1)+ ticker;
  55. BuyPrice = Max(BuyStop,Low);
  56. SellStop= Ref(Graph8,-1);   //IIf(Cross(Graph8,C),Ref(Graph8,-1),0);
  57. SellPrice = Min( SellStop, High )- ticker; 
  58. //ApplyStop(2,3,Optimize("TrailingStop",15,0,20,5),1);
  59. Filter=   (Buy OR Sell)      ;      
  60. NumColumns = 8;
  61. Column0 =  IIf(Buy==1,1,IIf(Sell==1,-1,0) );
  62. Column0Format = 1.0;
  63. Column0Name = "Long/Sell";
  64. Column1 = C;
  65. Column1Name = "Close       ";
  66. Column1Format = 1.2;
  67. Column2 = MA(V,17);
  68. Column2Name = "17 Ma Vol   ";
  69. Column2Format = 1.0;
  70. Column3 = MA(C,17)/MA(C,50);
  71. Column3Name = "% 17/50 ";
  72. Column3Format = 1.2;
  73. Column3Format = 1.2;
  74. Column4= MA(C,17);
  75. Column4Name="17 C ma";
  76. Column4Format = 1.2;
  77. Column5= MA(C,50);
  78. Column5Name="50 C ma";
  79. Column5Format = 1.2;
  80. Column6= BuyPrice;
  81. Column6Name="BuyPrice";
  82. Column6Format = 1.2;
  83. Column7= SellPrice;
  84. Column7Name="Sellprice";
  85. Column7Format = 1.2;