Andrey Rublev and Denis Shapovalov will fight it out Saturday for a place in the final of the St. Petersburg Open.