Strategi ini adalah sistem perdagangan berasaskan analisis teknikal yang menggabungkan RSI (Relative Strength Index) dan MACD (Moving Average Convergence Divergence) mekanisme pengesahan isyarat ganda, mencari peluang perdagangan di zon overbought dan oversold sambil menggunakan pengurusan berhenti dinamik. Strategi ini direka untuk perdagangan jangka pendek dan sesuai untuk menangkap peluang di pasaran yang bergerak cepat.
Strategi ini menggunakan dua penunjuk teknikal klasik - RSI dan MACD - untuk membina sistem isyarat dagangan. Isyarat beli diaktifkan apabila RSI jatuh di bawah 35 (zon oversold) dan MACD menunjukkan salib emas; isyarat jual diaktifkan apabila RSI meningkat di atas 70 (zon overbought) dan MACD menunjukkan salib kematian. Sistem melaksanakan mekanisme pengurusan risiko dengan 300 mata stop-loss dan 600 mata mengambil keuntungan, mewujudkan nisbah ganjaran-ke-risiko 2: 1 yang membantu mencapai pulangan positif yang diharapkan dalam perdagangan jangka panjang.
Strategi ini membina sistem perdagangan yang agak boleh dipercayai dengan menggabungkan penunjuk RSI dan MACD, dilengkapi dengan tetapan stop-loss dan mengambil keuntungan yang munasabah, menunjukkan nilai aplikasi praktikal. Walau bagaimanapun, ia masih memerlukan pengoptimuman berdasarkan keadaan pasaran sebenar, terutamanya dalam aspek kawalan risiko dan penapisan isyarat. Pelaksanaan strategi yang berjaya memerlukan peniaga mempunyai pemahaman yang mendalam tentang pasaran dan keupayaan untuk menyesuaikan parameter dengan fleksibel untuk menyesuaikan diri dengan persekitaran pasaran yang berbeza.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Scalping XAU/USD m5 (Protected)", overlay=true) // Parâmetros do usuário rsiPeriod = input(14, title="Período do RSI") rsiOverbought = input(70, title="Nível de Sobrecompra do RSI") // Ajustado para aumentar trades rsiOversold = input(35, title="Nível de Sobrevenda do RSI") // Ajustado para aumentar trades macdFast = input(6, title="Média Rápida do MACD") // Ajustado para aumentar a frequência macdSlow = input(13, title="Média Lenta do MACD") // Ajustado para aumentar a frequência macdSignal = input(7, title="Sinal do MACD") lotSize = input(1, title="Tamanho do Lote") slPips = input(300, title="Stop-Loss (pips)") // Definido pelo usuário tpPips = input(600, title="Take-Profit (pips)") // Definido pelo usuário // Cálculos do RSI e MACD rsi = ta.rsi(close, rsiPeriod) [macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignal) // Condições de compra buyCondition = (rsi < rsiOversold) and (macdLine > signalLine) and (ta.crossover(macdLine, signalLine)) // Condições de venda sellCondition = (rsi > rsiOverbought) and (macdLine < signalLine) and (ta.crossunder(macdLine, signalLine)) // Executa a compra if (buyCondition) strategy.entry("Compra", strategy.long, qty=lotSize) label.new(bar_index, close, "Compra", color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small) // Executa a venda if (sellCondition) strategy.entry("Venda", strategy.short, qty=lotSize) label.new(bar_index, close, "Venda", color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small) // Saídas com Stop-Loss e Take-Profit if (strategy.position_size > 0) // Para posições de compra strategy.exit("Saída Compra", from_entry="Compra", stop=close - slPips * syminfo.mintick, limit=close + tpPips * syminfo.mintick) if (strategy.position_size < 0) // Para posições de venda strategy.exit("Saída Venda", from_entry="Venda", stop=close + slPips * syminfo.mintick, limit=close - tpPips * syminfo.mintick) // Plota o RSI e suas linhas de sobrecompra/sobrevenda hline(rsiOverbought, "Sobrecompra", color=color.red) hline(rsiOversold, "Sobrevenda", color=color.green) plot(rsi, "RSI", color=color.blue) // Plota o MACD macdHist = macdLine - signalLine plot(macdHist, title="Histograma MACD", color=color.green, style=plot.style_histogram)