
La estrategia se basa en el cálculo de la media, la media superior y la media inferior de los canales de Keltner, con la media, la media y la media superior y la media inferior llenadas de color. Después de juzgar la dirección de los canales, se realiza una venta y venta de ruptura. Se trata de una estrategia de seguimiento de tendencias.
El indicador central es el canal de Keltner. La trayectoria de la trayectoria es un promedio móvil ponderado de N días de precios típicos (precio más alto + precio más bajo + precio de cierre) / 3. La trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria de la trayectoria.
En concreto, la estrategia se basa en determinar si el precio se rompe en la vía ascendente o descendente, y se toma una decisión sobre la salida o la salida en la vía media. Si el precio de cierre es mayor que la vía ascendente, se hace más; si el precio de cierre es menor que la vía descendente, se hace vacío. La línea de parada es el MA de la vía media.
La estrategia es en general más simple y directa, pertenece a la estrategia de ruptura de precios común. La ventaja es que la idea es clara, fácil de entender y adecuada para el aprendizaje de los principiantes. Pero también hay ciertas limitaciones, es sensible a los parámetros, los parámetros de efecto no son uniformes, requiere la optimización de pruebas repetidas. Si se puede combinar con otros indicadores de juicio más complejos, se puede formar una estrategia de negociación más fuerte.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
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/
// © WMX_Q_System_Trading
//@version=3
strategy(title = "WMX Keltner Channels strategy", shorttitle = "WMX Keltner Channels strategy", overlay = true)
useTrueRange = input(true)
length = input(20, minval=5)
mult = input(2.618, minval=0.1)
mah =ema(ema( ema(high, length),length),length)
mal =ema(ema( ema(low, length),length),length)
range = useTrueRange ? tr : high - low
rangema =ema(ema( ema(range, length),length),length)
upper = mah + rangema * mult
lower = mal - rangema * mult
ma=(upper+lower)/2
uc = red
lc=green
u = plot(upper, color=uc, title="Upper")
basis=plot(ma, color=yellow, title="Basis")
l = plot(lower, color=lc, title="Lower")
fill(u, basis, color=uc, transp=95)
fill(l, basis, color=lc, transp=95)
strategy.entry("Long", strategy.long, stop = upper, when = strategy.position_size <= 0 and close >upper)
strategy.entry("Short", strategy.short, stop = lower, when = strategy.position_size >= 0 and close<lower)
if strategy.position_size > 0
strategy.exit("Stop Long", "Long", stop = ma)
if strategy.position_size < 0
strategy.exit("Stop Short", "Short", stop = ma)