gold ends 1.2% higher at $1,680.60 an ounce