PineCoders

Absolute Strength Index Oscillator v4

Nov 10th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. //@version=4
  2. study(title="Absolute Strength Index Oscillator", shorttitle="ASI v4")
  3. asi_ebc = input(title="Enable Bar Colors",type=input.bool, defval=true)
  4. asi_ema_len = input(title="ASI EMA Lenght", type=input.integer, defval=25)
  5. asi_sig_len = input(title="ASI Signal Length", type=input.integer, defval=25)
  6. osl=10.
  7. calc_abssio() =>
  8. A=0.
  9. M=0.
  10. D=0.
  11. A:=iff(close>close[1], nz(A[1])+(close/close[1])-1,nz(A[1]))
  12. M:=iff(close==close[1], nz(M[1])+1.0/osl,nz(M[1]))
  13. D:=iff(close<close[1], nz(D[1])+(close[1]/close)-1,nz(D[1]))
  14. iff (D+M/2==0, 1, 1-1/(1+(A+M/2)/(D+M/2)))
  15. abssi=calc_abssio()
  16. abssio = (abssi - ema(abssi,asi_ema_len))
  17. alp=2.0/(asi_sig_len+1)
  18. mt=0.
  19. mt:=alp*abssio+(1-alp)*nz(mt[1])
  20. ut=0.
  21. ut:=alp*mt+(1-alp)*nz(ut[1])
  22. s=0.0
  23. s:=((2-alp)*mt-ut)/(1-alp)
  24. d=abssio-s
  25.  
  26. hline(0, title="ZeroLine")
  27. plot(abssio*55000, color=(abssio > 0 ? abssio >= s ? color.green : color.orange : abssio <=s ? color.red :color.orange), title="ABSSIO", style=plot.style_histogram, linewidth=2)
  28. plot(abssio*55000, color=color.white, title="ABSSIO_Points", linewidth=1)
  29. plot(s*55000, color=color.gray, title="MA")
  30. barcolor(asi_ebc?(abssio > 0 ? abssio >= s ? color.lime : color.orange : abssio <=s ? color.red :color.orange):na)
Add Comment
Please, Sign In to add comment