Advertisement
cnws02

c.MA multi Tf

Sep 13th, 2022 (edited)
452
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.91 KB | None | 0 0
  1. // ————————————————————
  2. // This source code is free to use/modify to your convenience.
  3. // 3 MA multi timeframes
  4.  
  5. //@version=5
  6. indicator("c.MA multi Tf", "c.MA_multi_tf", overlay=true, precision=0)
  7.  
  8. // ———————————————————— Constants and Inputs {
  9. // ————— Inputs
  10.  
  11. bool ma1_show = input.bool(true, "MA.1", inline="ma1_a")
  12. ma1_type = input.string("EMA", "", ["ALMA", "SMA", "EMA", "DEMA", "TEMA", "TEMA2", "SMMA (RMA)", "WMA", "VWMA", "HMA"], inline="ma1_a")
  13. int ma1_len = input.int(12, "len", minval=1, inline="ma1_a")
  14. string ma1_time = input.timeframe("30", "tframe", inline="ma1_a")
  15.  
  16. bool ma2_show = input.bool(true, "MA.2", inline="ma2_a")
  17. ma2_type = input.string("EMA", "", ["ALMA", "SMA", "EMA", "DEMA", "TEMA", "TEMA2", "SMMA (RMA)", "WMA", "VWMA", "HMA"], inline="ma2_a")
  18. int ma2_len = input.int(12, "len", minval=1, inline="ma2_a")
  19. string ma2_time = input.timeframe("120", "tframe", inline="ma2_a")
  20.  
  21. bool ma3_show = input.bool(true, "MA.3", inline="ma3_a")
  22. ma3_type = input.string("EMA", "", ["ALMA", "SMA", "EMA", "DEMA", "TEMA", "TEMA2", "SMMA (RMA)", "WMA", "VWMA", "HMA"], inline="ma3_a")
  23. int ma3_len = input.int(12, "len", minval=1, inline="ma3_a")
  24. string ma3_time = input.timeframe("240", "tframe", inline="ma3_a")
  25.  
  26. // }
  27.  
  28.  
  29. // ———————————————————— Functions {
  30. // TEMA chartschool version
  31. _tma(src,len) =>
  32. ma1 = ta.ema(src, len)
  33. ma2 = ta.ema(ma1, len)
  34. ma3 = ta.ema(ma2, len)
  35. _tma = (3 * ma1) - (3 * ma2) + ma3
  36.  
  37. // MAs
  38. _ma(src, len, maType) =>
  39. switch maType
  40. "ALMA" => ta.alma(src, len, 0.85, 6)
  41. "SMA" => ta.sma(src, len)
  42. "EMA" => ta.ema(src, len)
  43. "DEMA" => ta.ema(ta.ema(src,len),len)
  44. "TEMA" => ta.ema(ta.ema(ta.ema(src,len),len),len) // TEMA Binance (Trix)
  45. "TEMA2" => _tma(src,len) // TEMA chartschool
  46. "SMMA (RMA)" => ta.rma(src, len)
  47. "WMA" => ta.wma(src, len)
  48. "VWMA" => ta.vwma(src, len)
  49. "HMA" => ta.hma(src,len)
  50.  
  51. //}
  52.  
  53.  
  54. // ———————————————————— Calculations {
  55. ma1_expr = _ma(close, ma1_len, ma1_type)
  56. ma1_sig = request.security(syminfo.tickerid, ma1_time, ma1_expr, barmerge.gaps_on)
  57.  
  58. ma2_expr = _ma(close, ma2_len, ma2_type)
  59. ma2_sig = request.security(syminfo.tickerid, ma2_time, ma2_expr, barmerge.gaps_on)
  60.  
  61. ma3_expr = _ma(close, ma3_len, ma3_type)
  62. ma3_sig = request.security(syminfo.tickerid, ma3_time, ma3_expr, barmerge.gaps_on)
  63.  
  64. // }
  65.  
  66.  
  67. // ———————————————————— Visuals {
  68. plot(ma1_show ? ma1_sig : na, "MA.1", color.new(#ffeb3b, 16), 1)
  69. plot(ma2_show ? ma2_sig : na, "MA.2", color.new(#005cff, 0), 1)
  70. plot(ma3_show ? ma3_sig : na, "MA.3", color.new(#ff1100, 0), 1)
  71.  
  72. // }
  73. // ————————————————————
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement