What is the earliest time your source data will be complete and ready to be extracted? There is no point doing a data pull until you are sure that your source data is complete - how do you tell if it is complete or not?
I have a similar daily extraction process. To confirm the source data is complete I run a query process that loops with a time delay. Once the process confirms the row count and the latest load time, the looping stops and the extraction starts. This is one way you could approach your problem.