Noro
Die wichtigsten Aspekte sind:
Der Preiskanal bestimmt den Gesamttrend. Der durch Rückblick auf Hoch/Tief gebildete Kanal definiert Auf/Abtrend.
Der RSI zeigt Überkauf/Überverkauf für den Eintrittszeitpunkt an. RSI über 60 ist Überkauf, unter 40 ist Überverkaufszone.
Der Körperfilter liefert das letzte Signal und handelt nur, wenn der Kerzenkörper eine Schwelle überschreitet, um Lärm zu vermeiden.
Eintritte, die auf der Kombination von Trend, RSI-Signal und Body-Filter basieren.
Optionale Hintergrundfarben veranschaulichen den Trend.
Anpassungsfähige Handelszeitrahmen für den selektiven Handel.
Mehrere Indikatoren richten sich aus, um einen relativ stabilen Trend zu erzeugen.
Die wichtigsten Vorteile sind:
Der Preiskanal identifiziert intuitiv die allgemeine Trendrichtung.
Der RSI erkennt effektiv Überkauf-/Überverkaufsniveaus für den Timing-Eintrag.
Der Körperfilter verbessert die Signalqualität und verhindert falsche Signale.
Mehrfach-Indikator-Bestätigung verbessert die Genauigkeit.
Einfache Indikatoren verringern die Risiken einer Kurvenanpassung.
Anpassbare Handelszeitrahmen erhöhen die Flexibilität.
Einfach zu bedienen, mit minimalen Parametern.
Hintergrundfarben machen das Bild deutlich.
Einige Risiken zu berücksichtigen:
Risiko einer falschen Identifizierung des Preiskanaltrends.
Ungenaue RSI-Signalrisiken.
Körperfilter eliminiert gültige Signale.
Abzugsrisiko bei Trendkorrekturen.
Optimierungsrisiko durch schlechte Parameteranpassung.
Risikopositionsgrößerung durch Standard-Vollzuweisung.
Das Risiko der Auswahl des Instruments, wenn es auf nicht-trendige Vermögenswerte angewendet wird.
Handelszeitrahmenrisiken bei unsachgemäßer Konfiguration.
Einige Verbesserungsmöglichkeiten:
Hinzufügen einer Stop-Loss-Strategie, um Verluste pro Handel zu kontrollieren.
Optimierung der Parameter basierend auf dem Instrumentenverhalten.
Einbeziehung von Positionsgrößen auf der Grundlage der Trendstärke.
Einführung von Anziehungsbeschränkungen, um Verluste einzudämmen.
Zusätzliche Volumenpreisanalyse zur Signalüberprüfung.
Einführung von maschinellem Lernen zur Optimierung von Parametern.
Spezialisierte Parameter auf Basis der Anlageklasse.
Verfeinern Sie die Handelszeitframe-Logik für mehr Flexibilität.
Noro
/*backtest start: 2023-08-25 00:00:00 end: 2023-09-24 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy(title = "Noro's TrendMaster Strategy v1.0", shorttitle = "TrendMaster str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "long") needshort = input(true, defval = true, title = "short") len = input(21, defval = 20, minval = 2, maxval = 200, title = "MA Period") needbg = input(false, defval = false, title = "Need trend Background?") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //PriceChannel 1 lasthigh = highest(close, len) lastlow = lowest(close, len) center = (lasthigh + lastlow) / 2 //Trend trend = low > center and low[1] > center[1] ? 1 : high < center and high[1] < center[1] ? -1 : trend[1] //Bars bar = close > open ? 1 : close < open ? -1 : 0 //Fast RSI fastup = rma(max(change(close), 0), 2) fastdown = rma(-min(change(close), 0), 2) rsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown)) //Body filter nbody = abs(close - open) abody = sma(nbody, 10) body = nbody > abody / 2 //Signals up1 = trend == 1 and rsi < 60 and (strategy.position_avg_price > close or strategy.position_size <= 0) and body dn1 = trend == -1 and rsi > 40 and (strategy.position_avg_price < close or strategy.position_size >= 0) and body //Lines plot(center, color = blue, linewidth = 3, transp = 0, title = "MA") //Background col = needbg == false ? na : trend == 1 ? lime : red bgcolor(col, transp = 80) //Trading if up1 strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) if dn1 strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) if time > timestamp(toyear, tomonth, today, 23, 59) strategy.close_all()