Here is a trick I learned biking around in cold Las Vegas nights to warm your hands. Squeeze whatever you are holding hard, (or make a fist and squueze) in pulses about a second apart. It will force the blood through, like a miniature heart, and your hands won't feel cold at all.
Even better, keep your arms on the side of your trunk, your elbows straight and flex your hands at 90 deg so they point away sideways. Now, move your shoulders up and down. Don't use any other joints. Each down move of the shoulder will pump blood into your hands with high pressure.