이 전략은 트렌드를 따르는 거래 시스템으로 MACD (Moving Average Convergence Divergence) 와 RSI (Relative Strength Index) 를 결합합니다. 5분 시간 프레임에서 작동하며, MACD 크로스오버와 RSI 과잉 구매/ 과잉 판매 수준을 분석하여 거래 신호를 생성합니다. 전략은 리스크 관리에 대한 비율 기반의 스톱 로스 및 영업 메커니즘을 통합합니다.
이 전략은 다음과 같은 핵심 논리에 기반합니다.
이 전략은 MACD와 RSI 통합을 통해 트렌드 추적 및 모멘텀 특성을 결합한 거래 시스템을 구축합니다. 포괄적인 리스크 제어 메커니즘과 명확한 거래 논리는 좋은 실용성을 제공합니다. 제안된 최적화 방향에 의해 전략은 추가 개선의 여지가 있습니다. 라이브 거래 전에 철저한 백테스팅을 수행하고 특정 시장 특성에 따라 매개 변수를 조정하는 것이 좋습니다.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-11 08:00:00 period: 1d basePeriod: 1d 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/ //@version=5 strategy("MACD + RSI Basit Strateji", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // İndikatör parametreleri fastLength = input(12, "MACD Fast Length") slowLength = input(26, "MACD Slow Length") signalLength = input(9, "MACD Signal Length") rsiLength = input(14, "RSI Period") rsiOversold = input(45, "RSI Oversold Level") rsiOverbought = input(55, "RSI Overbought Level") // Stop Loss ve Take Profit ekledim stopLoss = input(1.2, "Stop Loss (%)") takeProfit = input(2.4, "Take Profit (%)") // MACD hesaplama [macdLine, signalLine, histLine] = ta.macd(close, fastLength, slowLength, signalLength) // RSI hesaplama rsiValue = ta.rsi(close, rsiLength) // EMA trend filtresi emaValue = ta.ema(close, 10) // Alım sinyali koşulları - sadece MACD ve RSI kullanalım longCondition = macdLine > signalLine and rsiValue < rsiOversold // Satım sinyali koşulları shortCondition = macdLine < signalLine and rsiValue > rsiOverbought // Pozisyon yönetimi - Stop Loss ve Take Profit ekledim if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("TP/SL", "Long", profit = close * takeProfit / 100, loss = close * stopLoss / 100) if (shortCondition) strategy.close("Long") // Grafik göstergeleri plotshape(longCondition, title="Alım", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.large, text="AL") plotshape(shortCondition, title="Satım", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.large, text="SAT") // İndikatörleri göster plot(rsiValue, "RSI", color=color.purple) hline(rsiOversold, "Oversold", color=color.gray) hline(rsiOverbought, "Overbought", color=color.gray)