The bidding algorithm does not seem to be optimal for ES nodes: Instead having a sequence of persistent bids > price * [1, 1/2, 1/3, 1/4, ...] would handle price fluctuations better, and maintain a stable total cost.
This will be hard to implement: Often we will have existing spot instances at a variety of sub-optimal prices for this strategy. Instead we should be looking for an incremental bidding strategy that may approximate this behaviour. For example: 1) The actual price exposure is, for any given price, price*number_of_instances. Which is less than sum_of_all_bids 2) The max bid can be higher given we know the actual price exposure is lower 3) Low bids are effectively free (in terms of max exposure) because they will be terminated when prices rise