La estrategia de reversión de punto de ruptura es una estrategia de seguimiento de tendencias que capta los cambios en la tendencia comprando acciones por encima de los puntos de soporte más recientes y vendiendo cuando están por debajo de los puntos de resistencia más recientes. La estrategia es simple y directa, adecuada para los inversores que no tienen mucho prejuicio sobre el mercado y solo quieren seguir la tendencia.
La estrategia determina las líneas de resistencia y soporte más cercanas calculando los puntos medios de los precios más altos y más bajos en un determinado número de días. Cuando el precio rompe estos puntos clave, lo que indica un cambio de tendencia, se puede seguir la dirección del cambio para negociar.
En concreto, la estrategia calcula el punto medio del precio más alto de los últimos N1 días como la línea de resistencia, y el punto medio del precio más bajo de los últimos N2 días como la línea de apoyo. En la dirección de compra, si el precio más alto del día supera la línea de resistencia más reciente, se emite una señal de compra. En la dirección de venta, si el precio más bajo del día cae por debajo de la línea de apoyo más reciente, se emite una señal de venta.
Esta estrategia es simple y directa, no necesita predecir el mercado, solo tiene que seguir las rupturas en los puntos clave para capturar la tendencia. Comprar cuando la tendencia ascendente rompe la línea de resistencia y vender cuando la tendencia descendente rompe la línea de soporte.
La estrategia es muy simple e intuitiva, no requiere ninguna habilidad de predicción, y se puede lograr con solo seguir los puntos de resistencia de los soportes. Esto reduce la dificultad de la operación y la hace adecuada para el uso de inversores de todos los niveles.
El punto clave de la ruptura es la señal de cambio de tendencia reconocida en el mercado. La estrategia puede responder a la hora de cambiar la tendencia, ajustar la posición y evitar ser atrapado.
Los inversores pueden ajustar la sensibilidad de la estrategia al establecer el número de días para ver los datos a la izquierda y a la izquierda. Ver más días hace que la línea de soporte de resistencia sea más estable, y ver menos días hace que la estrategia sea más flexible.
La estrategia se basa en el seguimiento de tendencias y se puede utilizar fácilmente en combinación con otras estrategias de selección de momentos para mejorar el rendimiento general.
Esta estrategia identifica cambios en la tendencia que requieren cierta acumulación de datos, lo que puede causar un cierto retraso en los puntos de compra y venta. Se debe prestar atención a si los precios se han invertido y la señal continúa en la tendencia original.
En el corto plazo, los mercados pueden presentar falsos puntos críticos de ruptura, lo que requiere que los inversores tengan cierta capacidad de respuesta para evitar ser encerrados.
La estrategia sigue la tendencia de la posición completa, por lo que existe un mayor riesgo de retiro. Los inversores deben considerar su capacidad de soportar el riesgo. También se puede reducir adecuadamente el tamaño de la posición para reducir el retiro.
Si la configuración de los parámetros es demasiado sensible, puede causar una frecuencia de transacción excesiva. Se necesita ajustar adecuadamente los parámetros para controlar la frecuencia de las transacciones. También se puede configurar un tiempo de retención mínimo para reducir la frecuencia de las transacciones.
Se puede optimizar los parámetros de los máximos y mínimos de N días a través de la retrospección a largo plazo para encontrar la combinación óptima de parámetros. También se puede combinar con los parámetros de ajuste dinámico de la situación del mercado para establecer parámetros más sensibles cuando la tendencia es evidente.
Se puede establecer una magnitud mínima para las rupturas, para evitar ser engañado por falsas rupturas de pequeña magnitud. Cuanto mayor sea la fuerza de la ruptura, mayor será la posibilidad de cambiar la tendencia.
Se pueden agregar otros indicadores técnicos como el RSI, KD, etc. La señal es más efectiva si el indicador se desvía al mismo tiempo que se rompe el punto clave. Evite la señal producida por una sola ruptura.
Se puede controlar el riesgo ajustando las posiciones según las condiciones del mercado, se puede establecer un stop loss para evitar grandes pérdidas en caso de riesgo. También se puede ajustar las posiciones de forma dinámica según la operación de la tendencia.
La estrategia de reversión de punto de ruptura para seguir la tendencia a través de un simple punto clave de ruptura, se puede aplicar ampliamente a todos los tipos de inversores. La estrategia tiene la ventaja de ser simple y fácil de operar, que puede capturar eficazmente los cambios de tendencia, pero también existe un cierto retraso, el riesgo de falsa ruptura y una mayor reversión.
/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © EduardoMattje
//@version=5
strategy("Pivot Point Breakout", "PPB", true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, process_orders_on_close=true)
// Constants
var L_PIVOT_HIGH = "Pivot high"
var L_PIVOT_LOW = "Pivot low"
var LEFT = "Left"
var RIGHT = "Right"
var BOTH = "Both"
var LONG = "Long"
var SHORT = "Short"
var DATES = "Date selection"
var DATES_TOOLTIP = "Change it to limit the trades for the given time interval.\n\nLeave it to disable this behaviour."
// Inputs
var orderDirection = input.string(LONG, "Order direction", options=[BOTH, LONG, SHORT])
var leftHigh = input.int(3, LEFT, minval=0, inline=L_PIVOT_HIGH, group=L_PIVOT_HIGH)
var rightHigh = input.int(3, RIGHT, minval=0, inline=L_PIVOT_HIGH, group=L_PIVOT_HIGH)
var leftLow = input.int(3, LEFT, minval=0, inline=L_PIVOT_LOW, group=L_PIVOT_LOW)
var rightLow = input.int(3, RIGHT, minval=0, inline=L_PIVOT_LOW, group=L_PIVOT_LOW)
var startDate = input(0, "Starting date", group=DATES)
var endDate = input(0, "Final date", group=DATES)
//
var float lastHigh = na
var float lastLow = na
lowPivot = ta.pivotlow(leftLow, rightLow)
highPivot = ta.pivothigh(leftHigh, rightHigh)
f_updateLevels(pivot_) =>
var float pastLevel = na
if not na(pivot_)
pastLevel := pivot_
pastLevel
lastLow := f_updateLevels(lowPivot)
lastHigh := f_updateLevels(highPivot)
// Validates the time interval
validTrade = true
// Orders
if high > lastHigh
strategy.entry("Long", strategy.long, when=orderDirection != SHORT and validTrade)
strategy.close("Short", when=orderDirection == SHORT)
if low < lastLow
strategy.entry("Short", strategy.short, when=orderDirection != LONG and validTrade)
strategy.close("Long", when=orderDirection == LONG)
// Plots
plot(lastLow, "Last pivot low", color.red, offset=1)
plot(lastHigh, "Last pivot high", color.teal, offset=1)
plotshape(lowPivot, "Pivot low", location=location.belowbar, color=color.red, offset=-rightLow)
plotshape(highPivot, "Pivot high", color=color.teal, offset=-rightHigh)