Noro Bands Trend nach der Strategie

Schriftsteller:ChaoZhang, Datum: 2023-09-18 13:57:31
Tags:

Übersicht

Diese Strategie verwendet benutzerdefinierten Noro Bands Indikator, um die Trendrichtung zu bestimmen und erzeugt Handelssignale basierend auf spezifischen Regeln.

Strategie Logik

  1. Berechnen Sie die Noro-Bänder, bestimmen Sie die jüngsten Höchst- und Tiefwerte je nach Benutzerperiode und berechnen Sie die Mittel- und Ober-/Unterbänder.

  2. Bestimmung der Trendrichtung. Preis über dem oberen Band ist Aufwärtstrend. Preis unter dem unteren Band ist Abwärtstrend.

  3. Sie erzeugen Signale. Sie kaufen Signale, wenn der Preis im Aufwärtstrend unter den unteren Bereich fällt. Sie verkaufen Signale, wenn der Preis im Abwärtstrend über den oberen Bereich fällt.

  4. Integrieren Sie CryptoBottom. Fügen Sie Kaufmöglichkeiten hinzu, wenn CryptoBottom Signal auftritt.

  5. Die Nutzer können wählen, ob sie nur lang oder kurz handeln möchten.

  6. Noro-Bands können Bandplotting zeigen oder verstecken.

Vorteile

  1. Noro-Bänder bestimmen effektiv die Trendrichtung.

  2. Die Kombination von Bandbreakout verhindert falsche Breakout-Signale.

  3. CryptoBottom verbessert die Qualität der Kaufsignale.

  4. Anpassbar für nur lange oder kurze Trades.

  5. Einstellbare Parameter passen zu unterschiedlichen Zeitrahmen.

Risiken

  1. Falsche Parameter können zu Fehlern bei der Berechnung des Bandes führen.

  2. Die Breakout-Signale haben Verzögerungen.

  3. CryptoBottom ist nicht ganz zuverlässig.

  4. Wenn man nur mit einer Seite handelt, kann man Chancen verpassen.

  • Das Risiko 1 kann durch Parameteroptimierung gelöst werden.

  • Risiko 2 kann durch Kombination anderer Indikatoren verbessert werden.

  • Risiko 3 erfordert eine Validierung der CryptoBottom-Leistung.

  • Risiko 4 muss die Rentabilität eines einseitigen Handels beurteilen.

Möglichkeiten zur Verbesserung

  1. Einfluss der Testparameter auf die Noro-Bänder.

  2. Beurteilen Sie andere Ausbruchindikatoren anstelle von Noro-Bändern.

  3. Bewertung der Stop-Loss-Strategien.

  4. Testen Sie die Wirksamkeit von nur langen oder kurzen Trades.

  5. Optimieren Sie die Parameter für CryptoBottom.

Schlussfolgerung

Diese Strategie verwendet Noro Bands, um Trend- und Breakout-Signale zu Zeit-Einträgen zu bestimmen.


/*backtest
start: 2023-09-10 00:00:00
end: 2023-09-17 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=2
strategy("Noro's Bands Strategy v1.2", shorttitle = "NoroBands str 1.2", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period")
color = input(true, "Use Color or bar")
usecb = input(true, "Use CryptoBottom")
needbb = input(true, defval = false, title = "Show Bands")
needbg = input(true, defval = false, title = "Show Background")
src = close

//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))

//CryptoBottom
mac = sma(close, 10)
lencb = abs(close - mac)
sma = sma(lencb, 100)
max = max(open, close)
min = min(open, close)
//dn = close > open and len > sma * 3 and max > max[1] and fastrsi > 90 ? 1 : 0

//PriceChannel
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2

//dist
dist = abs(src - center)
distsma = sma(dist, len)
hd = center + distsma
ld = center - distsma

//Trend
trend = close < ld and high < hd ? -1 : close > hd and low > ld ? 1 : trend[1]

//Lines
colo = needbb == false ? na : black
plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band")
plot(center, color = colo, linewidth = 1, transp = 0, title = "center")
plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band")

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 90)

//Signals
up = trend == 1 and ((close < open or color == false) or close < hd) ? 1 : 0
dn = trend == -1 and ((close > open or color == false) or close > ld) ? 1 : 0 
up2 = close < open and lencb > sma * 3 and min < min[1] and fastrsi < 10 ? 1 : 0 //CryptoBottom

longCondition = up == 1 or (up2 == 1 and usecb == true)
if (longCondition)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)

Mehr