A strategy with high win rate vs large losses

Hello,

I tested a few strategies with a win rate larger than 80%. The losers however even the profits.
If I implement stops the win rate drops and it’s not profitable also.
Is there a good way to handle something like this? (maybe a sample in one of your courses?), or better to drop the idea/s?

Thanks.

Hi Shay Marom,

That’s a common issue with high win-rate strategies — a few losses can wipe out gains. You could try alternative exits, like a soft stop (wait-and-watch) and a hard stop (immediate exit), or filter out trades during high volatility. Focusing on strong trend regimes can help too.

Ideally, it’s worth analyzing what’s going wrong in losing trades — are there patterns or early signals? You can even try a machine learning approach to predict loss-making trades. Use features like lagged volatility, technical indicators, and even a “lagged success” variable (e.g., was the last trade profitable?). Since this would be an imbalanced classification problem, you might need re-sampling techniques or threshold tuning.

ML courses — feel free to explore:
:link: Quantra by QuantInsti | Courses on Algorithmic and Quantitative Trading

Regards,
Ajay

Hi Ajay Pawar.

Thank you very much for your answer.

I am looking for the terms you specified like lagged volatility, In the machine learning courses. I could not find which course discusses this topic.
Can you help specify which one?

I have just recently started learning Tracks 4&5, as I completed most of Tracks 1-3.

Thanks.

Hi Shay,

By lagged, I mean creating features from previous time steps using the .shift() method in Pandas. For example:

  • df['close'].shift(1) gives you the previous day’s close (t-1)
  • df['close'].shift(2) gives you the close from two days ago (t-2)
  • These are useful when your model needs to learn from past values

You can create lagged versions of any column — price, volume, indicators, etc.

For volatility, you can use rolling measures like:

  • df['returns'].rolling(window=5).std() → 5-day rolling standard deviation
  • ATR (Average True Range) is another popular choice for capturing market volatility

Here’s a blog that walks through this in detail:
https://blog.quantinsti.com/walk-forward-optimization-python-xgboost-stock-prediction/

Thanks,
Ajay

1 Like