Doppelt bestätigte Vorteilsstrategie mit gleitendem Durchschnitt


Erstellungsdatum: 2024-01-23 10:49:57 zuletzt geändert: 2024-01-23 10:49:57
Kopie: 0 Klicks: 572
1
konzentrieren Sie sich auf
1617
Anhänger

Doppelt bestätigte Vorteilsstrategie mit gleitendem Durchschnitt

Überblick

Die Strategie ist eine Multi-Head-Trend-Tracking-Strategie, die ein Handelssignal durch die doppelte Bestätigung des Aroon-Indikators und des linear regressiven Moving Averages erzeugt.

Strategieprinzip

Die Strategie verwendet die Kreuzung der oberen und unteren Bahn des Aroon-Indikators, um die Richtung des Trends zu bestimmen. Die oberen Bahnen erzeugen ein Kaufsignal, wenn sie von der unteren Bahn nach oben brechen. Die oberen Bahnen erzeugen ein Verkaufssignal, wenn sie von der oberen Bahn nach unten brechen.

Die Strategie basiert auf folgenden Regeln für die Erzeugung von Handelssignalen:

  1. Kauf-Signal-Generation-Bedingungen: Oberbahn-Breakout-Unterbahn ((Aroon-Indikator beurteilt die Aufwärtsentwicklung der Doppelbahn-Kreuzung) und der Schlusskurs am Tag ist höher als der LSMA Moving Average ((Schlusskurs ist im Aufwärtstrend))

  2. Verkauf von Signalgenerierungskonditionen: Obergang fällt über den Untergang ((Aroon-Indikator beurteilt eine Abwärtstrend bei der Bildung einer Doppelbahnkreuzung) und der Schlusskurs am Tag liegt unter dem LSMA Moving Average ((Schlusskurs ist im Abwärtstrend))

Strategische Vorteile

  1. Verwenden Sie den Aroon-Indikator, um die Richtung des Trends zu bestimmen, ohne sich vom Lärm ablenken zu lassen
  2. Hinzufügen von LSMAs als zusätzliche Filterbedingungen, um unnötige Transaktionen durch falsche Durchbrüche zu vermeiden
  3. Nur ein Überschuss, der den langfristigen Aufwärtstrend des Großmarktes entspricht, um das unbegrenzte Verlustrisiko eines Defizits zu vermeiden
  4. Die Einstellung der Strategieparameter ist einfach und leicht umzusetzen

Strategisches Risiko

  1. Die Strategie ist nur ein Spielzeug, das in der Zeit der Erschütterung kaum profitieren kann.
  2. Die Einstellung von Fixparametern kann zu einem Risiko einer Überfusion führen
  3. Trendschwierigkeiten und Zeitverlust

Um Risiken zu vermeiden, kann eine Stop-Loss-Strategie eingerichtet werden, oder in Kombination mit anderen Indikatoren, um zu bestimmen, wann der Trend umgekehrt ist.

Optimierungsrichtung

  1. Sie können sich für eine Devisen-Opportunität entscheiden, die Sie auch bei einem Rückgang profitieren können.
  2. Die Effektivität von Indikatoren mit unterschiedlichen Periodenparametern zu testen
  3. Automatische Optimierung der Parameter mit Hilfe eines Machine-Learning-Moduls

Zusammenfassen

Diese Strategie ist eine einfache und praktische Doppel-Bestätigungs-Trend-Tracking-Strategie. Sie nutzt die Methode von Aroon, um die Trendrichtung zu bestimmen, und filtert LSMA-Rauschen einfach und direkt. Wenn die Parameter richtig eingestellt sind, können gute Ergebnisse erzielt werden. Die Strategie eignet sich für die mittlere und lange Linie und vermeidet die Störung durch kurzfristige Marktgeräusche.

Strategiequellcode
/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 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/
// © exlux99

//@version=4

strategy(title = "Aroon Strategy long only", overlay = true,  pyramiding=1,initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.1)

//Time
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2010, title = "From Year", minval = 1970)
 //monday and session 
// To Date Inputs
toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2021, title = "To Year", minval = 1970)

startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true

//INPUTS

length = input(15, minval=1, title="Aroon Legnth")
upper = 100 * (highestbars(high, length+1) + length)/length
lower = 100 * (lowestbars(low, length+1) + length)/length

lengthx = input(title="Length LSMA", type=input.integer, defval=20)
offset = 0//input(title="Offset", type=input.integer, defval=0)
src = input(close, title="Source")
lsma = linreg(src, lengthx, offset)


long = crossover(upper,lower) and close > lsma
longexit = crossunder(upper,lower) and close < lsma

if(time_cond)
    strategy.entry("long",1,when=long)
    strategy.close("long",when=longexit)