Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
I developed a day trading algorithm that uses short term moving average and bands for a short term reversal strategy. It typically makes about 5 trades a day with symmetrical logic for long and short. I typically had it set up so it would only do long trades when price is above the 200 period MA and short only when below.
I experimented with removing the requirement to honor the 200 period MA. The additional short trades were detrimental as expected, but the additional long trades were very profitable. I don't understand this because I tested over a 2.5 month period where the price ended up where it started. From 6/26/22-9/14/22 the NQ contract price ended up almost exactly back where it started so there was an equal amount of up and down movement in the longer term.
To further test this, I applied a basic Bollinger Band strategy to the chart and it was much more profitable for long trades than short trades. For the life of me, I can't figure out why this would be. Does this have something to do with a short trade signal typically being accompanied by an increase in volatility? Something else?
Can you help answer these questions from other members on NexusFi?
You are not alone. I am not familiar with NQ but I have seen the same behavior in CL and related products. One solution (not a great one) was that instead of a strategy executing in both directions based on the same rule-set, you could test out long only and short only strategies separately so that the rules used for long trades are different from short trades. The results in my case were only marginally better.
Another potential solution that I haven't yet tried out: Since the volatility typically increases when the market goes lower vs when the market goes higher (escalator up, elevator down), the data is asymmetric with fewer bars when the market goes down than when it goes up. Depending upon your strategy, you may benefit from building your own bars based on price ranges. I wouldnt use renko or any of those non-deterministic type of bars. Instead, depending upon the instrument, you could use mod(price, n) to construct your bars where n is a variable that you can vary and test. So for CL, for instance, for n=0.1, if price moved from $90 to $91 in a straight line, you would have 10 bars with closes at $90.10, $90.20....$90.90, $91. I hope that made sense.
Thanks for the input. I typically try to code symmetrical logic because I thought it would be a good way to help prevent curve-fitting. However, maybe once you have a polished strategy you can make some small tweaks to one side of the trading without causing major issues... That's an interesting thought about the price based bars but I think I'd also have to change my strategy significantly. I'm always look for new strategies because I hope to one day have the funds for diversifying across many strategies, so I'll have to play with it sometime. One thing I thought about was along the same lines as "elevator down". When you're in the elevator down phase, maybe there's not enough pullbacks in the trend where you can get a good entry vs when the market is moving up the "escalator" and pullbacks are more frequent with chances to enter. Perhaps it would make sense to incorporate the rate of change into the short entries and use that as a lowering factor to the overbought MA band.