Strategi Reversal Dynamic Pivot Points Exponential Moving Average menggabungkan reversal trading dan level resistance support yang dinamis. Strategi ini menggunakan osilator Stochastic untuk mengidentifikasi titik pembalikan pasar dan menghitung support/resistance harian berdasarkan harga tinggi, rendah dan dekat hari sebelumnya. Strategi ini akan long atau short ketika kedua strategi reversal dan pivot point menghasilkan sinyal beli atau jual. Strategi ini cocok untuk trading jangka menengah.
Strategi pembalikan didasarkan pada alasan bahwa ketika pasar menjadi overbought atau oversold, harga cenderung kembali ke kisaran nilai. Secara khusus strategi pembalikan ini mengikuti aturan Ulf Jensen:
Pergi panjang ketika close telah lebih tinggi dari close sebelumnya selama 2 hari berturut-turut dan garis Slow K 9 hari di bawah 50; Pergi pendek ketika close telah lebih rendah dari close sebelumnya selama 2 hari berturut-turut dan garis Fast K 9 hari di atas 50.
Strategi titik pivot dinamis menghitung level support dan resistance hari ini berdasarkan harga tinggi, rendah dan dekat hari sebelumnya.
Titik Pivot = (tinggi + rendah + dekat) / 3
Dukungan 1 = Titik Pivot - (Tinggi - Titik Pivot)
Resistensi 1 = Titik Pivot + (titik Pivot - rendah)
Ini pergi panjang ketika dekat lebih tinggi dari Resistance 1 dan pergi pendek ketika dekat lebih rendah dari Support 1.
Strategi ini menggabungkan strategi pembalikan dan titik pivot dinamis. Ini hanya memasuki posisi ketika sinyal dari kedua strategi sejajar. Ini membantu menyaring beberapa sinyal palsu dan meningkatkan stabilitas.
Keuntungan terbesar dari strategi ini adalah menggabungkan kekuatan dari kedua strategi pembalikan dan S / R dinamis - dapat mendapatkan keuntungan dari pembalikan tren utama dan juga mengidentifikasi tingkat dukungan dan resistensi utama.
Juga, strategi memiliki beberapa parameter dan mudah diterapkan dan dioptimalkan.
Strategi ini juga memiliki risiko berikut:
Kegagalan pembalikan - harga mungkin terlalu meluas dan terus tren meskipun sinyal pembalikan.
Pelanggaran level support/resistance - harga dapat menembus level S/R yang dihitung sehingga menghasilkan sinyal yang salah.
Mekanisme sinyal ganda terlalu konservatif, kehilangan run.
Pengendalian:
Perbaiki parameter, gabungkan faktor lain untuk mengkonfirmasi pembalikan.
Gunakan stop loss untuk mengendalikan kerugian.
Sesuaikan aturan untuk memungkinkan lebih banyak peluang perdagangan.
Strategi ini dapat ditingkatkan di bidang berikut:
Uji kombinasi parameter Stochastic yang berbeda untuk meningkatkan sensitivitas dalam mengidentifikasi pembalikan.
Uji rata-rata bergerak yang berbeda atau indikator jangka panjang untuk mengukur tren keseluruhan dengan lebih baik.
Tambahkan faktor lain untuk menentukan struktur pasar, misalnya indikator volume.
Mengoptimalkan aturan sinyal ganda untuk menangkap lebih banyak perdagangan.
Menggabungkan stop loss untuk mengelola risiko.
Strategi Reversal Dynamic Pivot Points Exponential Moving Average menggabungkan kekuatan dari reversal trading dan analisis resistance support yang dinamis. Strategi ini dapat mendapatkan keuntungan dari titik balik tren utama dan juga mengukur arah intraday terhadap level kunci. Dengan memanfaatkan mekanisme sinyal ganda, strategi ini memiliki stabilitas yang baik dalam menyaring perdagangan palsu. Strategi dapat lebih dioptimalkan dengan menyesuaikan parameter, menguji filter tambahan, dll untuk meningkatkan kinerja.
/*backtest start: 2023-11-07 00:00:00 end: 2023-12-07 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 25/03/2020 // 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 // This Pivot points is calculated on the current day. // Pivot points simply took the high, low, and closing price from the previous period and // divided by 3 to find the pivot. From this pivot, traders would then base their // calculations for three support, and three resistance levels. The calculation for the most // basic flavor of pivot points, known as ‘floor-trader pivots’, along with their support and // resistance levels. // // 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 DPP() => pos = 0 xHigh = security(syminfo.tickerid,"D", high[1]) xLow = security(syminfo.tickerid,"D", low[1]) xClose = security(syminfo.tickerid,"D", close[1]) vPP = (xHigh+xLow+xClose) / 3 vR1 = vPP+(vPP-xLow) vS1 = vPP-(xHigh - vPP) pos := iff(close > vR1, 1, iff(close < vS1, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Dynamic Pivot Point", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posDPP = DPP() pos = iff(posReversal123 == 1 and posDPP == 1 , 1, iff(posReversal123 == -1 and posDPP == -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 )