Durchbruchsstrategie mit doppelter gleitender Durchschnittsschwingung


Erstellungsdatum: 2024-01-08 14:43:48 zuletzt geändert: 2024-01-08 15:51:13
Kopie: 0 Klicks: 570
1
konzentrieren Sie sich auf
1617
Anhänger

Durchbruchsstrategie mit doppelter gleitender Durchschnittsschwingung

Überblick

Die Doppel-Mittellinien-Schock-Breakout-Strategie ist eine Kurzlinie-Handelsstrategie, die ein Doppel-Mittellinien-System verwendet. Die Strategie basiert auf einem Preiskanal und einem Doppel-Brin-Band, um ein Handelssignal zu erstellen, das durch den schnellen RSI-Indikator überkauft und überverkauft wird, um ein Ein- und Ausgangssignal zu erzeugen. Die Strategie zielt darauf ab, einen Durchbruch der kurzen Kurzlinie-Preistrendenz zu erfassen und zu profitieren.

Strategieprinzip

Die Doppel-Gleichgewichts-Schwingungs-Breakout-Strategie verwendet eine 20-Zyklen-Länge von Preiskanälen und Brin-Bändern als Haupt-Trading-Indikatoren. Die Preiskanäle besteht aus der Mittellinie der Höchst- und Tiefpreise, die den Schwingungsbereich des aktuellen Preises darstellt. Die Brin-Bänder bestehen aus der Achse des Preiskanals und der Standarddifferenz, wobei die bandförmigen Bereiche die Bandbreite der Preise intuitiver beschreiben.

Insbesondere, wenn der schnelle RSI unter 5 ist, wird er als Überverkaufszone betrachtet, wenn der schnelle RSI über 99 ist, wird er als Überkaufszone betrachtet. Darüber hinaus müssen Faktoren wie die Richtung der K-Linie, die Preisinnovation hoch (neu niedrig) und andere Faktoren in Verbindung gebracht werden, um zu vermeiden, dass ein falscher Durchbruch des Kopfes auftritt.

Strategische Vorteile

Der größte Vorteil der Doppel-Mittellinien-Schwingungs-Breakout-Strategie besteht darin, die Wendepunkte der mittleren und kurzen Preistrends zu erfassen und Gewinne zu erzielen. Verglichen mit der Einzellen-Mittellinien- und Kanallinie ist die Doppel-Brinband besser in der Lage, die Preisschwankungen und die Kapazität intuitiv zu reflektieren. Im Gegensatz zu längerperiodischen Indikatoren wie der 20-Tage- und 60-Tage-Mittellinien reagiert sie schneller auf Preisänderungen und hat eine höhere Erfolgsrate bei der Erfassung von Breakouts.

Strategisches Risiko

Zweitens wird der Effekt des schnellen RSI auf die Überkauf-Überverkauf-Beurteilung von der Marktstimmung beeinflusst. Der Einsatz solcher Hilfsindikatoren wird bei strukturellen Marktveränderungen beeinträchtigt. Letztendlich kann die Genauigkeit der Entscheidung in Kombination mit anderen Faktoren wie Kurs, Volumen und Transaktionsmenge verbessert werden.

Die Gegenmaßnahme ist die angemessene Anpassung der Stop-Loss-Werte, die Lockerung der Stop-Loss-Punkte in der Aufwärtsbewegung und die Verschärfung in der Abwärtsbewegung. Darüber hinaus sollten mehr Hilfsindikatoren berücksichtigt werden, um eine alleinige Abhängigkeit von einem oder zwei Indikatoren zu vermeiden.

Richtung der Strategieoptimierung

Es gibt noch Raum für weitere Optimierungen der Dual-Meanline-Shock-Breakout-Strategie: Erstens, Parameteroptimierung: Es können mehr Periodendaten getestet werden, um die optimale Parameterkombination zu finden; Zweitens, Modelloptimierung: Die Einführung von Machine-Learning-Modell-Trainings, um die Überkauf-Überverkauf-Bereich zu beurteilen; Drittens, Zeitrahmensoptimierung: Test unter verschiedenen Zeiträumen, z. B. Sonnenlinie, 60 Minuten, um die besten Einsatzszenarien zu bestimmen; Viertens, Bedingungenoptimierung: Die Hinzufügung von mehr Preisindikatoren, um Filtersignale zu beurteilen, wie z. B. Umsatzverstärkung, Trendindex DMI usw.

Zusammenfassen

Die Doppel-Gleichgewichts-Schwingungs-Breakout-Strategie ist eine effektive Trendverfolgungs-Strategie, die die kurzen Breakouts in den Preisen durch den Aufbau eines Doppel-Breadband-Systems erfasst. Die Strategie hat eine hohe Erfolgsrate, reagiert schnell und kann effektiv profitieren. Die Strategie-Performance kann durch Parameteroptimierung, Modelloptimierung und Zeitrahmenwahl weiter verbessert werden. Die Strategie eignet sich für die quantitative Verbesserung und Anwendung durch erfahrene quantitative Händler.

Strategiequellcode
/*backtest
start: 2023-01-07 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=2
strategy("Noro's Bands Strategy v1.4", shorttitle = "NoroBands str 1.4", 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 ColorBar")
usecb = input(true, "Use CryptoBottom")
usersi = input(true, "Use RSI")
usemm = input(true, "Use min/max")
needbb = input(false, defval = false, title = "Show Bands")
needbg = input(false, defval = false, title = "Show Background")
needlo = input(false, defval = false, title = "Show Locomotive")
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)

//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
hd2 = center + distsma * 2
ld2 = center - distsma * 2

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

//Lines
colo = needbb == false ? na : black
plot(hd2, color = colo, linewidth = 1, transp = 0, title = "High band 2")
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")
plot(ld2, color = colo, linewidth = 1, transp = 0, title = "Low band 2")

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

//Signals
up = trend == 1 and ((close < open or color == false) or close < hd) and (min < min[1] or usemm == false) ? 1 : 0
dn = trend == -1 and ((close > open or color == false) or close > ld) and (max > max[1] or usemm == false) ? 1 : 0 
up2 = close < open and lencb > sma * 3 and min < min[1] and fastrsi < 10 ? 1 : 0 //CryptoBottom
//dn2 = close > open and len > sma * 3 and max > max[1] and fastrsi > 90 ? 1 : 0 //CryptoBottom
up3 = fastrsi < 5 ? 1 : 0
//dn3 = fastrsi > 99 ? 1 : 0

//Locomotive
uploco = trend == 1 and close < open and min < min[1] and close < center ? 1 : 0
plotarrow(needlo == true and uploco == 1 ? 1 : 0, colorup = black, colordown = black, transp = 0)

longCondition = up == 1 or (up2 == 1 and usecb == true) or (up3 == 1 and usersi == 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)