Esta estrategia utiliza dos puntos de seguimiento de stop loss basados en las reglas de comercio de tortugas para limitar las pérdidas, mientras que establece diferentes parámetros para filtrar el ruido del mercado y entrar en tendencias más pronunciadas.
La estrategia se basa principalmente en dos puntos de seguimiento de stop loss, long_1 y long_2, para determinar las señales de entrada. Long_1 sigue la tendencia a largo plazo mientras que long_2 sigue la tendencia a corto plazo. Profit1 y profit2 actúan como los puntos de stop loss.
Si el precio está por encima de long_1, el mercado está en una tendencia alcista a largo plazo. Si el precio cae por debajo de long_2, indica un retroceso a corto plazo que proporciona una buena oportunidad de entrada para ir largo. Si el precio está por debajo de long_1, no hay una tendencia a largo plazo confirmada. Pero si el precio supera long_2, indica un rebote a corto plazo y también puede tomar una posición larga.
Después de ingresar, se establecen dos pérdidas de detención de seguimiento: stoploss1 y stoploss2 y se comparan con el beneficio1 y el beneficio2 para tomar el valor máximo, con el fin de bloquear las ganancias.
Puede hacer que la estrategia sea más agresiva ajustando los parámetros de largo y beneficio para más operaciones. También optimiza los algoritmos de stop loss para ajustes adaptativos.
Esta es una estrategia general conservadora adecuada para los inversores que buscan un crecimiento constante. Al ajustar los parámetros y optimizar los algoritmos de stop loss, se puede aumentar la agresión.
/*backtest start: 2023-11-19 00:00:00 end: 2023-12-19 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Turtle Project",overlay= true) //----------------------------------------------------------- entry_1 = input(55) profit_1 = input(20) long_1 = float(na) long_1:= if high[entry_1] >= highest(high,entry_1) high[entry_1] else long_1[1] profit1 = float(na) profit1:= if low[profit_1] <= lowest(low,profit_1) low[profit_1] else profit1[1] //----------------------------------------------------------- entry_2 = input(20) profit_2 = input(10) long_2 = float(na) long_2:= if high[entry_2] >= highest(high,entry_2) high[entry_2] else long_2[1] profit2 = float(na) profit2:= if low[profit_2] <= lowest(low,profit_2) low[profit_2] else profit2[1] //------------------------------------------------------------ stoploss_1= lowest(low,1) < long_1 and highest(high,1) > long_1 stoploss_2= lowest(low,1) < long_2 and highest(high,1) > long_2 stop_1 = input(1)/100 stop_2 = input(2)/100 plotchar(stoploss_1, "high1", "▲",location.top,color=color.red ) plotchar(stoploss_2, "high2", "▲",location.top,color=color.blue) //------------------------------------------------------------ if strategy.position_size == 0 if low < long_1 if high < long_1 strategy.entry("longlong_4",strategy.long, stop=long_1) if strategy.position_size == 0 if low > long_1 if high < long_2 strategy.entry("longlong_3",strategy.long, stop=long_2) stoploss1 = float(na) stoploss1:= stoploss_1 ? strategy.position_avg_price * (1 - stop_1) : stoploss1[1] stoploss__1 = max(stoploss1,profit1) if high > long_1 and strategy.position_size > 0 strategy.exit("exit_1 ","longlong_4",stop=stoploss__1) stoploss2 = float(na) stoploss2:= stoploss_2 ? strategy.position_avg_price * (1 - stop_2) : stoploss2[1] stoploss__2 = max(stoploss2,profit2) if high > long_2 and strategy.position_size > 0 strategy.exit("exit_2 ","longlong_3",stop=stoploss__2) //-------------------------------------------------------------- plot(long_1,color=color.red ,linewidth=3) plot(long_2,color=color.blue,linewidth=3) plot(profit1,color=color.red, linewidth=1) plot(profit2,color=color.blue, linewidth=1) //plot(stoploss__1,style=plot.style_circles, color=color.yellow) //plot(stoploss__2,style=plot.style_circles, color=color.yellow) plot(stoploss1,style=plot.style_circles, color=color.blue) plot(stoploss2,style=plot.style_circles, color=color.red) //--------------------------------------------------------------