
La estrategia de movimiento aleatorio de indicadores aleatorios es una estrategia de movimiento aleatorio de indicadores aleatorios que se basa en los indicadores aleatorios tradicionales, con la adición de un parámetro de peso de índice, que puede ajustar la sensibilidad de los indicadores aleatorios, lo que genera una señal de negociación. Cuando el indicador se mueve desde la zona de sobrecompra, hace más y cuando se mueve desde la zona de sobreventa, hace menos.
El núcleo de la estrategia de desplazamiento de los indicadores aleatorios es el parámetro de peso exponencial ex. La fórmula de cálculo de los indicadores aleatorios tradicionales es:
s=100 * (close - 最低价) / (最高价 - 最低价)
Después de agregar el parámetro del índice, la fórmula de cálculo es:
exp= ex<10? (ex)/(10-ex) : 99
s=100 * (close - 最低价) / (最高价 - 最低价)
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
Ajustar el valor de exp puede cambiar la influencia de s sobre s, aumentar el valor de exp hace que el indicador sea menos sensible y disminuir el valor de exp hace que el indicador sea más sensible.
Cuando k se revuelve desde la zona de sobrecompra se genera una señal de compra; cuando k se revuelve desde la zona de sobreventa se genera una señal de venta.
Las estrategias de movimiento de indicadores aleatorios de índices lisos tienen las siguientes ventajas en comparación con las estrategias aleatorias tradicionales:
Las estrategias de desviación de índice de deslizamiento aleatorio también presentan los siguientes riesgos:
Las estrategias de desviación de índices de deslizamiento aleatorio pueden ser optimizadas en los siguientes aspectos:
La estrategia de fluctuación de indicadores aleatorios de índices lisos produce una señal de negociación más confiable al ajustar la sensibilidad de los indicadores aleatorios. La estrategia puede seguir de manera efectiva las tendencias de la línea media larga, y también puede optimizarse como una estrategia de línea corta. Se espera obtener mejores ganancias estables a través de la complejidad y la optimización de parámetros.
/*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))