본문으로 건너뛰기
geonulab
← All patterns

Pattern spec · mean-revert-bb

Mean reversion02
Spec + pseudocode

Band reversion with vol gate

Extreme stretch + volatility contraction filter

밴드 밖 과stretch 후 mid band 되돌림. 추세·변동성 확대 구간에서는 MR 차단.

Inputs

bb_width · rsi · atr · htf_er

System concern

Build · Execute

Failure modes

  • Trend continuation
  • Vol expansion miss
  • Band walk
  • +1 more

Pseudocode · excerpt

mr_allowed = bb_width_pct <= 40 AND htf_er <= 0.35
long_stretch  = close[-1] < lower[-1]
long_recovery = close > lower AND close > close[-1]
long_entry    = edge(mr_allowed AND long_stretch AND long_recovery)
sl            = entry - 1.5 * atr · tp = mid

Parity: Closed bars only · TP wick vs close fixed · SL first on tie

§ Full spec sections

Regime filter

MR은 밴드가 좁고 HTF ER가 낮을 때만 허용. 추세·변동성 확대 구간에서는 진입을 suppress.

mr_allowed =
  PERCENTILE_RANK(bb_width, 50) <= 40
  AND htf_er <= 0.35

IF NOT mr_allowed:
  suppress all entry signals

Entry edge

밴드 터치만으로 진입하지 않음. stretch → recovery edge만 사용.

long_stretch  = close[t-1] < lower[t-1]
long_recovery = close[t] > lower[t] AND close[t] > close[t-1]
long_rsi_ok   = rsi[t] < 30 OR cross_up(rsi, 30)

long_ready = mr_allowed AND long_stretch AND long_recovery AND long_rsi_ok
long_entry = long_ready AND NOT long_ready[t-1]

Exit & risk

SL은 ATR 기반. TP는 mid band 또는 opposite band. max_hold_bars time stop.

sl_long  = entry - 1.5 * atr
tp_long  = mid[t]
time_stop if bars_in_trade >= 12

Sub-bar priority: SL → TP → time stop