
La estrategia de ruptura de 1 minuto del bosque de oro es una estrategia de negociación cuantitativa de línea corta que se dedica a capturar señales de ruptura de precios en un marco de tiempo de 1 minuto para obtener ganancias rápidas. La estrategia combina varios indicadores, como la línea de paridad, el ATR y el RSI, para formar señales de negociación con el objetivo de obtener una mayor pérdida en un corto período de tiempo.
La estrategia se basa en los siguientes elementos para generar señales de negociación:
En concreto, la estrategia calcula el promedio de N ciclos de ATR, así como la EMA rápida, la EMA lenta y la RSI rápida. La combinación de la ruptura del canal ATR por parte del precio, la formación de un EMA y el logro del RSI de un nivel de sobreventa y sobrecompra, es lo que emite una señal de compra o venta.
La estrategia tiene las siguientes ventajas:
La estrategia también tiene sus riesgos:
Para controlar el riesgo, se debe adoptar una estrategia de deterioro, al mismo tiempo que se realizan revisiones para optimizar los parámetros y evitar la sobreajuste. Además, se debe ajustar la frecuencia de las operaciones y controlar el costo de las operaciones.
La estrategia puede ser optimizada en las siguientes direcciones:
la configuración de los parámetros para un período de prueba más corto (de 5 minutos a 15 minutos);
La inclusión de más indicadores de filtración, como el indicador de volumen de transacciones, para mejorar la calidad de la señal;
Optimización de la vía ATR y de los parámetros de la línea media, buscando la combinación óptima de parámetros.
La estrategia de ruptura de 1 minuto del Bosque de Oro, que se centra en capturar tendencias de precios a corto plazo, se filtra mediante la combinación de varios indicadores y se caracteriza por una respuesta rápida y un alto índice de ganancias y pérdidas. La estrategia puede obtener un mejor rendimiento mediante la optimización de los parámetros de acuerdo con las preferencias de riesgo de los usuarios.
/*backtest
start: 2023-02-12 00:00:00
end: 2024-02-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Gem Forest 1 Dakika Scalp", overlay=true)
source = close
atrlen = input.int(14, "ATR Period")
mult = input.float(1, "ATR Multi", step=0.1)
smoothing = input.string(title="ATR Smoothing", defval="WMA", options=["RMA", "SMA", "EMA", "WMA"])
ma_function(source, atrlen) =>
if smoothing == "RMA"
ta.rma(source, atrlen)
else
if smoothing == "SMA"
ta.sma(source, atrlen)
else
if smoothing == "EMA"
ta.ema(source, atrlen)
else
ta.wma(source, atrlen)
atr_slen = ma_function(ta.tr(true), atrlen)
upper_band = atr_slen * mult + close
lower_band = close - atr_slen * mult
ShortEMAlen = input.int(21, "Fast EMA")
LongEMAlen = input.int(65, "Slow EMA")
shortSMA = ta.ema(close, ShortEMAlen)
longSMA = ta.ema(close, LongEMAlen)
RSILen1 = input.int(25, "Fast RSI Length")
RSILen2 = input.int(100, "Slow RSI Length")
rsi1 = ta.rsi(close, RSILen1)
rsi2 = ta.rsi(close, RSILen2)
atr = ta.atr(atrlen)
RSILong = rsi1 > rsi2
RSIShort = rsi1 < rsi2
longCondition = open < lower_band
shortCondition = open > upper_band
GoldenLong = ta.crossover(shortSMA,longSMA)
Goldenshort = ta.crossover(longSMA,shortSMA)
plotshape(shortCondition, title="Sell Label", text="Sell", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.white)
plotshape(longCondition, title="Buy Label", text="Buy", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.white)
plotshape(Goldenshort, title="Golden Sell Label", text="Golden Crossover Short", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.new(color.blue, 0), textcolor=color.white)
plotshape(GoldenLong, title="Golden Buy Label", text="Golden Crossover Long", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.new(color.yellow, 0), textcolor=color.white)
if (longCondition)
stopLoss = low - atr * 2
takeProfit = high + atr * 5
strategy.entry("long", strategy.long)
if (shortCondition)
stopLoss = high + atr * 2
takeProfit = low - atr * 5
strategy.entry("short", strategy.short)
plot(upper_band)
plot(lower_band)
plot(shortSMA, color = color.red)
plot(longSMA, color = color.yellow)