The pound is the highest against the dollar in seven months and the highest against the euro since May 2017.