Bullen-Tracker


Erstellungsdatum: 2024-01-31 11:01:45 zuletzt geändert: 2024-01-31 11:01:45
Kopie: 1 Klicks: 602
1
konzentrieren Sie sich auf
1617
Anhänger

Bullen-Tracker

Überblick

Das Bullish-Tracking-System ist ein mechanisches Handelssystem, das auf Trendverfolgung basiert. Es filtert Handelssignale anhand von Trendindikatoren auf dem 4-Stunden-Graphik, während Eintritte anhand von 15-Minuten-Graphik beurteilt werden. Die wichtigsten Indikatoren sind der RSI, der Random-Indicator und der MACD. Der Vorteil des Systems besteht darin, dass eine Kombination aus mehreren Zeitrahmen die falschen Signale effektiv filtern kann, während die Indikatoren der niedrigeren Zeitrahmen verwendet werden, um eine genauere Eintrittszeit zu erhalten.

Grundsätze

Die Kernlogik des Systems besteht darin, Indikatoren aus verschiedenen Zeitrahmen zu kombinieren, um die Richtung des Trends und die Einstiegsmomente zu identifizieren. Insbesondere sind der RSI, der Zufallsindikator und die EMA des 4-Stunden-Diagramms geeignet, um die Richtung des Gesamttrends zu bestimmen.

Vorteile

  1. Eine Kombination aus mehreren Zeitrahmen, die falsche Signale effektiv filtern und wichtige Trends erkennen können
  2. 15 Minuten detaillierter Indikator, um eine genauere Einstiegszeit zu erhalten
  3. Die Indicator-Palette verwendet die gängigen technischen Indikatoren wie RSI, Random Indicator und MACD, die leicht zu verstehen und zu optimieren sind.
  4. Mit strengen Risikomanagement-Methoden wie mStop, Stop Loss und Tracking Stop Loss kann das Risiko eines einzelnen Handels effektiv kontrolliert werden

Die Gefahr

  1. Überhändlerrisiko. Das System ist sehr sensibel für kurze Zeiträume und kann zu einer Überhändlung führen, wenn es zu einer großen Anzahl von Handelssignalen kommt.
  2. Falsches Durchbruchrisiko. Kurzfristige Indikatoren können zu Fehleinschätzungen führen, die zu falschen Durchbruchsignalen führen.
  3. Risiko, dass ein Indikator fehlschlägt. Technische Indikatoren haben ihre eigenen Grenzen und können im Extremfall fehlschlagen.

Das System kann entsprechend in den folgenden Bereichen optimiert werden:

  1. Anpassung der Parameter des Indikators an unterschiedliche Marktumstände
  2. Erhöhung der Filterbedingungen, um die Häufigkeit der Transaktionen zu verringern und Übertransaktionen zu verhindern
  3. Optimierung der Stop-Loss-Strategie, um sie besser in die Bandbreite der Marktschwankungen zu bringen
  4. Verschiedene Kombinationen von Indikatoren werden getestet, um die optimale Lösung zu finden

Zusammenfassen

Das Bull Market Tracking System ist insgesamt ein sehr praktisches Trend-Tracking-Mechanismus. Es nutzt Kombinationsindikatoren aus mehreren Zeiträumen, um Markttrends und wichtige Einstiegsmomente zu identifizieren. Durch vernünftige Parameter-Einstellungen und kontinuierliche Optimierungs-Tests kann das System sich an die meisten Marktumgebungen anpassen, um eine stabile Ertragswirkung zu erzielen.

Strategiequellcode
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Cowabunga System from babypips.com", overlay=true)
// 4 Hour Stochastics
length4 = input(162, minval=1, title="4h StochLength"), smoothK4 = input(48, minval=1, title="4h StochK"), smoothD4 = input(48, minval=1, title="4h StochD")
k4 = sma(stoch(close, high, low, length4), smoothK4)
d4 = sma(k4, smoothD4)

//15 min Stoch
length = input(10, minval=1, title="15min StochLength"), smoothK = input(3, minval=1, title="15min StochK"), smoothD = input(3, minval=1, title="15min StochD")
k = sma(stoch(close, high, low, length), smoothK)
d= sma(k, smoothD)

//4 hour RSI
src1 = close, len1 = input(240, minval=1, title="4H RSI Length")
up1 = rma(max(change(src1), 0), len1)
down1 = rma(-min(change(src1), 0), len1)
rsi4 = down1 == 0 ? 100 : up1 == 0 ? 0 : 100 - (100 / (1 + up1 / down1))

//15 min RSI
src = close, len = input(9, minval=1, title="15M RSI Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi15 = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))

//MACD Settings
source = close
fastLength = input(12, minval=1, title="MACD Fast"), slowLength=input(26,minval=1, title="MACD Slow")
signalLength=input(9,minval=1, title="MACD Signal")
fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)
macd = fastMA - slowMA
signal = ema(macd, signalLength)

// Stops and Profit inputs
inpTakeProfit   = input(defval = 1000, title = "Take Profit", minval = 0)
inpStopLoss     = input(defval = 0, title = "Stop Loss", minval = 0)
inpTrailStop    = input(defval = 400, title = "Trailing Stop", minval = 0)
inpTrailOffset  = input(defval = 0, title = "Trailing Stop Offset", minval = 0)

// Stops and Profit Targets
useTakeProfit   = inpTakeProfit  >= 1 ? inpTakeProfit  : na
useStopLoss     = inpStopLoss    >= 1 ? inpStopLoss    : na
useTrailStop    = inpTrailStop   >= 1 ? inpTrailStop   : na
useTrailOffset  = inpTrailOffset >= 1 ? inpTrailOffset : na

//Specific Time to Trade
myspecifictradingtimes = input('0500-1600', title="My Defined Hours")

longCondition1 = time(timeframe.period, myspecifictradingtimes) != 0
longCondition2 = rsi4 <= 80
longCondition3 = k4 >= d4 and k4 <= 80
longCondition4 = ema(close, 80) >= ema(close, 162)
allLongerLongs = longCondition1 and longCondition2 and longCondition3 and longCondition4

longCondition5 = rsi15 <= 80
longCondition6 = k >= d and k <= 80 and fastMA >= slowMA
longCondition7 = ema(close, 5) >= ema(close, 10)
allLongLongs = longCondition5 and longCondition6 and longCondition7

if crossover(close, ema(close, 5)) and allLongerLongs and allLongLongs
    strategy.entry("Long", strategy.long, comment="LongEntry")

shortCondition1 = time(timeframe.period, myspecifictradingtimes) != 0
shortCondition2 = rsi4 >= 20
shortCondition3 = k4 <= d4 and k4 >= 20
shortCondition4 = ema(close, 80) <= ema(close, 162)
allShorterShorts = shortCondition1 and shortCondition2 and shortCondition3 and shortCondition4

shortCondition5 = rsi15 >= 20
shortCondition6 = k <= d and k >= 20 and fastMA <= slowMA
shortCondition7 = ema(close, 5) <= ema(close, 10)
allShortShorts = shortCondition5 and shortCondition6 and shortCondition7

if crossunder(close, ema(close,5)) and allShorterShorts and allShortShorts
    strategy.entry("Short", strategy.short, comment="ShortEntry")

strategy.exit("Exit Long", from_entry = "Long", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)
strategy.exit("Exit Short", from_entry = "Short", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)