I noticed that spread on currency pairs shoots up to 5x larger around 22:00 GMT. Then it slowly goes down back to normal levels around 23:00 GMT.
Does anyone know why?
International banks will pass their trading from one centre to the next, so London hands over to NY, which hands over to Tokyo etc. When a centre takes the reins, they may not want to keep the same position as the previous one; perhaps London was happy being long Euro but NY wants to shift that to be long Yen, or they can't maintain the tight spreads around the Cable prices. So during that initial handover period, the easy thing to do is just widen all the spreads until you've got your system configured and set up the way you want it, then you can bring the spreads in.
22 GMT is 5pm nyc. Thats the time when all the ECNs and liquidity providers stop operation to be restated at 5.30 nyc time again. That's why you see such spreads. Probably starts to widening at 4.30pm since most liquidity providers starts to unload any remaining inventory so they can close the day flat.