
La estrategia es un sistema de negociación auto-adaptativo basado en la línea media y la volatilidad, que construye un canal de negociación dinámico mediante la combinación de la media móvil del índice (EMA) y la amplitud real promedio (ATR) para negociar cuando los precios tocan el canal de subida y bajada. La idea central de la estrategia es capturar las fluctuaciones naturales del mercado y sobresalir en la corrección horizontal de las tendencias.
La estrategia utiliza tres indicadores tecnológicos clave:
El canal de transacciones se calcula de la siguiente manera:
El sistema comienza a hacer short cuando el precio toca el uptrend, y comienza a hacer short cuando toca el downtrend, se recomienda el uso de una relación de riesgo/beneficio de 2:1.
Se trata de un sistema de negociación de regresión de la media razonablemente diseñado para capturar oportunidades de fluctuación del mercado a través de una combinación de indicadores técnicos. La ventaja de la estrategia reside en su adaptabilidad y objetividad, pero se debe tener en cuenta la influencia del entorno de tendencia y la optimización de los parámetros al aplicarla.
/*backtest
start: 2022-02-11 00:00:00
end: 2025-02-08 08:00:00
period: 1d
basePeriod: 1d
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/
// © rolguergf34585
//@version=5
strategy("Grupo ROG - Cash Bands", overlay=true)
PeriodoATR = input.int(defval=14,title="Período ATR")
PeriodoMedia = input.int(defval=10,title="Período Média Móvel")
PeriodoFiltro = input.int(defval=30,title="Período Média Filtro")
Mult = input.float(defval=0.5,title="Multiplicador",step=0.1)
Casas_Decimais = input.int(defval=5,title="Casas Decimais")
ema = ta.ema(close,PeriodoMedia)
filtro = ta.ema(close,PeriodoFiltro)
atr = ta.atr(PeriodoATR)
upper = math.round(ema+atr*Mult,Casas_Decimais)
basis = ema
lower = math.round(ema-atr*Mult,Casas_Decimais)
tendencia = lower>filtro?1:upper<filtro?-1:0
plot(upper,color=color.red)
plot(lower,color=color.green)
//plot(filtro,color=color.white)
barcolor(tendencia==1?color.green:tendencia==-1?color.red:color.white)
longCondition = true//tendencia==1 //and close < lower[1]
shortCondition = true//tendencia==-1 //and close > upper[1]
// if (strategy.position_size>0)
// strategy.exit("Long", limit=upper[0])
// if (strategy.position_size<0)
// strategy.exit("Short", limit=lower[0])
if (longCondition)
strategy.entry("Long", strategy.long, limit=lower[0])
if (shortCondition)
strategy.entry("Short", strategy.short, limit=upper[0])