
Die MACD Valley Detector Strategie ist eine Handelsstrategie, die auf dem MACD-Indikator basiert. Die Strategie erzeugt ein Kaufsignal, indem sie den Tiefpunkt des MACD-Indikators erkennt. Wenn der MACD-Indikator einen Tiefpunkt bildet und der MACD-Wert kleiner als -0,4 ist und die Differenz zwischen dem MACD und seiner Signallinie kleiner als 0 ist, gibt die Strategie ein Kaufsignal aus und setzt gleichzeitig einen Stop-Preis.
Der MACD Valley Detector ist eine Strategie, die den MACD-Indikator nutzt, um potenzielle Wendechancen zu erfassen. Der MACD-Indikator wird durch die Differenz zwischen den beiden Indikatoren, den Moving Average (EMA), berechnet, um die Dynamik der Preise zu reflektieren. Wenn der MACD-Indikator einen Talboden bildet, zeigt dies an, dass die Abwärtsbewegung der Preise möglicherweise nachlässt und eine Wende möglich ist.
Die Strategie verwendet die folgenden Bedingungen, um den MACD-Boden zu bestimmen:
Wenn die oben genannten Bedingungen gleichzeitig erfüllt werden, wird die Strategie als MACD-Talboden angesehen und ein Kaufsignal ausgesendet. Gleichzeitig wird ein fester Stop-Price festgelegt, d.h. der Kaufpreis plus ein fester Preisdifferenz ((takeProfitValue)).
Die Strategie verwendet mehrere Bedingungen, um ein Signal zu bestätigen, und setzt einen festen Stop-Price. Obwohl die Strategie einige Vorteile hat, wie die Verwendung eines weit verbreiteten MACD-Indikators und eine mehrfache Bedingung, gibt es einige Risiken und Einschränkungen, wie Lagerung, feste Parameter, fehlende eindeutige Stop-Losses usw. Um die Strategie zu verbessern, kann man die Einführung von dynamischen Stop-Losses, Parameter-Optimierung in Kombination mit anderen Indikatoren und dynamischen Stop-Losses in Betracht ziehen.
/*backtest
start: 2024-03-12 00:00:00
end: 2024-04-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © freditansari
//@version=5
//@version=5
strategy("MACD Valley Detector", overlay=true)
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)
MACD = ta.ema(close, fastLength) - ta.ema(close, slowlength)
aMACD = ta.ema(MACD, MACDLength)
delta = MACD - aMACD
rsi = ta.rsi(close, 14)
atr = ta.atr(14)
qty=1
takeProfitValue =7
// stopLossValue = 1
// close[0] < close[1] and close[1] > close[2]
is_valley= delta[0] > delta[1] and delta[1]<delta[2]? 1:0
// plot(is_valley , "valley?")
if(is_valley==1 and MACD<=-0.4 and delta <0)
takeProfit = close +takeProfitValue
action = "buy"
// strategy.entry("long", strategy.long, qty=qty)
// // strategy.exit("exit", "long", stop=stopLoss, limit=takeProfit)
// strategy.exit("exit", "long", limit=takeProfit)
alert('{"TICKER":"'+syminfo.ticker+'","ACTION":"'+action+'","PRICE":"'+str.tostring(close)+'","TAKEPROFIT":"'+str.tostring(takeProfit)+'","QTY":"'+str.tostring(qty)+'"}')
if (ta.crossover(delta, 0))
stopLoss = low -0.3
takeProfit = high +0.3
strategy.entry("MacdLE", strategy.long,qty=qty, comment="MacdLE")
strategy.exit("exit long", "MacdLE", limit=takeProfit)
// strategy.exit("exit long", "MacdLE", stop=stopLoss, limit=takeProfit)
if (ta.crossunder(delta, 0))
stopLoss = high + 0.3
takeProfit = low - 0.3
strategy.entry("MacdSE", strategy.short,qty=qty, comment="MacdSE")
strategy.exit("exit long", "MacdLE", limit=takeProfit)
// strategy.exit("exit short", "MacdSE", stop=stopLoss, limit=takeProfit)
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)