
Die Strategie ist eine langjährige Trend-Tracking-Strategie für Kryptowährungen, die die Konzepte von Moving Averages, Relativ Strong Indicators (RSI) und Marktkorrelation kombiniert. Ziel ist es, die Preisentwicklung der mittleren und langen Linie zu identifizieren, eine Position zu erstellen, die mit dem Trend beginnt, und nach und nach zu erhöhen, bis ein Trendumkehrsignal entdeckt wird.
Die Strategie basiert auf drei Indikatoren:
Relativ starker Indikator ((RSI): Der RSI wird verwendet, um Überkauf-Überverkauf zu erkennen. Wenn der RSI höher als 51 ist, ist dies ein Überkaufsignal, wenn er niedriger als 49 ist, ist dies ein Überverkaufsignal.
Moving Average (SMA): Berechnung eines 9-Tage-Simplemoving Average für die Schlusspreise als Indikator für die Richtung des Trends.
Marktrelevanz: Die Gesamtmarktwert der Kryptowährung wird als Referenzkurs gewählt, die Relevanz der Handelsvariante wird berechnet und die K-Linie der Handelsvariante selbst durch die Relevanz-Kurs ersetzt, um die Effektivität des Handelssignals zu verbessern.
Die spezifischen Regeln für den Handel sind:
Mehrköpfige Eintrittskurse: Eintritt, wenn der RSI über 51 liegt und der Schlusskurs über dem 9-Tage-SMA liegt.
Eintritt mit Leerlauf: Eintritt mit Leerlauf, wenn der RSI unter 49 liegt und der Schlusskurs unter dem 9-Tage-SMA liegt;
Stop-Loss-Prinzip: Mehrkopf-Stop-Loss-Einstellung ist 1%, Stop-Loss-Einstellung ist 0,1%, Hohlkopf-Stop-Loss-Einstellung ist 0,05% und Stop-Loss-Einstellung ist 0,03%
Die Strategie setzt gleichzeitig Zeitbedingungen, die nur für den angegebenen Datumsbereich handeln.
Die Kombination von Trends und Overshopping-Indikatoren ermöglicht eine effektive Verfolgung von mittleren und langen Trends.
Die Nutzung von Marktrelevanz zur Verbesserung der Signalqualität und zur Vermeidung von Irrtümern über falsche Trends in einer einzigen Sorte;
Automatische Stop-Loss-Einstellungen, um eine Vergrößerung der Verluste zu vermeiden;
Die Zeiträume können individuell angepasst werden, um den Marktbedingungen in verschiedenen Phasen gerecht zu werden.
Die Strategie der mittleren und langen Linie ist nicht in der Lage, mit den starken Marktschwankungen der kurzen Linie umzugehen.
Relevante Märkte als Benchmark-Situationen, in denen die Handelsvarianten möglicherweise verzögert sind und nicht in der Lage sind, ihre Verluste rechtzeitig zu stoppen, wenn sich die Benchmark-Situation umdreht;
Es ist leicht, die Umkehrung zu verpassen, wenn man nur zu viel oder nur zu wenig macht.
Gegenmaßnahmen:
Verlustbewältigung kann mit anderen kurzfristigen Indikatoren wie KC, BOLL und anderen kombiniert werden, die die Marktphase bestimmen;
Erhöhung der Analyse von Benchmark-Situationen, um eine zeitnahe Verringerung bei Benchmark-Umschwüngen zu erkennen;
Der Handel mit Zwei-Wege-Sorten, um die Möglichkeiten der Mehrraum-Freiheit zu nutzen.
Parameteroptimierung: Optimierung der RSI-Parameter, der Moving Average-Parameter und der Stop-Loss-Marge, um die Strategie besser an die statistischen Merkmale des Marktes anzupassen.
Optimierung der Transaktionsvarianten: Beurteilung von mehr möglichen Benchmarks und Transaktionsvarianten, um eine Kombination mit höherer Relevanz und besserer Liquidität zu wählen.
Strategie-Kombination: Die Strategie wird in Kombination mit anderen Strategien eingesetzt, um die Richtung der Markttrends in großen Zyklen zu bestimmen.
Die Strategie ist insgesamt eine optimierte, geräumige und anwendbare Strategie zur Beobachtung von Kryptowährungstrends. Sie kombiniert effektiv Trends, Überkäufe und Überverkäufe und Relevanzurteile, um die Qualität der Handelsentscheidungen zu verbessern. Durch die Anpassung der Parameter und die Kombination der Strategien können die Stabilität und die Ertragsrate erheblich verbessert werden.
/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
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/
// © exlux99
//@version=4
strategy(title = "Crypto swing correlation", overlay = true, pyramiding=1,initial_capital = 1, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.03)
//time
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2010, title = "From Year", minval = 1970)
//monday and session
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
useCorrelation = input(true, title="Use Correlation candles?")
symbol = input("BTC_USDT:swap", type=input.symbol)
haClose = useCorrelation ? security(symbol, timeframe.period, close) : close
haOpen = useCorrelation ? security(symbol, timeframe.period, open) : open
haHigh = useCorrelation ? security(symbol, timeframe.period, high) : high
haLow = useCorrelation ? security(symbol, timeframe.period, low) : low
length = input( 50 )
overSold = input( 51 )
overBought = input( 49 )
s = input(title="Source", defval="haClose", options=["haClose", "haOpen", "haHigh", "haLow"])
price = s == "haClose" ? haClose: s == "haOpen" ? haOpen : s == "haHigh" ? haHigh : s == "haLow" ? haLow : na
len = input(8, "Length Moving average", minval=1)
src = price
ma = sma(src, len)
vrsi = rsi(price, length)
long = crossover(vrsi, overSold) and time_cond and price > ma
short = crossunder(vrsi, overBought) and time_cond and price < ma
takeProfit_long=input(1.0, step=0.005)
stopLoss_long=input(0.1, step=0.005)
takeProfit_short=input(0.05, step=0.005)
stopLoss_short=input(0.03, step=0.005)
strategy.entry("long",1,when=long)
strategy.entry("short",0,when=short)
strategy.exit("short_tp/sl", "long", profit=close * takeProfit_long / syminfo.mintick, loss=close * stopLoss_long / syminfo.mintick, comment='LONG EXIT', alert_message = 'closeshort')
strategy.exit("short_tp/sl", "short", profit=close * takeProfit_short / syminfo.mintick, loss=close * stopLoss_short / syminfo.mintick, comment='SHORT EXIT', alert_message = 'closeshort')