Momentum Breakout Silver Line Strategie


Erstellungsdatum: 2024-02-01 15:01:55 zuletzt geändert: 2024-02-01 15:01:55
Kopie: 2 Klicks: 622
1
konzentrieren Sie sich auf
1617
Anhänger

Momentum Breakout Silver Line Strategie

Überblick

Die Strategie ist eine Breakout-Buy-Strategie, basierend auf dem Preisdynamik-Indikator MACD und der Durchschnittslinie, die für den 1-Stunden-Zeitrahmen für Silber (XAG/USD, XAG/EUR) gilt. Der Schlüssel liegt in der Kombination von Preistrends und Dynamik-Indikatoren, um den Zeitpunkt der Trendwende zu bestimmen.

Strategieprinzip

Wenn die MACD-Säulenlinie von einer negativen Umkehrung korrigiert und kontinuierlich steigt, wird eine starke kurzfristige Bewegung angezeigt; gleichzeitig wird ein Mehrkopfsignal erzeugt, wenn der Schlusskurs die mittlere Linie des Aufwärtstrends durchbricht. Ähnlich erzeugt die MACD-Säulenlinie von einer positiven Umkehrung negativ und fällt die Signallinie, und wenn der Schlusskurs die mittlere Linie des Abwärtstrends durchbricht, wird ein Hohlkopf erzeugt.

Im Gegensatz zu anderen Strategien, die sich auf die Erhöhung des Marktanteils konzentrieren, ist die Strategie auf die folgenden Bedingungen ausgerichtet:

  1. Die MACD-Säulen sind positiv
  2. Die aktuelle Säule ist höher als die vorherige.
  3. Schlusskurs höher als der Durchschnitt
  4. Der Verkaufspreis lag über dem Höchstpreis von fast drei K-Linien.

Die Kriterien für die Beurteilung eines Short-Entry-Signals sind genau das Gegenteil.

Die Strategie setzt keine Stop-Loss-Stopp-Punkte, sondern verfolgt die Startpunkte, um einen Trend-Ausbruch zu erfassen.

Analyse der Stärken

Diese Strategie kombiniert Preis- und Dynamikindikatoren, um die Zeit der Trendwende genauer zu bestimmen. Die Gewinnrate ist höher. Eine unbedingte K-Linie, die die Position abschließt, kann den erneuten Verlust nach dem Versagen der Umkehrung wirksam vermeiden.

Es gibt keine Stop-Loss-Systeme, sondern vollständige Positionen, die den Bedürfnissen von Anlegern gerecht werden, die nach hohen Erträgen streben.

Risikoanalyse

Verlustfreie Einstellungen können leicht eingesperrt werden und sind mit einem hohen Verlustrisiko verbunden. Wenn das Rückwärtssignal fehlschlägt und der Verlust nicht rechtzeitig eingestellt werden kann, kann es zu einem erheblichen Verlust des Geldes kommen.

Es ist schwierig, die Gewinne aus dem Trend fortlaufend zu erfassen, wenn ein K-Linie-Abschluss unbedingt ausgeglichen wird.

Optimierungsrichtung

Es kann in Betracht gezogen werden, eine angemessene Stop-Loss-Strategie auf der Grundlage von Durchbruchkäufen mit einer höheren Gewinnrate zu verwenden, um das Risiko von Verlusten zu verringern.

Es ist auch möglich, mit hochqualifizierten Techniken ein System zu entwickeln, um nach dem Stillstand die Position wieder zu eröffnen, um zu versuchen, die Trendgewinne kontinuierlich zu erfassen.

Zusammenfassen

Die Strategie ist im Allgemeinen eine aggressive und risikoreiche Strategie, bei der die Investoren aufgrund der Stop-Loss-Einstellung ein hohes Verlustrisiko eingehen müssen. Im Gegensatz dazu kann die Eröffnung einer vollen Position nach einer erfolgreichen Umkehrung auch einen hohen Gewinn erzielen.

Strategiequellcode
/*backtest
start: 2023-01-31 00:00:00
end: 2024-01-13 05:20: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/
// © SoftKill21

//@version=4
strategy("XAG strategy 1h",overlay=true)
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 = 2020, title = "From Year", minval = 1970)
var gica = 0
var marcel = gica+2
 //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 = 2020, title = "To Year", minval = 1970)

startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
len = input(10, minval=1, title="Length")
src = input(close, title="Source")
out = sma(src, len)

//distanta = input(1.004)

fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false)
// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00
// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal

option1=input(true)
option2=input(true)

long2 =  close > open  and time_cond and close > out and hist > 0 and hist > hist[1] 
short2 =  close < open  and time_cond and close < out and hist < 0 and hist < hist[1] 

long1 = (close > open ) and time_cond and close > out and hist > 0 and  hist > hist[1] and high > high[1] and high[1] > high[2] and close > high[1] and close > high[2] and close > high[3] 
short1 = (close < open)  and time_cond and close < out and hist < 0 and  hist < hist[1] and low < low[1] and low[1] < low[2]  and close < low[1] and close < low[2] and close < low[3] 

if(option1)
    strategy.entry("long",1,when= short1)
    strategy.entry("short",0,when=long1)
    strategy.close_all()

if(option2)

    strategy.entry("long",1,when= short2)
    strategy.entry("short",0,when=long2)
    strategy.close_all()

// if(strategy.openprofit < 0)
//     strategy.close_all()
// if(strategy.openprofit>0)
//     strategy.close("long",when = close < open )
//     strategy.close("short",when = close > open)
//     strategy.close("long",when= close < open)
//     strategy.close("short",when= close> open)


// tp = input(0.0003)
// sl = input(0.005)
// strategy.exit("closelong", "long" , profit = close * tp / syminfo.mintick, loss = close * sl / syminfo.mintick, alert_message = "closelong")
// strategy.exit("closeshort", "short" , profit = close * tp / syminfo.mintick, loss = close * sl / syminfo.mintick, alert_message = "closeshort")