When you look at what charging has actually occurred on your system, what pattern does it show? You should be able to work out whats its doing from that.
I tried Octopus schedular in the early days. It was very unreliable and also very simplistic. I rapidly dropped that and just created my own. The GE battery.api provides all the required functionality to do that.
Own algorithm does more than just charging when price is below a threshold. Why? Take days where the price drops so goes below 5p but then continues to drop and may even go negative. If you just use a price threshold your battery could well be full by the time the lowest price is reached. In that case you will have charged at a higher cost that is optimal.
My algorithm....
1) Detemine how many slots are required to charge the battery to the required SOC.
2) Get all the slots prices from Octopus API and sort ascending.
3) Schedule as many 30 min charge periods as required via just in time scheduling (as the optimal periods may not be contiguous so the only way to have more than 1 is dynamic scheduling). For me to take to SOC 100% may be 6 slots over say 7 hours
I sucessfully automated all that before I left Agile for Go, at which time I scrapped it all and just used a simple timer ;-) In terms of planning, I knew I was always using the most cost effective charging slots, regardless of the price or the time. Price thresholds were irrelevent as I always used the cheepest, ragardless what they were.
So without knowing exactly how the GE algorithm works, which I am sure @Mickey (GivEnergy) will describe, you can do simple maths calculations for tariff comparisons now as a desk exercise. If only the cheepest slots are used to fill your capacity you can determine how much that is compared to other tariffs. Thats the best case you can achieve.
For export, which I don't do as I have FIT, the logic is simply inverted. Again the ability to change discharge rate is in the battery.api.
I appreciate some local hosting / coding is required to deliver this. I am sure the GE and Octopus SaaS solutions will do all this eventually, but if you dont want to wait it really is easy to do yourself and far more flexible for future use cases you havn't thought of yet.
It sounds like you are heading towards energy brokering ( buy cheep, sell high ). I am pretty sure the GE algorithms won't have all the logic for that as to do it right you need to also know when to 'hold' and by how much. If you include PV forecasts and domestic load predictions in that equation it is non trivial, but still very doable.