Shanghai stocks closed at a 10-year high on Monday, bucking ​regional weakness in the wake of ​the Iran conflict as investors snapped up energy, gold and defence shares.