TradeStation or MultiWalk crashed, why and what can I do to prevent crashes?
TradeStation is one of the most challenging and difficult software platforms I have ever worked with in my professional career as an applications developer and software engineer. While it offers great capabilities, it continues to have far too much instability as it tries to keep up with it’s own software maintenance and changing technologies that will demand more and more from the platform.
MultiWalk is one of these demanding technologies. It pushes TradeStation’s hard. As a result, I continually find myself pushing up against the edges of what TradeStation can and cannot do. And when I hit those edges, TradeStation tends to curl up and die in a variety of ways. You will invariably see one of the following TradeStation popup messages:
I have a lot of professional pride and integrity in my work, and it pains me to have to write an article like this. Telling someone that crashes are inevitable is a bitter pill, especially when I have very little control over them because of TradeStation platform issues and limitations. While many crashes may look like they are due to MultiWalk, 99% of the time they are not. And I have spent many, many wasted hours and days digging into crash issues, only to find that their origin is outside of MultiWalk’s control and in one of TradeStation’s platform processes (many due to data handling issues in ORCAL, TradeStation’s data server process).
Here is a prime example of a crash that looks like MultiWalk’s fault, but is actually an internal bug in TradeStation’s optimization engine or ORCAL data server process:
Notice that the moment TradeStation started to run the optimization (Iteration 0) that the entire platform crashed. MultiWalk does not have control at this point while TradeStation performs the optimization. MultiWalk is simply receiving the optimization results from TradeStation to store for the walkforward process later, but it didn’t even get to that point before the crash. This issue was resolved by using the “Turn OFF Look Inside Bar Backtesting (LIBB)” tip below.
Here are just a few of the errors that MultiWalk may report because TradeStation has experienced some kind of internal issue that is outside of MultiWalk’s control:
- Optimization Error: Cannot find DLL library: MultiWalkStrategy.dll
- Error: JobProgressHandler. Exception of type ‘System.OutOfMemoryException’ was thrown.
- TradeStation optimization has been unresponsive for the past 5 minutes.
- Cannot create binary optimization packet for file. Data error: -2
- No walkforward threads created (memory in use: xxx MB). Has memory limit been reached?
- Optimization had too many errors and cannot be resubmitted again for processing.
- Internal error: EasyLanguage TAG is zero. EasyLanguage context not defined.
So the big question is, what can we do?? Please see the following tips and techniques.
First, ALWAYS run my “Kill TS” utility program or simply reboot the computer after any crash. You must first make sure that all TradeStation processes have been exited before trying to use TradeStation again.
Restart: Use MultiWalk’s resume feature
Many times after a crash, you can simply resume your project. These crashes were one of the main reasons I created Resume functionality within MultiWalk. Therefore, after a crash, this is the first thing I try:
- Run my “Kill TS” utility program or reboot the computer.
- Start TradeStation
- Reload the MulitWalk project. If a TS workspace was not saved, then reload the project using MultiWalk’s import feature:
- Resume the project:
Turn OFF Look Inside Bar Backtesting (LIBB)
Some crashes are a result of TradeStation’s LIBB feature. Over the years I have not been able to identify any particular pattern to LIBB induced crashes. It is unclear if they are a result of TradeStation’s ORCALL process, data cache, particular symbols or symbol types. But many times just disabling this option and continuing the project works.
Just follow the same steps above in MultiWalk’s resume feature but, before resuming the project, disable LIBB in MultiWalk and then resume:
Kevin doesn’t use LIBB at all since all this strategies use market orders. All his entries are market orders. His exits use the following EasyLanguage code instead of SetStopLoss and SetProfitTarget:
If openpositionprofit>(prof) then begin
Sell next bar at market ;
Buytocover next bar at market;
end;
If openpositionprofit<-stopl then begin
Sell next bar at market ;
Buytocover next bar at market;
end;
The drawback are potentially larger drawdowns than anticipated, especially with big bar sizes, but the need for LIBB does goes away.
Break Large AlgoBB/Fixed Input Parameter MultiWalk projects into smaller projects
By “large” I mean any AlgoBB project that has more than 150 individual projects or will continually run more than 2 days. Eventually TradeStation will become unstable that produces a crash with a variety of error messages, all of which will usually not point to the original cause. They are a cascading after-effect in MultiWalk due to the instability that developed within TradeStation.
Please see this article on an example of breaking up a large project into smaller projects. They will actually run faster than one large project!
Stock or ETF symbols
There have been crashes due to using stock/ETF symbols. It does not seem to be related to any particular symbol or strategy and is intermittent. This is an issue occurring when TradeStation is optimizing the strategy. Something within their optimization engine causes both the platform and MultiWalk to crash. The only workarounds and remedy, to date, is to use MultiWalk’s resume feature as outlined above or, if that fails, then to break it up into smaller projects.
Downgrade to TradeStation 65
As of the writing of this article (Feb 2025), I am getting several reports from users that have TradeStation Update 84 and are getting either crashes running MultiWalk or other unusual errors. I updated one of my systems to TS version 84 and have not been able to replicate the issues.
Kevin continues to use TradeStation Base Update 65 and rarely has crashes. If you are experiencing crashes running MultiWalk, this is my final suggestion. When all else fails, install TradeStation Base Update 65. I have written step-by-step instructions in this article.
Contact me
And, of course, if you feel that the crash may be due to MultiWalk, please feel free to contact me to let me know. Send me the LogMessages.txt file from the project folder and I’ll review it and reconstruct the project to determine if I can reproduce the issue on my system.