In this paper, we develop an option valuation model where the dynamics of the spot foreign exchange rate is governed by a two-factor Markov-modulated jump-diffusion process. The short-term fluctuation of stochastic volatility is driven by a Cox–Ingersoll–Ross (CIR) process and the long-term variation of stochastic volatility is driven by a continuous-time Markov chain which can be interpreted as economy states. Rare events are governed by a compound Poisson process with log-normal jump amplitude and stochastic jump intensity is modulated by a common continuous-time Markov chain. Since the market is incomplete under regime-switching assumptions, we determine a risk-neutral martingale measure via the Esscher transform and then give a pricing formula of currency options. Numerical results are presented for investigating the impact of the long-term volatility and the annual jump intensity on option prices.