A Simple Way to Test Whether a Strategy Should Avoid Certain Days
In this video, I want to show a practical TradeStation hack for testing a trading system based on the day of the week.
The question is simple: what happens if a strategy does not trade on Mondays? Or Tuesdays? Or any other specific day?
There are two ways to test this. One is through the strategy code. The other is through a custom session setup inside TradeStation. The custom session method can be especially useful if you do not have access to modify the strategy code.
For context, I am using the V-Reversal trading system, which is a mean reversion day trading strategy that uses an accelerating trailing stop loss.
Market Context: Buy-and-Hold Strength vs. Mean Reversion Drawdown
The broader market has been in one of the rarest straight-line advances we have seen in the Nasdaq 100 going back to 1985. Since March 31, the move higher has been extremely strong, with very little drawdown relative to the size and speed of the rally.
That type of environment is highly favorable for long-term buy-and-hold investors. It is not necessarily favorable for a short-term mean reversion day trading strategy.
Mean reversion strategies tend to perform better when there is more intraday back-and-forth price action. When the market moves almost straight up with limited pullbacks, those strategies can go through difficult cycles. That is what we are seeing now with the V-Reversal trading system.
The equity curve is currently in a cyclical drawdown. This drawdown resembles previous drawdown periods that were followed by stronger runups, although past performance is not indicative of future results.
The key point is that every trading strategy and every investment philosophy has seasons where it performs well and seasons where it struggles. A strong buy-and-hold environment can be a difficult environment for a short-term mean reversion system.
Day Trading vs. Buy and Hold
To put the comparison in perspective, if an investor bought and held one continuous back-adjusted Nasdaq futures contract from December 31, 2019, the gain would be roughly in the $350,000 to $360,000 range. That came with a drawdown in the $120,000 to $140,000 range.
That is approximately a 3:1 profit-to-drawdown ratio.
The V-Reversal day trading system shows a smaller net profit, but because it does not hold positions overnight, the profit-to-drawdown ratio is closer to 10:1 in the backtest shown.
That is one of the main cases for day trading systems. The goal is not always to produce the largest absolute return. The goal is to create a different return stream with controlled risk, shorter holding periods, and lower correlation to traditional buy-and-hold exposure.
Testing a Day-of-Week Filter Without Changing the Code
One question that came up was: what if we simply do not trade this strategy on Mondays?
If you do not have access to the source code, one way to test this is by creating a custom session in TradeStation.
For example, if the current session is Monday through Friday from 8:30 AM to 3:15 PM Central Time, you can duplicate that session and remove Monday. The new session would only include Tuesday through Friday.
The basic process is:
Go to Data → Edit Symbol → Sessions, create a custom session, and remove the day you do not want to test. In this example, Monday is removed so the strategy only trades Tuesday through Friday.
Once that custom session is applied, TradeStation recalculates the backtest using only the selected days.
In the example shown, removing Monday did not improve the strategy. The total return dropped, the average trade profit declined, and the current drawdown became steeper.
That is why I am generally cautious with day-of-week biases. It is possible to find a valid reason to avoid a specific day, and I have had strategies in the past where that made sense. But many times, as soon as a trader decides not to trade Monday, some of the best future trades start happening on Monday.
Day-of-week edges can rotate, decay, or disappear over time.
Testing the Same Idea With EasyLanguage Code
The other way to test a day-of-week filter is directly in the strategy code.
In TradeStation EasyLanguage, you can use:
DayOfWeek(Date) <> 1
This condition prevents the strategy from trading on Monday.
The day-of-week values are:
0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
So, if you wanted to block Monday trades, you could add this condition to the entry logic:
If DayOfWeek(Date) <> 1 then begin
// Entry logic here
end;
If you wanted to trade only Monday, Wednesday, and Friday, you could use:
If DayOfWeek(Date) = 1 or DayOfWeek(Date) = 3 or DayOfWeek(Date) = 5 then begin
// Entry logic here
end;
This can also be useful for Sunday night futures sessions or crypto-related strategies where Sunday trading may need to be treated differently.
Why This Matters
This type of test is valuable because traders often have good questions that are difficult to answer without actually running the numbers.
Should a strategy avoid Mondays?
Should it stop trading earlier in the day?
Should it start later?
Should it avoid certain sessions?
The answer is not always obvious. A custom session gives you a fast way to test the idea, even when the strategy code is closed or unavailable. If you do have the code, EasyLanguage gives you a more precise way to build the condition directly into the strategy logic.
The important part is not to assume the bias is real. Test it.
Practical Takeaway
Day-of-week filters can be useful, but they can also be dangerous if they are added simply because of a recent drawdown or a short-term pattern.
In this example, removing Monday did not improve the V-Reversal strategy. It reduced performance and made the drawdown worse.
That does not mean Monday filters never work. It means this specific idea needed to be tested, and the test did not support the assumption.
As algorithmic traders, we are not trying to predict the future like prophets. We are trying to build strategies that can operate across different market environments, understand when those strategies are in favorable or unfavorable cycles, and manage risk when conditions change.
Final Thoughts
The current market has created a major contrast between long-term buy-and-hold strength and short-term mean reversion drawdown. That does not make one approach right and the other wrong. It simply shows that different strategies have different seasons.
This TradeStation custom session method is a simple way to test day-of-week and time-of-day assumptions without changing the strategy code. For traders who do have access to EasyLanguage, the same concept can be coded directly into the entry conditions.
For more trading system research, EasyLanguage examples, and strategy development ideas, visit Capstone Trading Systems.
Past performance is not indicative of future results. This material is for educational purposes only and is not a recommendation to buy or sell any market.