fcron has a feature to avoid starting jobs whilst system load is too high. It does this with configuration options such as lavg, or lavg1, lavg5 and lavg15 options which specify the threshold under which the system must be operating to begin the job. It may be combined with until to specify a timeout period after which the job would run regardless of load.
Example
# wait a maximum of 5 hours every day for a fall of the load average
@lavgand,lavg(1,2.0,3.0),until(5h) 1d echo "Load average is going down"
For more, see fcrontab (5).