It's pretty simple when you're buying BTC, just look for the least price in and around that time. Also, look for an exchange where the price is least, make sure the site is reputed with high volume trades.
About storage, just use a stable hardware wallet such as Trezor or Electrum and make sure you use a strong password and other security measures like 2FA.
Can you advise me as to the the three biggest (best reputation) exchanges?
Also, how can I be sure that Trezor or Electrum won't "do a MtGox" and have my Bitcoins disappear?