Fibonacci Retracement Strategi Pembalikan

Penulis:ChaoZhang, Tarikh: 2023-12-07 15:15:26
Tag:

img

Ringkasan

Strategi pembalikan retracement Fibonacci adalah strategi perdagangan kuantitatif berdasarkan tahap retracement Fibonacci dan penunjuk Indeks Kekuatan Relatif (RSI). Strategi ini menggabungkan teori saluran Fibonacci dan penunjuk overbought / oversold untuk membuat perdagangan pembalikan terhadap trend utama untuk mendapat keuntungan dalam kitaran jangka pendek.

Logika Strategi

Strategi ini mula-mula mengira dua zon harga penting berdasarkan tahap 0.618 Fibonacci - titik tinggi 0.618 kali dan titik rendah 0.618 kali. Apabila harga mendekati kawasan ini, kami percaya pembalikan mungkin berlaku.

Di samping itu, strategi ini juga menggunakan penunjuk RSI untuk menentukan keadaan overbought / oversold. RSI di bawah 30 menunjukkan status oversold manakala RSI di atas 70 menunjukkan keadaan overbought. Ini juga menunjukkan potensi pembalikan harga.

Menggabungkan kedua-dua keadaan ini, isyarat beli diaktifkan apabila: close break di atas titik rendah 0.618 kali dan RSI di bawah 30; isyarat jual diaktifkan apabila: close break di bawah titik tinggi 0.618 kali dan RSI melebihi 70.

Pada isyarat beli, strategi akan panjang pada harga pasaran. Pada isyarat jual, ia akan pendek pada harga pasaran. Juga, mengambil keuntungan dan stop loss tahap ditetapkan supaya kedudukan akan ditutup apabila harga bergerak menguntungkan dengan peratusan tertentu (ambil keuntungan) atau bergerak negatif dengan peratusan tertentu (henti kerugian).

Kelebihan

Strategi ini menggabungkan kedua-dua senario trend dan pembalikan, dengan mengambil kira trend utama sambil mendapat keuntungan daripada retracement jangka pendek.

  1. Tahap Fibonacci mempunyai sifat sokongan / rintangan yang melekat, berfungsi sebagai penunjuk zon harga yang berkesan.
  2. Status overbought/oversold RSI menunjukkan titik perubahan yang berpotensi.
  3. Isyarat panjang/pendek jelas, menangkap peluang pembalikan.
  4. Mengambil risiko kawalan keuntungan/henti rugi.

Risiko

Terdapat beberapa risiko yang perlu diketahui:

  1. Kerugian mungkin berlaku jika tidak ada pembalikan trend utama berlaku walaupun pantulan jangka pendek. analisis jangka masa yang lebih besar dapat membantu mengelakkan ini.
  2. Stop loss boleh dicetuskan sebelum pembalikan berlaku.
  3. Pembalikan mungkin berterusan untuk masa yang lama, memerlukan sokongan modal yang mencukupi.

Pengoptimuman

Strategi ini boleh dioptimumkan lagi dengan:

  1. Mengumpul lebih banyak data sejarah untuk menguji dan menyesuaikan parameter utama seperti julat zon Fibonacci dan garis overbought / oversold RSI untuk lebih sesuai dengan pasaran sebenar.

  2. Masukkan lebih banyak penunjuk untuk menjana isyarat yang lebih kuat, seperti corak candlestick, perubahan jumlah dll.

  3. Sesuaikan parameter atau peraturan mengikut ciri instrumen dagangan yang berbeza.

  4. Tambahkan mekanisme stop loss dinamik ke harga jejak masa nyata.

Kesimpulan

Strategi Pembalikan Retracement Fibonacci menyeimbangkan senario trend dan pembalikan untuk keuntungan dalam jangka pendek sambil mengawal risiko. Pengoptimuman lanjut boleh membawa kepada pulangan yang lebih besar.


/*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.")


Lebih lanjut