Esta estrategia se llama
Específicamente, la lógica de negociación es muy sencilla:
Lanzar una moneda todos los lunes, generando resultados al azar cara o cola.
Si es cabeza, vaya largo ese día. Si es cola, vaya corto ese día.
Establezca el stop loss en 1 x ATR y tome ganancias en 1 x ATR cuando sea largo, y viceversa cuando sea corto, logrando una relación riesgo-recompensación de 1:1.
Mantenga la posición hasta el final de la semana y luego cierre.
La ventaja es backtesting de muchos años de datos para evaluar la tasa de ganancia promedio de la negociación aleatoria.
Pero el comercio aleatorio no puede utilizar los patrones del mercado y es poco probable que genere ganancias sostenidas.
En conclusión, los resultados de las pruebas de retroceso pueden sugerir resultados de operaciones aleatorias, pero no representan estrategias realmente aplicables.
/*backtest start: 2022-09-12 00:00:00 end: 2023-01-12 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("CoinFlip", overlay = true) int result = int(math.random()+0.5) atr_period = input(defval = 20, title = "ATR Period") year_to_test = input(defval = 2022, title = "Year to Test") day_of_week = input(defval = 1, title = "Day of Week") atr = ta.atr(atr_period) shouldSell = result == 0 and dayofweek == day_of_week shouldBuy = result == 1 and dayofweek == day_of_week plotshape(result == 0 and dayofmonth == day_of_week, title="sell", location=location.abovebar, color=color.red, transp=0, style=shape.arrowdown) plotshape(result == 1 and dayofmonth == day_of_week, title="buy", location=location.belowbar, color=color.lime, transp=0, style=shape.arrowup) strategy.entry("short entry", strategy.short, 1000 / (1*atr), when=shouldSell and year == year_to_test) strategy.entry("long entry", strategy.long, 1000 / (1*atr), when=shouldBuy and year == year_to_test) strategy.exit("exit", "long entry", limit = close + 1*atr, stop = close - 1*atr, when = shouldBuy) strategy.exit("exit", "short entry", limit = close - 1*atr, stop = close + 1*atr, when = shouldSell)