Strategi Golden Cross adalah indikator pasar sederhana yang membantu investor jangka panjang menentukan waktu masuk. Strategi ini menghasilkan sinyal perdagangan berdasarkan persilangan rata-rata bergerak jangka pendek dan jangka panjang. Ketika rata-rata bergerak jangka pendek melintasi di atas rata-rata bergerak jangka panjang, membentuk Golden Cross, itu menandakan bahwa pasar memasuki tren bull dan posisi panjang dapat dibuka. Ketika rata-rata bergerak jangka pendek melintasi di bawah rata-rata bergerak jangka panjang, membentuk Death Cross, itu menandakan bahwa pasar memasuki tren bear dan posisi yang ada harus ditutup.
Strategi ini menggunakan fungsi sma untuk menghitung rata-rata bergerak sederhana jangka pendek dan jangka panjang. Panjang MA jangka pendek ditetapkan menjadi 50 hari dan panjang MA jangka panjang ditetapkan menjadi 200 hari. Strategi menentukan apakah MA jangka pendek melintasi atau melintasi di bawah MA jangka panjang menggunakan fungsi crossover dan crossunder, yang menghasilkan sinyal perdagangan.
Ketika MA jangka pendek melintasi di atas MA jangka panjang, itu menandakan tren berubah dari ke bawah ke atas, membentuk Golden Cross, yang merupakan sinyal masuk panjang. Strategi akan membuka posisi panjang menggunakan strategy.entry. Ketika MA jangka pendek melintasi di bawah MA jangka panjang, itu menandakan tren berubah dari ke atas ke bawah, membentuk Death Cross, yang merupakan sinyal keluar. Strategi akan menutup semua posisi menggunakan strategy.close_all.
Dengan menangkap titik pembalikan tren yang ditandai oleh Golden/Death Crosses untuk menentukan waktu masuk dan keluar, strategi dapat secara efektif menyaring kebisingan pasar dan merupakan strategi tren yang sederhana dan praktis.
Risiko dapat dikelola dengan menambahkan stop loss, mengoptimalkan parameter MA untuk mengurangi sinyal palsu, menggabungkan dengan indikator lain untuk mengkonfirmasi sinyal, dan mengembangkan mekanisme untuk menangani peristiwa angsa hitam.
Strategi dapat dioptimalkan dalam aspek berikut:
Mengoptimalkan parameter MA dengan menyesuaikan panjang MA jangka pendek dan panjang agar lebih sesuai dengan karakteristik pasar yang berbeda;
Tambahkan kondisi volume untuk sinyal pemicu hanya ketika volume melonjak;
Menggabungkan indikator lain seperti MACD, RSI untuk mengkonfirmasi sinyal silang dan menghindari sinyal palsu;
Tambahkan strategi stop loss seperti trailing stop loss, persentase stop loss untuk mengendalikan single loss;
Tambahkan strategi ukuran posisi seperti pecahan tetap, ukuran eksponensial untuk mengendalikan risiko keseluruhan;
Optimalkan entri dengan mengamati untuk beberapa waktu setelah persilangan untuk menyaring salib palsu.
Melalui optimasi di atas, parameter strategi dapat lebih sesuai dengan sifat statistik pasar, menyaring sinyal palsu, mengendalikan risiko, dan lebih meningkatkan stabilitas dan profitabilitas strategi sambil menjaga kesederhanaan.
Strategi Golden Cross adalah strategi yang sederhana namun praktis mengikuti tren. Secara intuitif menangkap tren pasar melalui persilangan rata-rata bergerak dan dapat secara efektif mengidentifikasi titik masuk dan keluar untuk investor jangka panjang. Mudah diterapkan, cocok untuk pemula untuk belajar, dan dapat disesuaikan dengan berbagai optimasi, strategi dapat menjadi sistem perdagangan yang fleksibel dan andal. Secara keseluruhan, menggabungkan kesederhanaan dan kepraktisan, strategi Golden Cross adalah tambahan yang berharga untuk toolkit perdagangan kuantitatif.
/*backtest start: 2023-08-27 00:00:00 end: 2023-09-26 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Dumb strategy 2 - Golden Cross", shorttitle="Golden Cross", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) lShort = input(50, title="short length") lLong = input(200, title="long length") src = input(close, title="Source") smaShort = sma(src, lShort) smaLong = sma(src, lLong) plot(smaShort, title="SMA Short", style=line, linewidth=3, color=lime) plot(smaLong, title="SMA Long", style=line, linewidth=3, color=red) // //Backtest Time Inputs // testStartYear = input(2009, "Backtest Start Year") testStartMonth = input(1, "Backtest Start Month") testStartDay = input(1, "Backtest Start Day") testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0) testStopYear = input(2019, "Backtest Stop Year") testStopMonth = input(1, "Backtest Stop Month") testStopDay = input(01, "Backtest Stop Day") testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0) testPeriodBackground = input(title="Color Background?", type=bool, defval=true) testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? blue : na bgcolor(testPeriodBackgroundColor, transp=80) testPeriod() => true if testPeriod() longCondition = crossover(smaShort, smaLong) if (longCondition) strategy.entry("Long Entry", strategy.long) shortCondition = crossunder(smaShort, smaLong) if (shortCondition) strategy.close_all(true)