SuperTrend Double Moving Average Crossover Strategy


Tarikh penciptaan: 2023-09-19 21:38:06 Akhirnya diubah suai: 2023-09-19 21:38:06
Salin: 0 Bilangan klik: 827
1
fokus pada
1617
Pengikut

Gambaran keseluruhan

Strategi ini adalah strategi silang dua garis rata berdasarkan petunjuk SuperTrend. Indikator SuperTrend terdiri daripada dua garis rata yang bersilang sebagai isyarat membeli dan menjual. Strategi ini termasuk dalam kategori strategi mengikuti trend.

Prinsip Strategi

  1. Hitung laju demafast dengan formula: 2*ema5 - ema(ema5,5)

  2. Hitung demaslow dengan formula: 2*ema2 - ema(ema2,2)

  3. Garis pantas terdiri daripada 5 hari EMA, bertindak balas dengan lebih cepat terhadap perubahan harga; garis perlahan terdiri daripada 2 hari EMA, bertindak balas dengan lebih perlahan terhadap perubahan harga.

  4. Apabila garisan pantas dari arah bawah menembusi garisan perlahan, ia menghasilkan isyarat beli; apabila garisan pantas dari arah atas jatuh dan menembusi garisan perlahan, ia menghasilkan isyarat jual.

  5. Dengan menggunakan dua garis rata yang berbeza untuk menentukan perubahan trend harga, ini adalah strategi trend-following yang tipikal.

  6. Pelaksanaan transaksi berdasarkan isyarat beli dan jual.

Idea teras strategi ini mudah dan jelas, dengan menyesuaikan parameter garis purata untuk menyesuaikan diri dengan pasaran yang berbeza-beza, merupakan strategi trend yang biasa.

Analisis kelebihan

  1. Menggunakan dua garis sejajar untuk menilai perubahan arah trend, merupakan petunjuk teknikal yang mudah dan praktikal.

  2. Parameter garis cepat dan lambat boleh disesuaikan dan boleh dioptimumkan untuk kitaran yang berbeza.

  3. Isyarat strategi jelas, pelaksanaan urus niaga mudah.

  4. Fungsi pengesanan lengkap untuk mengesahkan keberkesanan strategi.

  5. Antara muka visual menunjukkan secara langsung keadaan persilangan.

  6. Strategi mudah difahami dan sesuai untuk pelajar baru.

Analisis risiko

  1. Persaingan dua hala boleh menyebabkan isyarat yang terlewat atau isyarat palsu. Parameter boleh disesuaikan dengan sewajarnya atau syarat penapisan boleh ditambah untuk memperbaiki.

  2. Tidak dapat menangani pasaran yang betul atau bergolak dengan berkesan, mudah rugi. Anda boleh memasukkan mekanisme penilaian trend untuk pengoptimuman.

  3. Parameter pengesanan boleh dioptimumkan dalam ruang terhad, kesan cakera tetap belum disahkan.

  4. Perlu memberi perhatian kepada kesan kos urus niaga terhadap keuntungan.

Arah pengoptimuman

  1. Uji kombinasi parameter dengan panjang garis rata yang berbeza untuk mencari yang paling sesuai.

  2. Tambah indikator lain untuk penapisan isyarat, seperti indikator KDJ dan sebagainya.

  3. Menyertai mekanisme penangguhan kerugian untuk mengawal kerugian tunggal.

  4. Menambah fungsi pengurusan kedudukan, menggunakan peratusan dagangan yang berbeza mengikut keadaan pasaran.

  5. Mengoptimumkan strategi pengurusan wang, menetapkan petunjuk risiko seperti kadar keuntungan dan kerugian.

  6. Pertimbangkan untuk menggunakan algoritma seperti pembelajaran mesin untuk optimasi parameter atau penilaian isyarat.

ringkaskan

Strategi SuperTrend adalah strategi pemantauan trend yang mudah, dengan parameter yang disesuaikan untuk menyesuaikan diri dengan pelbagai kitaran, yang boleh digunakan secara praktikal. Digabungkan dengan petunjuk teknikal lain untuk pengoptimuman skala dan kawalan risiko, ia dapat meningkatkan kestabilan strategi. Strategi ini mudah dipelajari, tetapi juga mempunyai potensi pengembangan yang besar.

Kod sumber strategi
/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

strategy(title = "SuperTrend", shorttitle = "BTC")
ema5=ta.ema(close, 5)
ema2=ta.ema(close, 2)
 
demaFast =  request.security(syminfo.tickerid, "30", 2 * ema5 - ta.ema(ema5, 5)  )

plotchar((2 * ema5 - ta.ema(ema5, 5)), "d", "", location = location.top)
plotchar(demaFast, "fast", "", location = location.top)

demaSlow  = request.security(syminfo.tickerid,"30", 2 * ema2 - ta.ema(ema2, 2)  )
plotchar(demaSlow, "slow", "", location = location.top)

buy = ta.crossover(demaSlow, demaFast)
sell = ta.crossunder(demaSlow, demaFast)
strategy.entry("BUY", strategy.long, 1, when = buy)
strategy.entry("SELL", strategy.short, 1, when = sell )