Lineare Regression und doppelter gleitender Durchschnitt – kurzfristige Strategie


Erstellungsdatum: 2024-01-26 12:33:14 zuletzt geändert: 2024-01-26 12:33:14
Kopie: 0 Klicks: 689
1
konzentrieren Sie sich auf
1617
Anhänger

Lineare Regression und doppelter gleitender Durchschnitt – kurzfristige Strategie

Überblick

Die Strategie ermöglicht die Kurzlinie-Verfolgung durch die Kombination von linearen Regressionsindikatoren und doppelten Index-Moving Averages. Die Strategie basiert darauf, Positionen zu eröffnen, wenn der Preis auf und ab geht, und Positionen zu platzieren, wenn der Preis erneut durchbricht. Die Strategie nutzt auch die doppelten Index-Moving Averages, um die Preisentwicklung zu bestimmen.

Strategieprinzip

Die Strategie beurteilt den Preisbruch hauptsächlich anhand eines linearen Regressionsindikators. Ein linearer Regressionsindikator ist ein Auf- und Abstieg, der anhand des Höchst- und Tiefstpreises eines bestimmten Zeitraums berechnet wird. Wir betrachten es als ein Handelssignal, wenn der Preis unter dem oberen oder unter dem unteren Kurs durchbricht.

Die Strategie führt außerdem dazu ein, dass der BIM-Moving Average einen mittleren Trend beurteilt. Der BIM-Moving Average kann schneller auf Preisänderungen reagieren. Wenn der Preis von der oberen Bahn unterwegs ist und der BIM-Moving Average zu diesem Zeitpunkt bereits oberhalb des Preises liegt, was darauf hindeutet, dass er sich derzeit in einer Abwärtstrend befindet, erstellen wir eine offene Position.

Insbesondere beinhaltet die Strategie folgende Punkte:

  1. Berechnung der linearen Regression auf und ab der Schiene
  2. Berechnung eines zweigezifischen Moving Averages
  3. Ein Short-Position wird eingerichtet, wenn der Preis von oben unterhalb der Bahn durchbricht und der Doppelindex-Moving Average über dem Preis liegt
  4. Wenn der Preis wieder über die Obergrenze oder über dem zweiseitigen Moving Average liegt, wird die Kaufposition ausgeglichen.

Analyse der Stärken

Im Vergleich zu traditionellen Moving Averages und ähnlichen Indikatoren hat diese Strategie folgende Vorteile:

  1. Lineare Regression kann die Preisentwicklung schneller erfassen und wirksam als Lagerungssignal dienen
  2. Der Doppel-Moving-Average ist tendenzsensiver und verhindert False-Breaks
  3. In Kombination mit doppelten Kennzahlen und Konditionen können einige Geräusche ausgelöscht und die Geschäfte stabiler gemacht werden.

Risikoanalyse

Die Strategie birgt auch einige Risiken, die beachtet werden müssen:

  1. Lineare Regression ist parametersensibel, unterschiedliche Zyklen können unterschiedliche Ergebnisse liefern
  2. Der zweigezifische gleitende Durchschnitt kann abweichen und Fehleinschätzungen bewirken.
  3. Breakout-Strategien können das Risiko von Slippoints erhöhen
  4. In der Folge kann es zu häufigen Schließungen kommen.

Für die oben genannten Risiken können wir durch Parameteroptimierung, strenge Stop-Loss-Methoden und angemessene Lockerung der Durchbruchbreite vorgehen.

Optimierungsrichtung

Die Strategie kann auch in folgenden Bereichen optimiert werden:

  1. Optimierung der linearen Regressions- und der Doppelindex-Moving-Average-Perioden, um die optimale Kombination von Parametern zu finden
  2. Hinzufügen von Preisschwankungen, um zu vermeiden, dass ein geringfügiger Preisbruch zu falschen Signalen führt
  3. Zusatzkonditionen wie Erhöhung der Transaktionsmenge, um die Effektivität des Durchbruchs zu gewährleisten
  4. Setzen Sie die Stop-Loss-Ebene, um den Einzelschaden zu verringern
  5. Anpassungsparameter für bestimmte Sorten

Zusammenfassen

Diese Strategie kombiniert die Verwendung von linearen Regressionsindikatoren und binären Index-Moving Averages und hat sowohl theoretische als auch praktische Vorteile. Durch kontinuierliche Optimierung der Anpassung können die Stabilität und die Effektivität der Strategie weiter verbessert werden. Die Strategie ist für den Short-Line-Betrieb geeignet und kann für quantitative Händler eine bessere Alpha bringen.

Strategiequellcode
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy('LR&SSL_Short', overlay=true)
startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0)
end   = timestamp(9999,1,1,0,0)
_testPeriod() => true

len = input(title="Period", defval=89)
smaHigh = linreg(high, len, 0)
smaLow = linreg(low, len, -1)
Hlv = 0.0
Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? smaHigh : smaLow
sslUp = Hlv < 0 ? smaLow : smaHigh

plot(sslDown, linewidth=2, color=color.red)
plot(sslUp, linewidth=2, color=color.lime)



length = input(200, title="DEMA") 
d1 = ema(close, length)                                               
d2 = 2 * d1 - ema(d1, length)                                         
trendColour = d2 > d1 ? #AAFFAA : #FFAAAA 
dema=sma(d2,length) 

turnGreen = d2 > d1 and d2[1] <= d1[1]  
turnRed   = d2 <= d1 and d2[1] > d1[1]  

up =turnGreen 
down=turnRed 
  
plotshape(down, title="down", style=shape.triangledown,location=location.abovebar, color=color.red, transp=0, size=size.small) 
plotshape(up,  title="up", style=shape.triangleup,location=location.belowbar, color=color.green, transp=0, size=size.small) 
plot(dema, color = trendColour,linewidth=3 ,transp = 0)
bgcolor(close > dema ? color.green : color.red)

strategy.entry("short", strategy.short, when= crossunder(sslUp, sslDown) and dema > close and _testPeriod())
strategy.close("short", when = crossover(sslUp, sslDown) or crossover(close, dema))