At any moment market structure comes down to two prices: the last swing high and the last swing low. They are not worth the same. One of them is the line that keeps the current trend alive, and the other is only a matter of time before it is taken. Edo Swing Levels keeps both in view, draws them so the difference is visible at a glance, and flags the moment the decisive one gives way — the change of character that turns a trend.
Strong and Weak: one bias, two roles
The indicator keeps only the last confirmed swing high and the last confirmed swing low, and classifies them by the bias. In a bullish bias the low is the Strong level — the support the trend defends — and the high is Weak, because the bullish drive will eventually break it. In a bearish bias it is the reverse: the high is Strong, the cap that holds the trend down, and the low is Weak. The Strong level is drawn solid, thicker and at full opacity; the Weak level is dashed, thinner and faded. Each line carries its label — Strong High, Weak High, Strong Low or Weak Low — and both are projected 12 bars to the right by default, so they sit ahead of price as live references. The high level is red, the low level teal, and both stay a neutral gray until a first break defines a trend.
What a CHoCH is, and why it needs a close
A change of character — CHoCH — is a close through the Strong level: below the Strong Low in an uptrend, above the Strong High in a downtrend. It is the indicator's most important event, because the level that was holding the trend up has just given way. The bias flips and the roles swap on the spot: the level that was Strong becomes Weak, and the opposite level becomes the new Strong. The close is the whole point. A wick that pierces the level and closes back on the same side is a test, not a break, so the roles do not move; only a bar that closes on the far side counts. That is also what keeps the indicator from repainting: pivots are confirmed on closed bars and breaks are validated on closed bars, so no level appears or disappears intrabar.
Continuation is not a change of character
Not every break carries the same weight. When price closes through the Weak level — the high in an uptrend, the low in a downtrend — the trend has simply done what it was expected to do. That is continuation: the bias stays where it was, and the next confirmed pivot on that side becomes the new Weak level, further along in the direction of the move. Breaking the Strong level is the only break that changes the trend. The solid-versus-dashed distinction exists precisely so that the two events are never confused: the dashed line is the target, the solid line is the one that matters. And each level can only be broken once — after the break it triggers nothing else until a new pivot replaces it.
The swing profile decides what counts as a swing
Sensitivity comes from a single input. Scalper needs 5 bars each side of a pivot, Swing needs 10 — the default, calibrated for the 4H and daily read — and Long Term needs 21, which leaves only the major turns on weekly and higher charts. The larger the length, the more significant a turn has to be before it fixes a level, so the levels are fewer, further apart and heavier. The right profile is the one whose levels match the highs and lows you actually treat as structural; on a fine intraday chart Long Term will barely update, and on a weekly chart Scalper will move too often to lean on. There is no internal multi-timeframe: the whole read runs on the chart's own timeframe, and a higher-timeframe view comes from applying the indicator on a second chart.
The panel and the four alerts
The panel condenses the read into three rows under the indicator header. Bias gives the direction — ▲ BULLISH, ▼ BEARISH or • NEUTRAL. High gives the price of the high level and, in parentheses, whether it is Strong or Weak. Low does the same for the low level, in the same red and teal code. The bias row says which way the market leans; the High and Low rows say at which prices the two references sit and, above all, which of them is the one to watch. The panel sits in any of the four chart corners, comes in three sizes and two themes, is drawn only on the last bar to keep the calculation light, and can be hidden entirely. Four alerts cover the same logic: Strong High taken and Strong Low taken fire on the change of character, when the trend turns; New swing high and New swing low fire each time a new level is fixed. All of them fire on bar close.
Reading it: invalidation, target, and the room in between
Three uses cover most of it. Take the Strong level as the invalidation line of the trend: while price respects it, trading with the bias has the wind at its back, and a close through it is the signal that the structure has broken. Take the Weak level as the target: in an uptrend price tends to go for the Weak High, in a downtrend for the Weak Low, and the distance between the two lines is the room available inside the current structure — a small gap means the move has little left before it must fix a new level, a wide gap means there is space to work with. And treat the taking of the Strong level as the cleanest turn warning the chart gives: it often marks the start of a new leg in the opposite direction, and the alert fires on the bar that confirms it.