Scanning for Swing Trade Setups in TC2000

Scanning for swing trade setups in TC2000 is a guide to help you find the stocks that you care about for your watch-list.

It covers the basics of creating new scans, selecting and filtering your stock universe, examples of a few of my favorite scans, as well as some general tips that I’ve learned over the years.

I’ve recorded a supplementary video below, covering more of the setup process in TC2000 if you are interested in duplicating these same scans in your own environment.

What is Worden TC2000?

Worden TC2000 is the stock scanner we are going to be using throughout this article.

Taken directly from their website, they describe themselves as:

The best stock market software for charting, scanning & sorting and technical analysis

And I’d have to agree.  They’ve been my choice of scanner and watch-list for years now and I consider TC2000 must-have trading software.

They have a free web version available called Freestockcharts but they’re flagship product TC2000 does require a subscription.

If you’re not already a customer be sure to use The Trade Risk’s affiliate link, to receive the latest promotional pricing.

Why scan for stocks in the first place?

There are over 5,000 public US stocks available to trade every single day.

I don’t know about you, but that’s too many for me to keep track of on a day-to-day basis, and more importantly, most aren’t of any interest to me at any one given time.

But finding quality trade ideas that fit my trade plan as an active trader is necessary, and that’s why scanning is so important and such a time saver.

Instead of having to sort through thousands of stocks, we can get a shortened list back, containing only stocks that fit the characteristics that we’re looking for.

For instance, let’s say we only like to trade stocks above their 200 day simple moving average. There’s no sense in looking at any that are trading below the 200 day, so by adding that filter to our scans, we eliminate a large group of stocks that we’re not interested in.

Filter out the noise, and focus on the opportunity.

Universe Image - Scanning for Swing Trade Setups in TC2000

Step #1 – Defining your universe of stocks in TC2000

The first step in scanning is deciding what your overall universe of stocks will be.

In TC2000 you have a great deal of flexibility to scan for stocks on specific exchanges like the NASDAQ, NYSE, or drill down deeper into specific sectors or even industries.

For my scans, I like to cast a wide net and use TC2000’s US Common Stocks list.

This group contains a listing of all of the stocks on the Nasdaq and NYSE but without ETFs and indices, so we’re left with just individual stocks.

Pro tip: create a second watchlist of all of the indices and ETFs you like to track, that way you can run scans or tab through them separately.

Now that we have our universe of stocks defined, let’s filter it down a bit more.

Step #2 – Filtering your TC2000 stock universe

The next step is to add in some prerequisite screening criteria. Before we get to specific trade setups or patterns, we want to make sure that we’re only looking at stocks that trade at a price point and volatility level that we’re comfortable with.

We also want to make sure the stocks we’re looking at trade with sufficient daily volume.

The following criteria are simply personal trading preferences of mine, so feel free to ignore or modify these conditions as you please.

  • Price History > 8
    • I’m only interested in trading stocks over $8 in price.
  • Average 20 day volume > 300K
    • I prefer liquid stocks that trade an average of 300,000 shares per day based on the last 20 trading days.
  • Minimum 20 day volume > 200K
    • I found the volume filter above didn’t quite do the job by itself because there could be a 1 day event (earnings or otherwise) that skewed the 20 day volume calculation into a false positive. By making sure there’s always a minimum of 200K shares trading each day, we’ll avoid this loophole.
  • Average true range > 0.30
    • I only want to trade stocks that are at least moving an average of 30 cents each day.

Another common base stage filter would be market cap.

For example, only return stocks over 1 billion in market cap that way you avoid some of the riskier micro/nano-cap companies.

The above filters represent my baseline scanning criteria and are included in all future scans that we review.

Scan for stocks consolidating in tc2000

Now that we have our universe of stocks chosen and basic filters in place, let’s get into the specific patterns we’re interested in.

In this first example, we’ll search for stocks consolidating. Consolidating is a broad term, but in general, it means stocks that are moving mostly sideways, without recent trend or momentum.

There are lots of ways we can write our scans based on this definition, but we’re going to choose to use moving averages.

By using multiple length moving averages and checking to see if they are converging onto one another, we can get back stocks that have been trading sideways.

Scanning for Swing Trade Setups in TC2000 - Consolidation Image

The larger the consolidation patterns you want to see, the larger your moving averages should be.

  • Description:
    • All stocks where the 8 EMA closed within 2% of the 20 EMA and the 50 EMA closed within 2% of the 20 EMA
  • PCF equation:
    • XAVGC8 >= XAVGC20*.99 AND XAVGC8 <= XAVGC20*1.01 AND XAVGC50 >= XAVGC20*.99 AND XAVGC50 <= XAVGC20*1.01

When moving averages of various periods are all within the same general area as one another (flat and overlapping), we get a nice list of stocks that have been recently consolidating.

Scan for stocks surging in ATR in TC2000

The next scan that we’re going to look at is stocks suddenly experiencing a surge in their usual trading behavior.

This scan utilizes a stock’s average true range and it will return both bullish and bearish moves by default, but you could easily add an additional condition to filter out a positive versus negative move.

Scanning for Swing Trade Setups in TC2000 - Surge ATR Image

  • Description:
    • All stocks that are seeing a 60% surge over their 10-day average true range.
  • PCF equation:
    • ((H – L + ABS(H – C1) + ABS(C1 – L)) / 2)*.60 >
      (AVGH10.1 – AVGL10.1) / 2 +
      (ABS(H1 – C2) + ABS(C2 – L1) +
      ABS(H2 – C3) + ABS(C3 – L2) +
      ABS(H3 – C4) + ABS(C4 – L3) +
      ABS(H4 – C5) + ABS(C5 – L4) +
      ABS(H5 – C6) + ABS(C6 – L5) +
      ABS(H6 – C7) + ABS(C7 – L6) +
      ABS(H7 – C8) + ABS(C8 – L7) +
      ABS(H8 – C9) + ABS(C9 – L8) +
      ABS(H9 – C10) + ABS(C10 – L9) +
      ABS(H10 – C11) + ABS(C11 – L10)) / 20

These types of sharp moves generally coincide with breakouts or sudden changes of character that can lead to continuation in the direction of the initial move.

Scan for stocks in an uptrend pulling back above 20-day moving average

If you’re not a fan of chasing breakouts, or you simply want to diversify with some pullback setups, then this scan is for you.

Here, we are looking for stocks that have been behaving well by trading above the 20 EMA,  but have recently pulled back to a more favorable risk to reward area.

Pullback Image - Scanning for Swing Trade Setups in TC2000

  • Description:
    • 3 consecutive down closes while still over the 20 EMA.
  • PCF equation:
    • (C2 < C3) AND (C1 < C2)  AND (C < C1)  AND (C > XAVGC20)

Buying near term weakness in strong stocks can be a powerful setup under the right market conditions.

Scanning for swing trade setups in TC2000

Hopefully, these scans have been helpful and give you some ideas to think about and experiment with further on your own.

Here are a few other tips I’ll leave you with:

  • Having different scans for different market conditions is a good idea. A strongly up-trending market will lend itself better to different types of setups than if you were in a bear market.
  • There are pros and cons to creating very specific and narrow scans. If you know exactly what you’re looking for then they’re great, but there’s also a great deal of context you can pick up from stepping through loosely defined scans and letting your experience filter the best setups.
  • As you get comfortable scanning regularly, the number of stocks returned will serve as important market information. For example, if there is one scan that almost always returns 10 to 20 stocks and then suddenly it begins sending back 60 or 70, that gives you some insight into the behavior of the underlying market.
  • For a more documentation on the TC2000’s PCF language, bookmark this PCF formula syntax page.

If you have any questions or comments, just leave them below and I’ll get back to you as soon as possible.

If you have an idea for a scan but need it developed for you, check out the custom coding service we have available.

Last but not least, we also have a handful of pre-built (free and paid) TC2000 scans available for download on this page.

Enjoy what you read? Share it below and be sure to tag @thetraderisk.

Evan Medeiros

Evan is the founder of The Trade Risk, a financial media company that publishes research and analysis about the stock market and specializes in trading education. With 20+ years of coding experience and a B.S. in computer science, Evan brings a systematic discipline to investing in the stock market.

Don't miss out on more educational articles just like this!

Please enter your name.
Please enter a valid email address.
Something went wrong. Please check your entries and try again.


  1. jerry on 10:44 am March 3, 2018 at 10:44 am

    i am using tc2000 to paper trade. i shorted 600 shrs and want to sell them(buy to cover). cannot see how to do it.
    help please

    • Evan on 1:49 pm March 3, 2018 at 1:49 pm

      Hi Jerry,

      I’m sorry I don’t have experience using TC2000 as a broker (even paper trading) so I couldn’t offer up much help here. Their support tends to be pretty solid, drop them an email, I’m sure they could help.

  2. traninho on 1:26 pm September 14, 2018 at 1:26 pm

    Hey Evan,

    Thanks for the article. I tried the PCF for consolidation pattern. Thought, I would like to specify it further and use it as a screener for channel/range setups. Do you know how I can add condition that a stock is near to bottom/top (support/resistance) of channel?

    • Evan on 1:06 pm September 15, 2018 at 1:06 pm

      A condition for stocks near the bottom/top of a channel could be added, but not as easy as it would seem. It would require a strict definition of what a sideways channel is. What is the minimum/maximum length of an acceptable channel? How many peaks or how much supply would need to be traded near the highs/lows to form “resistance” and “support”? How tight would those peaks need to be? Etc.

      It’s dead simple for our eye to pick up on what a sideways channel is, but these patterns are actually tricky to code. So it is possible, yes, but not as easy and flexible as you may want. A much easier condition to implement would be “distance away from 52W highs” or “distance away from 20-day lows” but as you can imagine, those wouldn’t necessarily coincide with a sideways channel.

      Hope that helps!

  3. frank t. on 10:46 pm January 18, 2019 at 10:46 pm

    Is there a way to scan for ichimoku cloud information?

  4. Evan on 3:39 pm January 20, 2019 at 3:39 pm

    Hey Frank,

    Yes, you can create scan conditions for ichimoku cloud just by putting the indicator on your chart, clicking the drop-down on the cloud indicator (at the top of your chart) and clicking “create scan condition”.

    There’s no PCF code that I’m aware for scanning with it, you’ll need to create the conditions using the indicator drop down.

    Let me know if that’s not clear.

  5. Bill Toft on 5:45 pm November 2, 2019 at 5:45 pm

    Great video, thorough explanations. Do you have a video that explains how to set up a scan to find stocks where 1) the 10 EMA is about to cross the 20 EMA, and/or 2) there is an inside 15-min or 30-min setup (that is, the current 15 or 30 minute bar closes inside of the prior bar.

Leave a Comment