Skip to content
Open RaamTrade

ThreeOutside — Three Outside Up/Down

An engulfing bar confirmed by a third bar continuing beyond it: the reversal followed through instead of stalling. Returns +1 up, −1 down.

Signature

ThreeOutside(lookback, on=<source>)
Argument Type Required Notes
lookback int Param Yes Pinned at 1; three bars are kept in state. Bounds 1–1.
on= symbol No Source symbol. Defaults to the trade symbol. Reads open and close.

Formula

Bars 1–2 form an engulfing pattern; bar 3 closes beyond bar 2’s close in the same direction.

Warmup

Three bars of state.

Reading the value

p.value
p > 0

Pattern indicators return a flag, not a level: +1 bullish, -1 bearish, 0 absent. They are zero on most bars by design, so treat them as event triggers rather than as something to smooth or cross.

Example

class ThreeOutsideEntry(Strategy):
"""Act on the pattern only in the direction of the longer trend."""
trade = Symbol()
sizing = FixedCapital()
def execute(self):
p = ThreeOutside(1, on=self.trade)
sma = SMA(50, on=self.trade)
if p.value > 0 and self.trade.is_flat:
self.buy(self.trade, reason="Three outside up")
if self.trade.is_long and self.trade.close < sma.value:
self.sell(self.trade, self.trade.position, reason="Trend lost")

Notes

  • Engulfing plus confirmation. Later than the engulfing bar itself, and correspondingly more reliable.