Strategi Perdagangan Pembalikan Lilin Berasaskan Saluran Fibonacci

Penulis:ChaoZhang, Tarikh: 2023-11-21 17:24:17
Tag:

img

Ringkasan

Strategi ini mengira saluran pengembangan Fibonacci berdasarkan purata bergerak untuk mengenal pasti kawasan utama sokongan dan rintangan dan membantu peniaga menjangkakan titik pembalikan yang berpotensi di pasaran.

Logika Strategi

Inti strategi ini adalah untuk mengira tiga saluran Keltner berdasarkan purata bergerak, yang membantu menentukan sempadan atas dan bawah saluran Fibonacci. tahap pengembangan Fibonacci lalai yang digunakan adalah 1.618, 2.618 dan 4.236.

Apabila menganalisis tindakan harga, peniaga boleh memberi tumpuan kepada Band Fibonacci yang melampau, yang merupakan sempadan atas dan bawah band. Jika harga berdagang di luar band selama beberapa bar dan kemudian kembali ke dalam, ia mungkin menunjukkan pembalikan yang berpotensi. corak ini menunjukkan bahawa harga telah menyimpang sementara dari julat biasa dan mungkin disebabkan oleh pembetulan.

Untuk meningkatkan ketepatan penunjuk Fibonacci Bands, peniaga sering menggunakan beberapa bingkai masa. Dengan menyelaraskan isyarat jangka pendek dengan senario bingkai masa yang lebih besar, peniaga dapat mendapatkan pemahaman yang lebih baik tentang trend pasaran secara keseluruhan.

Selain mengenal pasti potensi pembalikan, peniaga juga boleh menggunakan penunjuk Fibonacci Bands untuk menentukan titik masuk dan keluar. Tahap sokongan dan rintangan jangka pendek boleh diperoleh dari band, memberikan wawasan yang berharga untuk membuat keputusan perdagangan.

Analisis Kelebihan

Kelebihan utama strategi ini ialah:

  1. Mampu mengenal pasti kawasan sokongan dan rintangan utama untuk membantu meramalkan titik pembalikan harga.

  2. Meningkatkan ketepatan isyarat perdagangan apabila digabungkan dengan analisis pelbagai jangka masa.

  3. Boleh mengenal pasti tempat masuk dan keluar.

  4. Boleh mengukur kekuatan trend pasaran dan arah dengan menganalisis cerun garis tengah.

  5. Menggunakan nisbah semula jadi berdasarkan teori Fibonacci untuk mengenal pasti tahap harga utama.

Analisis Risiko

Risiko utama strategi ini ialah:

  1. Seperti semua penunjuk analisis teknikal, strategi tidak dapat meramalkan tindakan harga dan pembalikan dengan ketepatan 100%.

  2. Tetapan yang salah atau subjektif tahap lanjutan Fibonacci dan parameter Saluran Keltner boleh menjejaskan kebolehpercayaan isyarat.

  3. Harga boleh menembusi pita Fibonacci dan terus berjalan, mengakibatkan kerugian.

  4. Analisis pelbagai jangka masa mungkin tidak selalu boleh digunakan.

  5. Isyarat mungkin kurang boleh dipercayai di pasaran dengan turun naik tinggi atau kecairan rendah.

Untuk mengurangkan risiko ini, mengesahkan isyarat dengan penunjuk lain seperti RSI, menyesuaikan parameter untuk memenuhi keadaan pasaran yang berbeza, menggunakan stop loss untuk mengawal risiko setiap perdagangan.

Arahan pengoptimuman

Strategi ini boleh dioptimumkan dengan beberapa cara:

  1. Uji pelbagai jenis dan panjang parameter untuk mengoptimumkan purata bergerak dan Saluran Keltner untuk lebih sesuai dengan sifat statistik pasaran yang berbeza.

  2. Uji kawasan utama Fibonacci lain seperti 0.5 atau 0.786 sebagai zon lanjutan untuk Fibonacci Bands.

  3. Gabungkan isyarat kemasukan dengan corak harga, jumlah atau penunjuk lain untuk pengesahan.

  4. Mengoptimumkan strategi stop loss untuk keluar lebih awal apabila trend berbalik.

  5. Pengoptimuman uji balik peraturan kemasukan dan keluar.

Kesimpulan

Ringkasnya, strategi berasaskan saluran Fibonacci untuk mengenal pasti kawasan sokongan / rintangan utama untuk perdagangan pembalikan lilin adalah pendekatan yang berkesan untuk memanfaatkan prinsip nisbah semula jadi untuk membimbing keputusan perdagangan. Strategi ini telah menunjukkan prestasi yang kukuh dalam pelbagai keadaan pasaran. Penambahbaikan lanjut dalam penyesuaian parameter dan kawalan risiko dapat meningkatkan daya tahannya. Secara keseluruhan, ia menyediakan peniaga alat yang cekap untuk mengenal pasti peluang perdagangan di pasaran yang kompleks dan dinamik.


/*backtest
start: 2023-10-21 00:00:00
end: 2023-11-20 00:00:00
period: 1h
basePeriod: 15m
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/
// © blackcat1402
//@version=5
strategy('[blackcat] L2 Fibonacci Bands', overlay=true)

// Define the moving average type and length
maType = input.string(title='MA Type', defval='WMA', options=['SMA', 'EMA', 'WMA', 'HMA'])
maLength = input.int(title='MA Length', defval=233, minval=1)
src = input(title='Data Source', defval=hl2)

// Define the Fibonacci expansion levels
fib1 = input.float(title='Fibonacci Level 1', defval=1.618, minval=0)
fib2 = input.float(title='Fibonacci Level 2', defval=2.618, minval=0)
fib3 = input.float(title='Fibonacci Level 3', defval=4.236, minval=0)

// Calculate the moving average
ma = maType == 'SMA' ? ta.sma(src, maLength) : maType == 'EMA' ? ta.ema(src, maLength) : maType == 'WMA' ? ta.wma(src, maLength) : maType == 'HMA' ? ta.hma(src, maLength) : na

// Calculate the Keltner Channels
kcMultiplier = input.int(title='Keltner Channel Multiplier', defval=2, minval=0)
kcLength = input.int(title='Keltner Channel Length', defval=89, minval=1)
kcTrueRange = ta.tr
kcAverageTrueRange = ta.sma(kcTrueRange, kcLength)
kcUpper = ma + kcMultiplier * kcAverageTrueRange
kcLower = ma - kcMultiplier * kcAverageTrueRange

// Calculate the Fibonacci Bands
fbUpper1 = ma + fib1 * (kcUpper - ma)
fbUpper2 = ma + fib2 * (kcUpper - ma)
fbUpper3 = ma + fib3 * (kcUpper - ma)
fbLower1 = ma - fib1 * (ma - kcLower)
fbLower2 = ma - fib2 * (ma - kcLower)
fbLower3 = ma - fib3 * (ma - kcLower)

// Plot the Fibonacci Bands
plot(ma, title='Midband', color=color.new(color.blue, 0), linewidth=2)
plot(fbUpper1, title='Upper Band 1', color=color.new(color.green, 0), linewidth=1)
plot(fbUpper2, title='Upper Band 2', color=color.new(color.green, 0), linewidth=1)
plot(fbUpper3, title='Upper Band 3', color=color.new(color.green, 0), linewidth=1)
plot(fbLower1, title='Lower Band 1', color=color.new(color.red, 0), linewidth=1)
plot(fbLower2, title='Lower Band 2', color=color.new(color.red, 0), linewidth=1)
plot(fbLower3, title='Lower Band 3', color=color.new(color.red, 0), linewidth=1)

// Define the entry and exit conditions
longCondition = ta.crossover(src, fbUpper3) and ta.rsi(src, 14) > 60
shortCondition = ta.crossunder(src, fbLower3) and ta.rsi(src, 14) < 40
exitCondition = ta.crossover(src, ma) or ta.crossunder(src, ma)

// Execute the trades
if longCondition
    strategy.entry('Long', strategy.long)
if shortCondition
    strategy.entry('Short', strategy.short)
if exitCondition
    strategy.close_all()



Lebih lanjut