a couple of simple trade-off considerations re: kwant trading signals that may or may not be obvious.
here's the price of a thing....
the main job is to predict how it's likely to move.
to do this you used information about it.
at any point, new information is appearing (trades, quotes, events, chatter)
and old information, that used to be very important, is becoming less so.
you use this information to try to create a forecast (explicit or implicit) of how you expect price to move over some future period.
to tell if your forecast is any good, you might get a bunch of observations of your forecast and the price changes in some period (let's say a minute).
and then you might plot the subsequent returns against the forecast and, ideally, it'd look a bit like this.
but you've probably got more observations than usefully fit on a scatter and it's gonna look like a big old blob cos market returns are super random.
so instead you'll do some reduction. you might sort your observations into centiles or similar and plot mean returns.
and ideally you want expected returns to look nice and linear with respect to your signal.
and you prob wanna transform it a bit so it is clamped to some range, likely distributed in a way you understand, and doesn't go crazy in the tails.
now, being able to predict short term returns might not be the win you think it is.
trading is expensive, and it's even more expensive if you are doing when YOU want to (rather than someone else)
if your forecast signal looks like this, you're going to have a bad time.
you might be really good at predicting minute ahead returns, but you don't actually want to turnover every minute.
you can't afford that.
so you'd prefer your signal to be less volatile, more auto-correlated, smoother, like this.
thus the first trade-off between how effective your forecast is vs how auto correlated your signal is.
you'd prefer a smoother signal over a hyperactive jumpy one with slightly higher correlation to future returns.
some things are naturally more auto-correlated (carry, rv signals)
other naturally jumpy things can be smoothed with EWMAs and the like, which quite nicely model new information appearing and old information becoming slowly redundant.
we can look this from the other direction too.
the choice of 1m future returns was kinda arbitrary.
we might be making trading decisions on that frequency, maybe, but we don't intend to turnover on that frequency.
so we care about how predictive our signal is over longer horizons too.
we might calculate the correlation of our signal with future returns over a range of other horizons.
and we'd much rather this decayed slowly, rather than quickly.
if it decays quick, it's going to be very competitive to get in for the good bit.
and, if we're going to trade it successfully after costs, we're going to be have to sat in positions with zero or very low expected return until we can get out of them cost effectively.
so all things equal, we'd prefer the slightly less predictive thing that decayed slower.
these trade-offs are important and aren't always easy to navigate and reason about.
some tips:
- plot everything
- keep everything as simple as it can be, chunk down, and think through things as clearly as you can
- but understand that the whole of parts interacts in wonderful confusing ways
- use simulation to explore this best you can
- thank the market gods
• • •
Missing some Tweet in this thread? You can try to
force a refresh
if you try to teach yourself quant trading from the internet or from scientific papers, you run the risk of spending a lot of time majoring on minor sh1t.
you see it on here all the time.
the simplest, closest-to-hand tool for the job is what you want.
at least to start.
need to adjust for volatility?
good, that's predictably time varying - you should do that.
but don't reach for some fancy forecast you need to fit.
use recent realized, estimated in an easy way, over an intuitively sensible period, based on what effects you're looking for.
need to smooth something?
good, that's important in lots of ways - not least that it's incredibly expensive to trade something that's jumping around all over the place.
you want something where it's easy to reason how old info is expiring and new info incorporated.
The process of trading involves a lot of measuring.
In a trading system, you've made a bunch of assumptions and decisions, added a lot of moving parts.
And you need to isolate and track all those individual bits as best you can.
You've made forecasts about future returns.
Do those still hold up? Is the nature of them changing? Is information decaying at the same rate? Are you seeing different behaviour in different places? How confident are you in that?
You combined those forecasts in some way.
There are several ways you could have chosen to do that. Are you happy the choices and assumptions you made (about persistence/momentum/whatever) are still valid?
here's the out-of-sample backtest performance of a sh1tcoin quant mean-reversion strategy.
from a large universe of sh1tcoins, we select 10 pairs to trade based on stationarity tests and unsupervised learning techniques performed on 2021 data.
and simulate trading 'em in 2022
it "trades" on hourly bars.
the trading strategy is just a simple zscore thing.
at any point we hold a position equal to the inverse of the zscore of the spread at the start of the hour.