이것은 웨이브트렌드 지표, 피보나치 리트레이스먼트 레벨, 그리고 RSI 지표를 결합한 포괄적인 양적 거래 전략이다. 이 전략은 여러 기술적 지표의 조율을 통해 시장 추세와 가격 변동에서 최적의 거래 기회를 추구한다. 동적 조정을 통해 시장 추세를 지속적으로 추적하고 여러 신호 확인을 통해 거래 정확도를 향상시킨다.
이 전략은 몇 가지 핵심 요소에 기반합니다. 1. 웨이브트렌드 지표: 기하급수적인 이동 평균 (EMA) 및 가격 표준편차를 계산하여 동적 변동성 채널을 구성합니다. 빠른 라인 (WT1) 이 느린 라인 (WT2) 을 넘을 때 거래 신호가 생성됩니다. 2. 피보나치 리트레이싱 레벨: 전략은 38.2%, 50% 및 61.8%의 세 가지 주요 피보나치 리트레이싱 레벨을 도출하여 가격 최고와 최저를 동적으로 계산하고 업데이트합니다. 3. RSI 지표: 14 기간 상대 강도 지표 (RSI) 를 사용하여 시장 과잉 구매 및 과잉 판매 상황을 확인합니다. 4. 복수의 신호 확인: 전략은 웨이브 트렌드 크로스 오버 신호, RSI 과잉 구매/ 과잉 판매 신호 및 피보나치 수준과 가격 관계 등 특정 조건의 동시에 만족을 요구합니다.
이것은 명확한 논리를 가진 잘 설계된 양적 거래 전략입니다. 여러 기술적 지표의 결합 사용을 통해 위험을 제어하면서 시장 기회를 효과적으로 포착 할 수 있습니다. 전략의 주요 장점은 신뢰할 수있는 신호 시스템과 포괄적인 위험 관리 메커니즘에 있습니다. 제안 된 최적화 방향을 통해 전략의 안정성과 적응력이 더욱 향상 될 수 있습니다.
/*backtest start: 2024-12-17 00:00:00 end: 2025-01-15 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy(title="Şinasi Özel Tarama", shorttitle="Şinasi Tarama", overlay=true) // LazyBear WaveTrend Göstergesi n1 = input(10, "Channel Length") n2 = input(21, "Average Length") obLevel1 = input(60, "Over Bought Level 1") obLevel2 = input(53, "Over Bought Level 2") osLevel1 = input(-60, "Over Sold Level 1") osLevel2 = input(-53, "Over Sold Level 2") ap = hlc3 esa = ta.ema(ap, n1) d = ta.ema(math.abs(ap - esa), n1) ci = (ap - esa) / (0.015 * d) tci = ta.ema(ci, n2) wt1 = tci wt2 = ta.sma(wt1, 4) plot(0, color=color.gray) plot(obLevel1, color=color.red) plot(osLevel1, color=color.green) plot(obLevel2, color=color.red) plot(osLevel2, color=color.green) plot(wt1, color=color.green) plot(wt2, color=color.red) plot(wt1 - wt2, color=color.blue, style=plot.style_area, transp=80) plot(ta.crossover(wt1, wt2) ? wt2 : na, color=color.black, style=plot.style_circles, linewidth=3) plot(ta.crossover(wt1, wt2) ? wt2 : na, color=(wt2 - wt1 > 0 ? color.red : color.lime), style=plot.style_circles, linewidth=2) barcolor(ta.crossover(wt1, wt2) ? (wt2 - wt1 > 0 ? color.aqua : color.yellow) : na) // Fibonacci seviyelerini çizmek için yeni en yüksek ve en düşük fiyatları her yeni mumda güncelleme var float fibLow = na var float fibHigh = na // Fibonacci seviyelerini yeniden hesapla if (na(fibLow) or na(fibHigh)) fibLow := low fibHigh := high else fibLow := math.min(fibLow, low) fibHigh := math.max(fibHigh, high) fib38 = fibLow + 0.382 * (fibHigh - fibLow) fib50 = fibLow + 0.5 * (fibHigh - fibLow) fib618 = fibLow + 0.618 * (fibHigh - fibLow) plot(fib38, color=color.orange, linewidth=1, title="Fibonacci 38.2%") plot(fib50, color=color.purple, linewidth=1, title="Fibonacci 50%") plot(fib618, color=color.blue, linewidth=1, title="Fibonacci 61.8%") // RSI hesaplama rsiPeriod = input(14, title="RSI Length") rsiValue = ta.rsi(close, rsiPeriod) plot(rsiValue, color=color.blue, title="RSI") // Buy ve Sell sinyalleri // Buy sinyali buyCondition = rsiValue < 30 and close < fib38 and close < fib50 and close < fib618 and ta.crossover(wt1, wt2) plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") // Sell sinyali sellCondition = rsiValue > 70 and close > fib38 and close > fib50 and close > fib618 and ta.crossunder(wt1, wt2) plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Strateji giriş ve çıkış // Buy (Alım) işlemi if (buyCondition) strategy.entry("Buy", strategy.long) // Sell (Satım) işlemi if (sellCondition) strategy.entry("Sell", strategy.short) // TP (Take Profit) seviyesinin 3500 pip olarak ayarlanması // SL (Stop Loss) seviyesinin 7000 pip olarak ayarlanması pipValue = syminfo.mintick * 10 // Pip değeri // Buy TP (Alım TP) seviyesi buyTPCondition = buyCondition strategy.exit("Buy Exit", "Buy", limit=close + 300 * pipValue, stop=close - 700 * pipValue) // Sell TP (Satım TP) seviyesi sellTPCondition = sellCondition strategy.exit("Sell Exit", "Sell", limit=close - 3500 * pipValue, stop=close + 7000 * pipValue)