Ini adalah sistem perdagangan jurang forex berdasarkan Bollinger Bands. Ia sesuai untuk pasangan mata wang utama, dengan komisen terendah yang mungkin (di bawah 1 pip) dan jangka masa antara 1-15 minit.
Sistem ini menggunakan Bollinger Bands, RSI dan indikator ADX untuk mengenal pasti peluang perdagangan.
Bollinger Bands digunakan untuk mengenal pasti penembusan harga. Pergi panjang apabila harga pecah di atas band atas, pergi pendek apabila harga pecah di bawah band bawah. RSI digunakan untuk mengelakkan penembusan palsu. Penembusan dianggap sah hanya apabila RSI terbalik (jatuh dari zon overbought atau meningkat dari zon oversold). ADX digunakan untuk menapis pasaran tanpa trend yang jelas, hanya mengambil dagangan apabila ADX di bawah 32.
Peraturan kemasukan khusus adalah: Masuk panjang memerlukan harga pecah di atas jalur atas, RSI meningkat dari zon oversold dan melintasi garis 30, ADX di bawah 32 pada masa yang sama. Masuk pendek memerlukan harga pecah di bawah jalur bawah, RSI jatuh dari zon overbought dan melintasi garis 70, ADX di bawah 32 pada masa yang sama.
Peraturan keluar termasuk mengambil keuntungan / berhenti kerugian dan pembalikan garis tengah. iaitu: Tetapkan titik mengambil keuntungan / berhenti kerugian tetap. Tutup kedudukan apabila harga kembali ke garis tengah Bollinger.
Sistem ini mempunyai kelebihan berikut:
Menggunakan Bollinger Bands untuk menangkap peluang perdagangan jurang, yang mempunyai potensi keuntungan yang besar.
Menggabungkan penunjuk RSI untuk mengelakkan pecah palsu dan meningkatkan kebarangkalian keuntungan.
Menggunakan penunjuk ADX untuk menapis pasaran tanpa trend yang jelas, mengelakkan perdagangan yang tidak perlu.
Penutupan pada garis tengah pembalikan kunci dalam kebanyakan keuntungan dan mengelakkan retracement keuntungan.
Sesuai untuk perdagangan leverage tinggi, keuntungan boleh diperkuat dengan cepat.
Terdapat juga beberapa risiko:
Tidak ada keuntungan jika tidak ada kesenjangan.
Risiko overfit backtest. Hasil hidup mungkin berbeza dari backtest.
Tempoh trend yang tidak mencukupi. Whipsaws boleh menyebabkan kerugian.
Leverage tinggi meningkatkan risiko.
Sekatan masa dagangan boleh menyebabkan perdagangan yang hilang.
Sistem ini boleh diperbaiki dari aspek berikut:
Mengoptimumkan parameter untuk meningkatkan keberkesanan penunjuk, contohnya tempoh Bollinger, tetapan RSI dll.
Menambah atau meningkatkan penapis untuk meningkatkan peratusan perdagangan yang menang, contohnya menggabungkan lebih banyak penunjuk atau asas.
Mengoptimumkan strategi mengambil keuntungan untuk memaksimumkan keuntungan setiap perdagangan, sebagai contoh, penangguhan stop loss, ATR berasaskan stop loss dan lain-lain.
Menentukan tahap leverage yang sesuai secara automatik untuk memaksimumkan pulangan yang diharapkan.
Gunakan teknik pembelajaran mesin untuk mencari parameter optimum secara automatik dan bukannya pengulangan manual.
Golden Bollinger Band Gap Reversion System adalah sistem pecah jangka pendek yang tipikal. Ia bertujuan untuk menangkap keuntungan dari jurang harga. Pelbagai penapis digunakan untuk meningkatkan kualiti isyarat. Ia menunjukkan keuntungan yang baik dalam backtests. Tetapi prestasi langsung masih belum disahkan, dengan kecairan dan hasil yang memberi kesan pada slippage. Secara keseluruhan ini adalah strategi perdagangan jangka pendek yang menjanjikan, bernilai ujian langsung dan pengoptimuman.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © exlux99 //@version=4 strategy("Bollinger Bands, RSI and ADX Trading System", overlay=true) timeinrange(res, sess) => time(res, sess) != 0 timer = color.red //bgcolor(timeinrange(timeframe.period, "0300-0600") or timeinrange(timeframe.period, "0900-1300") or timeinrange(timeframe.period, "2030-2300") ? timer : na, transp=70) //RSI length = input( 20 ) overSold = input( 35 ) overBought = input( 65 ) price = close vrsi = rsi(price, length) co = crossover(vrsi, overSold) cu = crossunder(vrsi, overBought) //if (not na(vrsi)) //BB lengthB = input(60, minval=1) src = input(close, title="Source") mult = input(2.0, minval=0.001, maxval=50, title="StdDev") basis = sma(src, lengthB) dev = mult * stdev(src, lengthB) upper = basis + dev lower = basis - dev //adx adxlen = input(14, title="ADX Smoothing") dilen = input(14, title="DI Length") dirmov(len) => up = change(high) down = -change(low) plusDM = na(up) ? na : (up > down and up > 0 ? up : 0) minusDM = na(down) ? na : (down > up and down > 0 ? down : 0) truerange = rma(tr, len) plus = fixnan(100 * rma(plusDM, len) / truerange) minus = fixnan(100 * rma(minusDM, len) / truerange) [plus, minus] adx(dilen, adxlen) => [plus, minus] = dirmov(dilen) sum = plus + minus adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen) sig = adx(dilen, adxlen) longEntry = close < upper and crossover(vrsi,overSold) and sig < 32 //and (timeinrange(timeframe.period, "0301-0600") or timeinrange(timeframe.period, "0901-1300") or timeinrange(timeframe.period, "2031-2300")) shortEntry = close > upper and crossunder(vrsi,overBought) and sig < 32 //and (timeinrange(timeframe.period, "0301-0600") or timeinrange(timeframe.period, "0901-1300") or timeinrange(timeframe.period, "2031-2300")) tp=input(90, step=10) sl=input(90, step=10) strategy.entry("long",1,when=longEntry) strategy.exit("X_long", "long", profit=tp, loss=sl ) strategy.close("long",when=crossunder(close,basis)) strategy.entry('short',0,when=shortEntry) strategy.exit("x_short", "short",profit=tp, loss=sl) strategy.close("short",when=crossover(close,basis))