
Eine EMA-Tracking-Strategie ist eine Trend-Tracking-Strategie, die EMA-Indikatoren verwendet. Die Strategie berechnet die EMA-Werte des Preises und erzeugt ein Handelssignal, um die Preisentwicklung zu beurteilen und ein Handelssignal zu erzeugen.
Der Kern der Strategie ist die EMA. Die EMA steht für den Index Moving Average, ein Trend-Tracking-Indikator. Die EMA berechnet den aktuellen Durchschnittspreis anhand der historischen Preise und der eingestellten Zeitspanne.
Die Strategie berechnet zunächst die 50-Zyklus-EMA-Werte des Preises als Hauptindikator. Dann werden die Auf- und Abgleise in einem bestimmten Verhältnis zu den EMA-Werten festgelegt. Hier wird als negative 0,3% des EMA-Wertes festgelegt. Es wird ein Kaufsignal erzeugt, wenn der Preis die EMA-Bahn überschreitet.
Die EMA verfolgt die Strategie, um die Preisentwicklung anhand der EMA-Indikatoren zu beurteilen und die Handelssignale durch die Einstellung der Bandbreite zu erzeugen. Der Vorteil ist, dass die Regeln einfach und leicht verständlich sind und ein Teil des Lärms vermieden werden kann. Es gibt jedoch auch begrenzte Möglichkeiten zur Anpassung der Parameter, Probleme wie Signalverzögerung, Rückzugskontrolle.
/*backtest
start: 2023-01-17 00:00:00
end: 2024-01-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="PingEMA50V.3 Piw", shorttitle="EMA50 Piw", overlay=true)
// input
src = input(title="Data Array",defval=close)
ema_period = input(title="EMA period", defval=50)
percent = input(title="Band %", type=float,defval=0.003)
// ema
ema50 = ema(src, ema_period)
plot(ema50, color=green)
// upper lower
upper = ema50 + (ema50*percent)
lower = ema50 - (ema50*percent)
plot(upper, color=blue)
plot(lower, color=blue)
// signal
buy = src > upper
sell = src < lower
// bar color
bcolor = buy ? lime : red
barcolor(color=bcolor)
// trade
if (buy)
strategy.entry("long", strategy.long)
if (sell)
strategy.close("long")