
La estrategia es una estrategia que utiliza Bitcoin para realizar operaciones de corto plazo durante el fin de semana, utilizando un 10x de apalancamiento. La idea principal de la estrategia es registrar el precio al cierre del viernes, y luego comparar los altibajos del cierre del día y el cierre del viernes el sábado y el domingo, y hacer más o menos si supera el descenso, y cerrar la posición el lunes.
La estrategia primero registra el precio de cierre del viernes, y luego calcula el número de días desde el viernes hasta la fecha actual. Si el precio de cierre del viernes sube más del 4.5% con respecto al precio de cierre del viernes, se borra el sábado y el domingo; si el precio de cierre del viernes baja más del 4.5% con respecto al precio de cierre del viernes, se borra más.
En concreto, la estrategia consiste en obtener el precio de cierre del viernes y luego comparar los alzas y bajas del precio de cierre actual con el precio de cierre del viernes el sábado.strategy.shortSi el precio de cierre actual es superior al de cierre del viernes y cae más de un 4.5%, se aprueba el cierre del viernes y el cierre del viernes.strategy.longHacer más.leverageEl parámetro se establece en 10 veces el apalancamiento. Si la ganancia alcanza el 10% del capital inicial, se apruebastrategy.close_all()Todas las posiciones en posiciones libres.strategy.close_all()Para que no se vuelvan a poner en juego.
Las siguientes medidas de optimización pueden considerarse en función de los riesgos:
La estrategia puede ser optimizada en los siguientes aspectos:
Se puede combinar con la media móvil, el RSI y otros indicadores para filtrar la hora de entrada y mejorar la precisión de entrada.
Optimización de las estrategias de stop-loss, bloqueo de ganancias y control de riesgos a través de stop-loss móviles, stop-loss por lotes, etc.
Ajuste el tamaño de la palanca para reducir el riesgo. Se puede configurar la proporción de palanca de ajuste dinámico para reducir la palanca en la retirada.
Se pueden agregar otras criptomonedas comunes, aprovechando sus características de comercio de fin de semana, para realizar operaciones de arbitraje multivariadas.
Los parámetros de optimización con algoritmos de aprendizaje automático pueden ser recopilados de una gran cantidad de datos históricos, y los parámetros de optimización automática con algoritmos de aprendizaje automático pueden ser ajustados dinámicamente.
Esta estrategia es una estrategia de comercio de corta línea típica que utiliza el aumento del volumen de transacciones del fin de semana de Bitcoin. La estrategia utiliza el aumento del volumen de transacciones del fin de semana de Bitcoin para juzgar la tendencia, hacer más o hacer menos el sábado. La estrategia tiene ventajas como aumento de ganancias, control de riesgos, pero también existe cierto riesgo.
/*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()