Skip to main content
Reads

Terminal7 min readUpdated Jul 9, 2026

How to Build a Self-Updating Watchlist of RS Leaders

A watchlist built from a screen goes stale the moment leadership moves on. The fix is to save the question instead of the answer. The tickerstance terminal lets you file a screen away under a $handle, so calling it back re-runs the rule against the latest close and the list rebuilds itself.

Key takeaways · 6

  1. leaders rs>90 mcap<2b | save $small-leaders runs a screen for the relative-strength leaders under a two-billion market cap and files the whole query under a handle you can call back.
  2. | save $name stores the query, the rule, not the tickers it returned tonight. The definition is frozen while the members are recomputed on every close.
  3. Typing $small-leaders on its own re-runs the saved query against the most recent close, so the watchlist refreshes itself daily without you retyping the filters.
  4. The $ prefix is the saved-query namespace, and each saved handle shows up as a chip in the SAVED row (here $liquid, $small-leaders, and $strong).
  5. The terminal has no price field, so size is set with mcap or the coarser captier bucket, never a dollar price; mcap<2b scopes the leaders to small and mid caps.
  6. A saved screen is a living query whose members rotate as strength rotates; a pinned watch list is a fixed roster you chose by hand. Both are end-of-day, so a refreshed list describes the close it came from, not the next session.

A watchlist that rebuilds itself

To keep a watchlist of relative-strength leaders current without rebuilding it by hand, save the screen instead of the stocks. In the tickerstance terminal that is one line, leaders rs>90 mcap<2b | save $small-leaders, which runs a screen for the strongest small and mid-cap names and files the query away under a handle. Type $small-leaders any evening after and it runs again against that night's close. The list you get back is fresh; the rule that built it never moved.

Most watchlists rot. You screen for leaders on a Sunday, paste twenty tickers into a list, and a month later half of them have stalled while the real leadership has rotated into names that were not on your radar when you built it. A pasted list is a photograph of one day's strength, and strength does not sit still.

A saved screen fixes that by storing the question rather than the answer. When you save leaders rs>90 mcap<2b, you are not saving the hundred tickers it returned tonight. You are saving the rule: the relative-strength leaders under a two-billion market cap. Each time you call it back, the terminal recomputes that rule against the latest close and the membership rolls forward on its own. Names that lose relative strength drop out, names that just earned it appear, and the roster rotates while the definition stays put.

What the filters actually mean

leaders is the source: the relative-strength leadership list, the names whose RS ranks them at the front of the field. rs>90 narrows that to the top decile of a 0-to-99 percentile, where 90 means the stock is outrunning about ninety percent of the universe. On the 2026-07-08 close those two conditions together returned a hundred names.

mcap<2b is the size cut, and it is worth a word because of what the terminal deliberately lacks. There is no price field. You cannot write close<10 or price<20, because a share price on its own says nothing about how big a company is: a 15 stock can be a giant and a 200 stock can be tiny. Size lives in market capitalization, so you express "small" with mcap (mcap<2b scopes the screen to small and mid caps) or with the coarser captier bucket, never with a dollar price. The money suffixes are k, m, and b, so 2b reads as two billion.

The predicates simply stack. Writing rs>90 mcap<2b with a space between them means both conditions at once, an implicit AND. You never put the word and between two filters; the space already does that work.

Saving the query, not the roster

Type leaders rs>90 mcap<2b | save $small-leaders and two things happen. The screen runs and lays out the hundred small and mid-cap leaders that clear RS 90 on the latest close. And the | save $small-leaders clause on the end files that whole query away under the handle $small-leaders, which appears as a new chip in the SAVED row across the top of the terminal.

The screenshot below is that moment. The SAVED row now carries three chips, $liquid, $small-leaders, and $strong, each one a query somebody froze for reuse. Below them sit the hundred rows the screen returned: ELOX, OPI, OTLK, BBGI, RXT, AGL, and CUE all at RS 99, then names like ABSI and EVC a step behind, down through LESL and BLZE at 97 and FCEL at 96. That list is tonight's membership. The chip is the thing that will regenerate it.

The tickerstance terminal after running "leaders rs>90 mcap<2b | save $small-leaders": a SAVED chip row at the top now shows a new $small-leaders chip beside $liquid and $strong, with 100 relative-strength leaders listed below, including ELOX, OPI, OTLK, BBGI, RXT, AGL, and CUE all at RS 99.
leaders rs>90 mcap<2b | save $small-leaders on the 2026-07-08 close. The screen returns 100 small and mid-cap RS leaders (ELOX, OPI, OTLK, BBGI, RXT, AGL, and CUE all at RS 99) and files the query under the new $small-leaders chip in the SAVED row.

Recall and iterate: typing $small-leaders

The payoff is the recall. Any evening after you saved it, type $small-leaders on its own and the terminal treats the handle as the query it stands for, re-running leaders rs>90 mcap<2b against that night's close. You do not retype the filters and you do not get a stale snapshot. You get whoever leads under two billion right now.

That is what makes it self-updating. Between the night you saved it and the night you call it back, some names will have cooled out of the top decile and dropped off, and others will have climbed into RS 90 for the first time and joined. The turnover is the point. Your watchlist is tracking a definition of leadership, not a fixed set of tickers, so it follows the strength wherever the strength goes.

The $ prefix is the whole saved-query namespace. Every handle you save lands there and shows up as a chip in the SAVED row, so $liquid, $strong, and $small-leaders sit side by side as named starting points. You can recall one, edit the filters (tighten rs>90 to rs>95, or swap mcap<2b for a captier band), and save it again under the same handle or a new one, iterating a screen the way you would iterate a saved search anywhere else.

| save $small-leadersSave the rule, not the tickers: the list rebuilds itself
$small-leadersleaders rs>90 mcap<2bthe frozen rulemon closeAGLRXTCUEBBGItue closeAGLRXTCUEEVC newwed closeAGLRXTEVCABSI newnames leave as they lose RS, others enter as they gain it: the watchlist follows the strength

The saved rule is frozen; the members recompute against every close, so the watchlist rolls forward on its own and follows the strength.

A saved screen versus a pinned watchlist

It is worth separating two things the word "watchlist" gets used for. A saved screen like $small-leaders is a living query: it has no fixed members, just a rule that recomputes every close. A pinned watchlist is the opposite. The terminal's watch command holds a fixed roster of specific tickers you chose by hand, the handful of names you are actually tracking into a trade, and it does not change unless you add or remove one yourself.

Both earn their keep, for different jobs. The saved screen is your funnel: the wide, self-refreshing pool of everything that currently fits a definition of leadership. The pinned list is your short list: the few names that made it through your own eyes and off the funnel. One rotates on its own with the tape, the other only moves when you move it. Keeping them distinct is the difference between "show me what qualifies tonight" and "show me the names I am watching."

What the saved list does not claim

The saved screen is end-of-day. $small-leaders recomputes against the most recent close, not the live tape, and every row is stamped with the session it came from. Calling the handle on Tuesday night gives you Tuesday's leaders, a description of the day that ended, not a read on Wednesday's open.

Membership on any single night is noisy. A name can clear RS 90 on one strong session and slip back under it the next, so a single appearance on the list is thinner evidence than a name that has held its place for weeks. The list tells you who qualifies tonight, not who has earned the leadership over time, and that judgment is yours to add.

And the terminal reports conditions and stops there. "A hundred names under two billion currently rank above RS 90, and here they are" is a fact about the close. It is not a suggestion to buy any of them, and the saved screen carries no opinion about which of its members, if any, belong in your book. It hands you the pool that fits your rule; the trade is yours.

Where to save and recall

The leaders screen, the | save handle, and the $ recall all belong to the tickerstance terminal, which lets you ask the tape a question and keep the good questions around. The interactive terminal is a Pro feature at $28 a month, grandfathered, and everything it computes is end-of-day and point-in-time honest, with no "here is what to buy" attached. It reports where the strength is; the trade is yours.

Open the terminal, run leaders rs>90 mcap<2b | save $small-leaders once, and from then on a single $small-leaders rebuilds your leader watchlist against the latest close. Change the rule whenever your definition of a leader changes, and the list follows.

Frequently asked questions

How do I make a stock watchlist that updates itself automatically?

Save the screen instead of the tickers. In the tickerstance terminal, leaders rs>90 mcap<2b | save $small-leaders runs a screen for the relative-strength leaders under a two-billion market cap and stores the query under the handle $small-leaders. Typing $small-leaders on any later evening re-runs that query against the latest close, so the list refreshes itself while the rule that built it stays fixed. The members rotate as strength rotates, and you never rebuild it by hand.

What does | save do in the tickerstance terminal?

| save $name takes the screen to its left and stores it as a reusable query under the handle you give it. It saves the definition, not the rows: leaders rs>90 mcap<2b | save $small-leaders files away the rule "RS leaders under two billion," not the hundred tickers that matched tonight. The handle then appears as a chip in the SAVED row at the top of the terminal, alongside any others you have saved such as $liquid and $strong.

How do I re-run or recall a saved screen?

Type the handle on its own. Once you have run leaders rs>90 mcap<2b | save $small-leaders, typing $small-leaders by itself re-runs the saved query against the most recent close and returns whoever fits the rule now. Because it recomputes rather than replaying a stored list, the results roll forward every session. You can also recall it, change the filters, and save again to iterate the screen.

Why is there no price filter, and how do I screen by size?

The terminal has no price field on purpose, because a share price alone does not describe a company: a 15 stock can be large and a 200 stock can be small. Size is expressed with market capitalization instead. Use mcap for a specific cutoff, so mcap<2b scopes a screen to small and mid caps, or the coarser captier bucket for broad size bands. The money suffixes are k, m, and b.

What is the difference between a saved screen and a watchlist?

A saved screen like $small-leaders is a living query with no fixed members: it recomputes its list against every close, so names enter and leave on their own as their relative strength changes. A pinned watchlist, built with the watch command, is a fixed roster of specific tickers you chose by hand, and it changes only when you add or remove one. The saved screen is the wide pool that fits a rule; the pinned list is the short set of names you are actually tracking.

Is the leaders list real-time?

No. The tickerstance terminal is end-of-day. $small-leaders recomputes against the most recent market close, and every row is stamped with the session it came from. Recalling the handle after Tuesday's close gives you Tuesday's leaders, a description of the day that ended rather than a live intraday read.

What does rs>90 mean?

RS is relative strength on a 0-to-99 percentile scale, where the number is the stock's rank against the rest of the universe. rs>90 keeps only names in the top decile, the ones outrunning about ninety percent of the field. It is a relative rank, so it says a stock is strong compared with its peers, not that it has reached any absolute price or level.