Quantitative Handelsstrategie basierend auf hohen und niedrigen gleitenden Durchschnitten


Erstellungsdatum: 2023-09-19 15:53:55 zuletzt geändert: 2023-09-19 15:53:55
Kopie: 0 Klicks: 626
1
konzentrieren Sie sich auf
1617
Anhänger

Überblick

Die Strategie berechnet die einfachen Moving Averages der Höhen und Tiefen und vergleicht sie mit dem aktuellen Schlusskurs, um zu bestimmen, wann man kaufen und verkaufen soll. Ihr Ziel ist es, die Signale zu erfassen, dass der Preis die Mittellinie überschreitet, um eine frühe Chance auf einen Trend zu erhalten.

Strategieprinzip

  1. Ein einfacher Moving Average mit einer Höhe von 4

  2. Ein einfacher Moving Average mit einer Länge von 4

  3. Eintritt zu erhöhen, wenn der Schlusskurs den Mittelwert des Höchstwerts überschreitet

  4. Eintritt in den Short-Line-Bereich, wenn der Schlusskurs die mittlere Tiefe überschreitet

  5. Risikomanagement mit festen Stop-Loss- und Stop-Stopp-Strategien

Analyse der Stärken

  1. Einfache Kennzahlen, die leicht verständlich sind

  2. Der Preis ist in den letzten Monaten deutlich gestiegen.

  3. Das ist ein sehr einfacher Weg, um zu sehen, wie sich die Trends auswirken.

  4. Kleine Berechnungen, die den Betriebskostenaufwand der Strategie senken

  5. Strategie auf Basis der Eignung für eine Ausweitung

Risikoanalyse

  1. Die Parameter müssen vernünftig eingestellt werden, um eine Überempfindlichkeit zu vermeiden

  2. Die Risiken eines großen Durchbruchs sind nicht zu bewältigen.

  3. Ein gewisses Maß an Schwankungsarbitrarisiko besteht

  4. Nicht automatisch die Stop-Loss-Position anpassen

  5. Es ist schwierig, die Dauer des Trends zu bestimmen.

Optimierungsrichtung

  1. Testen der Auswirkungen verschiedener Parameter auf die Signalqualität

  2. Erhöhung der Filterbedingungen, um die Effektivität der Durchbrüche zu gewährleisten

  3. Trends und Analysen, um nicht eingeklemmt zu werden

  4. Entwicklung einer dynamischen Stop-Loss-Strategie

  5. Optimierung der Stop-Loss-Mechanismen und Erhöhung der Strategie-Siegerquote

  6. Strategiefestigkeit in unterschiedlichen Testzyklen

Zusammenfassen

Die Strategie gibt eine grundlegende Trend-Handelsidee durch einfache Indikatoren zur Beurteilung der Preisdynamik. Die Handelslogik ist erweiterbar und kann zu einem relativ stabilen Quantifizierungssystem entwickelt werden.

Strategiequellcode
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-13 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("HiLo", overlay=true)

// Testing a specific period
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2017, "Backtest Stop Year")
testStopMonth = input(5, "Backtest Stop Month")
testStopDay = input(1, "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


//HiLo Strategy
length = input(4, minval=0)
displace = input(0, minval=0)
highsma = sma(high, length)
lowsma = sma(low, length)

longCondition = close > highsma[displace]
if (longCondition)
    strategy.entry("long", true)

shortCondition = close < lowsma[displace]
if (shortCondition)
    strategy.entry("short", false)

// Exit seems with a problem. it keeps saying the order's limit (2000) was reached even if I back test it just for a day. 
// If the two lines bellow are commented, then it it works. Anyone? Any idea what's wrong?

// strategy.exit("exit", "long", profit=10, loss=5)
// strategy.exit("exit", "short", profit=10, loss=5)