MarSwitching.jl is a package that allows to estimate the Markov switching dynamic regression (also called regime switching regression).

It’s in general registry and the repo can be found here: GitHub - m-dadej/MarSwitching.jl: MarSwitching.jl: Julia package for Markov Switching dynamic models

Briefly, this class of models allows for the parameters to change over time, depending on the unobservable state/regime (e.g. economic recession). The regime itself follows a Markovian process. Estimation of the model also allows to infer the probability of being in particular state at time t.

Current functionality:

- Model with a combination of switching/non-switching exogenous variables, variance or intercept.
- Time-varying transition probabilities (a la Filardo 1994)
- filtered and smoothed probabilities of each state
- instantaneous and one step ahead prediction
- Simulation of data both from estimated model and from provided parameters

You can read more about the package and see an example in the repository.

Appreciate any comments, feedback and functionality requests.

Cheers!