In Futures trading, unrealized PNL and realized PNL can be confusing. Why does the profit and loss displayed while holding a position differ from the actual PNL after closing it? This article uses simple formulas and examples to help clarify the difference between the two.
The key difference between unrealized and realized PNL lies in whether the position has been closed.
Unrealized PNL: This refers to the profit or loss of an open position, which fluctuates in real time with market price changes. On MEXC, unrealized PNL is calculated by default using the fair price. Users can choose the pricing basis for unrealized PNL within their current position settings.
Realized PNL: The actual profit or loss generated after a position is closed. This includes all realized PNL from the position, covering trading fees, funding fees, and the closing PNL. The closing PNL is calculated based on the market price matched by the system at the time of closing.
Note: The fair price is calculated based on a combination of the index price and market price, and it may differ from the last price of the contract. This discrepancy is one of the factors that can cause differences between unrealized PNL and realized PNL.
Position Type | Unrealized PNL Calculation Formula | Realized PNL Calculation Formula |
Long | (Fair Price − Avg Entry Price) x Position x Size | (Avg Close Price − Avg Entry Price) x Position x Size |
Short | (Avg Entry Price − Fair Price) x Position x Size | (Avg Entry Price − Avg Close Price) x Position x Size |
Why does the profit decrease after closing a position? Let's look at an example using USDT-M ETHUSDT Futures.
While holding the position:
After closing the position:
Position information:
Trading pair: ETHUSDT (Long position: bullish on ETH)
Avg entry price: 2721.18 USDT
Fair price: 2723.92 USDT
Avg close price: 2722.91 USDT
Position size: 50 cont. (1 cont. = 0.01 ETH)
Opening fee: −0.2722 USDT
Closing fee: −0.2722 USDT
Unrealized PNL = (Fair Price − Avg Entry Price) x Position x Size = (2723.92 − 2721.18) x 50 x 0.01 = 1.37 USDT
Current Unrealized Profit = 1.37 USDT
Realized PNL = (Avg Close Price − Avg Entry Price) x Position x Size − Trading Fees − Funding Fees = (2722.91 − 2721.18) x 50 x 0.01 − (0.2722 + 0.2722) − 0 = 0.3206 USDT
Actual Profit = 0.3206 USDT
The following reasons may cause unrealizedPNL and realized PNL to differ:
Reason 1: When the fair price deviates from the market price, it causes unrealized and realized PNL to differ.
Unrealized PNL is calculated based on the fair price by default, while realized PNL is based on the actual matched market price. Large market fluctuations may cause differences between these prices, resulting in discrepancies between unrealized and realized PNL.
Reason 2: Deduction of trading fees and funding fees.
Closing a position deducts fees, so actual realized PNL after fees may differ from unrealized PNL. If the position is held across funding fee periods, funding costs may also apply.
Note: If the funding rate is positive, longs pay funding fees to shorts; if negative, shorts pay longs.
Reason 3: Real-time price fluctuations.
Cryptocurrency prices depend heavily on user trading behaviors. Large buy or sell orders can cause sharp, short-term market price swings. These swings may cause the PNL shown while holding the position to differ from the actual PNL after closing.
Reminder:
The fair price mechanism reduces the impact of market manipulation, but the actual realized PNL depends on the market price when the order is matched.
In Futures trading, unrealized losses may trigger liquidation, so controlling position risk is crucial.
In Futures trading, the PNL rate is a key metric to measure trade performance:
PNL Rate = (PNL / Initial margin) x 100%
Initial Margin = (Avg Entry Price x Contracts x Size) / Leverage
ROI = Unrealized PNL / Initial margin
The ROI only depends on current leverage, not on margin increases or decreases.
Position Information
Trading pair: ETHUSDT (Long position – bullish on ETH)
Leverage: 500x
Direction: Long (bullish)
Entry price: 2697.30 USDT
Real-time fair price: 2703.67 USDT
Position size: 50 cont. (1 cont. = 0.01 ETH)
Trading fee = 0.2697 USDT
Funding fee = 0 USDT
Initial Margin = (Avg Entry Price x Contracts x Size) / Leverage = (2697.30 x 50 x 0.01) / 500 = 2.6973 USDT
PNL= Unrealized PNL − Trading fees − Funding Fees = 3.185 − 0.2697 − 0 = 2.9153 USDT
PNL Rate = (PNL / Initial Margin) x 100% = (2.9153 / 2.6973) x 100% = 108%
Disclaimer: This information does not provide advice on investment, taxation, legal, financial, accounting, consultation, or any other related services, nor does it constitute advice to purchase, sell, or hold any assets. MEXC Learn provides information for reference purposes only and does not constitute investment advice. Please ensure you fully understand the risks involved and exercise caution when investing. MEXC is not responsible for users' investment decisions.