La idea principal de esta estrategia es abrir una posición larga después de que surge un patrón específico de velas, es decir, abrir una posición larga en la siguiente barra abierta después de una brecha a la baja (colorbar) seguida de un retroceso a la barra anterior baja.
Las condiciones específicas para esta estrategia son: la barra anterior tiene un mínimo inferior y un máximo superior en comparación con las dos barras anteriores, lo que indica una brecha a la baja; y la barrera actual es menor o igual al mínimo de la barra anterior, lo que indica que se ha producido un retroceso.
Después de abrir la posición larga, el stop loss se establece en el mínimo de retroceso, que es el mínimo de la barra anterior, y el take profit se establece en más del 2% por encima del precio de entrada.
La mayor ventaja de esta estrategia es aprovechar la oportunidad de rebote de alta probabilidad después del patrón específico de velas. La brecha a la baja seguida por el retroceso representa un patrón técnico extremadamente poderoso que indica que la presión de venta puede haberse agotado en este nivel y es probable que ocurra un rebote de alta probabilidad. Por lo tanto, esta estrategia es más adecuada para el comercio a corto plazo.
El riesgo principal es la caída continua después de que finalice el pullback. Como estamos tomando posiciones largas alrededor de los mínimos de pullback, se pueden incurrir pérdidas significativas si no se puede reducir la pérdida a tiempo. Además, si el rango de pullback es pequeño, el stop loss establecido demasiado apretado puede causar que se detenga. Por lo tanto, esta estrategia es más preferible para el comercio a corto plazo, que requiere una atención cercana del mercado y un stop loss oportuno.
Otros indicadores técnicos pueden incorporarse para mejorar la precisión de la señal y la estabilidad de la estrategia, como entrar en la cruz de oro MACD, o comprobar que el precio típico está en el nivel de soporte antes de la entrada.
En resumen, esta es una estrategia larga típica de retiro de ruptura a corto plazo. Captura la oportunidad de rebote después del fuerte patrón de brecha a la baja seguido de retiro. Pero también conlleva el riesgo de grandes pérdidas si no se logran reducir las pérdidas a tiempo. Se requiere un monitoreo frecuente del mercado para obtener resultados favorables. Se pueden hacer mejoras adicionales mediante la filtración de señales con más indicadores y optimización de parámetros.
/*backtest start: 2024-01-22 00:00:00 end: 2024-02-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // Created by Leon Ross //study(title="OutsideDownOpenLower", shorttitle="ODOL", overlay=true) strategy(title = "Outside", shorttitle = "OB", overlay = true ) //Window of time //start = timestamp(2018, 01, 01, 00, 00) // backtest start window //finish = timestamp(2018, 12, 31, 23, 59) // backtest finish window //window() => time >= start and time <= finish ? true : false // create function "within window of time" //Conditions outsideBar = low < low[1] and high > high[1] and close < open allConditions = outsideBar //Stop and Take Profit as percentages //inpTakeProfit = input(2, title='Take Profit %', type=float)/100 //takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit) //useTakeProfit = inpTakeProfit > 0 ? takeProfitValue : na //inpStopLoss = input(1, title='Stop Loss %', type=float)/100 //stopLossValue = strategy.position_avg_price * (1 - inpStopLoss) //useStopLoss = inpStopLoss > 0 ? stopLossValue : na //entry = strategy.position_avg_price //Stop as last bars low and profit as percentage entry = strategy.position_avg_price inpTakeProfit = input(2.0, title='Take Profit %', type=float)/100 takeProfitValue = strategy.position_avg_price * (1 + inpTakeProfit) useTakeProfit = inpTakeProfit > 0 ? takeProfitValue : na inpStopLoss = valuewhen(allConditions, low, 0) stopLossValue = inpStopLoss useStopLoss = inpStopLoss > 0 ? stopLossValue : na //Plots bgcolor(allConditions ==1 ? aqua : na, transp=70) plot(entry, color=blue, style=linebr, linewidth=2) plot(useStopLoss, color=red, style=linebr, linewidth=2) plot(useTakeProfit, color=green, style=linebr, linewidth=2) //Entires strategy.entry(id = "Long", long = true, when = allConditions) // use function or simple condition to decide when to get in //Exits //if (barssince(allConditions) == 2) //strategy.close("Long") //else strategy.exit("Exit Long", from_entry = "Long", stop = useStopLoss)