The equation for calculating the overnight adjustment is broken down into two parts; the daily movement along the futures curve (basis), and the IG Bank charge. This is applied to positions open at 11pm Swiss time.
Overnight adjustment = number of contracts x contract size x (basis + IG Bank charge)
Formula for the IG Bank charge = price x 2.5% / 365
Formula for basis = (P3 – P2) / (T2 – T1)
T1 = expiry date of the previous front future
T2 = expiry date of the front future
P2 = price of front future
P3 = price of next future
The basis equates to the daily movement of our undated price along the futures and may be a credit or a debit. This will either be a positive or negative number depending on the direction of your trade and the slope of the forward curve.
For example imagine you are long one $10 contract on US Oil. If there was a time difference between T1 and T2 of 31 days, and front month future (P2) was 4700 and the next future (P3) was 4770 then the overnight adjustment would be calculated as follows:
Overnight adjustment = 1 x $10 x (((4770 – 4700 ) / 31) + (4700 x 2.5% / 365))
= $22.58 + $3.22
In our example the cost to hold the position overnight is $3.22, however you will also see a cash neutral futures curve adjustment as well. The $22.58 basis adjustment will be offset in the running profit or loss on the position.
On the other hand, if you were short US Oil in the above example then you would receive $22.58 and pay $3.22, therefore a net credit of $19.36.
For any position opened before 11pm Friday that is still open after 11pm Friday, the basis adjustment will be made for three days as opposed to one. This three-day adjustment is applied on the Sunday night or Monday morning.