Advertisement
Guest User

20191118

a guest
Nov 18th, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.27 KB | None | 0 0
  1. input period = 55;
  2. input alertsOn = yes;
  3. def price = (high + low + close) / 3;
  4. #-----Typical Price ZeroLag Triple Exponential Moving Average
  5. def TMA1 = 3 * ExpAverage(price, period)
  6. -3 * ExpAverage(ExpAverage(price, period), period)
  7. +ExpAverage(ExpAverage(ExpAverage(price, period)
  8. , period), period);
  9. def TMA2 = 3 * ExpAverage(TMA1, period)
  10. -3 * ExpAverage(ExpAverage(TMA1, period), period)
  11. +ExpAverage(ExpAverage(ExpAverage(TMA1, period)
  12. , period), period);
  13. def difference = TMA1 - TMA2;
  14. def TypicalPriceZeroLagTEMA = TMA1 + difference;
  15.  
  16. #------Heikin-Ashi Close ZeroLag Triple Exponential Moving Average
  17. rec haopen = CompoundValue(1, ((open[1] + high[1]
  18. +low[1] + close[1]) / 4 + haopen[1]) / 2, hl2);
  19. def haclose = ((open + high + low + close) / 4 + haopen
  20. +Max(high, haopen) + Min(low, haopen)) / 4;
  21. def HATMA1 = 3 * ExpAverage(haclose, period)
  22. -3 * ExpAverage(ExpAverage(haclose, period), period)
  23. +ExpAverage(ExpAverage(ExpAverage(haclose, period)
  24. , period), period);
  25. def HATMA2 = 3 * ExpAverage(HATMA1, period)
  26. -3 * ExpAverage(ExpAverage(HATMA1, period), period)
  27. +ExpAverage(ExpAverage(ExpAverage(HATMA1, period)
  28. , period), period);
  29. def HAdifference = HATMA1 - HATMA2;
  30. def HeikinAshiZeroLagTEMA = HATMA1 + HAdifference;
  31. def buySignal = if TypicalPriceZeroLagTEMA > HeikinAshiZeroLagTEMA and TypicalPriceZeroLagTEMA[1] <= HeikinAshiZeroLagTEMA[1] then 1 else 0;
  32. def sellSignal = if TypicalPriceZeroLagTEMA < HeikinAshiZeroLagTEMA and TypicalPriceZeroLagTEMA[1] >= HeikinAshiZeroLagTEMA[1] then 1 else 0;
  33.  
  34. plot zeroline = 0;
  35. plot histogram = TypicalPriceZeroLagTEMA - HeikinAshiZeroLagTEMA;
  36. histogram.AssignValueColor(if histogram >= 0 then if histogram > histogram[1] then color.green else color.dark_green else if histogram < histogram[1] then color.red else color.dark_red);
  37. histogram.SetLineWeight(2);
  38. histogram.SetPaintingStrategy(PaintingStrategy.HISTOGRAM);
  39. plot signalsell2 = if sellSignal then zeroline else Double.NaN;
  40. signalSell2.SetDefaultColor( Color.DOWNTICK );
  41. signalSell2.SetLineWeight(3);
  42. signalSell2.SetPaintingStrategy( PaintingStrategy.ARROW_DOWN );
  43. plot signalsell3 = if buySignal then zeroline else Double.NaN;
  44. signalSell3.SetDefaultColor( Color.UPTICK );
  45. signalSell3.SetLineWeight(3);
  46. signalSell3.SetPaintingStrategy( PaintingStrategy.ARROW_UP );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement