I think it is better to store your coins in a wallet. Once a trading platform is hacked say goodbye to your coins. Though having your coins in an exchange is quite advantageous too, let's say the price of the coin suddenly went up, you can easily trade it. Having it in your wallet, it will need quite some time to be confirmed and during this time price might have already dropped.
If you're in with holding the coin for a long time, store it in a wallet.
Exchange like Bittrex, Poloniex, Bitfinex, Binance, etc. and other trusted exchanges are the exchange will refunds for investor if they got hacked from attack by hacker.
Coincheck is a new exchange in Japan, although 500 million dollars of NEM stolen by hacker in this year, but they still refunds all that amount for those who used their system lost that amount.