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.
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.short
Wenn der aktuelle Schlusskurs mehr als 4,5% unter dem Freitagskurs liegt, gehen Sie lang überstrategy.long
Die Hebelwirkung wird auf 10x über dieleverage
Wenn der Gewinn 10% des Anfangskapitals erreicht, schließen Sie alle Positionenstrategy.close_all()
Am Montag schließen Sie alle Positionenstrategy.close_all()
.
Mögliche Verbesserungen zur Risikominderung:
Die Strategie kann in folgenden Bereichen verbessert werden:
Hinzufügen anderer Indikatoren für bessere Eintrittszeiten, Einbeziehung gleitender Durchschnitte, RSI usw., um Einträge zu filtern und die Genauigkeit zu verbessern.
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.
Anpassung der Hebelwirkung, um das Risiko zu reduzieren.
Hinzufügen anderer Kryptowährungen. Handel mit zusätzlichen Kryptos mit Wochenendmustern für Multi-Asset-Arbitrage.
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.
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()