Una estrategia sencilla basada en trailing stop y trailing buy


Fecha de creación: 2024-01-19 14:30:59 Última modificación: 2024-01-19 14:30:59
Copiar: 4 Número de Visitas: 554
1
Seguir
1617
Seguidores

Una estrategia sencilla basada en trailing stop y trailing buy

Descripción general

La estrategia permite una combinación simple de seguimiento de stop loss y seguimiento de buy-in basado en porcentajes. Se puede optimizar los parámetros de la estrategia probando diferentes combinaciones de porcentajes en diferentes marcos de tiempo y en diferentes gráficos.

Principio de estrategia

La estrategia se ejecuta principalmente a través de dos indicadores:

  1. Trailing Stop Line (TSL): calculado a partir del porcentaje de desviación de pérdidas establecido por el usuario y basado en el promedio móvil del precio de cierre de la línea N-K más reciente. Se detiene la posición cuando el precio está por debajo de la línea.
  2. Trailing Buy Line (TBL): Se calcula el movimiento promedio del precio más alto de la línea N-K más reciente, basado en el porcentaje de desviación de compra establecido por el usuario.

La regla del stop loss y la de la recompra se realiza mediante la comparación del precio y la relación entre ambos indicadores.

Ventajas estratégicas

La estrategia tiene las siguientes ventajas:

  1. Es fácil de entender y de aplicar.
  2. La flexibilidad de los parámetros de stop loss y recompra;
  3. Se puede aplicar a diferentes mercados y diferentes períodos de tiempo;
  4. El sistema de seguimiento de tendencias permite el control de pérdidas en tiempo real.

Riesgo estratégico

La estrategia también tiene los siguientes riesgos:

  1. La configuración inadecuada de los parámetros puede conducir a un stop-loss o a una recompra demasiado radical;
  2. La frecuencia de las transacciones y la posibilidad de pérdidas de puntos de deslizamiento en mercados inestables;
  3. Se necesitan parámetros adecuadamente optimizados para adaptarse a las características de los diferentes mercados.

Dirección de optimización de la estrategia

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Optimizar automáticamente las posiciones de parada y los parámetros de compra utilizando algoritmos de adaptación;
  2. Aumentar el número de posiciones y el módulo de gestión de riesgos;
  3. En combinación con otros indicadores para determinar las grandes tendencias, evitar ser atrapado en situaciones de crisis.

Resumir

La estrategia en su conjunto es una estrategia de seguimiento de tendencias muy simple e intuitiva. Se puede aplicar a diferentes mercados mediante ajustes de parámetros, mientras que la combinación de algoritmos de adaptación y otros indicadores puede aumentar aún más la estabilidad y la utilidad de la estrategia. En general, la estrategia proporciona un marco estratégico básico simple pero eficaz para el comercio de la cantidad.

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

//@version=2
//Developed from ©Finnbo code
strategy("Simple Trailing Buy & Stop Strategy", overlay=true)
offset = input(defval=1.5, title="Stop Offset %", type=float, minval=0.1, maxval=100, step=0.1)
buyoffset = input(defval=1.9, title="Trailing Buy Offset %", type=float, minval=0.1, maxval=100, step=0.1)

sumbars = input(defval=6, title="Use last x bars for calculation",  minval=1)
srcts = input(title="Source Trailing Stop calculation",  defval=close)
srctb = input(title="Source Trailing Buy calculation",  defval=close)
srctrigger = input(title="Source Stop Trigger",  defval=low)
srctriggerbuy = input(title="Source Buy Trigger",  defval=high)
tsl = rma(srcts, sumbars)*(1-(offset/100))// = (sum(srcts,sumbars)/sumbars)*(1-(offset/100))
tbuy = rma(srctb, sumbars)*(1+(buyoffset/100))
plot(tsl, color=(srctrigger<tsl)?red:green)
plot(tbuy, color=(srctriggerbuy>tbuy)?red:green)
//plotshape(crossunder(srctrigger,tsl), text="Long Stop", style=shape.circle, color=red)
alertcondition(crossunder(srctrigger,tsl), "Long Stop alert", "SELL")
//plotshape(crossover(srctriggerbuy,tbuy), text="Long", style=shape.circle, color=green)
alertcondition(crossover(srctriggerbuy,tbuy), "Long alert", "BUY")

longCondition =  crossover(srctriggerbuy,tbuy)
if (longCondition)
    strategy.entry("Long", strategy.long)
closeCondition = crossunder(srctrigger,tsl)
if (closeCondition)
    strategy.close("Long")