Estrategia de tendencia de volumen de precios extendido con aceleración del impulso


Fecha de creación: 2024-01-18 16:32:28 Última modificación: 2024-01-18 16:32:28
Copiar: 2 Número de Visitas: 556
1
Seguir
1617
Seguidores

Estrategia de tendencia de volumen de precios extendido con aceleración del impulso

Descripción general

La estrategia de aceleración de la dinámica de la tendencia de volumen de precios extendida (EPVT) es una estrategia de combinación de indicadores técnicos. Combina el indicador de aceleración de la dinámica con otros indicadores auxiliares para identificar posibles reveses de tendencia y momentos de cambio de dinámica.

Principio de estrategia

El indicador central de esta estrategia es la expansión de la tendencia de los precios (EPVT). Su método de cálculo es: volumen de transacciones acumuladas * alza y baja de los precios. Luego se calculan los valores máximos y mínimos de EPVT en un período determinado, obteniendo la zona de referencia. La curva del indicador de EPVT es la curva de diferencia entre EPVT y la zona de referencia.

Cuando la curva indicadora del EPVT cruza el eje cero hacia arriba, se produce una señal de aumento de presión de compra y de más. Por el contrario, cuando el EPVT cruza el eje cero hacia abajo, se produce una señal de vacío.

Para mejorar la calidad de la señal, la estrategia también ayuda con el uso de promedios móviles simples para confirmar la fiabilidad de los cambios de tendencia.

Análisis de las ventajas

La estrategia combina los indicadores de las tres dimensiones de la tendencia, el impulso y el volumen de transacciones, lo que permite una evaluación más completa de la voluntad de compra y venta en el mercado. El uso del indicador de tendencias de precios de extensión tiene un buen efecto en la identificación de la tendencia de exceso de peso en el corto plazo, lo que permite capturar los puntos de inflexión del mercado.

Se puede configurar una posición de frenado de tres grados fuera de la cancha, y se puede elegir una proporción de frenado diferente según las preferencias de riesgo.

Análisis de riesgos

La estrategia se basa en las características morfológicas de la curva de indicadores, que emiten una señal errónea cuando el movimiento no es típico. Además, el cambio de tres barras puede provocar un desvío innecesario de la posición.

Los parámetros se pueden ajustar o agregar otros indicadores de fluctuación para optimizar. La estrategia de stop loss también puede reducir las pérdidas individuales.

Dirección de optimización

  1. Optimización de parámetros. Por ejemplo, ajustar los parámetros del ciclo EPVT para encontrar la combinación óptima de parámetros.

  2. Aumentar las condiciones de filtro de tendencia. Por ejemplo, la dirección del canal de precios o la línea media se determina en función de la señal EPVT.

  3. Optimización de las estrategias de stop loss, como el establecimiento de stop loss de valor fijo o stop loss ATR.

Resumir

La dinámica acelera la estrategia de expansión de la tendencia de los precios, explora los cambios en la voluntad de compra y venta en el mercado a través del indicador EPVT y, por lo tanto, capta los posibles puntos de inflexión de la tendencia. La configuración de tres salidas de parada en diferentes proporciones puede satisfacer las diferentes preferencias de riesgo de los inversores.

Código Fuente de la Estrategia
/*backtest
start: 2023-01-11 00:00:00
end: 2024-01-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Extended Price Volume Trend", overlay=true )//@version=5
var cumVol = 0.
cumVol += nz(volume)
if barstate.islast and cumVol == 0
    runtime.error("No volume is provided by the data vendor.")
src = close
lenght = input(200,"Trend Lenght")   
vt = ta.cum(ta.change(src)/src[1]*volume)
upx = ta.highest(vt,lenght)
downx = ta.lowest(vt,lenght)
basex = (upx +downx)/2
VTX = vt - basex
VTY = ta.valuewhen(ta.cross(VTX,0),close,0)
plot(VTY, color=color.black, title="Extended-PVT")

/////////////////////// STRATEGY ////////////////
/////////////////////// TAKE PROFIT SECTION ////////////////
longConditionx = ta.crossover(close,VTY)
ShortConditionx = ta.crossunder(close,VTY)
tp1 = input.int(10, minval=1,title = "TP-1")
tp2 = input.int(20, minval=1,title = "TP-2")
tp3 = input.int(30, minval=1,title = "TP-3")

ematp = ta.ema(close,2)
TPTAKA1S = VTY*(1-tp1/100)
plot(TPTAKA1S, "SELL-TP1", color=color.red,linewidth = 1)
TPTAKA2S = VTY*(1-tp2/100)
plot(TPTAKA2S, "SELL-TP2", color=color.red,linewidth = 1)
TPTAKA3S = VTY*(1-tp3/100)
plot(TPTAKA3S, "SELL-TP3", color=color.red,linewidth = 1)

TPTAKA1B = VTY*(1+tp1/100)
plot(TPTAKA1B, "BUY-TP1", color=color.red,linewidth = 1)
TPTAKA2B = VTY*(1+tp2/100)
plot(TPTAKA2B, "BUY-TP2", color=color.red,linewidth = 1)
TPTAKA3B = VTY*(1+tp3/100)
plot(TPTAKA3B, "BUY-TP3", color=color.red,linewidth = 1)

BUYTP = ta.crossunder(close,VTY) or ta.crossunder(ematp,TPTAKA1B) or ta.crossunder(ematp,TPTAKA2B) or ta.crossunder(ematp,TPTAKA3B) 
SELLTP = ta.crossover(close,VTY) or ta.crossover(ematp,TPTAKA1S) or ta.crossover(ematp,TPTAKA2S) or ta.crossover(ematp,TPTAKA3S)
/////////////////////// STRATEGY ////////////////
// Check for Long Entry
longCondition = longConditionx==true
if longCondition
    strategy.entry('Long', strategy.long, comment = "ENTER-LONG")

buyclose = ShortConditionx==true or BUYTP==true 
// Exit condition 
strategy.close('Long', when=buyclose or BUYTP==true, comment = "EXIT-LONG")

// Check for Short Entry
ShortCondition = ShortConditionx==true
if ShortCondition
    strategy.entry('Short', strategy.short, comment = "ENTER-SHORT")

sellclose = longConditionx==true or SELLTP ==true
// Exit condition 
strategy.close('Short', when=sellclose or SELLTP==true, comment = "EXIT-SHORT")
///// END OF STRATEGY ///////////