
A estratégia usa os sinais de cruzamento de indicadores aleatórios (Stochastic Oscillator) para identificar potenciais oportunidades de compra e venda. A estratégia gera um sinal de compra quando a linha% K do indicador aleatório atravessa a linha% D de baixo e o valor% K é inferior a 20. A estratégia gera um sinal de venda quando a linha% K atravessa a linha% D de cima e o valor% K é superior a 80.
O indicador aleatório é composto por uma linha %K e uma linha %D. A linha %K mede a posição do preço de fechamento em relação aos preços mais altos e mais baixos do período anterior. A linha %D é uma média móvel da linha %K, usada para suavizar a linha %K e produzir um sinal mais confiável. A estratégia usa um cruzamento de indicadores aleatórios para identificar uma reversão de tendência ou uma mudança de dinâmica. A estratégia gera um sinal de compra quando a linha% K atravessa a linha% D a partir de baixo e o valor% K é inferior a 20 (indicando que o ativo está em um estado de sobrevenda).
A estratégia de negociação de dinâmica de cruzamento de indicadores aleatórios usa um cruzamento de indicadores aleatórios para identificar potenciais oportunidades de compra e venda, levando em consideração o estado de supercompra/supervenda do ativo. Embora a estratégia seja simples e fácil de entender, capaz de identificar uma reversão de tendência, ela também pode produzir sinais errados e falta de confirmação de tendência. A performance da estratégia pode ser melhorada ainda mais pela adição de indicadores de confirmação de tendência, otimização de parâmetros dinâmicos e gestão de risco.
/*backtest
start: 2024-03-28 00:00:00
end: 2024-04-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Stochastic Crossover Buy/Sell", shorttitle="Stochastic Crossover", overlay=true)
// Stochastic Oscillator Parameters
length = input(14, title="Stochastic Length")
smoothK = input(3, title="Stochastic %K Smoothing")
smoothD = input(3, title="Stochastic %D Smoothing")
// Calculate %K and %D
stoch = stoch(close, high, low, length)
k = sma(stoch, smoothK)
d = sma(k, smoothD)
// Plot Stochastic Lines
plot(k, color=color.blue, linewidth=2, title="%K")
plot(d, color=color.red, linewidth=2, title="%D")
// Stochastic Crossover Buy/Sell Signals
buySignal = crossover(k, d) and k < 20 // Buy when %K crosses above %D and %K is below 20
sellSignal = crossunder(k, d) and k > 80 // Sell when %K crosses below %D and %K is above 80
// Plot Buy/Sell Arrows
plotshape(series=buySignal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=sellSignal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")
// Entry and Exit Points
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.close("Buy", when=sellSignal)
strategy.entry("Sell", strategy.short, when=sellSignal)
strategy.close("Sell", when=buySignal)