
Esta estratégia usa o MACD para construir sinais de negociação de longo prazo, fazendo mais quando o MACD está abaixo de um determinado nível, aproveitando as oportunidades de negociação de reversão.
Quando o indicador MACD está abaixo do sinal SIGNAL e o valor absoluto MACD está abaixo de -0.00025, o sinal de multiplicação é gerado. Após o multiplicação, se a linha MACD atravessar novamente a linha SIGNAL, a posição é neutralizada.
Esta estratégia usa o indicador MACD para detectar intervalos de oversold, e, de acordo com a teoria da linha média, existe uma probabilidade de reversão do preço das ações no curto prazo, com base nessa probabilidade, estabelece um sinal de multiplicação.
O risco pode ser reduzido com parâmetros de otimização.
Esta estratégia utiliza o indicador MACD para determinar a probabilidade de reversão da formação de um intervalo de oversold para estabelecer um sinal de multiplicação e lucrar com a forma de manter posições de longa linha. Optimiza os parâmetros do MACD e aumenta a confiabilidade do mecanismo de parada. Em geral, usa indicadores e regras mais simples para construir uma estratégia de quantificação fácil de entender e implementar.
//@version=3
strategy(title="MACD - EURUSD", shorttitle="MACD EURUSD")
// Getting inputs
fast_length = input(title="Fast Length", defval=12)
slow_length = input(title="Slow Length", defval=26)
src = input(title="Source", defval=close)
signal_length = input(title="Signal Smoothing", minval = 1, maxval = 50, defval =9)
sma_source = input(title="Simple MA(Oscillator)", type=bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=bool, defval=false)
// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00
// 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
plot(hist, title="Histogram", 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", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
longCond = crossover(macd, signal) and macd < -0.00025
exitLong = crossover(macd, hist)
strategy.entry("long", strategy.long, when=longCond==true)
strategy.close("long", when=exitLong==true)