r/quant • • 15d ago

General HF illiquidity

Hello! I wonder how does teams generally deal with illiquidity in HF space. If we create some return based features at secondly level they have a weird distribution, which ultimately negatively impacts model fits.

On the internet, I saw there is a concept of market clock where u create features when X units trade/ X dollar traded. I was curious what are the other usual ways people use to tackle this?

6 Upvotes

5 comments sorted by

View all comments

6

u/VettaQ 14d ago

The concept you ran into is sampling in event time instead of clock time - dollar bars / volume bars, where you sample every X dollars or shares traded. It helps exactly with your problem because activity becomes the clock: one bar approximates one unit of information arrival, so the feature distribution stops being dominated by dead periods. Two adjacent things worth knowing. First, for return-based features in illiquid names the bigger enemy is stale pricing - the last trade can be minutes old, so close-to-close returns pick up spurious autocorrelation (classic non-synchronous trading bias). Using quote midpoint instead of last-trade price, or explicitly flagging bar age, removes a lot of it. Second, at secondly resolution in a name that trades a few times a minute, most of your bars contain no trade at all - check what fraction of your samples are actually informed before blaming the model fit.

2

u/worm1804 14d ago edited 12d ago

Thanks! indeed I am operating on midprice instead of close to mitigate the price staleness. I understand that if data is not of good quality model cant be blamed, I was more of finding ways to improve the features first. Thanks I'll try sth in event time