Estrategia de negociación en cuadrícula con rebote de sobreventa de índices grandes de Wavetrend

DCA EMA SMA
Fecha de creación: 2024-04-25 17:13:39 Última modificación: 2024-04-25 17:13:39
Copiar: 3 Número de Visitas: 898
1
Seguir
1617
Seguidores

Estrategia de negociación en cuadrícula con rebote de sobreventa de índices grandes de Wavetrend

Descripción general

La estrategia se basa en el indicador Wavetrend, que establece posiciones de varios jefes cuando los precios tocan estos niveles de sobreventa y sobreventa, estableciendo posiciones de varios jefes cuando los precios tocan estos niveles, y obteniendo ganancias con la liquidación cuando los precios se rebotan a los niveles de sobreventa. Es una estrategia de negociación de cuadrícula que se utiliza para capturar el movimiento de rebote y rebote de los mercados y se aplica a un ciclo de 15 minutos para monedas digitales como Bitcoin y Solana.

Principio de estrategia

  1. Calcule las dos líneas del indicador Wavetrend, una para el valor original ((wt1)) y otra para el valor de la nivelación ((wt2)).
  2. Configurar varios niveles de sobreventa (oslevel1 a 8) y de sobrecompra (Oblevel1 a 5)
  3. Cuando wt1 y wt2 están a la vez por debajo de un nivel de sobreventa, y wt1 está por encima de wt2, se abre una posición múltiple. Cuanto más bajo sea el nivel, más radical será la apertura.
  4. Cuando wt1 y wt2 están a la vez por encima del nivel de sobreventa 1, y wt1 está por debajo de wt2, se elimina el 70% de la posición de más cabeza.
  5. Repita los pasos 3 y 4 para construir un sistema de transacciones en red.

Ventajas estratégicas

  1. Capturar un rebote por encima de la baja: para obtener ganancias de rebote, se puede establecer varios niveles de venta por encima de la baja y abrir una posición después de una caída significativa en el precio.
  2. Construir almacenes por lotes y controlar el riesgo: según el nivel de venta por lotes, cuanto más bajo sea el nivel, más pesado será el puesto de almacenamiento, para controlar mejor el riesgo.
  3. Paradas automáticas: cuando el precio rebota en la zona de sobreventa, se cancela la mayor parte de las posiciones automáticamente, bloqueando los beneficios.
  4. Parámetros flexibles: los niveles de sobreventa y sobrecompra se pueden ajustar según las características del mercado y las preferencias personales, para adaptarse a diferentes variedades y períodos de transacción.

Riesgo estratégico

  1. Riesgo de desplome: Si los precios siguen bajando, esto puede desencadenar una serie de señales de apertura de sobreventa, lo que podría conducir a que las posiciones pesadas se cierren.
  2. Riesgo de mercado de choque: si los precios se mueven repetidamente en las zonas de sobreventa, puede provocar que se abran varias posiciones sin poder detener las compras, lo que debilita la eficacia de la estrategia.
  3. Riesgo de parámetros: La configuración de diferentes parámetros tiene un gran impacto en el rendimiento de la estrategia, y debe optimizarse según la retroalimentación y la experiencia, de lo contrario, puede generar pérdidas.

Dirección de optimización de la estrategia

  1. Añadir filtro de tendencia: antes de abrir una posición, juzgue si la tendencia a gran escala es al alza y evite abrir una posición en una tendencia a la baja.
  2. Optimización de la gestión de posiciones: ajuste el tamaño de las posiciones abiertas de acuerdo con la distancia entre el precio y el nivel de sobreventa.
  3. Paradas dinámicas: se ajustan dinámicamente los niveles de paradas en función de la proporción de ganancias y pérdidas de la posición, en lugar de la proporción fija de paradas.
  4. Añadir un stop loss: establecer un stop loss fijo o de seguimiento para controlar la pérdida máxima de una sola transacción.

Resumir

La estrategia de trading de la red de rebote de Wavetrend es una estrategia cuantitativa basada en una señal de venta y compra de Wavetrend, que trata de capturar la tendencia de rebote después de la caída, obteniendo ganancias por diferencia de precio mediante la creación de posiciones en serie y paradas automáticas. La ventaja de esta estrategia es su capacidad de adaptación, la posibilidad de ajustar los parámetros con flexibilidad, pero también existe el riesgo de que el mercado siga bajando, la configuración inadecuada de los parámetros, etc. En la aplicación práctica, se puede considerar la adición de filtros de tendencia, posiciones dinámicas y paradas de parada, etc.

Código Fuente de la Estrategia
/*backtest
start: 2024-03-25 00:00:00
end: 2024-04-24 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// © And Isaac, all rights reserved. If there is any piracy, please call the police immediately. 

strategy(title='wavetrend',shorttitle='DCA-High win rate quantitative trading')
n1 = input(40,'channel length')
n2 = input(60,'average length')
Oblevel1 = input(40,'over bought level 1')
Oblevel2 = input(50,'over bought level 1')
Oblevel3 = input(70,'over bought level 1')
Oblevel4 = input(80,'over bought level 1')
Oblevel5 = input(100,'over bought level 2')
oslevel1 = input(-40,'over sold level 1')
oslevel2 = input(-45,'over sold level 1')
oslevel3 = input(-50,'over sold level 1')
oslevel4 = input(-55,'over sold level 1')
oslevel5 = input(-65,'over sold level 1')
oslevel6 = input(-75,'over sold level 1')
oslevel7 = input(-85,'over sold level 1')
oslevel8 = input(-100,'over sold level 2')

ap = input(title="source",defval=hlc3)
esa =ta.ema(ap, n1)
d =ta.ema(math.abs(ap - esa),n1)
ci = (ap - esa)/ (0.015 * d)
tci = ta.ema(ci,n2)

wt1 = tci
wt2 = ta.sma(wt1, 4)

plot(0,color=color.new(#787b86, 0 ))
plot(Oblevel1, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel1, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel2, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel3, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel4, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel5, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel6, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel7, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel8, color=color.new(#89ff52, 53), linewidth = 2)
plot(oslevel2, color=color.new(#89ff52, 53), linewidth = 2)
plot(wt1, color=color.new(#ff5252,0))
plot(wt2, color=color.new(#ffffff,0))
plot(wt1 - wt2, color=color.new(#00bcd4, 30),style=plot.style_area)

plot(ta.cross(wt1, wt2) ? wt2 : na, color=color.new(#ff5252,0) , style=plot.style_circles, linewidth=4 )

// barcolor(cross(wt1, wt2) ? (wt2 - wt1 > 0 ? aqua : yellow) : na)
barcolor(ta.cross(wt1, wt2) ? (wt2 - wt1 > 0 ? color.new(#ffffff,0) : color.new(#89ff52, 53)) : na)

/////////////
Long1 = wt2 < oslevel1 and wt1 < oslevel1 and wt1>wt2 and wt2 > oslevel3 and wt1>oslevel3
Long5 = wt2 < oslevel5 and wt1 < oslevel5 and wt1>wt2 and wt2 > oslevel6 and wt1>oslevel6

Long7 = wt2 < oslevel7 and wt1 < oslevel7 and wt1>wt2 and wt2 > oslevel8 and wt1>oslevel8
Long8 = wt2 < oslevel8 and wt1 < oslevel8 and wt1>wt2
LS1 = wt2 > Oblevel1 and wt1 > Oblevel1 and wt1<wt2



if Long1
    strategy.entry("L",strategy.long,comment = "做多1")


if Long5
    strategy.entry("L",strategy.long,comment = "做5")

if Long7
    strategy.entry("L",strategy.long,comment = "做多7")
if Long8
    strategy.entry("L",strategy.long,comment = "做多8")
if LS1
    strategy.close("L", qty_percent = 70,comment = "平多")