xmd79

Wave Trend

Dec 4th, 2022
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
  2. // © jonico
  3.  
  4. //@version=5
  5. indicator('Wave Trend', shorttitle='WT')
  6.  
  7. // Input
  8. src = input(title='Source', defval=hlc3)
  9. chanlen = input.int(10, title='Channel Length', minval=1)
  10. avglen = input.int(21, title='Average Length', minval=1)
  11. smoothing = input.int(4, title='Signal Smoothing', minval=0)
  12.  
  13. obupper = input(60, title='Over Bought Upper')
  14. oblower = input(53, title='Over Bought Lower')
  15. osupper = input(-53, title='Over Sold Upper')
  16. oslower = input(-60, title='Over Sold Lower')
  17.  
  18. bullColor = #2e8b57
  19. bearColor = #cd5c5c
  20. normalColor = #BBBBBB
  21.  
  22. // Calculation
  23. srcEMA = ta.ema(src, chanlen)
  24. diff = math.abs(src - srcEMA)
  25. diffEMA = ta.ema(diff, chanlen)
  26. CI = (src - srcEMA) / (0.015 * diffEMA)
  27.  
  28. Fast = ta.ema(CI, avglen)
  29. Slow = ta.sma(Fast, smoothing)
  30.  
  31. // Plot
  32. cc = Fast > Slow ? bullColor : Fast < Slow ? bearColor : normalColor
  33.  
  34. plot(Fast, title='Wave Trend', color=cc, linewidth=2)
  35. plot(Slow, title='Signal Line', color=color.new(color.silver, 40))
  36.  
  37. plot(0, title='zero line', color=color.new(color.white, 80), style=plot.style_cross)
  38.  
  39. obLine1 = plot(obupper, display=display.none, editable=false)
  40. obLine2 = plot(oblower, display=display.none, editable=false)
  41. fill(obLine1, obLine2, title='Over Bought band', color=color.new(color.red, 90))
  42.  
  43. osLine1 = plot(osupper, display=display.none, editable=false)
  44. osLine2 = plot(oslower, display=display.none, editable=false)
  45. fill(osLine1, osLine2, title='Over Sold band', color=color.new(color.blue, 90))
  46.  
  47.  
Advertisement
Add Comment
Please, Sign In to add comment