The study builds a zig zag from swing points. A bar is a swing high when its high is the highest of the last Zig Zag Length bars, and a swing low when its low is the lowest (or the body extremes, with the Open/Close source). A new pivot starts each time the swing direction turns, and the newest pivot moves on while price keeps extending it. From the newest five pivots the study reads three swings: the second, third and fourth newest, so the leg that is still forming is left out once five pivots exist.
A bearish market structure shift needs the newest of the three swings to be the highest, the middle one the lowest and the oldest in between, and a close on a finished bar that crosses below the middle swing while sitting below all three. A bullish shift is the mirror image. Each shift must also pass the displacement filter: by default the newest swing must sit more than Percentage Above percent away from the oldest one, or, with the Multiplier filter, the newest leg must be that many times the previous leg.
On a shift the study shades a box over the swing range, draws a dashed line along the broken middle swing to the shift bar and colours the candle. It then holds a level one third of the way back into the broken range. When the high next crosses up through the bearish level, or the low crosses down through the bullish one, the retracement is marked with a dotted line back to the swing it was measured from. A table in the corner lists the most recent shifts or retracements on this instrument, with the bar time, the close and the side.
How to read Market Structure Shift (MSS) Screener
A pink down triangle above a candle is a bearish shift: the market made a higher swing, then closed back below the swing low before it, which is read as sellers taking over the recent structure. A teal up triangle below a candle is the bullish version. The box shows the range the shift broke out of, and the dashed line is the level that gave way. A Ret mark and dotted line show price coming back one third of the way into that range, the follow-up entry this method looks for.
The swings are only known once the zig zag has turned, so the newest leg can still move and the signals describe structure that has already formed. On choppy charts small swings produce many shifts; raise the zig zag length or the filter to keep only the larger moves. A shift is a change in recent structure, not a forecast that the move will continue.
Settings
- Screening Method
- Chooses what the table lists: the structure shift bars themselves, or the bars where price retraced back to the one third level after a shift.
- Direction
- Limits the table to bullish rows, bearish rows or both.
- Only Bullish
- Despite its label, this switch lets bearish rows into the table: turning it off removes the bearish rows, not the bullish ones.
- Only Bearish
- Lets bullish rows into the table. As with the switch above, turning it off removes the bullish rows.
- Display Rows
- How many of the most recent signals the table lists, newest first. Zero shows only the two header rows.
- Table Position
- Where the table sits. Tables pin to the four corners, so a top row goes to the top, a middle or bottom row to the bottom, a left column to the left and a centre or right column to the right.
- Table Size
- Kept for saved settings. Tables in this version draw at the chart's own text size, so this choice changes nothing.
- Bearish
- Shows or hides everything bearish: the shift markers, boxes, levels, retracement lines and candle colours.
- Bearish Shift
- Shows the bearish shift marker, its candle colour and the dashed broken level. The swing box stays while Bearish is on.
- Bearish Retracement
- Shows the bearish retracement mark, its candle colour and the dotted line at the one third level.
- Bullish
- Shows or hides everything bullish: the shift markers, boxes, levels, retracement lines and candle colours.
- Bullish Shift
- Shows the bullish shift marker, its candle colour and the dashed broken level. The swing box stays while Bullish is on.
- Bullish Retracement
- Shows the bullish retracement mark, its candle colour and the dotted line at the one third level.
- Zig Zag Length
- A bar is a swing high or low when it is the highest or lowest of this many bars, itself included. A longer length finds fewer, larger swings and fewer shifts.
- Source
- Builds swings from the wicks (High/Low) or from the candle bodies (Open/Close), which ignores spikes that closed back inside the body.
- Show Zig Zag
- Draws the zig zag line through every pivot, up to the newest 500.
- Box Transparency
- How see-through the swing range box is, from 0 solid to 100 invisible.
- Filter Using
- Picks the displacement test a shift must pass: a percentage distance between the newest and oldest swing, or a multiple of the previous leg.
- Multiplier
- With the Multiplier filter, the newest leg must be more than this many times the previous leg.
- Percentage Above
- With the Percentage filter, the newest swing must be more than this percent away from the oldest one. Zero lets every shift through.
Frequently asked questions
Why do some shifts have a box but no dashed line?
The box is drawn whenever the side is shown, while the dashed broken level follows the Shift switch. Turning off Bearish Shift or Bullish Shift keeps the boxes and removes the markers, levels and candle colours for that side.
What is the retracement level?
After a shift the study holds a price one third of the way from the newest swing back toward the broken middle swing. The first bar whose high crosses up through the bearish level, or whose low crosses down through the bullish level, is marked once as the retracement.
Why does the table only show this instrument?
A study runs on the one instrument its chart shows, so the screener reports that instrument's own signals: the bar time, the close rounded to the tick and whether the shift was bullish or bearish.
Why are there no signals on my chart?
The percentage filter may be too strict for the timeframe. On an hourly chart a 0.7 percent swing is common, but on a five minute chart it can be rare. Lower Percentage Above (0 lets every shift through) or shorten the zig zag length.
