
Esta estratégia é um sistema de negociação complexo que combina vários indicadores técnicos, com o objetivo de capturar as tendências do mercado e negociar no melhor momento. Utiliza principalmente conceitos como o índice de fraqueza relativa (RSI), a média móvel simples (SMA), os níveis de retração de Fibonacci e os cruzes de ouro e cruzes de morte.
A lógica central da estratégia inclui os seguintes componentes-chave:
Esta estratégia de negociação quantitativa de seguimento de tendências de cruzamento de ouro com o RSI de Fibonacci multicíclico mostra como combinar várias ferramentas clássicas de análise técnica para criar um sistema de negociação complexo e abrangente. Através da fusão de indicadores como o RSI, o cruzamento de médias móveis e a retração de Fibonacci, a estratégia visa capturar fortes tendências de mercado, enquanto usa níveis de sobrecompra para gerenciar o risco.
Apesar das vantagens da estratégia de analisar o mercado de vários ângulos, existem alguns riscos potenciais, como a possibilidade de falsos sinais de ruptura e excesso de negociação. Para melhorar ainda mais o desempenho e a solidez da estratégia, pode-se considerar a introdução de análises de períodos de tempo múltiplos, ajustes de parâmetros dinâmicos, confirmação de volume de transação e outras direções de otimização.
Em geral, esta estratégia fornece um bom ponto de partida para os comerciantes de quantificação, mostrando como integrar diferentes indicadores técnicos em um sistema de negociação coerente. Com otimização e feedback contínuos, esta estratégia tem o potencial de se tornar uma poderosa ferramenta de acompanhamento de tendências, aplicável a várias condições de mercado.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("15min Fibonacci RSI Golden Cross Scalping Strategy", overlay=true)
// Indicators
rsi_length = 14
rsi = ta.rsi(close, rsi_length)
short_ma_length = 50
long_ma_length = 200
short_ma = ta.sma(close, short_ma_length)
long_ma = ta.sma(close, long_ma_length)
// Fibonacci Retracement Levels
var float fibHigh = na
var float fibLow = na
var float fib38 = na
var float fib50 = na
var float fib61 = na
if (ta.change(ta.highest(close, 50)))
fibHigh := ta.highest(close, 50)
if (ta.change(ta.lowest(close, 50)))
fibLow := ta.lowest(close, 50)
if (not na(fibHigh) and not na(fibLow))
fib38 := fibHigh - (fibHigh - fibLow) * 0.382
fib50 := fibHigh - (fibHigh - fibLow) * 0.50
fib61 := fibHigh - (fibHigh - fibLow) * 0.618
// Plot indicators
plot(short_ma, title="50-Period SMA", color=color.blue)
plot(long_ma, title="200-Period SMA", color=color.red)
hline(70, "RSI Overbought", color=color.red)
hline(30, "RSI Oversold", color=color.green)
plot(rsi, title="RSI", color=color.blue)
// Fibonacci retracement lines
// var line fib38_line = na
// var line fib50_line = na
// var line fib61_line = na
// if (not na(fib38))
// line.delete(fib38_line)
// fib38_line := line.new(x1=bar_index[1], y1=fib38, x2=bar_index, y2=fib38, color=color.yellow, width=1)
// if (not na(fib50))
// line.delete(fib50_line)
// fib50_line := line.new(x1=bar_index[1], y1=fib50, x2=bar_index, y2=fib50, color=color.orange, width=1)
// if (not na(fib61))
// line.delete(fib61_line)
// fib61_line := line.new(x1=bar_index[1], y1=fib61, x2=bar_index, y2=fib61, color=color.green, width=1)
// Entry and Exit Conditions
goldenCross = ta.crossover(short_ma, long_ma)
deathCross = ta.crossunder(short_ma, long_ma)
longCondition = goldenCross and close > fib50 and rsi < 70
shortCondition = deathCross and close < fib50 and rsi > 30
if (longCondition)
strategy.entry("Buy", strategy.long)
if (shortCondition)
strategy.entry("Sell", strategy.short)
// Close position conditions
if (strategy.position_size > 0 and rsi > 70)
strategy.close("Buy")
if (strategy.position_size < 0 and rsi < 30)
strategy.close("Sell")