Trends und Strategien zur Gewinnmaximierung

Schriftsteller:ChaoZhang, Datum: 2023-10-11 14:38:40
Tags:

Übersicht

Die Strategie bildet eine dynamische Auf- und Abwärtstrasse, indem sie die Bewegungsdurchschnitts- und Standarddifferenz-CHANNELs der Preise berechnet und die mittleren Kurswerte der höchsten und niedrigsten Preise kombiniert, um die Richtung des aktuellen Trends zu bestimmen.

Die Strategie

  1. Berechnung der 20-tägigen einfachen gleitenden Mittelbasis als mittlere Benchmark
  2. Berechnung der 20-Tage-Standarddifferenz von close dev als Basis für die Auf- und Abstands-Mittebahn
  3. Mittelbahnbasis ± 2*dev definiert Oberbahn und Unterbahn
  4. Berechnet den Durchschnitt der höchsten Preise in den letzten 20 Tagen auf Basis 2 und der niedrigsten Preise in den letzten 20 Tagen auf Basis 2
  5. Die durchschnittliche Umlaufzeit der beiden oben genannten Strecken ist MB als Endumlaufzeit.
  6. Bei der Nähe ist das Signal größer als MB und bei der Nähe ist das Signal größer als MB
  7. Mehr Freizeit nach Signalentscheidung, um den Trend zu verfolgen und Profit zu machen

Stärkenanalyse

  1. Der Standard-Differenz-Channel wird mit Hilfe eines dynamischen Modells verwendet, um die Preisentwicklung schnell zu erfassen.
  2. Mit den höchsten und niedrigsten Preisen ist der Mittelstrecken-Strecken-Referenzwert größer.
  3. Ein doppeltes Mittelstrecken-Design, um das Signal genauer und zuverlässiger zu machen
  4. Strategische Ideen sind einfach, klar und leicht verständlich.
  5. Weniger konfigurierbare Parameter für verschiedene Marktbedingungen

Risikoanalyse

  1. Wenn Sie einen Auf- oder Abwärtstradetransfer durchbrechen, sollten Sie eine Stop-Loss-Strategie in Betracht ziehen, um Einzelverluste zu kontrollieren.
  2. Die Auswirkungen von Gebühren müssen berücksichtigt werden, da die Handelsfrequenz möglicherweise höher ist
  3. Parametern wie Period-Parameter müssen sorgfältig optimiert werden, um eine Überanpassung zu vermeiden
  4. Bei Trendwechseln kann es zu Fehlsignalen kommen.
  5. Sie müssen ihr Geld gut verwalten und nicht übermäßig hoch heben.

Optimierung

  1. Es kann in Betracht gezogen werden, Filterbedingungen zu erhöhen, um falsche Durchbrüche zu vermeiden.
  2. Dynamische Stop-Loss-Exits können basierend auf Indikatoren wie ATR festgelegt werden
  3. Informationen über die Transaktionsmenge können kombiniert werden, um die Zuverlässigkeit des Durchbruchssignales zu überprüfen
  4. Optimierung für Parameter wie Rechenzyklen, um mehr Marktumgebungen anzupassen
  5. Es kann erwogen werden, die Anzahl der geöffneten Positionen festzulegen, um das Risiko eines einzelnen Verlusts zu kontrollieren.

Zusammenfassung

Die Strategie ist übersichtlich und erzeugt Trends durch dynamische Channel-Fangung und in Kombination mit mehreren Mittelstrecken-Designs, um Trends effizient zu verfolgen und eine bessere Handelsrendite zu erzielen. In der Praxis ist es notwendig, sich auf die Stop-Loss-Strategie, das Geldmanagement und die Optimierung für die Parameter zu konzentrieren, um langfristige, stabile Erträge zu erzielen.


/*backtest
start: 2023-09-10 00:00:00
end: 2023-10-10 00:00:00
period: 4h
basePeriod: 15m
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/
// © ErdemDemir

//@version=4
strategy("Lawyers Trend Pro Strategy", shorttitle="Lawyers Trend Pro Strategy", overlay=true)

src = close
mult = 2.0
basis = sma(src, 20)
dev = mult * stdev(src, 20)
upper = basis + dev
lower = basis - dev
offset = 0


lower2 = lowest(20)
upper2 = highest(20)
basis2 = avg(upper2, lower2)


MB= (basis+basis2)/2





col1=close>MB
col3=MB>close
colorE = col1 ? color.blue : col3 ? color.red : color.yellow
p3=plot(MB, color=colorE, linewidth=3)

// Deternine if we are currently LONG
isLong = false
isLong := nz(isLong[1], false)

// Determine if we are currently SHORT
isShort = false
isShort := nz(isShort[1], false)

// Buy only if the buy signal is triggered and we are not already long
buySignal = not isLong and crossover(close,MB)

// Sell only if the sell signal is triggered and we are not already short
sellSignal= not isShort and crossover(MB,close)
if (buySignal)
    isLong := true
    isShort := false

if (sellSignal)
    isLong := false
    isShort := true







/// LONG
strategy.entry("long", true , when = buySignal, comment="Open Long")

strategy.close("long", when=sellSignal, comment = "Close Long")

/// SHORT
strategy.entry("short", false,  when = sellSignal, comment="Open Short")

strategy.close("short", when=buySignal, comment = "Close Short")



Weitere Informationen