
Noro’s Value-Channel-Strategie v1.1 ist eine Trend-Trading-Strategie, die auf der Richtung des Value-Channel und der Preisänderung basiert. Die Strategie kombiniert den Value-Channel-Indikator und den schnellen RSI-Indikator, um K-Linien-Form-Signale zu identifizieren, die den Value-Channel durchbrechen, und kombiniert die Farbe-Umkehrsignale der aufeinanderfolgenden rot-grünen K-Linien, um eine Überschwellenposition zu erstellen. Die Strategie zielt darauf ab, die Richtung der mittleren Langstrecken-Trends zu erfassen, um nicht von den kurzfristigen Schwankungen des Marktes abgelenkt zu werden.
Die Strategie berechnet zunächst die Mittelwerte der Höchst- und Tiefstpreise in den vergangenen Zeiträumen, um einen mittleren Wertkanal zu erstellen. Wenn der Preis aus der unteren Richtung des Kanals den Kanal durchbricht, wird dies als Mehrkopfsignal betrachtet; wenn der Preis aus der oberen Richtung des Kanals den Kanal durchbricht, wird dies als Hohlkopfsignal betrachtet.
Gleichzeitig kombiniert die Strategie zwei Hilfsurteile: den schnellen RSI-Indikator und die Farbe der K-Linie. Wenn der schnellen RSI unter 25% liegt, wird er als überkauft angesehen, und der Preis kann rückgängig werden.
Durch die Kombination dieser drei Signalindikatoren kann die Strategie die mittlere und die lange Linie effektiv identifizieren und rechtzeitig Positionen aufbauen. Die Position wird als Trendwechsel angesehen, wenn die Richtung der Position der aktuellen K-Linie widerspricht. Die aktuelle Position wird ausgeglichen.
Der größte Vorteil dieser Strategie besteht darin, die Richtung von Trends anhand von mehreren Indikatoren zu bestimmen, um nicht von kurzfristigen Marktgeräuschen verwirrt zu werden. Insbesondere gibt es folgende Vorteile:
Der Wertkanal-Indikator kann die Richtung und Stärke eines langen Trendstrends eindeutig identifizieren. Wenn der Preis den Kanal überschreitet, bedeutet dies, dass der Trend in eine neue Phase eintritt und ein stärkeres Signal erzeugt.
Der schnelle RSI-Indikator kann überkaufte und überverkaufte Trends erkennen und verhindert, dass Trends an den Wendepunkten verfolgt werden. Zum Beispiel wird bei Überverkauf gekauft und bei Überverkauf verkauft.
K-Linien-Farbe-Bestimmen kann die Kontinuität des Trends weiter verifizieren und schließt die aktuelle Position, wenn sich die Farbe ändert.
Diese Strategie wird nur eingesetzt, wenn zwei gleichfarbige K-Linien in Folge durch die Kanäle gehen, um nicht von kurzfristigen Erschütterungen irregeführt zu werden.
Die durchschnittliche Stop-Loss-Methode ist einfach und wirksam, indem Sie die Position schließen, sobald sich die Farbe der K-Linie ändert, um die Verluste so weit wie möglich zu vermeiden.
Die Strategie birgt auch einige Risiken, die zu beachten sind:
Die Parameter des Wertkanals sind falsch eingestellt, der Kanal ist zu breit oder zu eng, die Trendwechselpunkte werden verpasst oder zu viele falsche Signale erzeugt.
Der schnelle RSI-Parameter ist falsch eingestellt und kann den Überkauf und den Überverkauf nicht genau bestimmen, wodurch eine Umkehrmöglichkeit verpasst wird.
Die durchschnittliche Stop-Loss-Methode kann bei schwankenden Trends zu empfindlich sein, was zu häufigen Auslösern der Positionen führt.
Es ist unmöglich zu beurteilen, wie sich die Geschäftstätigkeit nach dem Durchbruch des Value Channels entwickeln wird, was zu einer Vergrößerung der Verluste führen kann.
Es ist nicht möglich, den unerwarteten Einfluss des Schwarzen Schwan-Vorfalls zu überwinden, und die Verluste werden enorm sein.
Die wichtigsten Optimierungsmöglichkeiten der Strategie sind:
Dynamische Anpassung der Parameter des Wertschöpfungskanals, damit der Kanal besser an die Schwankungen verschiedener Zyklen und Märkte angepasst werden kann.
In Kombination mit der Volatilitätsindikator-Modifizierung des RSI-Parameters reduziert die Sensitivität bei starken Schwankungen und erhöht die Sensitivität bei niedrigen Schwankungen.
Die Einführung eines mobilen Stop-Mechanismus, der die Stop-Position entsprechend der Trendschwankungen festlegt, um zu empfindliche Stopps zu vermeiden.
Erhöhung der Beurteilung der Durchbruchstärke und der Rückenrücken, um falsche Durchbrüche zu vermeiden.
In Kombination mit historischen Daten wird ein Trainingsmodell entwickelt, um die Erfolgsrate von Positionseröffnungen zu erhöhen.
Optimierung der Strategie zur Positionsverwaltung und Anpassung des Positionsanteils an die dynamische Risikostellung.
Noro’s Value-Channel-Strategie v1.1 ist insgesamt eine einfache und praktische Trend-Tracking-Strategie. Sie kombiniert mehrere Indikatoren, um die Richtung der mittleren und langen Trendlinie zu identifizieren, und setzt eher vorsichtige Regeln für die Positionöffnung. Es gibt noch Raum für weitere Verbesserungen bei der Optimierung von Stop-Loss-Mechanismen, dynamischen Anpassungsparametern usw. Die Gesamtkonzeption der Strategie ist jedoch klar und praktisch anwendbar und eignet sich hervorragend als eine der Einstiegsstrategien für den Quantifizierungshandel.
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=2
strategy(title = "Noro's Price Channel Strategy v1.1", shorttitle = "Price Channel str 1.1", 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")
usecol = input(true, defval = true, title = "Use color strategy")
usersi = input(true, defval = true, title = "Use RSI strategy")
lev = input(1, defval = 1, minval = 1, maxval = 100, title = "leverage")
pch = input(30, defval = 30, minval = 2, maxval = 200, title = "Price Channel")
showcl = input(true, defval = true, title = "Show center-line")
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")
src = close
//Price channel
lasthigh = highest(src, pch)
lastlow = lowest(src, pch)
center = (lasthigh + lastlow) / 2
trend = low > center ? 1 : high < center ? -1 : trend[1]
col = showcl ? blue : na
plot(center, color = col, linewidth = 2)
//Bars
bar = close > open ? 1 : close < open ? -1 : 0
rbars = sma(bar, 2) == -1
gbars = sma(bar, 2) == 1
//Fast RSI
fastup = rma(max(change(src), 0), 2)
fastdown = rma(-min(change(src), 0), 2)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))
//Signals
body = abs(close - open)
abody = sma(body, 10)
up1 = rbars and close > center and usecol
dn1 = gbars and close < center and usecol
up2 = fastrsi < 25 and close > center and usersi
dn2 = fastrsi > 75 and close < center and usersi
exit = (((strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open)) and body > abody / 2)
lot = strategy.equity / close * lev
//Trading
if up1 or up2
if strategy.position_size < 0
strategy.close_all()
strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if dn1 or dn2
if strategy.position_size > 0
strategy.close_all()
strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
strategy.close_all()