Module 5 · Lesson 8 of 17 · Order flow and auction market theory · About 7 minutes

Excess, Poor Highs and Lows, and Single Prints Explained

On this page
  1. What you will learn
  2. What is excess?
  3. What is a poor high or a poor low?
  4. What are single prints?
  5. Excess and single prints diagram
  6. Which settings create or erase these features?
  7. How can you describe these features honestly?
  8. What are the limits of these features?
  9. What this does not tell you about excess and poor extremes
  10. Method in Practice
  11. Check yourself
  12. Reflect on your own process
  13. Sources

Before you read: TPO Profile Basics: Letters, Periods and Profile Shape

What you will learn

The vocabulary builds on TPO profile basics. The auction ideas are in Auction Market Theory.

What is excess?

When price touches a level for a moment and then leaves quickly, what does the profile record?

In TPO vocabulary, excess is a relatively thin tail at an outer extreme of the selected profile. A “selling tail” is the high-end label; “buying tail” the low-end label. These names do not identify particular sellers/buyers or prove strong opposition.

For this teaching figure, use at least two consecutive single-letter rows at the extreme as a declared convention, not a universal platform rule. At 102.00, 102.25, 102.50 only E appears: three high-end rows satisfy that selling-tail definition. Each means E visited that row and no other included block did.

The profile alone does not establish a quick departure, brief dwell or how many times E revisited. A one-second touch and repeated trading across much of E can both leave one E per row. “Rejection” is a contextual interpretation requiring time/price evidence; it is not measured by counting letters. A developing tail may disappear if later blocks revisit it.

What is a poor high or a poor low?

How is a flat top different from a pointed one?

A poor high is a session high without a tail. Typically two or more periods reached the same top price, or within a tick of it, and none went higher. The top of the profile looks flat or blunt rather than pointed. A poor low is the same picture at the bottom.

Some traders call a poor high or low an unfinished auction. The idea, in auction language, is that the market did not show a clear response at that extreme; it stopped instead of being pushed away.

Here is where care is needed. In trading writing you can find the belief that markets return to poor highs and lows to “repair” them. That is a belief, not an established fact. Whether it holds in any market, under any definition, is a question you can only answer with a pre-written definition, a large sample and the honest testing steps in trading plans, journaling and honest backtesting. Price sometimes returns to a poor high and sometimes does not. A chart that shows only the returns is a chart that has been selected.

What are single prints?

What does a thin row in the middle of a profile tell you about how price moved through it?

A single-print row has one period’s letter in the selected profile and sits inside the profile, not at its high or low. TradingView’s TPO help, for example, defines single prints as non-extreme levels with only one TPO block; one-letter rows at an extreme form a tail instead. In the supplied figure, 100.25/100.50/100.75 each have only C: three such rows between broader areas. No other included block visited those rows. This does not distinguish a rapid passage from repeated visits or a long stay within C; one C is still one C.

At the high, three E rows form the stated tail. At 99.00, A/B/C share the lowest row with no lower rows: under this figure’s same-outer-row convention, it is a poor low, not proof of an unfinished obligation to revisit. Do not infer elapsed time, aggressor volume or tomorrow’s outcome from either shape. The existing settings and repair-belief cautions still apply.

Excess and single prints diagram

Left: a collapsed TPO profile with periods A to G on fifteen price rows from 102.50 down to 99.00. Right, level with the rows they mark: the top three rows, 102.00 to 102.50, hold only E and are labeled "Selling tail (excess): E only", three high-end E-only rows; rows 100.25 to 100.75 hold only C and are labeled "Interior single prints: C only", three C-only rows between broader areas; the lowest row, 99.00, holds A, B and C and is labeled "Poor low: A / B / C at 99.00", no tail below. A note between them reads: coverage, not elapsed time; one letter = one visited block.
Read the diagram step by step
  1. Collapsed TPO profile, periods A to G. One letter = one visited block, not measured seconds or speed.
  2. 102.00 / 102.25 / 102.50: three high-end E-only rows. Tail criterion ≥2 consecutive outer single-letter rows is this exercise’s convention.
  3. 100.25 / 100.50 / 100.75: three C-only rows between broader areas. No other included block visited those rows.
  4. A, B and C share the lowest row, with no tail below, under this figure’s same-outer-row convention. No compulsory repair follows.
  5. One letter = one visited block, not measured seconds or speed. No speed, intent or compulsory repair follows. Tail length and “poor” depend on period length and row size.

Illustrative diagram constructed for teaching. Not real market data.

Three E-only high rows and three C-only middle rows describe block coverage. A/B/C share 99.00, the poor low under the declared convention. No speed, intent or compulsory repair follows.

Which settings create or erase these features?

Could you make a tail appear or vanish without any change in the market?

Yes, and this is the most important practical point in the lesson.

  • Period length. Shorter periods give price more chances to leave extra letters at the extremes, so tails can lengthen or shorten. A single print on a 30-minute profile may become two letters on a 15-minute profile.
  • Row size. Larger rows merge prices and can turn a two-row tail into one row, or a ragged high into a flat one.
  • Session definition. A regular-hours profile and a full-session profile of the same day can have different highs and lows, so their tails differ.
  • Data source. Small differences in recorded highs and lows between feeds can change whether a high looks poor.

Because of this, a feature that appears under one setting is not a property of the market by itself. It is a property of the market seen through a chosen lens.

How can you describe these features honestly?

What would a description look like if it reported only what the profile shows?

Compare these two sentences about a constructed session:

  • Descriptive: “The high 102.50 belongs to a three-row E-only tail under our convention; A, B, C share lowest 99.00. Exact dwell times are unknown.”
  • Interpretive: “Sellers defended the high and the low must be repaired.”

The first sentence can be checked against the chart. The second adds intentions and a forecast that the chart does not contain. Practice writing the first kind. If you want to explore the second kind, turn it into a testable statement and test it on past data, knowing that a past result describes that sample and does not show what happens next.

What are the limits of these features?

Why might two careful readers label the same session differently?

  • Definitions vary. Tail length, “within a tick” for a poor high, and what counts as a single print all depend on rules that differ by author and platform.
  • Settings change the picture, as listed above.
  • They are visible only after the fact. A tail at noon can be erased by an afternoon move, and a high can turn poor or stop being poor before the close.
  • They carry no volume information. A one-letter row may have traded many contracts or very few.
  • Selection bias. Memorable examples are the ones that get shared, which makes any feature look more meaningful than an unselected sample might.

What this does not tell you about excess and poor extremes

  • Excess does not show that a high or low is final, or that it holds in the next session.
  • A poor high or low does not mean price has to return to it.
  • Single prints do not mark a level price has to fill, revisit or respect.
  • None of these features shows who traded or what they intended.

Method in Practice: a poor high as a reference, not a promise

Fictional example. John, Harbor Index futures, the prices, times, costs and results are all invented for teaching. This shows how a written plan can be built and tested. It is not a recommendation, and nothing here says how often this idea works.

Try it on a real chart. Test this idea yourself on past sessions with bar replay. Keep your own count, including the days with no trade.

The idea. The lesson calls "markets return to poor highs" a belief, not a fact. John uses a poor high only as a reference point for where he'd take profit, and only on days his entry rule is met for other reasons. If the prior high had excess (a tail) instead, this plan isn't active at all.

John's plan

Setup
the prior session's high at 102.00 is poor (three periods share the top row); prior POC 101.20
Enter if
today opens below 101.20, then two 30-minute periods in a row close above 101.20. Buy.
Wrong if
a 30-minute period closes back below 101.20
Manage
take half at 101.60, the rest at 101.95 (just under the poor high) or by 14:30
Risk
$150 maximum, costs included
Video (3:19, voiced, captions available): the idea, John's plan and the three replays, with pause-and-predict moments. Everything it shows is written out under "Show the full replays".

Three outcomes

  • Worked: price rose toward the poor high → +$55

  • Failed: closed back below the POC → −$70, inside the limit

  • No trade: the prior high had a tail, not a flat top, so the plan wasn't active → $0

Show the full replays
ItemPlan
ContextPrior session: high 102.00 printed by periods F, G and H with no higher row (a poor high under John's convention); POC 101.20
Entry conditionOpen below 101.20, then two 30-minute periods in a row close above 101.20. Buy 2 at market after the second close
Wrong ifA 30-minute period closes below 101.20. Exit at market after that close
ManagementTake profit on half at 101.60 (limit) and move the exit for the rest to the entry price (stop). Rest at 101.95 (limit). Time limit 14:30 CT
Risk cap and size$150. Exiting just under 101.20 is planned to cost about $40 per contract, so 2 contracts
Not active ifThe prior high has a tail of two or more single-letter rows. Also no trade with a scheduled major release within the hour, or no setup by 12:00 CT

Replay A: worked

Time (CT)What happenedJohn
08:30–09:00Opens 100.90, closes 101.28First close above 101.20
09:00–09:30Closes 101.40Second: buys 2 at market, filled 101.45
09:30–10:40Trades 101.60 at 10:40Sells 1 at 101.60 (limit). Exit for the other moves to 101.45
10:40–13:05Never back to 101.45, trades 101.95 at 13:05; high of day 101.98Sells the last 1 at 101.95 (limit)

Result after costs: +0.15 point = +$15, +0.50 point = +$50, commissions −$10. Net +$55. Journal: "Price came within 0.02 of the poor high and didn't reach it. My limit just under it filled; that was the point of placing it there."

Replay B: failed

Time (CT)What happenedJohn
08:30–09:00Opens 100.95, closes 101.25First close above
09:00–09:30Closes 101.30Second: buys 2 at market, filled 101.35
09:30–10:00Closes 101.10Wrong-if met: sells 2 at market, filled 101.05
10:00–15:00Rotates 100.60–101.20 and never nears 102.00Done for the idea

Result after costs: 2 × −0.30 point = −$60, commissions −$10. Net −$70. Journal: "No revisit today. The poor high was only ever a reference."

Replay C: no trade

Time (CT)What happenedJohn
Pre-openThe prior high at 102.00 has a three-row single-letter tail (excess), not a flat topPlan not active today
08:30–15:00Price trades up to 101.90 anywayWatches only

Result: $0. Journal: "Not my setup, even though price went up. Following the rule includes the days it doesn't apply."

Test it yourself

  • Turn the belief into a testable statement first (the lesson's Check yourself, question 5): define "poor high", "returns" and the time window.
  • Count every poor high in your sample, including the ones price never revisited.
  • Compare with ordinary highs under the same rule. If both get revisited about as often, the label adds nothing.

Where it breaks

  • Changing the period length or row size can make a high look poor or not (this lesson's settings section).
  • Price can stop short of the reference, as it did in the worked replay.
  • Hindsight: a high that turned out "poor" is easier to remember than one that didn't matter.

Calculators: position sizerisk/rewardexpectancy

Reflection question: Which of the levels in your plan are facts about the chart, and which are beliefs you haven't tested?

Check yourself

Reflect on these; there is no score.

  1. Do three E-only high rows establish that price left within seconds? What is the high-end shape called under this figure’s convention? Hint: a tail at the high.
  2. Which figure periods make 99.00 a poor low, and must it be repaired later?
  3. If a later block H visits 100.50, what changes?
  4. With the same fixed trade record, a tail disappears when 30-minute blocks become 15-minute blocks. Did new market activity necessarily occur? Hint: reread the settings section.
  5. Rewrite “the poor high gets repaired tomorrow” as a testable statement without promising repair. Hint: define poor high, define “returns”, choose a time window and a sample.

Reflect on your own process

For your own notes; there is no score and no right answer.

  1. What written definition of a tail, a poor high and a single print does your journal use, including period length and row size?
  2. How would you record a "repair" belief as a testable statement before checking it?
  3. Which sentences in your last session notes could be checked against the chart, and which added intentions?
  4. Which of the levels in your plan are facts about the chart, and which are beliefs you haven't tested?

Sources

Last reviewed . Spotted a mistake? Report an error.