Die Linear Regression Channel Strategie ist eine kurzfristige Handelsstrategie, die auf einer linearen Regressionsanalyse und gleitenden Durchschnittsindikatoren basiert.
Die Strategie des linearen Regressionskanals stützt sich hauptsächlich auf zwei Indikatoren:
Lineare Regressionskanal: Der durch lineare Regressionsanalyse berechnete Kanalbereich. Die Strategie legt eine 55-tägige lineare Regressionslinie fest, um den langfristigen Preistrend darzustellen. Gleichzeitig berechnet sie die obere Grenze des Kanals, die den höheren Temperaturbereich der Preise darstellt.
Hull Moving Average: Ein 400-Tage-Trend-Tracking-Indikator ähnlich einem gleitenden Durchschnitt wird zur Bestimmung des allgemeinen Kurstrends und der Kursrichtung verwendet.
Die spezifische Handelslogik lautet:
Wenn der Preis unterhalb der oberen Grenze des Kanals und unterhalb des 400-Tage-Hull- gleitenden Durchschnitts liegt, gehen Sie lang; wenn der Preis wieder über den mittleren Punkt der linearen Regression steigt, schließen Sie die Position, um Gewinne zu erzielen.
Dies ermöglicht es Ihnen, Tiefststände während der Konsolidierung zu kaufen und einen Gewinn zu erzielen, wenn die Preise wieder in den Aufwärtstrend-Kanal gelangen.
Diese Strategie hat folgende Vorteile:
Der lineare Regressionskanal kann die Preiswärme und die langfristige Trendrichtung genauer beurteilen und blinde Eintritte in unruhige Märkte vermeiden.
Der gleitende Durchschnitt von Hull filtert kurzfristige Marktgeräusche aus und macht den Eintrittszeitplan klarer.
Die Strategie hat eine relativ geringe Operationsfrequenz und ein geringeres Risiko für Abzüge.
Die Gewinnpunkte sind klar, und in mittelfristigen und kurzfristigen Trends lassen sich oft gute Renditen erzielen.
Die Strategie des linearen Regressionskanals birgt auch einige Risiken:
In einem Bullenmarkt kann sich der lineare Regressionskanal flach machen oder leicht abnehmen und Kaufmöglichkeiten verpassen.
Im Falle einer großen Umkehrung, die durch ein unerwartetes Ereignis verursacht wird, kann der Stop-Loss getroffen werden, wodurch ein großer Verlust entsteht.
Wenn der Pullback zu tief geht und die Hull-MA-Linie bricht, kann es nicht möglich sein, einen Gewinn beim Ausgang zu erzielen.
Die Handelsfrequenz kann zu niedrig sein, um die Handelsfrequenz zu erhöhen.
Die Strategie des linearen Regressionskanals kann in folgenden Aspekten optimiert werden:
Dynamische Anpassung der linearen Regressionskanalparameter, um den Kanal näher an die tatsächlichen Preisschwankungen zu bringen.
Optimierung der Hull-MA-Parameter zur besseren Bestimmung von Trendumkehrpunkten.
Stellen Sie hinterläufige Stop-Loss-Punkte innerhalb des Kanals fest, um das Risiko eines einzelnen Verlustes effektiv zu kontrollieren.
Hinzufügen von Volatilitätsindikatoren zur Vermeidung der Eröffnung von Positionen auf volatilen Märkten.
Kombinieren Sie Handelsvolumenindikatoren, um echte Breakouts zu ermitteln.
Insgesamt ist die Linear Regression Channel-Strategie eine relativ robuste Trendfolgestrategie. Sie vermeidet Marktlärm und geht in die richtige Richtung, wenn Trends beginnen. Durch die Optimierung von Parametern und die Kombination von Indikatoren können Handelsrisiken weiter reduziert und die Rentabilität verbessert werden. Diese Strategie eignet sich für mittelfristige bis langfristige Holdings ohne die Notwendigkeit eines häufigen Handels. Im Allgemeinen hat sie einen starken praktischen Wert für den Live-Handel.
/*backtest start: 2023-01-10 00:00:00 end: 2024-01-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © TradingAmmo //@version=4 strategy("Linear Channel", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.075, currency='USD') startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0) end = timestamp(input(9999, "End Year"), 1, 1, 0, 0) _testPeriod() => true //linreg length = input(55) linreg = linreg(close, length, 0) plot(linreg, color=color.white) //calc band Value = input(-2) sub = (Value/100)+1 Band2 = linreg*sub plot(Band2, color=color.red) //HMA as a filter HMA = input(400, minval=1) plot(hma(close, HMA), color=color.purple) long_condition = close < Band2 and hma(close, HMA) < close and _testPeriod() strategy.entry('BUY', strategy.long, when=long_condition) short_condition = close > linreg strategy.close('BUY', when=short_condition)