Author: Nicolas Tang Date: March 3, 2021
If you place an order in a single transaction, it is easy to determine the performance of your investment. Simply calculate your potential PNL by checking the execution price.
However, if you place your orders in several transactions at different prices with different sizes, evaluating your investment’s performance is a little more complicated. In this case, the best method is to calculate the average execution price. Fortunately, our system automatically calculates and displays the average price. However, below are the equations to help you calculate this yourself.
To explain these equations we will use different contracts as examples.
BTC/USD Contract (Inverse Contract):
The average execution price for an Inverse contract is calculated as such:
The total order size/ (quantity A/execution price A + order size B/execution price B +….)
For example: If a trader buys 1000 BTCUSD contracts at $10000 and then buys another 2000 BTCUSD contracts at $12000, the average execution price would be:
3000/ (1000/10000 + 2000/12000) = 11250
ETH/USD Contract (Linear Contract):
The average execution price for an Linear contract is calculated as such:
(quantity A*contract size*execution price A + quantity B*contract size*execution price B+…)/ (total qty* contract size)
For example: If a trader buys 2000 ETHUSD contracts at $350 and buys another 3000 ETHUSD contracts at $370, and given that the contract size for ETHUSD contracts is 0.005 ETH, the average execution price would be:
(2000*0.005*350 + 3000*0.005*370)/(5000*0.005) = 362