I always get confused about the cashflows occurring when a futures position is closed out. For example, say it is January and I enter into a long December Futures position with a futures price F(jan). I want to close out my position in July, and the December futures price is F(july), so I short this futures contract.
So, as I understand it, in December, the long futures has a payoff of S(Dec) - F(jan), and the short position has a payoff of F(july) - S(Dec), where S(Dec) denotes the value of the underlying asset in december.
So the total payoff in F(july) - F(jan), and this payoff happens in december, not when i close my position out in july. However, it seems that in Hull, this payoff is immediate, is there something I'm missing?