Fixed filter:
- Simple to understand and test.
- May block too much in Asia, when spreads are normally wider, and too little at the London open.
- Compares the current spread with a typical value for the hour, for example the median of the last few weeks.
- Blocks entries when the spread is more than a multiple, for example 1.5 times normal.
- Needs data to build the typical values, and updating.
How to test: log what the filter would have blocked, with what the trade would have done. If blocked trades were noticeably worse, the filter is earning its place.
Whichever version is used, log every block, so you can later see what the filter cost or saved.
Which approach do you use?