Strategi ini menghasilkan isyarat beli dan jual dengan menggabungkan penunjuk purata bergerak dan indeks memudahkan pasaran.
Strategi ini menggunakan dua penunjuk untuk penjanaan isyarat. Yang pertama adalah penunjuk purata bergerak, khususnya gabungan garis pantas dan garis perlahan dari Osilator Stochastic. Ia menghasilkan isyarat jual apabila harga ditutup selama dua hari berturut-turut dan garis pantas berada di atas garis perlahan. Ia menghasilkan isyarat beli apabila harga ditutup selama dua hari berturut-turut dan garis pantas berada di bawah garis perlahan. Dengan memantau pembalikan harga dan hubungan antara garis pantas dan garis perlahan, ia bertujuan untuk meramalkan titik perubahan potensi trend harga.
Indikator kedua adalah indeks kemudahan pasaran. Ia mengukur kecekapan pergerakan harga dengan mengira hubungan antara julat harga dan jumlah. Apabila indeks meningkat, ia menunjukkan peningkatan kecairan pasaran dan kecekapan operasi yang lebih tinggi, menandakan pasaran yang sedang berkembang. Apabila indeks menurun, ia menunjukkan kecairan kecairan dan penurunan kecekapan, yang menunjukkan pasaran yang berkisar sisi atau pembalikan trend.
Strategi ini menjana pesanan beli dan jual sebenar apabila kedua-dua penunjuk mengeluarkan isyarat perdagangan yang serasi secara serentak.
Sukar untuk memanfaatkan peluang pembalikan jika aliran naik atau penurunan satu arah yang berpanjangan, tidak dapat memasuki pasaran
Boleh melonggarkan parameter penunjuk pembalikan purata untuk meningkatkan peluang menangkap isyarat beli dan jual
Juga boleh meningkatkan saiz kedudukan untuk menunggang trend untuk mengimbangi keuntungan
Isyarat pembalikan yang tidak tepat boleh membatalkan strategi
Boleh mengoptimumkan parameter atau menambah tahap pengesahan isyarat untuk menapis isyarat palsu
Strategi ini menggabungkan penunjuk pembalikan purata dan penunjuk penghakiman trend, memasuki pasaran apabila isyarat pembalikan muncul sambil menghormati arah trend utama. Menggunakan pengesahan penunjuk berganda dengan berkesan menghapuskan isyarat palsu. Walaupun risiko wujud semasa trend satu sisi yang berpanjangan dan isyarat pembalikan yang salah. Pengoptimuman lanjut boleh dilakukan melalui penyesuaian parameter, kehilangan berhenti, peningkatan penunjuk dan model pembelajaran mesin.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 02/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 // The Market Facilitation Index is an indicator that relates price range to // volume and measures the efficency of price movement. Use the indicator to // determine if the market is trending. If the Market Facilitation Index increased, // then the market is facilitating trade and is more efficient, implying that the // market is trending. If the Market Facilitation Index decreased, then the market // is becoming less efficient, which may indicate a trading range is developing that // may be a trend reversal. // // 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 MFI(BuyZone,SellZone) => pos = 0.0 xmyVol = volume xmyhigh = high xmylow = low nRes = (xmyhigh - xmylow) / xmyVol * 10000 pos := iff(nRes > BuyZone, 1, iff(nRes < SellZone, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Market Facilitation Index", 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, "---- MFI ----") SellZone = input(6.2, minval=0.01, step = 0.01) BuyZone = input(1, minval=0.01, step = 0.01) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posMFI = MFI(BuyZone,SellZone) pos = iff(posReversal123 == 1 and posMFI == 1 , 1, iff(posReversal123 == -1 and posMFI == -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 )