인더 바 범위 브레이크아웃 전략은 인더 바 패턴을 기반으로 거래 결정을 내리는 가격 행동 전략이다. 현재 바의 범위가 높은 것과 낮은 사이의 차이로 측정되어 이전 바의 범위보다 작을 때 발생합니다. 이는 시장의 통합 또는 불결정성을 나타냅니다. 이전 바의 높거나 낮은 위 또는 아래의 브레이크아웃은 브레이크아웃 방향의 잠재적 진입 신호를 제공합니다.
이 전략은 다음의 지표와 변수를 이용합니다.
진입 결정은 이전 바
스톱 손실은 ATR를 범위에 곱하고 수익을 취하는 것은 ATR를 범위에 곱합니다
이 전략의 장점은 다음과 같습니다.
이 전략의 위험:
최적화 영역:
내부 바 범위 브레이크아웃 전략은 가격이 이전 바 범위에서 벗어날 때 진입하여 통합에서 범위를 확장하는 것을 활용합니다. 유동성 수준은 함락되는 것을 피합니다. 합리적인 스톱 로스 및 영리 설정은 수익 목표에 도달하기 위해 브레이크아웃 이후의 추진력을 탈 수 있습니다. 전략은 중간 시간 프레임에서 좋은 결과를 얻을 수 있습니다. 매개 변수 최적화 및 진입 필터를 개선함으로써 더 많은 장점과 시스템 견고성을 향상시킬 수 있습니다.
/*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)