Strategie für den Wochenendhandel

Schriftsteller:ChaoZhang, Datum: 2023-11-14 11:29:12
Tags:

img

Übersicht

Dies ist eine kurzfristige Handelsstrategie, die das erhöhte Wochenendhandelsvolumen von Bitcoin mit 10-facher Hebelwirkung nutzt. Die Hauptidee besteht darin, den Freitagsschlusskurs aufzuzeichnen, die täglichen Schlusskurs am Samstag und Sonntag mit dem Freitagsschlusskurs zu vergleichen und bei Überschreitung der Schwelle lang oder kurz zu gehen. Die Positionen werden am Montag geschlossen.

Strategie Logik

Die Strategie erfasst zuerst den Freitagsschlusskurs und berechnet dann die Anzahl der Tage seit Freitag. Am Samstag und Sonntag, wenn der tägliche Schlusskurs mehr als 4,5% über dem Freitagsschlusskurs liegt, gehen Sie kurz; wenn der tägliche Schlusskurs mehr als 4,5% unter dem Freitagsschlusskurs liegt, gehen Sie lang. Jeder Handel verwendet 10x Hebelwirkung. Wenn der Gewinn 10% des Anfangskapitals erreicht, schließen Sie alle Positionen. Am Montag schließen Sie alle Positionen unabhängig davon.

Wenn der aktuelle Schlusskurs mehr als 4,5% höher als der Freitagspreis ist, gehen Sie kurz überstrategy.shortWenn der aktuelle Schlusskurs mehr als 4,5% unter dem Freitagskurs liegt, gehen Sie lang überstrategy.longDie Hebelwirkung wird auf 10x über dieleverageWenn der Gewinn 10% des Anfangskapitals erreicht, schließen Sie alle Positionenstrategy.close_all()Am Montag schließen Sie alle Positionenstrategy.close_all().

Analyse der Vorteile

  • Nutzt das erhöhte Wochenendhandelsvolumen von Bitcoin für den kurzfristigen Handel und erfasst Wochenendtrends
  • 10x Hebelwirkung erhöht die Rendite
  • Die Gewinnbedingung hilft, Gewinne zu sichern und Verluste zu verhindern.
  • Schließung von Positionen am Montag vermeidet Risiken durch volatile Montagsöffnungen

Risikoanalyse

  • Bitcoin-Preise sind an Wochenenden volatil, Risiko von Verlusten
  • 10x Hebelwirkung verstärkt Verluste
  • Eine unsachgemäße Stop-Loss-Platzierung könnte zu großen Verlusten führen
  • Volatile Montagsöffnungen können die vollständige Gewinnentnahme verhindern

Mögliche Verbesserungen zur Risikominderung:

  1. Einstellen von Stop-Loss auf Kontrollverlust pro Handel.
  2. Anpassung der Hebelwirkung zur Verringerung des Risikos.
  3. Optimieren Sie die Gewinnpunkte, nehmen Sie Gewinne in Chargen nach Erreichen bestimmter Gewinnniveaus.
  4. Setzen Sie das Volumen oder die Zeit der Gewinnentnahme vor der Eröffnung am Montag ein, um Volatilität zu vermeiden.

Optimierungsrichtlinien

Die Strategie kann in folgenden Bereichen verbessert werden:

  1. Hinzufügen anderer Indikatoren für bessere Eintrittszeiten, Einbeziehung gleitender Durchschnitte, RSI usw., um Einträge zu filtern und die Genauigkeit zu verbessern.

  2. Optimieren Sie Stop-Loss- und Take-Profit-Strategien. Verwenden Sie Trailing-Stops, abgestufte Profit-Taking usw., um Gewinne zu erzielen und das Risiko zu kontrollieren.

  3. Anpassung der Hebelwirkung, um das Risiko zu reduzieren.

  4. Hinzufügen anderer Kryptowährungen. Handel mit zusätzlichen Kryptos mit Wochenendmustern für Multi-Asset-Arbitrage.

  5. Verwenden Sie maschinelles Lernen, um Parameter zu optimieren. Sammeln Sie große historische Datensätze und verwenden Sie ML, um die dynamische Parameteranpassung automatisch zu optimieren.

Zusammenfassung

Dies ist eine typische kurzfristige Handelsstrategie, die das erhöhte Wochenendvolumen von Bitcoin nutzt. Sie profitiert vom Wochenendvolumen, indem sie die Trends am Samstag und Sonntag beurteilt, ob sie lang oder kurz sind. Die Strategie hat Vorteile wie Gewinnverstärkung und Risikokontrolle, hat aber auch einige Risiken. Die nächsten Schritte sind die Optimierung von Bereichen wie Einstieg, Stop-Loss, Leverage-Management, Asset-Expansion usw., um die Strategie robuster und intelligenter zu machen.


/*backtest
start: 2023-10-14 00:00:00
end: 2023-11-13 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//Copyright Boris Kozak 
strategy("XBT Weekend Trade Strategy", overlay=false)
leverage = input(10,"Leverage")
profitTakingPercentThreshold = input(0.10,"Profit Taking Percent Threshold")

//****Code used for setting up backtesting.****///
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(12, "Backtest Start Month")
testStartDay = input(10, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2025, "Backtest Stop Year")
testStopMonth = input(12, "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) ? #00FFFF : na
bgcolor(testPeriodBackgroundColor, transp=50)

testPeriod() => true
    
//****END Code used for setting up backtesting.****///


//*** Main entry point is here***//
// Figure out how many days since the Friday close 
days_since_friday = if dayofweek == 6
    0
else 
    if dayofweek == 7
        1
    else
        if dayofweek == 1
            2
        else
            if dayofweek == 2
                3
            else
                if dayofweek == 3
                    4
                else
                    if dayofweek == 4
                        5
                    else
                        6
    
// Grab the Friday close price
fridaycloseprice = request.security(syminfo.tickerid,'D',close[days_since_friday])
plot(fridaycloseprice)
strategy.initial_capital = 50000
// Only perform backtesting during the window specified 
if testPeriod()
    // If we've reached out profit threshold, exit all positions 
    if ((strategy.openprofit/strategy.initial_capital) > profitTakingPercentThreshold)
        strategy.close_all()
    // Only execute this trade on saturday and sunday (UTC)
    if (dayofweek == 7.0 or dayofweek == 1.0)
        // Begin - Empty position (no active trades)
        if (strategy.position_size == 0)
            // If current close price > threshold, go short 
            if ((close>fridaycloseprice*1.045))
                strategy.entry("Short Entry", strategy.short, leverage)
            else
                // If current close price < threshold, go long
                if (close<(fridaycloseprice*0.955))
                    strategy.entry("Long Entry",strategy.long, leverage)
        // Begin - we already have a position
        if (abs(strategy.position_size) > 0)
            // We are short 
            if (strategy.position_size < 0)
                if ((close>strategy.position_avg_price*1.045))
                    // Add to the position
                    strategy.entry("Adding to Short Entry", strategy.short, leverage)
            else
                strategy.entry("Long Entry",strategy.long,leverage)
    // On Monday, if we have any open positions, close them 
    if (dayofweek==2.0)
        strategy.close_all()
 






Mehr