Hello,
I’m currently working on implementing a Markov-Modulated Hawkes Process (MM-Hawkes), where the intensity parameters (baseline and kernels) depend on a latent CTMC regime. I'd like to build on tick’s infrastructure particularly the multivariate Hawkes process with sum-of-exponentials kernels but I’m unsure how best to integrate the latent-state structure.
What I’m trying to do:
-
For each hidden state s, I have a distinct set of parameters:
$μᵢ^{(s)}(t), α_{ij}^{(s)}, β^{(s)}$
-
The latent state $S_t$ follows a continuous-time Markov chain with generator Q.
-
I’d like to alternate between:
- E-step: run forward–backward to infer the posterior over latent states,
- M-step: for each state, fit its Hawkes parameters using weighted event sequences. However, the .fit doesn't allow weights ofc.
-
Is there a way to reuse tick.hawkes.HawkesSumExpKern to fit different parameters per latent state in a smart way?
-
Has anyone tried integrating regime-switching or state-dependent intensities into the tick framework?
-
Is there any way to make the baseline time-dependent?
Any guidance, ideas, or existing efforts I could build on would be really appreciated! Thanks!
Hello,
I’m currently working on implementing a Markov-Modulated Hawkes Process (MM-Hawkes), where the intensity parameters (baseline and kernels) depend on a latent CTMC regime. I'd like to build on
tick’s infrastructure particularly the multivariate Hawkes process with sum-of-exponentials kernels but I’m unsure how best to integrate the latent-state structure.What I’m trying to do:
For each hidden state s, I have a distinct set of parameters:
$μᵢ^{(s)}(t), α_{ij}^{(s)}, β^{(s)}$
The latent state$S_t$ follows a continuous-time Markov chain with generator Q.
I’d like to alternate between:
Is there a way to reuse
tick.hawkes.HawkesSumExpKernto fit different parameters per latent state in a smart way?Has anyone tried integrating regime-switching or state-dependent intensities into the
tickframework?Is there any way to make the baseline time-dependent?
Any guidance, ideas, or existing efforts I could build on would be really appreciated! Thanks!