Hi. How to model latent rare events (<1%) in a way that’s good for MCMC?. As far as I know using discrete distributions like Bernouli doesn’t work well with MCMC.
Problem stock volatility has sharp jumps looking similar to asymmetric saw.
Such jumps could be modelled with Bernoulli, example: SV with Jumps in Volatility (the volatility - e^{h_t/2}):
It’s possible to replace Bernoulli with I_t \sim \text{sigmoid}(k \mathcal{N}(\mu_p, \sigma_p)) and choose k so that it will be sharp enough. But, it would worsen the MCMC fit, the Jump params estimation is not reliable and sometimes chains diverge, it’s slow, etc.
My current workaround (works but not very well):
I drive model with asymmetrical LogNormal innovation, and it produces similar pattern
Problem - the magnitude of the jump is hard to control and sometimes it overshoots producing unrealistically large jumps.
Question: would limiting the magnitude of a jump with sigmoid h_t = h_{max}\text{sigmoid}(h_t/h_{max}) ok for Stan? Or is it better to limit the random variable z_t = z_{max}\text{sigmoid}(z_t/z_{max}) or maybe with a hard bounds in variable declaration vector<upper=10>[T] z?
A better model (but I don’t know how to make it work, it has hard switch):
The idea is to use Normal innovation, but allow it sometimes bypass the recursion and set vol directly, producing sudden asymmetrical up jumps.
It’s possible to make it soft with sigmoids. But, to make it realistic sigmoids should be sharp enough, and it destroy smoothness and makes it hard for MCMC.
Question: Is there a way to make something like this smoothly and well suited for MCMC fit? Any good and simple model with asymmetrical jumps? Maybe I’m missing something (I’m new to MCMC)?

