Order Flow: A Crash Course – Part 2

Every now and then I see a comment or quip where it seems pretty clear that a trader might not really get it. By it, I mean liquidity… aka order flow. Not being judgmental here, the term itself is confusing. I mean there’re a couple very different aspects to order flow and that’s really the cause of the muddle.

Active vs Passive Order Flow

There’s “active” order flow and then there’s “passive” order flow. Active order flow’s the volume that’s actually traded. Traded volume can be called active because it requires a market order (a willingness to pay the spread) in order for a limit order on the other side to be matched and traded out of the order book. The source of the market order can be considered an aggressor. And then there’s passive order flow – passive because it’s basically an advertisement for business. It’s telling the world I have x number contracts or shares to buy or sell at a given price. These orders are telling the world come and get me… if you’re willing to pay the spread.

So this confusion’s understandable. I like to call the active variety of order flow traded volume or tick analysis and call the ebb and flow of orders in the market depth book what it is… order flow proper.

Key Questions

To that end, in Part 2 (click here for Part 1) I want to show a good example from today in NQ of a counter intuitive order flow concept: liquidity attracts price.  You can use this concept to help you answer (at least) three fundamental, objective questions:

  1. Are buyers/sellers responding to available liquidity?
  2. What’s the potential for price continuing to move in the same direction?
  3. What’s the potential for price to stop or reverse?

An Example

Below we have a chart series spanning 2 hours from about 7:45AM PDT to 9:45 AM PDT, and it pretty clearly shows how order flow can reveal to you what’s about to happen.

1. Just before 8:00 significant bid liquidity steps into the market and sellers begin responding. Bids are added, sellers continue to eagerly respond and drive down through the bids:

 

2. As price moves down, bid liquidity notably dries up around 6215. Offers also dry up very briefly at the same time. This can be an important clue for a cessation of hostilities, or a turn in a swing with power. Astute readers will notice what develops as price bounces from 16ish…

 

3. This move has passed 25 handles in just a few minutes. Some late sellers decide they want in (or out, we don’t really care which), but buyers aren’t reacting. Sellers now start to move at market and press price down another 20 handles in 15 minutes.

4. Notice the difference between the first leg of the move (above) and this one? Yeah, the bids are LESS and the offers are MORE. This liquidity imbalance is a clue that something is likely to happen. You guessed it. It’s about to attract price, but the other way round.

5. After a brief liquidity drought (get it?) new bids step in near 6200 and then begin using market orders to lift the offers for a fast 15 handle rotation the other way.

 

That’s it for this installment – hopefully it’ll be less than a year until my next installment. In the meantime… trade ’em well.

Order Flow and Traded Volume: A Crash Course – Part 1

I’ve had muchas preguntas (many questions) on Twitter lately when I mention things like new offers/bids coming in to support/resist at [whatever price]. It’s really hard to explain in one chart image and 140 characters, and today we had some crystal-clear examples in the ZB futures contract, so lets explore.

Market Depth 101

Before we get to the heart of this, a little exposition is needed. Many traders don’t realize the futures (and most stock) exchanges actually have 2 feeds of data – the most well known feed is called level 1 and contains 3 (or 4) pieces of information for each trade, for each instrument:

  1. Price at which the trade occurred
  2. Volume: number of contracts or shares traded
  3. Time: the time at which the trade was executed
  4. Best bid and ask: the bid and ask prices which where in effect when the trade was executed (optional, not all instruments have this).

The other feed is market depth or level 2 data. That’s all the prices and volume above the best ask price (offers/sellers) or below the best bid (bids/buyers), and this is the information that’s used to populate a DOM (depth of market) display:

The total set of data  – all the bids and offers at a given time – is commonly called the order book. If the price bars on your chart were a cake, this information is the raw ingredients for that cake. The process of matching buyers and sellers at the best bid and ask prices is the baking. Without both the ingredients and the heat, you ain’t getting a cake.

Right now you might be saying to yourself, “Yeah, ok, but why should I care? I don’t really like cake.”

I don’t either. But I do care about making trades at the right prices, so looking at all available data to make those buying and selling decisions (assuming you have that data) is just common sense. So what we’re going to do next is look at how we can combine traded volume at price with the order book to get the clearest possible picture of what’s happening in a market at a given time.

Important Evidence in Volume & Order Flow Analysis

Support and resistance efforts can be seen in both the traded volume history (see: Volume Impression) as well as the order book history (see: Flodometer). Some general patterns we want to look for in quality support/resistance are:

  • Slow price movement/pace of trade
  • Low/no demand/supply (willingness to buy/sell) at the top/bottom prices of a range
  • Absorbtion: as price moves up, sellers are willing to fill every (or nearly every) market buy that appears. Vice-versa as price moves down.
  • Increasing liquidity: for resistance that is volume in the order book increases on the opposite side of the move. If price is moving up, we want to see the total number of offers increase. Vice versa for support.
  • Liquidity at multiple prices: significant market participants aren’t really all that concerned with a tick or two, they’re more concerned with cost bases or average prices. They’ll spread offers or bids out over several nearby prices to actually get filled as price moves in their desired zone.

Example 1 – Resistance that Works

Around 6:45 PST we had a test of the previous days’ value area low as well as the 60-minute initial balance high. These are common prices at which resistance is found, but when price gets there are there any clues it’s going to hold?

 

 

First, let’s look at traded volume. How’d we do according to the guidelines above?

 

Next, let’s look at the same resistance from the perspective of the liquidity, or the order book:

 

 

There are other counter-intuitive ways to look at this information, these are commonly talked about as head fakes, traps or stop runs, but that’s for the advanced lessons. This’s a crash course, remember.

Example 2 – Support that Works

Same session, this time near 7:40 PST we saw ZB make another attempt at a low and buyers were successful and holding price above the Globex low of 148’30.

 

Using the criteria above, what were the signs in traded volume that the low would be held?

Now the same support attempt, from the liquidity perspective:

Example 3 – Resistance that Fails

In this scenario, sudden moves can be really difficult to detect in traded volume, mostly because it looks like nothing at all is happening:

Though this is where watching liquidity conditions has an advantage. Price tends to move quickly in low-liquidity situations, but slowly when liquidity is high. Why? Because in order for price to move, the limit orders at each price in the book must be filled. Fewer orders, the easier it is to clean out a price and move to the next. So, when liquidity is being drained – rather than added  – that’s very often a clue something’s going to happen very soon. With that in mind:

 

Wrapping Up

Like I mentioned at the start, this is a crash course. These are just a few examples in one instrument in one session. The evidence in traded volume and liquidity varies from instrument to instrument, but the signs are generally the same. Hopefully this was helpful and, until next time, trade ’em well…

 

UPDATED: Initial Balance Breakouts by the Numbers

A fresh batch of data for the long-term initial balance (IB) breakout study has just been run and written up. It’s always illuminating to see how the market morphs over time. And it does. Sometimes imperceptibly, but always inevitably.

Want to know what’s changed? Have a look here…

Updated Market Study – Breaking the Initial Balance Range

Where there’s smoke there’s fire. Or something hot off the press, like there is here.

Trade ’em well today. It’s a tricky one…

Spotlighting the 30 Year US Treasury Bond Futures Contract

Hot off the keyboard we have a brand new spotlight of the 30 year T-Bond. If you’re used to the index futures, the ZB’s a horse of a different color for sure.
Check it out…

Updated Market Study – Tick by Tick Volume Analysis, Part 3

Hope everyone is doing well out there in trading land. It’s been a while, maybe too long, but I’ve gone and freshened up one of our most popular market studies.

Curious? You know you are. ;-} Have a look here…

Attention Index Traders: It’s Rollover Day

There’s been lots of searching for this post over the last couple of days, so here’s a handy link to save you some typing.

If you’re using a continuous contract (ends with ##-##) and want to know what you need to do, have a look at this post from a couple months back.

Trade ’em well…

Market Study Bootcamp: Part 3 – Creating Histograms in Excel

 

[box style=”rounded”]Warning: some basic statistics concepts ahead. If you have not had any coffee yet today, don’t read on until you have had some. ;-}[/box]

 

If you’ve been following along with this series, as well as the reading the market studies generally, you’ll know that one of ways I use to examine data is via the histogram. To the analytically bent, histograms – also called bar charts – are beautiful things. They are scary simple, and show the distribution of values in a set of data.

If you’re a volume or TPO profiler, you look at histograms every day, only maybe you didn’t realize it. Profiles themselves are either time or volume histograms, only they are rotated 90 degrees and displayed vertically. Other than that, they are the same.

Why are histograms so powerful? Because they show so clearly show us frequency. Frequency, or how often a certain value appears in a set of data is essentially, conceptually, the same as probability. In other words if we have a set of, say, 10 whole numbers and the number 5 appears 9 times in that set, we can say that the probability of the number 5 appearing in our set of data is 90%.

This can have predictive value as well, assuming our sample is representative of the whole set of possible values. While a sample size of 10 is far too small to have reliable predictive value (unless the total number of possible data points is about 10) and there are mathematical tests for the reliability of a probability calculation, suffice to say the larger your sample size the more reliable the predictive value.

One last example… say the largest possible size of  your set of data is 1000 numbers and say your sample contains 900 randomly selected numbers from that set of 1000. Let’s say further that the number 5 occurs in your sample 800 times. This means that the frequency of the value 5 is 800, and also that the probability of the number 5 occurring in your universe of data is 88%, which is pretty high. 88% is calculated frequency/sample size or .88 = 800/900. And since your sample included  90% of the all possible values (900 out of 1000), the predictive value is of this 88% is quite high. As traders, we live in a world of non-absolutes. We live and breathe a future without certainty. Our universe contains only likely or probable outcomes. And that is why performing this kind of analysis is so important.

[hr]

Now that the, er, probability that you’ve had enough of this background mumbo-jumbo is pretty high, let’s move on to the meat of the matter. That is how to actually create one of these beasties in Microsoft Excel®. You can use other tools, of course, but Excel’s ubiquity makes it the one we’ll choose today.

Step 1 – Install the Data Analysis Toolpak

Install the Excel Data Analysis Toolpak if you do not have in installed already. Instructions from Microsoft on how that’s done are here. Go ahead and have a look. No worries, we’ll wait. Back so soon? OK, let’s continue.

 

Step 2 – Sample Your Data

Before we can create the histogram, we need some data. In this case, we’ll just use our example above. We’ll create a set of 10 whole numbers. To do this, fire up Excel, create a new worksheet. In column A, type the first 10 whole numbers that pop into your head. Your worksheet should look something like this:

Step 2 - Data Sample

Step 2 – Data Sample

Step 3 – Create a Bin

A histogram needs 2 things as input. First, it needs a set of values to plot (the actual data). But it also needs to know the range of values contained in the data, which is called a bin. The way to create a bin is to find the minimum and maximum values in your set of data. You can do that as follows:

  • Click on the header for column A
  • Click the Data item on the Excel ribbon
  • Click the Filter button

Afterward a small arrow will appear on the column header, and this allows us to sort and filter the data in our worksheet by the values in that column:

Step 3 - Filtering the Data

Step 3 – Filtering the Data

Now click on the small arrow in column A and then click the menu item that says “Sort Smallest to Largest.” Afterward, we can see that the top row is the smallest value in our data set and the bottom value is our largest. This range – 1 to 12 – will be our bin. So head over the column G and type in the number 1 as that is our smallest value, then type 2, and 3 in the rows just below 1 (still in column G). Then:

  • Highlight the cells containing 1, 2 and 3
  • Click the small + sign in the lower right corner of the highlighted cells and drag it downward until we reach the number 12, as shown below

[one_half first]

Step 3a - Binning

Step 3a – Binning

[/one_half]

[one_half]

Step 3a - Binning

Step 3a – Binning

[/one_half]

 

Step 4 – Create the Histogram

We’re almost home free now. So let’s finish this one up (everything shown below):

  • Click the Data Analysis button on the ribbon. It will probably be all the way on the right of the Data tab
  • Select Histogram from the list, then click OK.
  • Select the values in column A as the Input Range and the values in column G as the Bin Range
  • Click the Chart Output checkbox and Excel will automatically create a new chart graphic for us in addition to the histogram data (shown below)
  • Click OK to generate, and the output will appear on a new worksheet

Step 4a - Histogram

Step 4b - Histogram

Step 4c - Histogram

Step 4c – Histogram

[hr]

That’s it!

Now that your data visualization is complete, it’s on to interpretation. But that task, amigos, is up to you. Until next time…. trade ’em well.

Rollover is Coming… Are You Ready?

 

[box style=”rounded”]

[iconbox title=”Updated: It’s all in the details” icon=”process-stop.png”]If you’re a continuous contract user, what needs to be done at rollover is a perennial source of confusion. So it’s critical to know which type of continuous contract you are using – provider adjusted or not provider adjusted.

It could be either depending on how you have your account connection set up. But you only need to take the steps below if you are using a continuous contract that is back-adjusted by your provider. If you’re using a dated contract or a non-adjusted continuous contract, there’s nothing to see here. Just go ahead and keep right on truckin’. ;-}

Want to know how to configure your connection for provider back-adjustment? Click the link in the first paragraph below.[/iconbox]

[/box]

 

If you trade futures you probably already know about contract rollovers. But if you use a back-adjusted continuous contract (it will end in ##-## instead of a date) did you know you need to take one extra step after the close on rollover day?

What is that extra step? You need to delete all your stored data and refresh it using Ninja’s Historical Data Manager. Why? Because the new adjusted price affects all previous prices for all previous contracts.

Sound scary? It’s really not.

Here’s how to do it:

  1. Disconnect from your data provider
  2. In the Ninja Control Center, click Tools > Historical Data Manager…
  3. Click the Edit tab
  4. Find your contract in the list, then right-click on the symbol
  5. Click Delete
  6. Reconnect to your data provider
Historical Data Manager - Continuous Contract Data Delete

Historical Data Manager

That’s it! You’re data is now fresh, clean, correctly adjusted and you can continue on your merry trading way.

Are You, Uh, Back-Adjusted?

Hola, amigos. Getting over my jet lag here…. slowly.

Hope this week is going well for you. The broader markets had a wee character change over the last few sessions, so stay nimble. Though today looks like a plodding inside day. But earnings season is here, earthquakes are quaking and rockets are launchingUse stops! OK, done with the public service announcements for today. ;-}

One of our members thought it might be a good idea to post something in the Rancho FAQs about not forgetting to check the box to use back-adjusted data if you use a continuous contract symbol to drive your charts. If you’re using a symbol that has ##-## in it instead of a date, this is you.

Why use the continuous contract? Mostly it is for convenience. When you use the continuous contract, you don’t have to keep switching out the contract symbols on every rollover. This happens quarterly for the index futures, but monthly for most other futures. The continuous contract symbol always pulls the current (a.k.a. front month) contract prices, and it does so automatically. After the session close on the rollover date, the new contract prices are fed to you automatically, and historical prices are gap-adjusted from that point on. No muss. No fuss. No messy applicator brush.

There are really 3 things to keep in mind about continuous contracts vs. the dated contracts. You’ll need to do a little investigation with your data provider if you’re not sure about any of these three points:

  1. Make sure your provider supports a continuous contract for your instrument, and make sure it’s also back-adjusted. Continuous contracts are a feature of some data feeds, but not all. Also, make sure your provider back-adjusts the prices. We’ve had reports that at least one very popular provider – CGQ – does not back-adjust their continuous contract symbols. Don’t guess about this… just ask your provider if you’re not sure. If you use the dated contract, and you have your merge policy set right (leave the default values), Ninja can merge the various dated contracts into a contiguous series of bars.
  2. Make sure you’ve told your connection in Ninja to pull back-adjusted prices from the data feed.You can do this by making sure the option is checked in your Ninja account connection properties. Here are a couple examples from IQFeed and Kinetick, respectively:[one_half first]
    IQFeed Back Adjusted
    [/one_half]
    [one_half]
    Kinetick Back Adjusted
    [/one_half]If your connection does not have this option, the most likely reason is that your provider does not have a continuous contract, does not back adjust it, or both.
  3. Add the ##-## symbol to your instrument list, then use it in place of the dated contract on your charts.You can add the continuous contract to the default instrument list like so:Continuous Contract - Instrument Manager

That’s pretty much it. Want more info? For more bedtime reading on handling rollovers in NinjaTrader, have a look here. And for specifics on setting up individual data feed connections, you might find the NinjaTrader Connection Guides helpful, and then be sure to check out the other posts in this category too.

Trade ’em well…