Global markets rally as Iran signals peace, oil drops below $104