Sumber dimuat naik... memuat...

Trend Mengikut Strategi Berdasarkan Purata Bergerak 200 Hari dan Osilator Stochastic

Penulis:ChaoZhang, Tarikh: 2024-06-14 15:32:24
Tag:EMA

img

Ringkasan

Strategi ini adalah strategi trend-mengikuti berdasarkan purata bergerak 200 hari dan Osilator Stochastic. Idea utama di sebalik strategi adalah untuk menggunakan purata bergerak 200 hari untuk menentukan trend pasaran jangka panjang semasa, sementara menggunakan Osilator Stochastic untuk menangkap turun naik pasaran jangka pendek dan isyarat overbought / oversold. Apabila harga di bawah purata bergerak 200 hari dan Osilator Stochastic melintasi di atas 20 dari kawasan oversold, strategi membuka kedudukan panjang. Apabila harga di atas purata bergerak 200 hari dan Osilator Stochastic melintasi di bawah 80 dari kawasan overbought, strategi membuka kedudukan pendek. Strategi ini bertujuan untuk menangkap trend pasaran jangka panjang sambil memanfaatkan turun naik jangka pendek untuk menjana keuntungan tambahan.

Prinsip Strategi

  1. Mengira purata bergerak eksponen 200 hari (EMA) untuk menentukan trend pasaran jangka panjang semasa.
  2. Mengira pengayun Stochastic untuk menangkap turun naik pasaran jangka pendek dan isyarat overbought / oversold. Pengayun Stochastic terdiri daripada dua garis: garis %K dan garis %D. Garis %K mewakili kedudukan harga penutupan semasa berbanding dengan tertinggi tertinggi dan terendah terendah selama N hari yang lalu, sementara garis %D adalah purata bergerak M hari garis %K.
  3. Mencatatkan nilai garis %K sebelumnya untuk menentukan sama ada Osilator Stochastic telah melintasi tahap 20 dan 80.
  4. Apabila harga penutupan berada di bawah EMA 200 hari dan garis %K Osilator Stochastic melintasi di atas 20 dari bawah, strategi membuka kedudukan panjang.
  5. Apabila harga penutupan berada di atas EMA 200 hari dan garis %K dari Osilator Stochastic melintasi di bawah 80 dari atas, strategi membuka kedudukan pendek.
  6. Tetapkan tahap stop loss dan mengambil keuntungan untuk mengawal risiko dan mengunci keuntungan.

Kelebihan Strategi

  1. Menggabungkan trend jangka panjang dan turun naik jangka pendek: Strategi ini menggunakan EMA 200 hari untuk menangkap trend pasaran jangka panjang sambil menggunakan Stochastic Oscillator untuk menangkap turun naik jangka pendek, yang membolehkannya mendapat keuntungan dari kedua-dua trend dan turun naik.
  2. Isyarat masuk dan keluar yang jelas: Strategi menggunakan syarat masuk dan keluar yang ditakrifkan dengan baik, mengurangkan pengaruh pertimbangan subjektif dan meningkatkan konsistensi operasi.
  3. Kawalan risiko: Strategi menetapkan tahap stop-loss dan mengambil keuntungan, secara berkesan mengawal pendedahan risiko perdagangan individu sambil mengunci keuntungan separa.

Risiko Strategi

  1. Risiko isyarat palsu: Semasa tempoh turun naik pasaran yang tinggi atau trend yang tidak jelas, Stochastic Oscillator boleh menghasilkan banyak isyarat palsu, yang membawa kepada perdagangan dan kerugian yang kerap.
  2. Risiko pembalikan trend: Apabila trend pasaran berbalik, strategi boleh melambatkan pertimbangannya, yang membawa kepada peluang masuk yang optimum yang hilang atau pengeluaran yang lebih besar.
  3. Risiko pengoptimuman parameter: Prestasi strategi mungkin sensitif terhadap pemilihan parameter, dan kombinasi parameter yang berbeza boleh mengakibatkan perbezaan yang ketara dalam prestasi strategi.

Arahan Pengoptimuman Strategi

  1. Penyesuaian parameter dinamik: Sesuaikan parameter Stochastic Oscillator secara dinamik berdasarkan perubahan keadaan pasaran untuk menyesuaikan diri dengan persekitaran pasaran yang berbeza.
  2. Memperkenalkan penunjuk tambahan: Membina strategi yang sedia ada dengan memperkenalkan penunjuk teknikal atau faktor asas lain, seperti jumlah dagangan atau turun naik, untuk meningkatkan kebolehpercayaan dan kestabilan isyarat.
  3. Mengoptimumkan pengurusan risiko: Mengoptimumkan penetapan tahap stop-loss dan mengambil keuntungan, seperti menggunakan stop-loss dinamik atau stop-loss berasaskan turun naik, untuk mengawal risiko dengan lebih baik dan mengunci keuntungan.
  4. Pertimbangkan kos dagangan: Dalam aplikasi praktikal, pertimbangkan kesan kos dagangan terhadap prestasi strategi dan mengoptimumkan strategi dengan sewajarnya untuk mengurangkan kekerapan perdagangan dan kos.

Ringkasan

Strategi ini menggabungkan purata bergerak 200 hari dan Osilator Stochastic untuk menangkap trend pasaran jangka panjang sambil memanfaatkan turun naik jangka pendek untuk menjana keuntungan tambahan. Strategi ini mempunyai isyarat masuk dan keluar yang jelas dan langkah kawalan risiko, tetapi juga menghadapi risiko seperti isyarat palsu, pembalikan trend, dan pengoptimuman parameter. Pada masa akan datang, strategi boleh dioptimumkan dengan menyesuaikan parameter secara dinamik, memperkenalkan penunjuk tambahan, mengoptimumkan pengurusan risiko, dan mempertimbangkan kos dagangan untuk meningkatkan kestabilan dan keuntungan.


/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("WWCD Bot", overlay=true)

// Calculate the 200-day moving average
ema200 = ta.ema(close, 200)

// Calculate Stochastic Oscillator
length = input(2, title="Stochastic Length")
smoothK = input(3, title="Stochastic Smoothing")
smoothD = input(3, title="Stochastic D Smoothing")
k = ta.stoch(close, high, low, length)
d = ta.ema(k, smoothD)

// Variable to store previous value of k
var float prev_k = na

// Check if current k is above 20 and previous k was below 20
crossed_above_20 = k >= 20 and prev_k < 20
crossed_above_80 = k <= 80 and prev_k > 80

// Condition for buy and sell signals
buy_signal_condition = close < ema200 and crossed_above_20
sell_signal_condition = close > ema200 and crossed_above_80

// Store current k for the next bar
prev_k := k

// Strategy
lot_size = 1 // Position size

if (buy_signal_condition)
    strategy.entry("Buy", strategy.long, qty=lot_size)
    strategy.exit("Take Profit/Stop Loss", "Buy", stop=close - 1.00, limit=close + 16)

if (sell_signal_condition)
    strategy.entry("Sell", strategy.short, qty=lot_size)
    strategy.exit("Take Profit/Stop Loss", "Sell", stop=close + 1.00, limit=close - 16)


Berkaitan

Lebih lanjut