- Quadrat
- Strategie der gleitenden Durchschnittsdifferenz mit null Kreuz
Strategie der gleitenden Durchschnittsdifferenz mit null Kreuz
Schriftsteller:
ChaoZhang, Datum: 2024-01-26 15:45:03
Tags:
Übersicht
Strategieprinzip
- Berechnen Sie den exponentiellen gleitenden 8-Zeitrahmen-EMA und den niedrigsten gleitenden Durchschnitt der letzten 8 Tage
- Berechnen Sie die Differenz zwischen dem Preis und dem aktuellen gleitenden Durchschnitt
- Wenn Diff unter 0 liegt, ist es ein Bärensignal, wenn Diff über 0 geht, ist es ein Tiefdivergenzsignal, was auf Aufwärtsbewegung hinweist.
- Kombinieren Sie den numerischen Wert von Diff, um den maximalen Rückgang in der letzten Woche zu vergleichen, um Handelssignale zu generieren
Analyse der Vorteile
- Die Verwendung des doppelten gleitenden Durchschnittssystems kann falsche Durchbrüche effektiv filtern
- Anwendung der Mindestpreistheorie zur Erkennung von Tiefstsignal
- Numerischer Vergleich zur Beurteilung von überverkauften und übergekauften Konditionen, Vermeidung der Verfolgung von Höchstständen und Abbau von Tiefständen
Risikoanalyse
- Die Strategie der doppelten gleitenden Durchschnittswerte ist anfällig für Whipsaw-Effekte
- Notwendigkeit, dem Problem der übermäßigen Handelsfrequenz Aufmerksamkeit zu schenken
- Eine angemessene Einstellung der gleitenden Durchschnittsparameter ist von entscheidender Bedeutung
Optimierungsrichtlinien
- Anpassung der Periodenparameter des gleitenden Durchschnitts an verschiedene Zyklen
- Erhöhen Sie die Lautstärken, um falsche Durchbruchsignale zu filtern.
- Kombination des Stochastischen Indikators, um Überverkauf und Überkauf zu vermeiden
Zusammenfassung
/*backtest
start: 2023-01-19 00:00:00
end: 2024-01-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title = "Estratégia diferença menor preço de 8")
// Configuração da Média Móvel
emaPeriod = 8
ema= ema(close, emaPeriod)
ema1= ema(close[1], emaPeriod)
lowestEMA = lowest(ema, 8)
// Calcula a diferença entre o preço e a média móvel
diff = close - ema
diff1 = close[1] - ema1
diffLow = ema - lowestEMA
//Condições
diffZero = diff < 0
diffUnder = diff < diffLow
diffUm = diff > 0
Low0 = diffLow == 0
// Sinais de entrada
buy_signal = diffUnder and crossover(diff, diff1)
sell_signal = diffUm and diffUnder and crossunder(diff, diff1)
// Executa as operações de compra/venda
if buy_signal
strategy.entry("Buy", strategy.long)
if sell_signal
strategy.exit("Buy")
// Plota as linhas
plot(0, title="Linha Zero", color=color.gray)
plot(diff, title="Diferença", color=color.blue, linewidth=2)
plot(diffLow, title="Diferença", color=color.red, linewidth=2)
Mehr