Handelsstrategie „Goldener Schnitt – gleitender Durchschnitt“


Erstellungsdatum: 2024-01-05 14:21:52 zuletzt geändert: 2024-01-05 14:21:52
Kopie: 0 Klicks: 884
1
konzentrieren Sie sich auf
1617
Anhänger

Handelsstrategie „Goldener Schnitt – gleitender Durchschnitt“

Überblick

Die Gold-Split-Moving-Average-Handelsstrategie ist eine quantitative Handelsstrategie, die versucht, Gold-Kreuzungen mit langfristigen Moving-Averagen als Handelssignal zu nutzen. Die Strategie wird in Verbindung mit dem RSI verwendet, um Positionen in lokalen Höhen zu vermeiden, um das Risiko zu kontrollieren.

Strategieprinzip

Die Strategie basiert hauptsächlich auf zwei beweglichen Durchschnittswerten: Die 200-Tage-Linie als langfristige Durchschnittslinie und die 10-Tage-Linie als kurzfristige Durchschnittslinie. Sie erzeugt ein Kaufsignal, wenn die kurzfristige Durchschnittslinie die langfristige Durchschnittslinie überschreitet.

Insbesondere wird eine Mehrkopfposition eröffnet, wenn die folgenden Bedingungen erfüllt sind:

  1. Die 10-Tage-Mittellinie ist die 200-Tage-Mittellinie.
  2. Derzeit keine Positionen
  3. RSI kleiner als 30

Die Ausgleichsbedingungen sind wie folgt:

  1. Stopp: Stopp, wenn der Preis einen bestimmten Prozentsatz des Eröffnungspreises überschreitet (setzbar)
  2. Stopp: Stopp, wenn der Preis einen bestimmten Prozentsatz überschreitet (setzbar)

Analyse der Stärken

Diese Strategie hat folgende Vorteile:

  1. Das Gold-Cross-Signal mit einem Moving Average ist ein klassisches und wirksames Signal für den Handel mit technischen Indikatoren.
  2. In Kombination mit dem RSI kann man Risiken einigermaßen kontrollieren, indem man den Kauf an den Höhen vermeidet.
  3. Stop-Loss- und Stop-Stop-Einstellungen, die Gewinne sichern und Risiken vermeiden

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Moving-Average-Strategien erzeugen leicht falsche Signale und Störungen
  2. Der RSI wird in einigen starken Verhältnissen ausfallen.
  3. Eine zu kleine Stop-Loss-Einstellung kann zu häufigen Stop-Losses führen, die zu überkurzen Geschäften führen.

Um diese Risiken zu verringern, können folgende Optimierungsmaßnahmen in Betracht gezogen werden:

  1. Anpassung der Mittellinien-Parameter oder Hinzufügen weiterer Mittellinien
  2. Bestätigung des RSI-Signals in Verbindung mit anderen Indikatoren
  3. Einstellung der Stop-Loss-Stopp-Parameter

Optimierungsrichtung

Die Strategie kann noch weiter optimiert werden:

  1. Erweiterung der Indikatoren, um falsche Signale zu vermeiden
  2. Optimierung der Moving Average Parameter
  3. Dynamische Stop-Loss-Einstellungen in Verbindung mit Volatilitätsindikatoren
  4. Mit Hilfe eines maschinellen Lernmodells wird die Marktlage ermittelt.
  5. Automatische Optimierung der Parameter mit Algorithmen

Zusammenfassen

Die Gold-Split-Moving-Average-Trading-Strategie ist insgesamt eine einfache und effektive Trend-Tracking-Strategie. Sie nutzt die klassischen linearen Kreuzungssignale, um Handelschancen zu erzeugen, und hat einen Stop-Loss-Stop, um das Risiko zu kontrollieren. Die Strategie kann durch mehrere Indikatoren, Parameteroptimierung und Maschinelles Lernen weiter verbessert werden, um eine bessere Strategiewirkung zu erzielen.

Strategiequellcode
/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 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/
// © tsujimoto0403

//@version=5
strategy("聖杯", overlay=true,default_qty_type=strategy.percent_of_equity,
     default_qty_value=100)

//ユーザーインプットの準備
malongperiod=input.int(200,"長期移動平均BASE200",group = "パラメータ")
mashortperiod=input.int(10,"長期移動平均BASE10",group = "パラメータ")
stop=input.int(20,title = "損切の割合%",group = "パラメータ")
profit=input.int(5,title = "利食いの割合%",group = "パラメータ")
startday=input(title="バックテストを始める日", defval=timestamp("01 Jan 2018 13:30 +0000"), group="期間")
endday=input(title="バックテスを終わる日", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間")

//使う変数
var float stopprice=0
var float takeprofit=0

//とりあえず使うインジケーターをプロット
malong=ta.sma(close,malongperiod)
mashort=ta.sma(close,mashortperiod)


plot(malong,color=color.aqua,linewidth = 2)
plot(mashort,color=color.yellow,linewidth = 2)
bgcolor(ta.rsi(close,3)<30?color.rgb(229, 86, 86, 48):na)

//期間条件
datefilter = true

//エントリー条件
if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30
    strategy.entry(id="long", direction=strategy.long)

if strategy.position_size>0 
    strategy.exit(id="long",stop=(1-0.01*stop)*strategy.position_avg_price)

//売り
if  strategy.position_size > 0 and close>mashort and close<low[1] 
    strategy.close(id ="long")