Computer Upgrade For ThinkOrSwim

@MerryDay
Might you advise your current computer setup? Laptop/PC, number of monitors etc.

I currently trade on a 16in MBP with 16ram and one 2K 27in monitor. That give me the needed real-estate to focus on the 2 instruments being traded. Perfect in the future I will expand if I trade more instruments.

Looking forward to your some feedback. Thanks
 

Join useThinkScript to post your question to a community of 21,000+ developers and traders.

@MerryDay
Might you advise your current computer setup? Laptop/PC, number of monitors etc.

I currently trade on a 16in MBP with 16ram and one 2K 27in monitor. That give me the needed real-estate to focus on the 2 instruments being traded. Perfect in the future I will expand if I trade more instruments.

Looking forward to your some feedback. Thanks

I run multiple instances of ToS as detailed here:
https://usethinkscript.com/threads/...ple-windows-computers.4120/page-2#post-143018

My hardware setup:
https://usethinkscript.com/threads/thinkorswim-on-multiple-monitors.17701/#post-137417
 
Really cool indicator both visually and providing trade signals.
https://usethinkscript.com/threads/agaig-daytrading-scalping-for-success-in-thinkorswim.20383/
After I installed the indicator, I noticed all of my charts ran slower especially one chart that is tick based.

I use a Dell T7810 Precision Tower with two Intel Xeon E5-2630 @ 2.4 GHz and 64 GB ram. I do have 9 chart windows running including 1 MC chart for AGAIG. In the background, I have my Google Chrome window running with 44 windows open, 1 of them is for web based trading.

I captured my computer performance just after the FOMC meeting on 1/29 11:03 AM PST with CPU at 11%, Memory at 42% AND GPU AT 12%.

I was wondering if anyone else ran into the same experience with their computer running slower. Is the solution simply to buy more RAM, I guess go to 128 GB?

I have definitely noticed my charts run better when I have AGAIG not running. When I do open the chart, computer is bogged down. Wondering if anyone else is experiencing this and suggestions to correct. Appreciate any replies.
 
Last edited by a moderator:
@csricksdds Great Strat. Question for you and anyone else using this tool what are your TOS settings for performance? I tried loading into my live account and it just kept saying getting data. Since I know I have other high performing indicators, I switched to my demo (paper trading) and was able to load it.
 
Bad news, macOS needs to be at least 11+ and Windows must be at least 10+ otherwise you are SOL
Also, there has been isolated issues with certain ISP providers not working well with ToS recently.
(Spectrum being the worst offender).

Good news, if your OS version is compatible, computer specs are minimal to run the ToS app because everything runs on the ToS servers.
https://usethinkscript.com/threads/computer-upgrade-for-thinkorswim.5356/#post-50358

More good news, AGAIG charts do not slow down your machine.
Again, charts, scanner, orders, run on the Schwab servers, your rig just has to load them.

So where does your problems lie?
Most probably with other programs/tabs that you have open
OR
in your ToS settings and / or libraries.

Start here:
https://usethinkscript.com/threads/ideal-memory-usage-settings-for-thinkorswim.10201/#post-128355
move on to here:
https://usethinkscript.com/threads/...ple-windows-computers.4120/page-2#post-143018

If nothing works, ToS support can log on to your computer; and view your lag issues and help find the solutions.

Many traders on the forum are running multiple rigs with 6–8 monitors with dozens of charts, with over 100 indicators, watchlists, and detached widgets with no delay,

@IHopeToLearn @shisha1999 @Khaynes
 
Last edited:
I use a Dell T7810 Precision Tower with two Intel Xeon E5-2630 @ 2.4 GHz and 64 GB ram. I do have 9 chart windows running including 1 MC chart for AGAIG. In the background, I have my Google Chrome window running with 44 windows open, 1 of them is for web based trading.

Having been in the IT Consulting business for 36+ years, having 44 tabs open in a single Google Chrome browser is, well, insane... Virtually every time I have a customer complaining about slow performance I discover that they have WAY too many browser tabs open, sometimes even more than you are running... Then as I check the tabs I find a bunch open to the same email inbox, the same bank account summary page (expired), and on and on... Once I convince them that anything over 8 browser tabs starts to be unmanageable a majority of their problem disappears... And once I convince them that they don't need every program they "might" use during the day open all the time, the problem is further reduced - usually to the point where performance is vastly improved... Which raises the question, why the heck do you "need" 44 tabs open at all times...??? Do you really think Google Chromes memory manager and kernel are that efficient...???

Remember, a PC has only so many processors and can only handle so many threads... So if Google Chrome is using a single thread it has to manage multitasking of all of the tabs open... And while Thinkorswim can theoretically use multiple cpu cores Java still needs its kernel to handle multitasking, memory management, and garbage collection... So you see how quickly it all adds up between cores, threads, programs, multitasking, etc... Throwing more memory at a the problem won't really help... Running a clean, lean, machine is the only real answer... That or spreading the burden between multiple PC's, whether all running their own mouse and keyboard or by using a KVM Switch... I also run PC optimization routines almost daily to keep my PC's running at their best...

Just some food for thought from someone who has been in the trenches since before Windows 95 was even a thing... I even beta tested Chicago pre-release of Windows and was a bit-fiddler to optimize memory and storage requirements for our then very low powered PC's... My first PC in 1984 had a 1Mhz CPU, a whopping 16K of RAM, and two 160K 5.25" single sided floppy drives so, yeah, I've been there and done that...
 
Last edited:
ToS latest cautionary message has goosed me, to finally get a new workstation.
Here is what, and why, my build will probably look like:

ThinkOrSwim Dual GPU Workstation Build to support 8 monitors Budget ==$3k
A less expensive single GPU to support 4 displays will cut the cost in half.
https://pcpartpicker.com/user/YoMe2/saved/#view=YwntK8
This build is optimized specifically for ThinkOrSwim’s single-threaded Java engine, multi-monitor trading, and long-term reliability — not for gaming or rendering.

CPU — Intel i5-14600K
Why: TOS is single-thread/boost-clock dependent. The 14600K hits 5.3 GHz and performs nearly identically to an i7/i9 for Java workloads, but with lower heat, power draw, and cost.

Motherboard — MSI Z790 Tomahawk
Why it matters:
TOS doesn’t use GPU horsepower, but eight 4K displays require:​
two CPU-direct PCIe x16 slots running x8/x8​
PCIe bifurcation support for dual low-power GPUs​
stable BIOS/VRMs for all-day uptime​
Most critical part of the build.

Graphics — 2× NVIDIA RTX 2000 16GB
Why:
Perfect for multi-monitor trading:​
drives 8× 4K@60Hz IPS Black displays​
pro-grade drivers = far fewer display issues​
only 70W TDP per card (no PCIe power cables, runs cool and silent)​
avoids gaming GPUs, which are overkill, hotter, noisier, and less stable for workstation use​
Most expensive part of the build.
Choosing something like the A400 or T1000 will significantly reduce cost.

Memory — 32GB DDR5-6000 CL30
Fast, low-latency DDR5 keeps the Java engine responsive.
TOS doesn’t benefit from massive RAM because the Java garbage collector bogs down with oversized heaps — will tune JVM settings as needed.

Storage — 500GB NVMe PCIe 4.0
TOS stores data on Schwab’s servers, so fast local storage only affects boot and app launch.
PCIe 4.0 is plenty (PCIe 5.0 adds heat with no benefit).
May bump to 1TB if a sale appears -- nobody ever says they have too much space

Cooling — Noctua NH-U12S
Rock-solid, quiet, zero-maintenance air cooling.
Perfect for a high-uptime trading machine with modest power limits.

PSU — MSI MAG A750GL (750W)
System draws ~450W max.
750W keeps the PSU in its quiet, efficient range and leaves headroom for future upgrades.

Case — Fractal Pop XL Air
Excellent airflow, roomy ATX layout, and plenty of space for dual GPUs.
Quiet and cool under load.

Displays (already owned)
5× Dell S2721 4K IPS
1× Dell U3223 IPS Black (USB-C hub + daisy chain)
Two monitors were lost to a tragic monitor-arm catastrophe. 😪
With Thunderbolt 4 on the new board, the system could technically support up to 10 displays.

The actual build will depend on which components present the best deals over Black Friday
 
Last edited by a moderator:
The disclaimer is a legal necessity for Schwab after Microsoft announced it was no longer being supported.
It is unlikely, that ToS will stop running on Windows10 in the near future, given that Schwab only stopped ToS support of Windows 7 and prior; this year.

That said, I am using it as the final push for me to upgrade to a true dual GPU workstation.
I have been trading on a jury-rigged two rig system to run all my displays and ToS instances; which I am constantly band aiding. Just in time for Black Friday.
my potential build: https://usethinkscript.com/threads/computer-upgrade-for-thinkorswim.5356/page-3#post-158078
I am more a fan of micro PCs. Get a few of micros with dual monitor outputs for about $250 each. Many ex-corporate refurbished ones are available. These have been absolutely bulletproof stable for me.
 
FYI:
@MerryDay’s build isn’t meant as “everyone should buy this.”

It’s a reference build;
so members can understand ThinkOrSwim’s unusual hardware requirements.
ToS is extremely single-threaded, CPU-bound, and sensitive to PCIe lane layout — not RAM size or GPU power.
The idea is actually to help people avoid overspending on memory, storage, or gaming parts that don’t help TOS at all.

As merryday notes in her build; remove the professional multi-display GPUs, the rest of the ToS-specific components are actually very inexpensive.

This whole thread is full of good ideas for computer builds for ToS trading.

@whoDAT presents another excellent approach: a compelling case for micro PCs.
The low-power CPUs would only result in thermal throttling when under constant multiple chart/scan load
Therefore, they could be a fantastic build for casual traders with few charts, dashboards, and a couple of monitors.

And there are those who swear by trading on their mobile app.

This forum exists because no two traders are exactly alike. The forum is the place where, you learn to build the charts and strategies that work for you on whatever hardware fits your needs.
Hopefully, merryday's example will help articulate what is specifically not needed
(high speed processors, gaming cards, excess memory and storage) in a trading workstation build.
 
Last edited:
Multiple Monitors For Trading
Members ask whether having this many monitors causes “analysis paralysis.”
In my workflow, it’s the opposite — the extra screens reduce confusion and provide clarity.

80% of the time, I am using the same two monitors that most traders have, to support making entry; based on three time-frame analysis:
the big picture chart (macrostructure), the trading chart, the entry chart (micro).
Everything else is simply “heads-up information” that sits in the background unless until something flashes critical.

Like the monitors at the nurses station in ICU: they only require attention if something serious happens.
FYI: the shared grids and charts from my screens can be found:
https://usethinkscript.com/threads/merryday-moderator.17465/#post-156571

Trade Execution & Management
These screens are always visible so I can enter and exit trades quickly:
Active Trader for orders​
Level II​
Monitor Tab for positions and working orders​
A flexible grid of my open short-term trades so I can instantly see if something is starting to turn against me​
These are critical when juggling many open trades at once

Market Conditions, Internals & Fundamentals
These displays help me understand what the overall market is doing:
Sector and Indices grids​
Market internals​
$VOLD​
$ADD​
$TICK​
VIX​
Fundamentals / company snapshot (earnings, financials, etc.)​
News / Headlines tab for any breaking news that affects a trade​
I don’t use these to make entries directly — they just give me the context I need, so I’m not trading blind to what’s happening around the market.

My Three Timeframes (Core Charting)
Two screens are dedicated to the charts with core timeframes; with a third for tick charts.
I always have the big picture, the working timeframe, and the entry chart in front of me with tick charts to reflect true order flow.
The higher timeframe provides heads-up to critical issues that negate or confirm trades
The lower timeframe is mandatory for the timing of entry
The middle is the trading chart. It must reflect all the favorable conditions, an effective strategy requires.
The tick charts are necessary because extremely volatile and extremely non-volatile equities do not present well on time charts. Tick chart order flow presents a heads-up when not all is as it appears.

Dynamic Watchlists
Because I trade different types of moves (earnings plays, reversions, breakouts, small caps, large caps, etc.), there are many scans running at once. But never for buy signals.
I watch for setups where: the instrument is consolidating forming solid support and no longer at the very bottom of their range; across multiple timeframes; at the same time that indices or sectors are making interesting movements, or where institutional interest is ramping up or selling pressure drops abruptly. Setups are about catalysts, targets, and risk calculations:
https://usethinkscript.com/threads/what-not-to-do-when-trading.21535/#post-158011
Unless it is a perfect trading day; great setups are infrequent but highly profitable.
Which means there are many watchlists but few entries.

A detached message center window to track all ToS messages
A detached garbage collection window to track ToS performance

Coding & Scan Development
Since I regularly update my scripts and scans for changing market conditions, there is a screen for:
the IDE Code Editor​
the Scan Hacker​
This way, development never interferes with trading.

In Summary
Most of my displays are not for active chart analysis — they’re for keeping everything organized, visible, and separated. The goal is:
less clicking​
fewer hidden tabs​
faster decisions​
clearer information​
lower stress​
If I had even more screens, I’m sure I’d put them to productive use — not to analyze more charts, but to keep more tools and information available without clutter.
I would be able to have a dedicated screen to the forum open, to see what all of you are discussing.
The forum is awesome for new ideas.
Another with live news; another for the third party apps for the alerts not provided by ToS;
Just imagine the potential!
Black Friday, here I come!
 
Last edited by a moderator:
Multiple Monitors For Trading
Members ask whether having this many monitors causes “analysis paralysis.”
In my workflow, it’s the opposite — the extra screens reduce confusion and provide clarity.

80% of the time, I am using the same two monitors that most traders have, to support making entry; based on three time-frame analysis:
the big picture (macrostructure), the trading chart, the entry chart (micro).
Everything else is simply “heads-up information” that sits in the background unless until something flashes critical.

Like the monitors at the nurses station in ICU: they only require attention if something serious happens.


Trade Execution & Management
These screens are always visible so I can enter and exit trades quickly:
Active Trader for orders​
Level II​
Monitor Tab for positions and working orders​
A flexible grid of my open short-term trades so I can instantly see if something is starting to turn against me​
These are critical when juggling many open trades at once

Market Conditions, Internals & Fundamentals
These displays help me understand what the overall market is doing:
Sector and Index overview​
Market internals:​
$VOLD​
$ADD​
$TICK​
VIX​
Fundamentals / company snapshot (earnings, financials, etc.)​
News / Headlines tab for any breaking news that affects a trade​
I don’t use these to make entries directly — they just give me the context I need, so I’m not trading blind to what’s happening around the market.

My Three Timeframes (Core Charting)
Two screens are dedicated to the charts with core timeframes; with a third for tick charts.
I always have the big picture, the working timeframe, and the entry chart in front of me with tick charts to reflect true order flow.
The higher timeframe provides heads-up to critical issues that will affect trades
The lower timeframe is critical to the timing of entry
The middle is the trading chart. It must reflect all the favorable conditions, an effective strategy requires.
The tick charts are necessary because extremely volatile and extremely non-volatile equities do not present well on time charts. Tick chart order flow presents a heads-up when not all is as it appears.

Dynamic Watchlists
Because I trade different types of moves (earnings plays, reversions, breakouts, small caps, large caps, etc.), there are many watchlists running at once.
These scans are set to alert on outstanding opportunities; therefore, many watchlist but few entries.
also:
A detached message center window to track all ToS messages
A detached garbage collection window to track ToS performance

Coding & Scan Development
Since I regularly update my scripts and scans for changing market conditions, there is a screen for:
the IDE Code Editor​
the Scan Hacker​
This way, development never interferes with trading.

In Summary
Most of my displays are not for active chart analysis — they’re for keeping everything organized, visible, and separated. The goal is:
less clicking​
fewer hidden tabs​
faster decisions​
clearer information​
lower stress​
If I had even more screens, I’m sure I’d put them to productive use — not to analyze more charts, but to keep more tools and information available without clutter.
I would be able to have a dedicated screen to the forum open, to see what all of you are discussing.
The forum is awesome for new ideas.
Another with live news; another for the third party apps for the alerts not provide by ToS;
Just imagine the potential!
Black Friday, here I come!
Merry, What is the benefit of having multiple copies of the ThinkOrSwim Desktop App running at the same time?
 
Last edited by a moderator:
Merry, What is the benefit of having multiple copies of the ThinkOrSwim Desktop App running at the same time?

Trading apps like TOS use a single-threaded execution engine for one crucial reason:
Execution must be deterministic, ordered, and low-jitter.
A single thread guarantees that every tick, state update, risk check, and order goes through the system in the exact sequence received, with no race conditions, no locking delays, and no random latency spikes. This is ideal and necessary for execution logic.

But the downside shows up when you stretch that same app across many charts, tables, and streaming data. Because everything — data processing and UI rendering — shares one thread, all those chart repaints and window updates compete with execution for CPU time. The event queue backs up, data lags behind real time, and latency jitter increases exactly when volatility spikes.


The Practical Fix
Running multiple copies of the TOS app at the same time.
Each instance gets its own event loop and its own chunk of CPU time, so display-heavy work (charts, scanners, level 2, etc.) stays separate from execution-critical tasks. You preserve the benefits of the single-threaded model without letting multiple charts of data drag your execution loop down.

If you notice a lag when loading charts or executing scans; try running another instance of ToS; it might help.
If ToS is severely struggling under a load; you will know.
This message will appear more and more frequently. At which point, it is absolutely necessary to open another ToS instance.
M4uAEk4.png

Ask us, how we know! ;)
 
Last edited:
Trading apps like TOS use a single-threaded execution engine for one crucial reason:
Execution must be deterministic, ordered, and low-jitter.
A single thread guarantees that every tick, state update, risk check, and order goes through the system in the exact sequence received, with no race conditions, no locking delays, and no random latency spikes. This is ideal for execution logic.

But the downside shows up when you stretch that same app across many monitors of charts, tables, and streaming data. Because everything — data processing and UI rendering — shares one thread, all those chart repaints and window updates compete with execution for CPU time. The event queue backs up, data lags behind real time, and latency jitter increases exactly when volatility spikes.


The Practical Fix
Running multiple instances of the TOS app.
Each instance gets its own event loop and its own chunk of CPU time, so display-heavy work (charts, scanners, level 2, etc.) stays separate from execution-critical tasks. You preserve the benefits of the single-threaded model without letting multiple screen of data drag your execution loop down.

If you notice a lag when loading charts or executing scans; try running another instance of ToS; it might help.
If ToS is severely struggling under a load; you will know.
This message will appear more and more frequently:
M4uAEk4.png

Ask me, how we know! ;)
Very informative! I’ll start doing this going forward. I have a solid rig with no delays, but as you always say, stack confirmations on your favor. :LOL:🍻
 
Very informative! I’ll start doing this going forward. I have a solid rig with no delays, but as you always say, stack confirmations on your favor. :LOL:🍻

If you are interested in determining if multiple instances could help; detach the garbage collection window
and watch it throughout the day.
click on➜Help ➜⚙️System ➜Detach
The Garbage Collection (GC) screen can tell you when:
  • GC % is high
  • there are long or frequent pauses
  • Full GCs happen often
  • Heap stays near max
Those signs mean the JVM is under memory/GC pressure, and running another TOS instance can help by splitting the load so each JVM has fewer objects to collect and fewer UI updates to process.

But the GC view won’t show core saturation, UI/rendering bottlenecks, or thread contention. If your latency spikes don’t line up with GC pauses, the slowdown may be single-threaded UI work — in which case a second instance could still help by breaking all that rendering into separate threads but obviously would make maxed core levels worse.

Short answer:
If GC metrics look stressed, adding another instance of TOS usually helps.
If GC looks clean, but there are underlying UI rendering or thread contention issues, you will still benefit —
⚠️ Caution: Core Saturation --if using low-powered CPU machines (such as a Microsoft Surface or @whoDAT's micro PCs) latency generally means the CPU load is maxed; in which case adding more instances would only amplify any issues.


note: some traders prefer frequent, fast garbage dumps vs infrequent, slower garbage dumps
https://usethinkscript.com/threads/ideal-memory-usage-settings-for-thinkorswim.10201/#post-157865
 
Last edited by a moderator:

Similar threads

Not the exact question you're looking for?

Start a new thread and receive assistance from our community.

87k+ Posts
3717 Online
Create Post

Similar threads

Similar threads

The Market Trading Game Changer

Join 2,500+ subscribers inside the useThinkScript VIP Membership Club
  • Exclusive indicators
  • Proven strategies & setups
  • Private Discord community
  • ‘Buy The Dip’ signal alerts
  • Exclusive members-only content
  • Add-ons and resources
  • 1 full year of unlimited support

Frequently Asked Questions

What is useThinkScript?

useThinkScript is the #1 community of stock market investors using indicators and other tools to power their trading strategies. Traders of all skill levels use our forums to learn about scripting and indicators, help each other, and discover new ways to gain an edge in the markets.

How do I get started?

We get it. Our forum can be intimidating, if not overwhelming. With thousands of topics, tens of thousands of posts, our community has created an incredibly deep knowledge base for stock traders. No one can ever exhaust every resource provided on our site.

If you are new, or just looking for guidance, here are some helpful links to get you started.

What are the benefits of VIP Membership?
VIP members get exclusive access to these proven and tested premium indicators: Buy the Dip, Advanced Market Moves 2.0, Take Profit, and Volatility Trading Range. In addition, VIP members get access to over 50 VIP-only custom indicators, add-ons, and strategies, private VIP-only forums, private Discord channel to discuss trades and strategies in real-time, customer support, trade alerts, and much more. Learn all about VIP membership here.
How can I access the premium indicators?
To access the premium indicators, which are plug and play ready, sign up for VIP membership here.
Back
Top