Estrategias más allá de las nubes


Fecha de creación: 2023-11-03 16:10:33 Última modificación: 2023-11-03 16:10:33
Copiar: 2 Número de Visitas: 638
1
Seguir
1617
Seguidores

Estrategias más allá de las nubes

Descripción general

La estrategia utiliza pedidos auxiliados por indicadores de tendencia súper y filtración en combinación con la nube y el color de la línea K para aumentar la probabilidad de ganancias. El objetivo es capturar rápidamente una tendencia después del inicio de la tendencia y reducir el riesgo de pérdidas en el intervalo de liquidación.

Principio de estrategia

  1. Calcula el promedio de los precios más altos y más bajos durante el ciclo ATR como referencia.

  2. Calculación de las vías ascendentes y descendentes según el factor de multiplicidad.

  3. Cuando el precio de cierre es mayor que el de la subida, se marca como 1, cuando es menor que el de la bajada, se marca como -1, y en otras ocasiones se mantiene el estado actual.

  4. Ajuste de la línea de parada en tiempo real de acuerdo con la relación entre el precio de cierre y la posición en la vía ascendente y descendente.

  5. El rango de las nubes se calcula en función de un porcentaje de la distancia entre las órbitas.

  6. Cuando la tendencia super es 1, el precio de cierre es más bajo que el precio de apertura, y el precio de cierre es más alto que el precio de apertura.

  7. Cuando se hace más, el precio de compra y venta es el precio de cierre de la línea K anterior. Cuando se hace más, el precio de venta y compra es el precio de cierre de la línea K anterior.

  8. El filtro de tiempo permite cerrar todas las posiciones.

Análisis de las ventajas

La estrategia combina el indicador de tendencia súper y el concepto de la nube, que permite capturar la dirección de la tendencia rápidamente después de que la tendencia se inicia. En comparación con los paros móviles normales, la línea de parada de tendencia súper puede rastrear los cambios en los precios más rápidamente. El filtro de la nube evita las pérdidas causadas por las falsas rupturas.

  1. Los indicadores de tendencias súper son muy sensibles y tienen una gran capacidad para seguir tendencias.

  2. El filtro de concepto de la nube reduce las pérdidas por brechas falsas.

  3. El color de la línea K ayuda a juzgar, evitando la reversión.

  4. El precio límite reduce el efecto de los puntos de deslizamiento y aumenta la probabilidad de obtener ganancias.

  5. Se puede personalizar el período de tiempo y la gestión de la posición para adaptarse a las diferentes necesidades de transacción.

Análisis de riesgos

La estrategia también tiene algunos riesgos a tener en cuenta:

  1. La configuración incorrecta de los parámetros del indicador de tendencia súper puede hacer que la curva sea demasiado sensible y genere más señales falsas.

  2. Cuando la nube es demasiado grande, puede filtrar las señales de ruptura normales y afectar la ganancia.

  3. Las ofertas limitadas pueden ser difíciles de negociar cuando la volatilidad es alta y pueden perderse oportunidades.

  4. Cualquier trazado de stop loss no puede evitar por completo el riesgo sistemático de grandes pérdidas.

  5. Cuando las posiciones son demasiado grandes, las pérdidas también se amplifican, por lo que es necesario controlar el riesgo.

Dirección de optimización

La estrategia se puede optimizar en los siguientes aspectos:

  1. Prueba diferentes mercados y variedades para encontrar la mejor combinación de parámetros de tendencias súper.

  2. La amplitud de los límites de pérdidas se ajusta de forma dinámica en función de la volatilidad del mercado.

  3. Optimización del alcance de la nube para lograr un equilibrio entre la eliminación de ruido y la retención de señales.

  4. Añade un módulo de optimización de posiciones para que el tamaño de las posiciones se mueva de forma dinámica con los cambios en el mercado.

  5. Utiliza diferentes combinaciones de parámetros en diferentes períodos de tiempo para adaptarse al ritmo del mercado.

  6. Efectos de la prueba en combinación con otros indicadores.

Resumir

En resumen, la estrategia tiene una idea general clara y una ventaja evidente en la captura de tendencias. Sin embargo, ninguna estrategia puede evitar completamente el riesgo sistemático. Se necesita controlar la posición y optimizar continuamente para reducir el riesgo que puede surgir en las operaciones reales y aprovechar al máximo la ventaja de la estrategia.

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

//Noro
//2018

//@version=2
strategy("Noro's SuperTrend Strategy v2.0 Limit", shorttitle = "STL str", 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 = 0.0
dn = 0.0
up := Trend != 1 ? 0 : Trend == 1 and close < open ? close : up[1]
dn := Trend != -1 ? close * 1000 : Trend == -1 and close > open ? close : dn[1]

//Trading
size = strategy.position_size
lot = 0.0
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]
if true
    strategy.entry("Long", strategy.long, needlong ? lot : 0, limit = up, when = (Trend == 1 and time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    strategy.entry("Short", strategy.short, needshort ? lot : 0, limit = dn, when = (Trend == -1 and time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if time > timestamp(toyear, tomonth, today, 23, 59)
    strategy.close_all()