피보나치 리트레이싱 역전 전략은 피보나치 리트레이싱 수준과 상대적 강도 지표 (RSI) 지표에 기반한 양적 거래 전략이다. 이 전략은 피보나치 채널 이론과 과잉 구매 / 과잉 판매 지표를 결합하여 단기 주기에 이익을 얻기 위해 주요 추세에 대한 역전 거래를 수행합니다.
전략은 먼저 0.618 피보나치 레벨을 기반으로 두 가지 중요한 가격 영역을 계산합니다. 0.618 배 높은 포인트와 0.618 배 낮은 포인트입니다. 가격이이 영역에 접근하면 반전이 발생할 수 있다고 믿습니다.
또한, 전략은 또한 RSI 지표를 사용하여 과잉 구매 / 과잉 판매 조건을 결정합니다. 30 이하의 RSI는 과잉 판매 상태를 나타냅니다. 70 이상의 RSI는 과잉 구매 상태를 나타냅니다. 이것은 또한 잠재적 인 가격 반전을 암시합니다.
두 조건을 결합하면 구매 신호는: 0.618 배 낮은 지점 이상으로 닫고 RSI는 30 이하가 될 때 발동됩니다. 판매 신호는: 0.618 배 높은 지점 아래로 닫고 RSI는 70 이상으로 갈 때 발동됩니다.
구매 신호에 따라 전략은 시장 가격에 길게 갈 것입니다. 판매 신호에 따라 시장 가격에 짧게 갈 것입니다. 또한 수익을 취하고 손실을 멈추는 수준이 설정되어 가격이 특정 비율로 유리한 방향으로 움직일 때 (이익을 취) 또는 특정 비율로 부정적인 방향으로 움직일 때 포지션이 종료됩니다.
이 전략은 트렌드와 역전 시나리오를 결합하여 주요 트렌드를 고려하고 단기 리트랙시에서 이익을 얻습니다. 주요 장점은 다음과 같습니다.
주의해야 할 몇 가지 위험 요소가 있습니다.
이 전략은 다음과 같이 더 최적화 될 수 있습니다.
더 많은 역사적 데이터를 수집하여 피보나치 영역 범위와 RSI 과잉 구매/ 과잉 판매 라인 등의 주요 매개 변수를 테스트하고 조정하여 실제 시장에 더 잘 맞게합니다.
촛불 패턴, 볼륨 변화 등과 같은 더 강력한 신호를 생성하기 위해 더 많은 지표를 포함합니다.
다른 거래 도구의 특성에 따라 매개 변수 또는 규칙을 조정합니다.
동적 스톱 로스 메커니즘을 실시간 가격에 추가합니다.
피보나치 리트레이스먼트 역전 전략은 단기적으로 수익을 내기 위해 추세와 역전 시나리오를 균형을 맞추고 위험을 통제합니다. 추가 최적화는 더 큰 수익을 가져올 수 있습니다.
/*backtest start: 2023-11-06 00:00:00 end: 2023-12-06 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("FBS Trade", overlay=true) // Fibonacci seviyeleri fibonacciLevels = input(0.618, title="Fibonacci Düzeltme Seviyesi") // RSI ayarları rsiLength = input(14, title="RSI Periyodu") overboughtLevel = input(70, title="RSI Satış Sinyali Seviyesi") oversoldLevel = input(30, title="RSI Alış Sinyali Seviyesi") // Take Profit ve Stop Loss yüzdesi takeProfitPercent = input(1, title="Take Profit Yüzdesi") / 100 stopLossPercent = input(1, title="Stop Loss Yüzdesi") / 100 // Fibonacci seviyelerini hesapla highFibo = high * (1 + fibonacciLevels) lowFibo = low * (1 - fibonacciLevels) // RSI hesaplama rsiValue = ta.rsi(close, rsiLength) // Alış ve satış koşulları buyCondition = close > lowFibo and rsiValue < 30 sellCondition = close < highFibo and rsiValue > overboughtLevel // Take Profit ve Stop Loss seviyeleri takeProfitLong = strategy.position_avg_price * (1 + takeProfitPercent) stopLossLong = strategy.position_avg_price * (1 - stopLossPercent) takeProfitShort = strategy.position_avg_price * (1 - takeProfitPercent) stopLossShort = strategy.position_avg_price * (1 + stopLossPercent) // Alış ve satış işlemleri if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.entry("Sell", strategy.short) // Take Profit ve Stop Loss seviyeleri if (strategy.position_size > 0) strategy.exit("Take Profit/Close Buy", from_entry="Buy", limit=takeProfitLong, stop=stopLossLong) if (strategy.position_size < 0) strategy.exit("Take Profit/Close Sell", from_entry="Sell", limit=takeProfitShort, stop=stopLossShort) // Sadece mumları ve buy/sell işlemlerini göster plot(close, color=color.black, title="Close") // Destek ve direnç bölgeleri supportLevel = input(27, title="Fibonacci Destek Seviyesi") resistanceLevel = input(200, title="Direnç Seviyesi") hline(supportLevel, "Fibonacci Destek Seviyesi", color=color.green) hline(resistanceLevel, "Direnç Seviyesi", color=color.red) // Trend çizgileri var line trendLine = na if (ta.crossover(close, highFibo)) trendLine := line.new(bar_index[1], highFibo[1], bar_index, highFibo, color=color.green, width=2) if (ta.crossunder(close, lowFibo)) trendLine := line.new(bar_index[1], lowFibo[1], bar_index, lowFibo, color=color.red, width=2) // RSI ve Fibo'yu grafiğe çizme hline(overboughtLevel, "RSI Satış Sinyali", color=color.red, linestyle=hline.style_dashed) hline(oversoldLevel, "RSI Alış Sinyali", color=color.green, linestyle=hline.style_dashed) plot(rsiValue, color=color.purple, title="RSI") // 15 dakikalıkta 3 mumda bir alarm is15MinBar = ta.change(time('15'), 1) if (is15MinBar % 3 == 0) alert("15 dakikalıkta 3 mum geçti.")