
Strategi ini adalah sistem perdagangan berdasarkan pelbagai indeks moving averages (EMA) dan petunjuk Supertrend. Ia menggunakan persilangan EMA dan petunjuk Supertrend dalam kitaran yang berbeza untuk menghasilkan isyarat beli dan jual. Strategi ini bertujuan untuk menangkap perubahan trend pasaran dan melakukan perdagangan apabila trend disahkan.
Strategi ini menggunakan tiga EMA yang berbeza (22, 79, dan 200) dan tiga indikator Supertrend yang berbeza (50, 13 dan 6). Penciptaan isyarat perdagangan berdasarkan syarat berikut:
Tanda-tanda untuk membeli:
Menjual isyarat:
Apabila syarat-syarat ini dipenuhi, strategi akan membuka kedudukan lebih atau lebih rendah. Pada masa yang sama, apabila terdapat isyarat sebaliknya, strategi akan meratakan kedudukan yang ada.
Pengesahan berganda: Penggunaan pelbagai indikator dan jangka masa dapat memberikan isyarat perdagangan yang lebih dipercayai dan mengurangkan penembusan palsu.
Pengesanan Trend: Dengan menggabungkan EMA dan Supertrend, strategi ini dapat menangkap trend jangka panjang dengan berkesan.
Fleksibiliti: Parameter EMA dan Supertrend boleh disesuaikan mengikut keadaan pasaran yang berbeza.
Pengurusan risiko: Menggunakan EMA jangka panjang ((200) sebagai penapis tambahan untuk membantu mengelakkan perdagangan berlawanan arah.
Automasi: Kaedah ini memudahkan perdagangan automatik dan mengurangkan gangguan emosi manusia.
Keterlambatan: EMA dan Supertrend adalah penunjuk keterlambatan, yang boleh menyebabkan kemasukan atau keluar yang lewat apabila trend berbalik.
Pasaran bergolak kurang baik: Strategi boleh menghasilkan isyarat palsu yang kerap dalam pasaran yang bergolak.
Terlalu banyak bergantung pada petunjuk teknikal: mengabaikan asas dan sentimen pasaran boleh menyebabkan keputusan perdagangan yang salah.
Sensitiviti parameter: prestasi strategi sangat bergantung kepada parameter EMA dan Supertrend yang dipilih.
Kekurangan mekanisme hentikan kerugian: Tidak ada strategi hentikan kerugian yang jelas dalam kod, yang boleh menyebabkan kerugian yang lebih besar.
Memperkenalkan mekanisme hentian kerugian: menetapkan hentian berdasarkan ATR atau peratusan tetap untuk mengehadkan kerugian maksimum dalam satu perdagangan.
Meningkatkan penapisan jumlah transaksi: memasukkan penunjuk jumlah transaksi ke dalam proses pengesahan isyarat untuk meningkatkan kualiti isyarat.
Pilihan parameter pengoptimuman: Menggunakan data sejarah untuk mengkaji semula kombinasi parameter EMA dan Supertrend yang berbeza untuk mencari tetapan optimum.
Menambah penapis kekuatan trend: memperkenalkan penunjuk kekuatan trend seperti ADX, hanya berdagang dalam trend yang kuat.
Menerapkan pengurusan kedudukan sebahagian: membenarkan strategi untuk membina atau mengurangkan gudang secara beransur-ansur mengikut kekuatan isyarat, dan bukannya beroperasi sepenuhnya.
Menambah pengenalan rejim pasaran: memasukkan logik untuk mengenal pasti keadaan pasaran semasa ((kecenderungan / getaran) ke dalam strategi, dan menyesuaikan tingkah laku dagangan dengan sewajarnya.
Pertimbangkan faktor asas: untuk mengeluarkan data atau peristiwa ekonomi penting sebagai penapis tambahan.
Strategi silang garis rata-rata dan indikator trend ganda adalah sistem perdagangan komprehensif yang menggabungkan beberapa petunjuk teknikal. Dengan menggunakan EMA dan indikator Supertrend yang berbeza-beza, strategi ini bertujuan untuk menangkap trend pasaran yang kuat dan melakukan perdagangan ketika trend disahkan. Walaupun strategi ini mempunyai kelebihan pengesahan dan trend yang banyak, ia juga menghadapi risiko seperti ketinggalan dan prestasi yang kurang baik di pasaran yang bergolak.
Untuk meningkatkan kestabilan dan prestasi strategi, anda boleh mempertimbangkan untuk memperkenalkan mekanisme menghentikan kerugian, mengoptimumkan pilihan parameter, menambah syarat penapisan tambahan dan mewujudkan pengurusan kedudukan yang lebih fleksibel. Di samping itu, memasukkan analisis asas ke dalam proses membuat keputusan mungkin membantu meningkatkan keberkesanan keseluruhan strategi.
Secara keseluruhannya, ini adalah rangka kerja strategi yang berpotensi, dengan pengoptimuman dan penyesuaian berterusan, diharapkan untuk mencapai prestasi yang stabil dalam pelbagai keadaan pasaran. Walau bagaimanapun, sebelum digunakan dalam perdagangan langsung, disarankan untuk melakukan pengujian semula dan pengujian ke hadapan yang menyeluruh untuk memastikan kebolehpercayaan strategi dalam pelbagai keadaan pasaran.
/*backtest
start: 2024-06-01 00:00:00
end: 2024-06-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Strategia EMA i Supertrend", overlay=true)
// Definicja parametrów
ema_short_length = 22
ema_medium_length = 79
ema_long_length = 200
supertrend_50_length = 50
supertrend_13_length = 13
supertrend_6_length = 6
supertrend_factor = 6.0 // Ustawienie czynnika na 6 dla wszystkich Supertrend
// Obliczenia EMA
ema_short = ta.ema(close, ema_short_length)
ema_medium = ta.ema(close, ema_medium_length)
ema_long = ta.ema(close, ema_long_length)
// Obliczenia Supertrend
[supertrend_50, _] = ta.supertrend(supertrend_factor, supertrend_50_length)
[supertrend_13, _] = ta.supertrend(supertrend_factor, supertrend_13_length)
[supertrend_6, _] = ta.supertrend(supertrend_factor, supertrend_6_length)
// Warunki sygnału kupna (Long)
buy_signal = (ema_medium < ema_short) and close > ema_long and close > supertrend_50 and close > supertrend_13 and close > supertrend_6
// Warunki sygnału sprzedaży (Short)
sell_signal = (ema_medium > ema_short) and close < ema_long and close < supertrend_50 and close < supertrend_13 and close < supertrend_6
// Rysowanie EMA na wykresie
plot(ema_short, title="EMA 20", color=color.blue)
plot(ema_medium, title="EMA 78", color=color.red)
plot(ema_long, title="EMA 200", color=color.green)
// Rysowanie Supertrend na wykresie
plot(supertrend_50, title="Supertrend 50", color=color.orange)
plot(supertrend_13, title="Supertrend 13", color=color.purple)
plot(supertrend_6, title="Supertrend 6", color=color.red)
// Generowanie sygnałów kupna i sprzedaży
if (buy_signal)
strategy.entry("Long", strategy.long)
if (sell_signal)
strategy.entry("Short", strategy.short)
// Zamknięcie pozycji Long przy sygnale sprzedaży
if (sell_signal)
strategy.close("Long")
// Zamknięcie pozycji Short przy sygnale kupna
if (buy_signal)
strategy.close("Short")
// Alerty
alertcondition(buy_signal, title="Sygnał Kupna", message="Sygnał Kupna")
alertcondition(sell_signal, title="Sygnał Sprzedaży", message="Sygnał Sprzedaży")