Strategi penembusan julat bar dalam adalah strategi tindakan harga yang membuat keputusan dagangan berdasarkan corak bar dalam. Ia berlaku apabila julat bar semasa, diukur dengan perbezaan antara tinggi dan rendah, lebih kecil daripada bar sebelumnya, menunjukkan penyatuan atau ketidakselesaan di pasaran. Penembusan di atas atau di bawah bar sebelumnya
Strategi ini menggunakan penunjuk dan pembolehubah berikut:
Keputusan kemasukan adalah berdasarkan penembusan Julat di luar bar teratas / rendah sebelumnya. Khususnya, kemasukan panjang apabila penembusan menaik berlaku dan rendah semasa di atas kecairanDown, dan kemasukan pendek apabila penembusan menurun berlaku dan tinggi semasa di bawah kecairanUp.
Stop loss menggunakan ATR dikalikan dengan Range. mengambil keuntungan menggunakan ATR dikalikan dengan Range.
Kelebihan strategi ini termasuk:
Risiko strategi ini:
Kawasan pengoptimuman:
Strategi penembusan julat bar dalam memanfaatkan pengembangan julat dari penyatuan dengan memasuki apabila harga keluar dari julat bar sebelumnya. Tahap kecairan mengelakkan terperangkap. Tetapan stop loss dan mengambil keuntungan yang munasabah membolehkan menunggang momentum selepas penembusan untuk mencapai sasaran keuntungan. Strategi ini boleh menghasilkan hasil yang baik pada bingkai masa pertengahan. Kelebihan dan ketahanan sistem yang lebih baik dapat dicapai melalui pengoptimuman parameter dan peningkatan penapis kemasukan.
/*backtest start: 2022-12-04 00:00:00 end: 2023-12-10 00:00:00 period: 1d basePeriod: 1h 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/ // © ilikelyrics560 //@version=5 strategy("Inside Bar Range Breakout Strategy", overlay=true) // Inputs lookback = input.int(20, "Lookback Period", minval=1) atrMult = input.float(1.5, "ATR Multiplier", step=0.1) atrLen = input.int(14, "ATR Length", minval=1) slMult = input.float(2, "Stop Loss Multiplier", step=0.1) tpMult = input.float(3, "Take Profit Multiplier", step=0.1) // Variables atr = ta.atr(atrLen) Range = high - low insideBar = Range < Range[1] breakoutUp = close > high[1] breakoutDown = close < low[1] liquidityUp = ta.highest(high, lookback) liquidityDown = ta.lowest(low, lookback) longEntry = breakoutUp and low > liquidityDown shortEntry = breakoutDown and high < liquidityUp longExit = close < low[1] shortExit = close > high[1] // Plotting plot(liquidityUp, "Liquidity Up", color.new(color.green, 30), 1) plot(liquidityDown, "Liquidity Down", color.new(color.red, 30), 1) bgcolor(longEntry ? color.new(color.green, 30) : na, title="Long Entry") bgcolor(shortEntry ? color.new(color.maroon, 30) : na, title="Short Entry") // Trading if (longEntry) strategy.entry("Long", strategy.long) strategy.exit("Long Exit", "Long", stop=low - slMult * atr, limit=high + tpMult * atr) if (shortEntry) strategy.entry("Short", strategy.short) strategy.exit("Short Exit", "Short", stop=high + slMult * atr, limit=low - tpMult * atr)