I would like to have one of these checking the hourly pricing API https://hourlypricing.comed.com/hp-api/ every 5 minutes and then adjust temperature based on a running average of the current hour rates. There are times it unexpectedly spikes up, and times it goes negative. I would like to consume more power when the cost is negative, (precoolling) and less power when it spikes up by letting the temp drift up. Spikes are random and only last one hour, so I am paying a premium to cool my house at 9 in the morning sometimes, and that just doesn’t make sense, the AC can easily lower the temp back down especially early in the morning.
The rate I am charged is the hourly average of prices displayed every five minutes. For the first couple of five minute increments in an hour, we could look at previous hour average to keep ourselves from wandering to far out, but after that just work to current hour average. It could be more complicated, but this would give us 80% of the benefits with only a smaller percentage of the work.
If we wanted to get slightly more fancy we could look at time of day, and decide if we want to ignore the rate to some small degree, as it is likely to climb even higher later on. There are plenty more tweaks that go beyond that, like weather forecasts, but that gets more difficult.
I am happy to contribute code to make this happen.