
Descripción general
Esta estrategia determina la dirección de la tendencia a través de la relación entre el tren superior, el tren medio y el tren inferior de la franja de Brin y el promedio móvil de 200 días. En una tendencia múltiple, haga más cuando el precio toque el tren inferior de la franja de Brin; en una tendencia de cabeza vacía, cuando el precio toque el tren superior de la franja de Brin.
El principio
- Para juzgar la tendencia: tendencia de múltiples cabezas cuando Brin está en trayectoria y en trayectoria a la vez es mayor que la media móvil de 200 días; tendencia de cabezas vacías cuando Brin está en trayectoria y en trayectoria a la vez es menor que la media móvil de 200 días
- Entradas: cuando hay una tendencia múltiple, los precios tocan la banda de Brin para hacer más; cuando hay una tendencia sin cabeza, los precios tocan la banda de Brin para hacer más
- Salida: cuando se mantiene una posición con más titulares, el precio toca el punto de equilibrio cuando el promedio móvil simple de 250 días de la banda de Brin se pone en marcha o se rompe; cuando se mantiene una posición con un blanco, el precio toca el punto de equilibrio cuando el promedio móvil simple de 300 días de Brin se pone en marcha o se rompe
Las ventajas
- El uso de las bandas de Brin para determinar la dirección de la tendencia, evitando la repetición de operaciones cuando no hay una dirección clara
- Utiliza el rango de fluctuación de la banda de Brin para determinar entradas y salidas apropiadas cuando la dirección de la tendencia es clara
- Se ha añadido el juicio auxiliar de las medias móviles para evitar pérdidas imprevistas.
Riesgos y soluciones
- Los parámetros de la banda de Bryn están mal configurados y causan errores de juicio: los parámetros de la banda de Bryn deben ajustarse para encontrar la longitud de ciclo más adecuada
- Promedio móvil incorrecto de getParameter, con frecuentes paros o pérdidas inesperadas: se deben probar diferentes parámetros para encontrar el más estable
- Cambios bruscos en la situación, como noticias importantes, que causan fluctuaciones anormales: debe establecerse un stop loss y controlar las pérdidas individuales
Dirección de optimización
- Prueba el rendimiento de la estrategia bajo diferentes parámetros de ciclo para encontrar el parámetro óptimo
- Incrementar los mecanismos de suspensión de pérdidas para evitar pérdidas considerables en circunstancias excepcionales
- Combinación de otros indicadores para confirmar el tiempo de entrada y aumentar la probabilidad de éxito de la estrategia
Resumir
Esta estrategia determina la dirección de la tendencia a través de la banda de Brin, y el sistema de negociación formado por la media móvil auxiliada por la banda de Brin después de la tendencia clara, garantiza la corrección de la dirección de negociación y utiliza el rango de fluctuación para bloquear el beneficio adecuado. Al mismo tiempo, hay algunos problemas de selección de parámetros y parada de pérdidas.
Código Fuente de la Estrategia
/*backtest
start: 2023-11-29 00:00:00
end: 2023-12-06 00:00:00
period: 1m
basePeriod: 1m
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/
// © Aayonga
//@version=5
strategy("boll trend", overlay=true,initial_capital=1000,default_qty_type=strategy.fixed, default_qty_value=1 )
bollL=input.int(20,minval=1,title = "length")
bollmult=input.float(2.3,minval=0,step=0.1,title = "mult")
basis=ta.ema(close,bollL)
dev=bollmult*ta.stdev(close,bollL)
upper=basis+dev
lower=basis-dev
smaL=input.int(200,minval=1,step=1,title = "trend")
sma=ta.sma(close,smaL)
//多头趋势
longT=upper>sma and basis>sma and lower>=sma
//空头趋势
shortT=upper<sma and basis<sma and lower<=sma
//入场位
longE=ta.crossover(close,lower)
shortE=ta.crossover(close,upper)
//出场位
longEXIT=ta.crossover(high,upper) or ta.crossunder(close,ta.sma(close,300))
shortEXIT=ta.crossunder(low,lower) or ta.crossover(close,ta.sma(close,250))
if longT and longE
strategy.entry("多long",strategy.long)
if longEXIT
strategy.close("多long",comment = "close long")
if shortE and shortT
strategy.entry("空short",strategy.short)
if shortEXIT
strategy.close("空short",comment = "close short")