An efficient pricing algorithm for American options with double stochastic volatilities and double jumps. (September 2018)