Strategi Qiyuan Axu Berdasarkan Rata-rata Pergerakan yang Dihaluskan


Tanggal Pembuatan: 2024-01-25 15:26:25 Akhirnya memodifikasi: 2024-01-25 15:26:25
menyalin: 1 Jumlah klik: 623
1
fokus pada
1617
Pengikut

Strategi Qiyuan Axu Berdasarkan Rata-rata Pergerakan yang Dihaluskan

Ringkasan

Gagasan utama dari strategi ini adalah menggunakan rata-rata bergerak yang halus untuk menghitung rata-rata pembukaan yang halus untuk menemukan tren harga, dan melakukan lebih banyak ketika harga bercabang dengan rata-rata pembukaan yang halus dan melakukan kosong ketika bercabang mati.

Prinsip Strategi

Strategi ini pertama-tama mendefinisikan sebuah fungsi untuk menghitung rata-rata bergerak yang halus, smoothedMovingAvg, yang mengambil nilai rata-rata bergerak dari periode sebelumnya dan harga terbaru untuk menghitung rata-rata bergerak yang halus dari periode saat ini dengan berat tertentu.

Fungsi getHAClose kemudian didefinisikan untuk menghitung harga tutup dengan menggunakan harga buka, harga tertinggi, harga terendah, dan harga tutup.

Dalam logika strategi utama, pertama-tama mendapatkan harga awal dari berbagai periode, kemudian menggunakan fungsi SmoothedMovingAvg untuk menghitung rata-rata bergerak yang halus, kemudian menggunakan fungsi getHAClose untuk menghitung harga penutupan awal yang halus.

Akhirnya, ketika harga di atas bergeser untuk menandai harga tutup, lakukan lebih banyak, turun saat posisi kosong; ketika harga di bawah bergeser untuk menandai harga tutup, kosongkan, naik saat posisi kosong.

Analisis Keunggulan

Keuntungan terbesar dari strategi ini adalah bahwa menggunakan rata-rata bergerak yang halus untuk menghitung rata-rata pengungkapan yang halus, dapat menilai tren harga dengan lebih akurat, menyaring sebagian dari kebisingan, dan menghindari sinyal yang salah dalam getaran. Selain itu, rata-rata pengungkapan itu sendiri memiliki keuntungan dari tren yang menonjol, yang digunakan dalam kombinasi dengan harga, dapat meningkatkan akurasi penilaian lebih lanjut.

Analisis risiko

Strategi ini menghadapi risiko utama sebagai berikut:

  1. Setting parameter smoothing yang tidak tepat dapat menyebabkan strategi melewatkan peluang untuk membalikkan harga atau menghasilkan sinyal yang salah. Parameter optimal harus ditemukan melalui pengukuran dan pengoptimalan berulang.
  2. Pada saat harga bergejolak, smoothed averages dapat menunda mengikuti perubahan harga, sehingga menyebabkan stop loss atau kehilangan kesempatan untuk berbalik. Pada saat ini perlu untuk menurunkan posisi menghindari risiko.

Untuk menghadapi risiko tersebut, kita dapat mengurangi risiko dan meningkatkan stabilitas strategi dengan cara seperti menyesuaikan parameter smoothing, memperkenalkan mekanisme stop loss, dan mengurangi posisi perdagangan tunggal.

Arah optimasi

Strategi ini juga dapat dioptimalkan dalam beberapa hal:

  1. Menambahkan parameter smoothing adaptif, yang secara otomatis menyesuaikan parameter ketika pasar bergejolak.
  2. Dalam kombinasi dengan indikator lain sebagai filter, untuk menghindari sinyal yang salah saat harga bergejolak. Misalnya MACD, KD dll.
  3. Menambahkan mekanisme stop loss untuk mengendalikan kerugian tunggal. Anda dapat mengatur stop loss persentase atau stop loss oscillator.
  4. Optimalkan varietas perdagangan, periode waktu, dan lain-lain, dengan fokus pada varietas dan segmen perdagangan yang paling menguntungkan.

Dengan mengoptimalkan beberapa poin di atas, Anda dapat mengurangi risiko penyesuaian kurva strategi lebih lanjut dan meningkatkan fleksibilitas dan stabilitas strategi.

Meringkaskan

Strategi ini secara keseluruhan ide yang jelas dan mudah dimengerti, dengan menghitung rata-rata cahaya untuk menilai tren harga, dan dengan demikian melakukan pendekatan panjang dan pendek. Keuntungan terbesar adalah dapat menyaring sebagian dari kebisingan, meningkatkan akurasi penilaian sinyal. Tapi ada juga beberapa parameter optimasi sulit dan mungkin kehilangan risiko cepat berbalik.

Kode Sumber Strategi
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

 //@version=5
strategy("Smoothed Heiken Ashi Strategy", overlay=true)

// Inputs
g_TimeframeSettings = 'Display & Timeframe Settings'
time_frame = input.timeframe(title='Timeframe for HA candle calculation', defval='', group=g_TimeframeSettings)

g_SmoothedHASettings = 'Smoothed HA Settings'
smoothedHALength = input.int(title='HA Price Input Smoothing Length', minval=1, maxval=500, step=1, defval=10, group=g_SmoothedHASettings)

// Define a function for calculating the smoothed moving average
smoothedMovingAvg(src, len) => 
    smma = 0.0
    smma := na(smma[1]) ? ta.sma(src, len) : (smma[1] * (len - 1) + src) / len 
    smma

// Function to get Heiken Ashi close
getHAClose(o, h, l, c) =>
    ((o + h + l + c) / 4)

// Calculate smoothed HA candles
smoothedHAOpen = request.security(syminfo.tickerid, time_frame, open)
smoothedMA1close = smoothedMovingAvg(request.security(syminfo.tickerid, time_frame, close), smoothedHALength)
smoothedHAClose = getHAClose(smoothedHAOpen, smoothedHAOpen, smoothedHAOpen, smoothedMA1close)

// Plot Smoothed Heiken Ashi candles
plotcandle(open=smoothedHAOpen, high=smoothedHAOpen, low=smoothedHAOpen, close=smoothedHAClose, color=color.new(color.blue, 0), wickcolor=color.new(color.blue, 0))

// Strategy logic
longCondition = close > smoothedHAClose
shortCondition = close < smoothedHAClose

strategy.entry("Buy", strategy.long, when=longCondition)
strategy.close("Buy", when=shortCondition)

plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)