TRADERSAM
New member
Hey everyone,
I’ve been using the basic volume column in my watchlist on Thinkorswim and just scrolling through manually to see which stocks look like they’re moving the fastest. It works sometimes — but other times I miss the hottest stock because it doesn’t stand out fast enough in the list. I tried figuring it out on my own with no success and I also tried ChatGPT but honestly ChatGPT can never seem to quite get thinkscript code right.
I’m hoping to build a custom watchlist column that can:
thinkscript
CopyEdit
The issue is that sometimes it still shows high numbers for stocks that aren’t actually active anymore.
Any ideas on how I can refine this to only show stocks that are currently building volume fast? Or a better approach entirely?
Appreciate any help!
I’ve been using the basic volume column in my watchlist on Thinkorswim and just scrolling through manually to see which stocks look like they’re moving the fastest. It works sometimes — but other times I miss the hottest stock because it doesn’t stand out fast enough in the list. I tried figuring it out on my own with no success and I also tried ChatGPT but honestly ChatGPT can never seem to quite get thinkscript code right.
I’m hoping to build a custom watchlist column that can:
- Show which stocks have volume that’s climbing rapidly over the last few bars
- Act as a real-time “heat meter” so I can catch momentum early
- Use some kind of slope/delta math to track volume acceleration over the last 3–4 bars
- Be color-coded to help visually spot the top candidates quickly (e.g., red for slowing down, green/yellow/orange for fast climbers)
thinkscript
CopyEdit
Code:
def v0 = volume;
def v1 = volume[1];
def v2 = volume[2];
def v3 = volume[3];
def slope1 = v0 - v1;
def slope2 = v1 - v2;
def slope3 = v2 - v3;
def climbSpeed = (slope1 + slope2 + slope3) / 3;
AddLabel(yes, Round(climbSpeed, 0), Color.BLACK);
AssignBackgroundColor(
if climbSpeed < 0 then Color.DARK_RED
else if climbSpeed < 1000 then Color.LIGHT_GREEN
else if climbSpeed < 5000 then Color.GREEN
else if climbSpeed < 10000 then Color.YELLOW
else Color.ORANGE);
The issue is that sometimes it still shows high numbers for stocks that aren’t actually active anymore.
Any ideas on how I can refine this to only show stocks that are currently building volume fast? Or a better approach entirely?
Appreciate any help!
Last edited by a moderator: