If you use IR you need a light emitter (IR LED for example) which will draw power all the time and quickly drain a battery. The magnet and reed switch suffer the problem that they have to be in very close proximity and if you go fast, the magnet may pass the reed too quickly for it to operate. A magnet and Hall effect sensor will work or another method is to use a magnet and pick-up coil so it produces an electrical pulse as the magnet passes by. Try looking up "reluctance sensor" for more information.
Brian.