Estrategia de captura de la reversión de la tendencia

El autor:¿ Qué pasa?, Fecha: 2023-09-25 17:58:05
Las etiquetas:

Resumen general

Esta estrategia utiliza el indicador SuperTrend para determinar la dirección de la tendencia actual, y genera señales comerciales basadas en patrones de candeleros de captura. Pertenece a las estrategias de seguimiento de tendencias. Cuando se forma una vela de captura opuesta a la dirección de SuperTrend, señala una posible inversión de tendencia. La estrategia tiene como objetivo capitalizar la oportunidad de inversión.

Estrategia lógica

La estrategia primero calcula el indicador de SuperTrend para determinar la tendencia actual, con verde para tendencia alcista y rojo para tendencia bajista. Luego verifica si el candelabro forma un patrón de captura, que requiere: 1) la vela es opuesta a la dirección de SuperTrend, 2) la vela es fuerte (big bullish o close no diverge), 3) la vela tiene un volumen creciente. Cuando se cumplen las tres condiciones, señala una inversión de tendencia probable.

Específicamente, la SuperTendencia se calcula en base al ATR de 10 períodos. Luego comprueba si la vela actual es opuesta a la dirección de la SuperTendencia, y su VOLUME es mayor que la vela anterior, o tres velas consecutivas con la misma dirección CLOSE pero disminuyendo el VOLUME. Si se cumplen los criterios, señala la reversión y entra largo en el candelero alto y entra corto en el candelero bajo.

La estrategia identifica la tendencia general con SuperTrend y entra en los puntos de reversión potenciales marcados por velas atrapadoras, con el objetivo de ganancia que proviene del movimiento de tendencia posterior.

Análisis de ventajas

  • Combinar tendencia y patrón para una mayor precisión

La combinación de tendencia y patrón mejora la precisión.

  • La vela de captura añade la confirmación de entrada, evitando una fuga falsa.

El fuerte impulso y el aumento del volumen de la vela de captura evita señales falsas del ruido.

  • Lógica sencilla y clara, fácil de implementar

Con SuperTrend y la vela de captura como núcleo, la estrategia es muy minimalista, con pocos parámetros y fácil de implementar.

  • Las operaciones de suspensión de pérdidas razonables controlan el riesgo

El stop loss en el precio de la vela de captura permite una salida rápida y también se adapta a la posición después de la inversión.

Análisis de riesgos

  • SuperTrend está rezagado en la captura de la inversión de tendencia

SuperTrend tiene cierto retraso en la detección de la inversión de tendencia, por lo que puede perder el mejor momento de entrada.

  • La inversión fallida puede amplificar las pérdidas

Las señales de reversión no son 100% fiables.

  • Necesidad de identificar los patrones de captura adecuados

El patrón óptimo de captura puede variar entre productos y plazos, y requiere pruebas para obtener los mejores parámetros por situación.

  • Los patrones del día y de la noche difieren

Las características comerciales difieren entre las sesiones diurnas y nocturnas.

Direcciones de mejora

  • Optimización de parámetros para las diferencias de día y de noche

Por ejemplo, optimizar el nivel de aumento de volumen de la vela de captura por separado para el día y la noche.

  • Optimiza los parámetros de SuperTrend

Prueba diferentes períodos ATR para encontrar los parámetros y señales óptimos de SuperTrend para cada producto.

  • Añadir más filtros para la entrada

Incorporar indicadores adicionales como MACD, KDJ para mejorar la precisión del juicio de inversión.

  • Añadir mecanismos de stop loss

El valor de las pérdidas de los activos de la entidad en el mercado de valores se calcula a partir de la suma de las pérdidas de los activos de la entidad en el mercado.

Resumen de las actividades

Esta estrategia combina SuperTrend y patrones de vela de captura para ingresar en las inversiones de tendencia percibidas. La idea central es simple y clara. Pero hay espacio para mejorar aún más la precisión de la señal mediante optimizaciones integrales en aspectos como la tendencia general, las diferencias de sesión, el stop loss, etc., para mejorar la estabilidad. Con la optimización iterativa, puede convertirse en una poderosa herramienta para los operadores activos.


/*backtest
start: 2023-09-17 00:00:00
end: 2023-09-24 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SuperTrend Trapping Candle Strategy", shorttitle="ST", margin_long=1, margin_short=1, overlay=true)


// Inputs
atrPeriod = input.int(10, "ATR Length")
factor = input.int(2, "Factor")
candleDivider = input.float(0.003, "Candle Height", step=0.0001)


// Supertrend
[supertrend, direction] = ta.supertrend(factor, atrPeriod)
plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style=plot.style_linebr)
plot(direction < 0? na : supertrend, "Down Trend", color = color.red, style=plot.style_linebr)


//Trapping canlde
isUptrend = direction < 0
isDowntrend = direction > 0
isBullsStrengthDecreasing = volume < volume[1] and volume[1] < volume[2] and close > close[1] and close[1] > close[2] and open > open[1] and open[1] > open[2]
isBearsStrengthDecreasing = volume < volume[1] and volume[1] < volume[2] and close < close[1] and close[1] < close[2] and open < open[1] and open[1] < open[2]
isStrongVolume = (volume > volume[1]) or isBullsStrengthDecreasing or isBearsStrengthDecreasing
isSmallCandle = (high - low) < close * candleDivider
isUptrendTrapping = isUptrend and close < open and isStrongVolume and isSmallCandle
isDowntrendTrapping = isDowntrend and close > open and isStrongVolume and isSmallCandle

plotshape(isUptrendTrapping, style=shape.triangleup, location=location.belowbar, color=color.green)
plotshape(isDowntrendTrapping, style=shape.triangledown, location=location.abovebar, color=color.orange)


// Signals
longCondition = isUptrendTrapping
if (longCondition)
    strategy.entry("Long", strategy.long)


shortCondition = isDowntrendTrapping
if (shortCondition)
    strategy.entry("Short", strategy.short)

if open < close
    alert("Seller Trapped.", alert.freq_all)
if close > open
    alert("Buyer Trapped.", alert.freq_all)



Más.