I'm trying to use a Kalman Filter to estimate an online dynamic regression coefficient between two variables (e.g. http://www.thealgoengineer.com/2014/online_linear_regression_kalman_filter/)

In the example in the blog post, there is one new observation per time step, which is used to update the Kalman filter. What if you have N observations per time step - is there a generalized form of the Kalman filter you can use to update the filter with all N observations at once?

Or do you just do some type of averaging over the N observations and use the classic Kalman filter?

Edit: Let's say I have a universe of 3000 stocks and I have 2 alpha factors (value and momentum) computed for each stock in the universe at every time step

I want to use a Kalman filter to estimate FwdReturn = beta1 * momentum + beta2 * value + epsilon_i

  • $\begingroup$ Multiple observations for one stock? Or many stocks. Are you dynamically regressing them all on the same one stock? Does each left hand stock get it's own slope coefficient? Could you give us more information? Writing down a model will help people answer your question $\endgroup$
    – Taylor
    Nov 29 '16 at 19:42

Most of the time, implementing a Kalman filter with multiple observations falls under the data fusion or sensor fusion umbrella. In general, there is no single way to approach the problem. For a number of examples, check out this deck* from slide 144 onward.

*This link is from the Wayback Machine because the original link died and I couldn't find it anywhere else online.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.