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

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    Volatility Quality Index
  4. //  Author/Uploader: Vic Huebner 
  5. //  E-mail:          atlantic@engineer.com
  6. //  Date/Time Added: 2002-07-13 16:31:48
  7. //  Origin:          Thomas Stridsman in Active Trader - August 2002
  8. //  Keywords:        volatility, buy, sell, zig
  9. //  Level:           medium
  10. //  Flags:           indicator
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=205
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=205
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  Plots the volatility quality index. I added a trend detector as a simple
  17. //  buy-sell indicator.
  18. //
  19. //------------------------------------------------------------------------------
  20. //Volatility Quality Index by Thomas Stridsman
  21. //Translated by Vic Huebner
  22. //True range is the greatest of H-L,Ref(C,-1)-H, or Ref(C,-1)-L
  23. TR=ATR(1);
  24. //Volatility quality index is the ratio of C-O compared to H-L. The higher the better.
  25. VQI=((C-Ref(C,-1)))/TR + (C - O)/(H-L)*.5;
  26. //Stridsman made it more sensitive by including the price changes
  27. VQI=abs(VQI)*(C-Ref(C,-1)+(C-O))*.5;
  28. SumVQI=Cum(VQI);
  29. MaxGraph=4;
  30. //VQI ranges between -1 and +1. It was offset to make it compatible with the zig function.
  31. Graph0=100*(SumVQI+100); //Red line
  32. Graph1=100*(MA(SumVQI,9)+100); //blue - 9 day moving average
  33. Graph2=100*(MA(SumVQI,200)+100); //black line - 200 day MA
  34. Graph2Style=1;
  35. Graph3Style=1;
  36. Graph3=Zig(Graph0,1); //yellow line indicates trend change
  37. Graph3Color=7;
  38. //Buy at the bottom zig peak for stocks over $4
  39. BuyIt=(C>4) AND (Graph3>Ref(Graph3,-1)) AND (Ref(Graph3,-2)>Ref(Graph3,-1));
  40. //Buy as before but only if the 200 day VQI is increasing. Stridsman considers it better if quality is improving. Comment out the next line to get more buy action.
  41. BuyIt= BuyIt AND(Graph2>Ref(Graph2,-5));
  42. Buy=BuyIt;
  43. //Sell signals are generated when the Zig Line is decreasing.
  44. Sell=(Graph3<(Ref(Graph3,-1))) AND (Ref(Graph3,-2)<Ref(Graph3,-1)) AND (C>3);
  45. //It is assumed that transactions are made the next day after a buy/sell signal.
  46. BuyPrice=ValueWhen(Ref(Buy,-1),Open,0);
  47. SellPrice=ValueWhen(Ref(Sell,-1),Open,0);