Federer extends his winning streak to 20 in Halle