Estrategia de ruptura del momentum basada en el seguimiento de tendencias


Fecha de creación: 2024-01-05 13:38:18 Última modificación: 2024-01-05 13:38:18
Copiar: 0 Número de Visitas: 382
1
Seguir
1166
Seguidores

Estrategia de ruptura del momentum basada en el seguimiento de tendencias

Descripción general

Esta estrategia se llama estrategia de ruptura dinámica basada en el seguimiento de tendencias. Utiliza indicadores de tendencia súper para determinar la dirección de la tendencia actual y combina la dirección de las entidades de la línea K para realizar un seguimiento de tendencias y realizar operaciones de ruptura dinámica.

Principio de estrategia

La estrategia se basa principalmente en el indicador de tendencia super (SuperTrend) para determinar la dirección de la tendencia actual. El indicador de tendencia super (SuperTrend) se combina con la amplitud real promedio (ATR) para calcular el ascenso y el descenso, y se utiliza como señal de tendencia alcista cuando el precio se rompe en el ascenso y como señal de tendencia bajista cuando el precio se cae en el descenso.

Cuando el indicador de tendencia súper se juzga como una tendencia alcista, se hace más si esta línea K es una entidad roja (el precio de cierre es menor que el precio de apertura) y se hace vacío si esta línea K es una entidad verde (el precio de cierre es mayor que el precio de apertura). De esta manera, se logra un movimiento de ruptura de la operación bajo el seguimiento de la tendencia.

Análisis de las ventajas

Esta estrategia, combinada con el juicio de tendencias y las características de la dinámica, puede filtrar eficazmente las brechas falsas y aumentar la eficacia de las señales de negociación. Además, seguir la tendencia para negociar, evitar operaciones en contrapeso y aumentar considerablemente la probabilidad de ganancias.

Las ventajas se resumen de la siguiente manera:

  1. Combinando el juicio de tendencias y las características de la dinámica, filtra brechas falsas
  2. Seguir la dirección de las tendencias y evitar las inversiones en contra
  3. Una mayor probabilidad de ganancias

Análisis de riesgos

Los principales riesgos de esta estrategia son los siguientes:

  1. Los parámetros de los indicadores de tendencias súper se establecen incorrectamente, lo que puede conducir a un error de juicio en el indicador y generar una señal errónea.
  2. Si solo se sigue la dirección de la entidad, no se puede determinar la fortaleza o debilidad de la entidad, y puede haber riesgo de pérdidas.
  3. Las ganancias y pérdidas fijas no se pueden ajustar dinámicamente y no se puede controlar la pérdida individual.

Las respuestas son las siguientes:

  1. Optimización de los parámetros del indicador de tendencias súper para que el indicador sea más preciso.
  2. Indicadores como el volumen de transacciones, el flujo de capital, etc., juzga la fortaleza de la entidad.
  3. Aumentar el stop loss dinámico para controlar las pérdidas individuales.

Dirección de optimización

Esta estrategia puede ser optimizada en las siguientes direcciones:

  1. La combinación de más indicadores técnicos para filtrar señales, como líneas de blink, KDJ, etc., mejora la eficacia de la estrategia.
  2. El uso de algoritmos de aprendizaje automático para optimizar dinámicamente los parámetros, lo que hace que los indicadores de tendencias súper sean más estables.
  3. La participación en el mecanismo de suspensión de pérdidas permite detener la salida de pérdidas antes de que las pérdidas se amplíen.
  4. Utiliza variedades con características de negociación bidireccional, como los futuros, para aprovechar al máximo las oportunidades de operación bidireccional de opciones binarias.

Resumir

En general, esta estrategia es muy adecuada para mantener posiciones a corto y medio plazo. Combinando el juicio de la tendencia y la característica de la dinámica de ruptura, puede filtrar eficazmente el ruido y mejorar la ganancia de las operaciones.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy("Noro's SuperTrend Strategy v1.0", shorttitle = "ST str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
cloud = input(25, defval = 25, minval = 5, maxval = 50, title = "cloud, % of ATR")
Factor = input(title = "Super Trend", defval = 3, minval = 1, maxval = 100)
ATR = input(title = "ATR", defval = 7, minval = 1,maxval = 100)
centr = input(true, defval = true, title = "need center of ATR?")
border = input(false, defval = false, title = "need border?")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//Super Trend ATR 1
src = close
Up=hl2-(Factor*atr(ATR))
Dn=hl2+(Factor*atr(ATR))
TUp=close[1]>TUp[1]? max(Up,TUp[1]) : Up
TDown=close[1]<TDown[1]? min(Dn,TDown[1]) : Dn
Trend = close > TDown[1] ? 1: close< TUp[1]? -1: nz(Trend[1],1)
Tsl1 = Trend==1? TUp: TDown
Tsl2 = Trend==1? TDown: TUp
limit = (Tsl1 - Tsl2) / 100 * cloud
upcloud = Tsl1 - limit
dncloud = Tsl2 + limit

//Cloud
linecolor = Trend == 1 ? green : red
centercolor = centr == true ? blue : na
cloudcolor = Trend == 1 ? green : red
cline = (Tsl1 + Tsl2) / 2
P1 = plot(Tsl1, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-1")
P2 = plot(Tsl2, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-2")
P3 = plot(cline, color = centercolor , style = line , linewidth = 1,title = "SuperTrend Center")
P4 = plot(upcloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center+1")
P5 = plot(dncloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center-1")
fill(P1, P4, color = linecolor == red ? red : lime, transp = 50)
fill(P2, P5, color = linecolor == red ? red : lime, transp = 50)

//Signals
up = Trend == 1 and close < open //and low < cline 
dn = Trend == -1 and close > open //and high > cline

//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("Long", strategy.long, needlong ? lot : 0)

if dn
    strategy.entry("Short", strategy.short, needshort ? lot : 0)