MACD

MACD


//@version=4

study(title="MACD", shorttitle="MACD")


// Getting inputs

fast_length = input(title="Fast Length", type=input.integer, defval=12)

slow_length = input(title="Slow Length", type=input.integer, defval=26)

src = input(title="Source", type=input.source, defval=close)

signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)

sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false)

sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false)


// Plot colors

col_grow_above = #26A69A

col_grow_below = #FFCDD2

col_fall_above = #B2DFDB

col_fall_below = #EF5350



// Calculating

fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)

slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)

macd = fast_ma - slow_ma

signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)

//hist = macd - signal


col_macd = macd>0? color.gray:color.red

col_signal = #0000FF



//plot(hist, title="Histogram", style=plot.style_columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )

plot(macd, title="MACD",style=plot.style_columns, color=col_macd, transp=0)

plot(signal, title="Signal", color=col_signal, transp=0)





Report Page