Trendfolgestrategie basierend auf Preiskanälen


Erstellungsdatum: 2024-01-08 11:05:11 zuletzt geändert: 2024-01-08 11:05:11
Kopie: 1 Klicks: 397
1
konzentrieren Sie sich auf
1237
Anhänger

Trendfolgestrategie basierend auf Preiskanälen

Überblick

Die Strategie ist eine Trendverfolgungsstrategie, die auf dem Preiskanalprinzip basiert. Sie bildet einen Preiskanal durch Berechnung der Höchst- und Tiefstpreise innerhalb eines bestimmten historischen Zeitraums und verfolgt die Preisentwicklung mit Hilfe der Kanalgrenzen als Kauf- und Verkaufssignale.

Strategieprinzip

Die Kernidee der Preiskanalstrategie ist, dass der Aktienpreis bei steigender Tendenz die historischen Höchststände überschreitet und bei absteigender Tendenz die historischen Tiefststände. Daher können Preiskanäle basierend auf den Höchst- und Tiefstpreisen innerhalb eines bestimmten historischen Zeitraums (z. B. 21 Tage) erstellt werden, wobei die Kanäle als Kauf- und Verkaufssignale entlang und entlang der Kanäle dienen.

Insbesondere erzeugt die Strategie ein Kaufsignal, wenn der Tagesabschlusspreis höher als der Tagesabschlusspreis der letzten 21 Tage ist (das heißt, die Kanalobergrenze), und ein Verkaufssignal, wenn der Tagesabschlusspreis niedriger als der Tagesabschlusspreis der letzten 21 Tage ist (das heißt, die Kanalobergrenze).

Darüber hinaus prüft die Strategie, ob es eine Lücke gibt, um die Möglichkeit einer Trendwende zu beurteilen. Wenn es eine nach unten verlaufende Lücke gibt, wird der Preiskanal als Risikovorkehrung auf Rot gesetzt; wenn es eine nach oben verlaufende Lücke gibt, wird es auf Grün gesetzt.

Analyse der Stärken

Die wichtigsten Vorteile einer Preiskanalstrategie sind:

  1. Die Strategie ist einfach, verständlich und umsetzbar.
  2. Aktienpreistrends können wirksam identifiziert und zeitnah verfolgt werden
  3. Durch Durchbruchkäufe und Durchbruchverkäufe können die Anzahl der Transaktionen reduziert und die Transaktionskosten gesenkt werden.
  4. Die Einrichtung eines Preiskanals kann als Schadenstopp dienen
  5. Überprüfen Sie die Lücke, um eine Trendwende zu erkennen.

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Das ist eine sehr schwierige Aufgabe, denn es ist nicht einfach, die Kosten für die Produktion zu bestimmen, sondern es ist einfach, die Kosten für die Produktion zu bestimmen.
  2. Die falsche Einstellung der Preiskanalparameter kann zu zu radikal oder konservativ führen
  3. Durchschnittskauf kann zu Rückschlägen führen, die zu Stop-Loss führen
  4. Einfluss von Aktienpreisfluktuation und -liquidität nicht berücksichtigt
  5. Die Unterschiede zwischen Branchen und individuellen Merkmalen wurden nicht berücksichtigt.

Um diese Risiken zu überwinden, kann man die Optimierung folgender Aspekte in Betracht ziehen:

  1. Vermeidung von Fehlsignalen in Verbindung mit wichtigen technischen Kennzahlen
  2. Hinzufügen von Adaptive-Channel-Parameter-Algorithmen
  3. In Kombination mit einem linearen System, um die Beständigkeit des Trends zu beurteilen
  4. Einstellung des Kanalbreitenfaktors für die Korrektur unterschiedlicher Schwankungen
  5. Unterscheidung von Branchen und Konzepten zur Einstellung von Parametern

Optimierungsrichtung

Die Strategie beinhaltet folgende Optimierungsmöglichkeiten:

  1. Methoden zur Berechnung von Parametern zur Optimierung von Preiskanälen, wie die Einführung von Adaptionskanälen, Volatilitätskanälen usw.
  2. In Kombination mit anderen technischen Indikatoren zur Ermittlung von Kauf-/Verkaufsmomenten, um die Effektivität der Strategie zu verbessern
  3. Einführung von Stop-Loss- und Stop-Stop-Strategien, um Risiken zu kontrollieren und Gewinne zu sichern
  4. Branchen- und Aktienmerkmale unterscheiden und dynamische Parameter festlegen
  5. Erweiterungsstrategien, die Basisinformationen und Ereignis-Treiber kombinieren
  6. Anwendung von Machine-Learning-Algorithmen zur Realisierung von Parameter-Adaption und Status-Erkennung

Zusammenfassen

Die Preiskanalstrategie ist eine typische Trend-Tracking-Strategie, bei der der Kanal durch einfache historische Höchst- und Tiefpreise aufgebaut wird, wobei die Kanalgrenze als Handelssignal dient. Die Strategie ist leicht zu verstehen und zu implementieren, kann die Preisentwicklung effektiv verfolgen und die Preiskanal mit Stop-Loss-Funktion eingerichtet werden. Die Strategie birgt jedoch einige Risiken. Die wichtigsten Optimierungsrichtungen sind Parameteroptimierung, Kombination mit anderen Indikatoren, Stop-Loss/Stop-Dynamik-Parameter usw.

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

//@version=4
//
//  作品: [LunaOwl] 樂活投資:價格通道
//  英文: [LunaOwl] LOHAS Investor - PriceChannel
//
///////////////////////////////
//     ~~!!*(๑╹◡╹๑) **      //
//  製作: @LunaOwl 彭彭      //
//  一版: 2019年12月07日     //
//  二版: 2019年12月09日     //
///////////////////////////////
//
//  介紹:
//--價格通道是一個古老的投資策略,對於「肯做功課選股」的上班族投資人非常方便。
//--由於大多數股市散戶沒有時間操作,即時有時間操作也只是加快輸錢的速度,所以,
//--上班族投資法,或「樂活投資」的條件有幾點:
//--**********
//--1) 設定溫和的投資報酬率期望
//--2) 使用適合的選股方式建立投資組合,減少單一股票的失誤率
//--3) 使用簡單的進出場策略,規律的執行它
//--4) 財富依靠時間積累,每天學習
//--**********
//
//==定義回測條件==//

strategy("[LunaOwl] 價格通道",
     initial_capital = 10000, commission_value = 0.07, 
     default_qty_type = strategy.percent_of_equity,
     default_qty_value = 50, overlay = true,
     calc_on_order_fills = true
     )

//==設定價格通道==//

Channel_Price  = input(close, title = "通道價格")
Channel_Length = input(21, title = "通道回溯長度")
Channel_High = highest(high, Channel_Length)
Channel_Low  = lowest(low, Channel_Length)

gapUp   = (low > high[1])
gapDown = (high < low[1])

BackgroundColour = (gapUp == true) ? color.green :
                   (gapDown == true) ? color.red : na
                   
bgcolor(BackgroundColour, transp=60)

BorderlineA = plot(Channel_High, title = "通道上線", color = color.red, style = plot.style_line)
BorderlineB = plot(Channel_Low, title = "通道下線", color = color.blue, style = plot.style_line)
fill(BorderlineA, BorderlineB, title = "通道底色", color = color.gray, transp = 85)

Long_entry = close >= Channel_High
Long_close_all = close <= Channel_Low

if (not na(close[Channel_Length]))
    strategy.entry("買入", strategy.long, comment = "高於近期", stop = Channel_High)
    strategy.entry("賣出", strategy.short, comment = "低於近期", stop = Channel_Low)