
La estrategia de ruptura del canal de Tongan es una estrategia de comercio cuantitativa de seguimiento de tendencias. La estrategia utiliza el canal de Tongan para capturar las tendencias del mercado, mientras que el ATRSL utiliza el stop loss móvil para controlar el riesgo. La estrategia abre más posiciones cuando el precio rompe el canal de Tongan en órbita; la estrategia se cierra cuando el precio cae por debajo de la línea de stop loss móvil del ATRSL.
donLengthLos parámetros se han calculado.donLengthEl precio más alto y el precio más bajo de un ciclo, respectivamente, como la subida de la vía de DongxiandonUpperY bajo la vía.donLowerLa línea media del canal.donBasisEs el promedio de la subida y bajada de la vía.AP2 y AF2El parámetro calcula el valor de ATRSL2Y luego a la fecha de cierre.SCY el precio de parada móvil anterior.Trail2[1]La relación entre el ajuste dinámico y el precio de parada móvilTrail2。donLength、AP2 y AF2Parámetros para optimizar el rendimiento de las estrategias.La estrategia de ruptura del canal de Dongguan es una estrategia de seguimiento de tendencias clásica, que capta las tendencias a través del canal de Dongguan y utiliza el control de pérdidas móviles de ATRSL. La estrategia tiene la ventaja de ser lógica simple y clara, fácil de implementar y optimizar; la desventaja es que tiene un mal desempeño en el momento de la oscilación del mercado y la reversión de la tendencia, y la configuración de los parámetros tiene un gran impacto en el desempeño de la estrategia. En la aplicación real, se pueden agregar módulos como filtración de tendencias, optimización de paradas y administración de posiciones, para mejorar la estabilidad y rentabilidad de la estrategia.
/*backtest
start: 2023-03-16 00:00:00
end: 2024-03-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Stock Trend USE THIS", overlay = true)
donLength = input(100, minval=1)
//Donchian Long
donLower = lowest(donLength)
donUpper = highest(donLength)
donBasis = avg(donUpper,donLower)
// ATRSL
SC = close
// Slow Trail //
AP2 = input(10, title="Slow ATR period") // ATR Period
AF2 = input(3, title="Slow ATR multiplier") // ATR Factor
SL2 = AF2 * atr(AP2) // Stop Loss
Trail2 = 0.0
iff_3 = SC > nz(Trail2[1], 0) ? SC - SL2 : SC + SL2
iff_4 = SC < nz(Trail2[1], 0) and SC[1] < nz(Trail2[1], 0) ? min(nz(Trail2[1], 0), SC + SL2) : iff_3
Trail2 := SC > nz(Trail2[1], 0) and SC[1] > nz(Trail2[1], 0) ? max(nz(Trail2[1], 0), SC - SL2) : iff_4
// Long and Short Conditions
longCondition = (crossover(close,donUpper[1]))
// Close Conditions
closeLongCondition = crossunder(close,Trail2)
// Strategy logic
if (longCondition)
strategy.entry("Long", strategy.long)
alert("Open Long position")
if (closeLongCondition)
strategy.close("Long")
alert("Close Long position")
// Plot Donchian
l = plot(donLower, color=color.blue)
u = plot(donUpper, color=color.blue)
plot(donBasis, color=color.orange)
fill(u, l, color=color.blue)
plot(Trail2, color=color.blue, title="ATRSL Trail")