Auto post with filling templates from external data and update periodical

Network requests during page load are very heavy action and should be avoided at all cost.

WordPress has wp cron functionality to work with scheduled events and depending on your data requirements you might map data to Custom Post Type, store it in custom table or maybe more simply use caching API such as Transients API