La estrategia del Oscilador Estocástico Exponencial Es una versión modificada del indicador estocástico tradicional mediante la adición de un parámetro de peso exponencial para ajustar la sensibilidad del estocástico y generar señales comerciales.
El núcleo de la estrategia estocástica suavizada exponencial se encuentra en el parámetro de peso exponencial ex. La estocástica tradicional se calcula como:
s = 100 * (close - lowest low) / (highest high - lowest low)
Con el parámetro exponencial, la fórmula se convierte:
exp = ex<10? (ex)/(10-ex) : 99
s = 100 * (close - lowest low) / (highest high - lowest low)
ks = s>50? math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50
:-math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50
Al ajustar la exp, se puede cambiar la influencia de s en ks. Aumentar la exp hace que el indicador sea menos sensible mientras que disminuir la exp lo hace más sensible.
Las señales de compra se generan cuando ks cruza desde los niveles de sobrecompra.
En comparación con la estrategia estocástica tradicional, la estrategia del oscilador estocástico suavizado exponencial tiene las siguientes ventajas:
La estrategia del oscilador estocástico suavizado exponencial también tiene los siguientes riesgos:
La estrategia del oscilador estocástico suavizado exponencial se puede optimizar a partir de los siguientes aspectos:
La estrategia del Oscilador Estocástico Exponencial suavizado genera señales comerciales más confiables al ajustar la sensibilidad del indicador estocástico. Puede rastrear efectivamente las tendencias a mediano y largo plazo y también se puede optimizar en una estrategia a corto plazo. Con mayor composibilidad y optimización de parámetros, tiene el potencial de lograr rendimientos rentables más consistentes.
/*backtest start: 2023-01-11 00:00:00 end: 2024-01-17 00:00:00 period: 1d basePeriod: 1h 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/ // © faytterro //@version=5 strategy("Exponential Stochastic Strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100) len=input.int(14, "length") ex=input.int(2, title="exp", minval=1, maxval=10) exp= ex<10? (ex)/(10-ex) : 99 s=100 * (close - ta.lowest(low, len)) / (ta.highest(high, len) - ta.lowest(low, len)) ks=s>50? math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50 : -math.pow(math.abs(s-50),exp)/math.pow(50,exp-1)+50 plot(ks, color= color.white) bot=input.int(20) top=input.int(80) longCondition = ta.crossover(ks, bot) and bar_index>0 if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = ta.crossunder(ks, top) and bar_index>0 if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) // strategy.close("My Long Entry Id") alertcondition(longCondition, title = "buy") alertcondition(shortCondition, title = "sell") h1=hline(top) h2=hline(bot) h3=hline(100) h4=hline(0) fill(h1,h3, color= color.rgb(255,0,0,200-top*2)) fill(h2,h4, color= color.rgb(0,255,0,bot*2))