Surely putting the refresh rate to a long gap will do what you want on saving processor power and API interactions. So, for example at noon let a trigger set the refresh rate to market_index*2 if the minutes to the start is >5.
So, the first race (which in UK horse racing could start pretty soon after 12:00, or even before) will refresh every 2 minutes. Then another trigger puts this to your required refresh at 7 minutes before the off, thus allowing a margin in case the last refresh was at 5.01 minutes before the off and wont fire again until 3 mins before the off (missing some of your required monitoring period).
Depending on how many markets you have, the last race on could be on over 100 minute refresh saving processing. the other benefit of this and not just setting them all to one figure is that when they do refresh it will not all be at once, just one market every two mins or so.
If markets are deleted after settled then the trigger will reset the new first one in the list to 2 minutes etc.
If you do not delete markets when settled then have a couple of triggers bringing the nearest market to shorter refreshes as they approach (just in case the 7 minute trigger is missed by a refresh).
I believe AutoIT could be programmed to literally do the necessary screen clicks to do whatever you can do manually but I would not waste my life trying to code it. So you could reload the markets with new settings at some point if you wished.
Just a thought...........(have I missed anything (a comma perhaps?
)