Ringkasan: Strategi Crossbow Double K menggabungkan strategi 123 Reversal dan strategi Special K Martin Pring
Logika Strategi:
Double K Crossbow terdiri dari dua bagian:
123 Strategi Reversal: Ini mengidentifikasi sinyal beli dan jual berdasarkan 2 hari berturut-turut pembalikan harga penutupan, dikombinasikan dengan pembacaan osilator stokastik. Ini menghasilkan sinyal beli ketika penutupan lebih tinggi dari penutupan sebelumnya selama 2 hari dan stokastik di bawah 50, menunjukkan konsolidasi. Ini menghasilkan sinyal jual ketika penutupan lebih rendah dari penutupan sebelumnya selama 2 hari dan stokastik di atas 50, menunjukkan distribusi.
Strategi K Khusus Martin Pring
Double K Crossbow mengkonsolidasikan sinyal dari kedua strategi, membutuhkan persetujuan untuk memicu perdagangan yang sebenarnya.
Analisis Keuntungan:
Menggabungkan sinyal dari dua strategi untuk masuk dan keluar perdagangan yang lebih dapat diandalkan.
Reversal menangkap reversal jangka pendek sementara Special K menilai tren jangka panjang.
Tingkat perubahan dalam beberapa periode waktu memberikan wawasan tentang siklus pasar.
Parameter stokastik yang dapat dioptimalkan beradaptasi dengan kondisi pasar yang berbeda.
Analisis Risiko:
Sinyal konsolidasi mungkin melewatkan beberapa titik beli/jual dan tertinggal dari pergerakan jangka pendek.
Strategi dapat tidak setuju selama peristiwa luar biasa, yang membutuhkan penilaian arah.
Membutuhkan pemantauan dan pengoptimalan parameter untuk kedua strategi, meningkatkan kompleksitas.
Optimalisasi parameter jangka pendek dan jangka panjang yang salah dapat melewatkan titik balik siklus.
Peluang peningkatan:
Uji kombinasi parameter yang berbeda untuk menemukan pengaturan yang optimal.
Tambahkan modul stop loss untuk membatasi kerugian.
Tambahkan modul ukuran posisi untuk menyesuaikan dengan kondisi pasar.
Masukkan pembelajaran mesin untuk pemodelan sinyal yang lebih kuat.
Tambahkan optimasi adaptif untuk melacak ritme pasar secara dinamis.
Kesimpulan:
Double K Crossbow berhasil menggabungkan kekuatan strategi pembalikan dan siklis untuk sinyal berkualitas dan peluang keuntungan multi-frame time. Pendekatan baru ini layak diuji lebih lanjut dan dioptimalkan sebagai strategi yang stabil.
/*backtest start: 2023-09-17 00:00:00 end: 2023-10-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 17/02/2021 // This is combo strategies for get a cumulative signal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // Pring's Special K is a cyclical indicator created by Martin Pring. // His method combines short-term, intermediate and long-term velocity // into one complete series. Useful tool for Long Term Investors // Modified for any source. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos MPSK(a, sources) => pos = 0.0 roc1 = (sma(roc(sources,10),10)*1) roc2 = (sma(roc(sources,15),10)*2) roc3 = (sma(roc(sources,20),10)*3) roc4 = (sma(roc(sources,30),15)*4) roc5 = (sma(roc(sources,40),50)*1) roc6 = (sma(roc(sources,65),65)*2) roc7 = (sma(roc(sources,75),75)*3) roc8 = (sma(roc(sources,100),100)*4) roc9 = (sma(roc(sources,195),130)*1) roc10 = (sma(roc(sources,265),130)*2) roc11 = (sma(roc(sources,390),130)*3) roc12 = (sma(roc(sources,530),195)*4) osc = roc1+roc2+roc3+roc4+roc5+roc6+roc7+roc8+roc9+roc10+roc11+roc12 oscsmt = sma(osc,a) pos := iff(osc > oscsmt, 1, iff(osc < oscsmt, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Martin Pring's Special K", shorttitle="Combo", overlay = true) line1 = input(true, "---- 123 Reversal ----") Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- line2 = input(true, "---- Martin Pring`s ----") a = input(10, title = "Smooth" ) sources = input(title="Source", type=input.source, defval=close) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posMPSK = MPSK(a,sources) pos = iff(posReversal123 == 1 and posMPSK == 1 , 1, iff(posReversal123 == -1 and posMPSK == -1, -1, 0)) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1 ) strategy.entry("Long", strategy.long) if (possig == -1 ) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )