Strategie des Heiligen Kreuzes


Erstellungsdatum: 2023-12-01 15:27:39 zuletzt geändert: 2023-12-01 15:27:39
Kopie: 0 Klicks: 970
1
konzentrieren Sie sich auf
1619
Anhänger

Strategie des Heiligen Kreuzes

Die Holy Grail Strategie ist eine quantitative Handelsstrategie, die ein Binärsystem und einen ADX-Indikator kombiniert. Sie dient dazu, die Richtung und Stärke eines Trends zu erkennen und bei einer Trendwende zu handeln.

Strategieprinzip

Die Strategie verwendet den 20-Tage-Index-Moving-Average (EMA) und den ADX-Indikator zur Identifizierung der Einstiegsmomente. Insbesondere gibt sie ein Handelssignal in zwei Fällen:

  1. Wenn der ADX-Wert unter 30 liegt (was einen schwachen Trend anzeigt) und der Preis die 20-Tage-EMA von unten durchbricht, machen Sie mehr;

  2. Wenn der ADX-Wert höher als 30 ist (was einen starken Trend anzeigt) und der Preis die 20-Tage-EMA von oben durchbricht, machen Sie einen Short.

Die Strategie basiert auf der ADX-Bewertung der Stärke und Richtung eines Trends und sucht nach Umkehrmöglichkeiten in Kombination mit der Unterstützung und dem Widerstand des Moving Averages. Es kombiniert die Ideen von Trendfollowing und Resistance Trading.

Analyse der Stärken

Der größte Vorteil der Heiligen Kreuz-Strategie besteht darin, dass sie sowohl die Richtung als auch die Stärke des Trends berücksichtigt und die Wahrscheinlichkeit von False Breakouts wirksam vermeidet, wodurch die Wahrscheinlichkeit von Stop-Losses verringert wird. Konkret hat die Strategie folgende Vorteile:

  1. Die Nutzung von Doppel-Linien-Systemen, die Trends effektiv erkennen können;
  2. Mit Hilfe der ADX-Bewertung der Trendstärke kann ein Ausgleich und ein unwirksamer Durchbruch vermieden werden.
  3. Die Kombination von Reversals und Trendtrades ermöglicht es, Trends zu erfassen und an Wendepunkten umzukehren.
  4. Die Regeln sind klar, einfach und leicht umzusetzen.

Risikoanalyse

Die Strategie des Heiligen Kreuzes birgt einige Risiken, die sich auf folgende Bereiche konzentrieren:

  1. Die ADX ist ein Hilfsindikator, der auch falsche Signale ausstrahlt.
  2. Die Verluste durch kleine Wellen sind durch die Gleichschlusskreuzung nicht vollständig zu vermeiden.
  3. Fehlende Parameter-Einstellungen (z. B. ADX-Zielwert, Durchschnittsfrequenz usw.) können dazu führen, dass die Signale zu häufig oder zu konservativ sind.

Um die oben genannten Risiken zu verringern, kann die Kombination der Parameter angepasst werden, um die beste Wirkung zu erzielen, oder ein Stop-Loss kann gesetzt werden, um einzelne Verluste zu kontrollieren. Darüber hinaus ist es notwendig, dass die Strategie auf verschiedenen Sorten und Perioden getestet wird.

Optimierungsrichtung

Die Strategie des Heiligen Kreuzes hat viele Optimierungsmöglichkeiten:

  1. Versuchen Sie mit verschiedenen Arten von Moving Averages, wie beispielsweise mit gewogenen Moving Averages.
  2. Die ADX-Werte können als Parameter optimiert werden.
  3. Verschiedene Periodenparameter wie 10- und 30-Tage-EMA können getestet werden;
  4. Es können auch andere Hilfsindikatoren wie RSI, Brin und andere hinzugefügt werden, um das Handelssignal zu bestätigen.

Eine Anpassung der Parameter oder das Hinzufügen neuer Indikatoren kann die Gewinnrate oder die Gewinnrate einer Strategie erhöhen. Jede Optimierung erfordert jedoch ausreichend Rückmeldung, um ihre Stabilität zu gewährleisten.

Zusammenfassen

Insgesamt kann man sagen, dass die Holy Cross-Strategie die Vorzüge der Doppel-Gleichgewichts- und ADX-Indikatoren kombiniert und klare Handelsregeln verwendet, um Trendwende zu erfassen. Es ist zuversichtlich, dass es gute Ergebnisse bringt. Trotzdem müssen die Händler die Parameterkombinationen und die Stop-Loss-Regeln optimieren, um sich an unterschiedliche Marktumgebungen anzupassen.

Strategiequellcode
/*backtest
start: 2022-11-24 00:00:00
end: 2023-11-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("LAT Holy Grail v3", overlay=true)

/////////////TEST TIME ////////////////////////
testStartYear = input(2018, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(15, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2018, "Backtest Stop Year")
testStopMonth = input(5, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false
//////////////////////////////////////////////////////////////////////

myema= ema(close, 20)
plot(myema, color=green, title="eMA", linewidth=3)



//longCondition = (crossover(close, myema)) //and adx3 < target
//if (longCondition)
    //strategy.entry("My Long Entry Id", strategy.long)

//shortCondition = (crossunder(close, myema)) //and adx3 > target
//if (shortCondition)
    //strategy.entry("My Short Entry Id", strategy.short)
    
    //////////////////////////////////////////////////////////
    ///////////////////////////////////////   DMI  ///////////////////////////////////////////////
len3 = input(14, minval=1, title="DI Length")                           /////////////////////
lensig3 = input(14, title="ADX Smoothing", minval=1, maxval=50)         ////////////////////
up3 = change(high)                                                      ///////////////////
down3 = -change(low)                                                    //////////////////
plusDM3 = na(up3) ? na : (up3 > down3 and up3 > 0 ? up3 : 0)            /////////////////
minusDM3 = na(down3) ? na : (down3 > up3 and down3 > 0 ? down3 : 0)     ////////////////
trur3 = rma(tr, len3)                                                   ///////////////
plus3 = fixnan(100 * rma(plusDM3, len3) / trur3)                        //////////////
minus3 = fixnan(100 * rma(minusDM3, len3) / trur3)                      /////////////
sum3 = plus3 + minus3                                                   ////////////
adx3 = 100 * rma(abs(plus3 - minus3) / (sum3 == 0 ? 1 : sum3), lensig3) ///////////
//plot(plus3, color=green, style=circles, linewidth=2, title="+DI")     //////////
//plot(minus3, color=red, style=circles, linewidth=2, title="-DI")      /////////
plot(adx3, color=aqua, style=line, linewidth=3, title="ADX")            ////////
target = input(30, title=" ADX Target Line")                            ///////
plot(target, color=yellow, title="ADX Target Line")                     //////
/////////////////////////////////////////////////////////////////////////////////////////////////
                                                                                        
plot(hl2)


///////////////////////////////////////////////  eMA SIGNAL LINE   ///////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////// HOLY GRAIL STRATEGY ///////////////////////////////////////////////////////////////////

if (adx3 <= target) and crossover(close, myema)
    strategy.entry("HolyGrail", strategy.long, comment="Long")
 
if (adx3 >= target) and crossunder(close, myema)
    strategy.entry("HolyGrail", strategy.short, comment="Short")