
Die Strategie ist eine Strategie, bei der Bitcoin am Wochenende mit 10-facher Hebelwirkung kurz gehandelt wird. Die Hauptidee der Strategie besteht darin, den Preis am Freitag zu verbuchen und dann die Preise am Samstag und am Sonntag zu vergleichen, um die Preise am selben Tag und am Freitag zu vergleichen.
Die Strategie zeichnet zunächst den Schlusskurs am Freitag auf und berechnet dann die Anzahl der Tage, die bis zum Freitag liegen. Am Samstag und am Sonntag wird der Schlusskurs aufgelöst, wenn er mehr als 4,5% höher als der Schlusskurs am Freitag liegt.
Konkret wird die Strategie erstellt, indem man den Schlusskurs am Freitag erhält und dann die Werte der aktuellen Schlusskurs-Wachsen am Samstag mit den Preisen des Freitags-Schlusskurses vergleicht.strategy.shortWenn der aktuelle Schlusskurs um mehr als 4,5% gegenüber dem Schlusskurs am Freitag gesunken ist, wird der Schlusskurs übernommen.strategy.longMehr tun.leverageDer Parameter wurde mit einem 10-fachen Leverage eingestellt.strategy.close_all()Alle Off-Positions. Am Montag, durchstrategy.close_all()Das ist eine schlechte Idee, aber es ist eine gute Idee.
Die folgenden Optimierungsmaßnahmen können für Risiken in Betracht gezogen werden:
Diese Strategie kann in folgenden Bereichen optimiert werden:
Hinzufügen von anderen Indikatoren, optimieren Sie die Auswahl der Eintrittspunkte. Sie können mit Moving Average, RSI und anderen Indikatoren kombiniert werden, um die Eintrittszeit zu filtern und die Eintrittsgenauigkeit zu verbessern.
Optimierung der Stop-Loss-Strategie, Gewinnschließung und Risikokontrolle durch mobile Stop-Loss- und Batch-Stop-Strategien.
Anpassung der Hebelgröße zur Verringerung des Risikos. Es kann eingestellt werden, dass die Hebelgröße dynamisch angepasst wird, um die Hebelgröße bei der Rücknahme zu verringern.
Mehrfachhandel. Es ist möglich, auch andere gängige Kryptowährungen hinzuzufügen, um ihre Wochenendhandelsmerkmale zu nutzen, um mehrfach zu handeln.
Optimierung der Parameter mithilfe von Machine-Learning-Algorithmen. Es kann eine große Menge an historischen Daten gesammelt werden, um die Parameter automatisch mit einem Machine-Learning-Algorithmus zu optimieren und eine dynamische Anpassung der Parameter zu realisieren.
Die Strategie ist eine typische Short-Line-Handelsstrategie, die Bitcoin-Wochenend-Handelsvolumen nutzt. Die Strategie nutzt die Eigenschaften von Bitcoin-Wochenend-Handelsvolumen, um am Samstag Trends zu beurteilen, zu viel oder zu wenig zu machen. Die Strategie hat Vorteile wie Ertragsverstärkung, Risikokontrolle, aber auch gewisse Risiken.
/*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()