Roger Federer reached the Gerry Weber Open final and pushed his record winning streak on grass to 58 matches Saturday with a 6-1, 6-4 victory over Germany’s Nicolas Kiefer.