Strategi pembalikan tiga hari untuk perdagangan ikan laut adalah berdasarkan kepada Larry Connors dan Cesar Alvarez dalam buku mereka, High Probability ETF Trading Kit. Dalam buku itu, penulis membincangkan strategi pulangan rata-rata tiga hari untuk ETF dengan kebarangkalian tinggi, yang mempunyai peraturan mudah:
Melalui latihan dan pengulangan, saya mendapati bahawa strategi ini akan lebih berkesan jika menggunakan EMA dan bukan SMA untuk mengira garis trend. Oleh itu, skrip ini menggunakan EMA untuk mengira garis trend. Saya juga membuat panjang EMA yang keluar boleh disesuaikan.
Strategi ini berfungsi seperti berikut:
Di antaranya, keluar dari EMA secara lalai adalah EMA 5 hari, boleh disesuaikan dengan panjangnya.
Idea utama strategi ini adalah untuk memanfaatkan kesan pembalikan jangka pendek. Apabila harga saham menunjukkan kelemahannya selepas penurunan berturut-turut, kemungkinan besar akan berlaku pembalikan jangka pendek. Strategi ini menilai apakah ada peluang pembalikan dengan menilai sama ada harga telah berkurangan selama tiga hari berturut-turut dan berada di bawah rata-rata jangka pendek.
Strategi ini mempunyai kelebihan yang berbeza berbanding strategi tradisional yang bergerak rata-rata:
Dengan mengambil kesempatan daripada tiga hari berturut-turut penyingkiran, ia meningkatkan kualiti isyarat dagangan.
Gabungan dengan penapis garis purata panjang dan pendek, mengelakkan perdagangan di pasaran yang sedang tren.
Garis trend yang dikira menggunakan EMA dan bukannya SMA adalah lebih sensitif dan lebih cepat untuk menangkap pembalikan.
Tempoh keluar dari EMA boleh disesuaikan dan anda boleh menyesuaikan strategi hentian kerugian mengikut pasaran.
Frekuensi dagangan rendah, hanya memegang kedudukan 1-2 hari setiap kali, mengelakkan risiko memegang lebih banyak kedudukan.
Strategi ini juga mempunyai risiko:
Risiko kegagalan pembalikan. Selepas isyarat pembalikan berlaku, harga mungkin gagal untuk menembusi dan terus turun dan tidak bangkit.
Risiko penghentian yang kerap. Dalam keadaan yang bergolak, harga mungkin sering mencetuskan penghentian.
Risiko pengoptimuman parameter. Keluar dari EMA dan parameter lain yang memerlukan ujian dan pengoptimuman berterusan mengikut pasaran, jika tidak disesuaikan, ia boleh menyebabkan kesan yang tidak baik.
Risiko terlalu optimasi. Berhati-hati untuk mengelakkan overfit dan parameter yang ditetapkan dengan mantap.
Anda boleh mengurangkan risiko dengan:
Mengekalkan peraturan yang ketat untuk mengawal kerugian tunggal.
Pengoptimuman menggunakan parameter yang kukuh untuk mengimbangi risiko dan faedah.
Menyesuaikan saiz kedudukan, mengurangkan kedudukan tunggal, menyebarkan risiko.
Strategi ini boleh dioptimumkan dengan:
Uji EMA dengan panjang yang berbeza sebagai penunjuk masuk dan keluar dari pasaran untuk mencari parameter yang lebih sesuai.
Menambah syarat penapisan lain, seperti penunjuk tenaga kuantitatif, untuk memastikan isyarat pembalikan lebih dipercayai.
Mengoptimumkan strategi penutupan kerugian, seperti menggunakan penutupan ATR, dan menjejaki penutupan kerugian, untuk membuat penutupan kerugian lebih fleksibel.
Menggabungkan penghakiman trend, mengelakkan isyarat pembalikan berlaku dalam perdagangan yang salah dalam trend.
Mengoptimumkan portfolionya, dan menggabungkannya dengan strategi lain, menggunakan risiko penyebaran yang tidak relevan.
Menggunakan kaedah pembelajaran mesin dan lain-lain untuk mengoptimumkan penyesuaian parameter secara dinamik.
Strategi pembalikan tiga hari untuk perdagangan pantai mencari peluang pembalikan jangka pendek dengan menilai harga tiga hari berturut-turut menyusut dan lebih rendah daripada EMA jangka pendek. Ia lebih dipercayai daripada strategi garis rata bergerak tradisional, dan isyarat masuknya lebih dipercayai, dengan menyesuaikan parameter EMA untuk mengoptimumkan hentikan kerugian.
/*backtest
start: 2023-10-05 00:00:00
end: 2023-10-12 00:00:00
period: 10m
basePeriod: 1m
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/
// @version = 5
// Author = TradeAutomation
strategy(title="ETF 3-Day Reversion Strategy", shorttitle="ETF 3-Day Reversion Strategy", process_orders_on_close=true, overlay=true, commission_type=strategy.commission.cash_per_order, commission_value=1, initial_capital = 10000000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// Backtest Date Range Inputs //
StartTime = input(defval=timestamp('01 Jan 2012 05:00 +0000'), title='Start Time')
EndTime = input(defval=timestamp('01 Jan 2099 00:00 +0000'), title='End Time')
InDateRange = true
// Strategy Rules //
DayEMA5 = ta.ema(close, 5)
Rule1 = close>ta.ema(close, 200)
Rule2 = close<DayEMA5
Rule3 = high<high[1] and low<low[1] and high[1]<high[2] and low[1]<low[2] and high[2]<high[3] and low[2]<low[3]
ExitEMA = ta.ema(close, input.int(5, "EMA Length For Exit Strategy", tooltip = "The strategy will sell when the price crosses over this EMA"))
plot(DayEMA5)
plot(ExitEMA, color=color.green)
// Entry & Exit Functions //
if (InDateRange)
strategy.entry("Long", strategy.long, when = Rule1 and Rule2 and Rule3)
// strategy.close("Long", when = ta.crossunder(close, ATRTrailingStop))
strategy.close("Long", when = ta.crossover(close, ExitEMA))
if (not InDateRange)
strategy.close_all()