PnL computations
Last updated
Last updated
On all instruments (besides PTs), the Money market oracle is selected by default to display the PnL/ROE of your positions.
To get a more accurate estimated PnL/ROE if you were to close your position now, use the DEX Spot market source.
Contango UI cannot select the DEX Spot market source by default since it would be too computing intensive and DEX aggregators would start rejecting quote requests.
In the 'Open Position' list Contango displays the exit price, which is also used to compute your PnL. The exit price can have 3 different pricing sources that you can choose from by clicking on the coloured dot next to it:
Money Market Oracle: this is the default option and uses the same oracle as the underlying money market that you're trading on. It is used for liquidation purposes by the money market. For some pairs, however, this is the least accurate source for PnL computations and it can deviate substantially from the market price.
Contango Price Service: this is Contango's own pricing service that queries different price sources, like Balmy and Defillama to provide a more accurate pricing than the Money Market Oracle. If it doesn't find a reliable source it defaults back to what is used to plot charts on the Advance interface.
DEX Spot Market: the actual market price at which your position will be closed in that moment. Sourcing this price requires API calls, which -if too frequent- can lead to the user address being rate-limited, so that's why this option is not displayed as the default one.
Bear in mind that the implied funding rate of your position (the APY) is accrued as part of your PnL and settled when closing the position, partially or totally.
If you hover on the PnL value in the 'Open Positions' list, you can see a breakdown of its components.
Most rewards from the underlying money markets are shown in addition to your PnL, on a second line. If you hover on it, Contango will show the exact quantity of rewards earned. We strive to display all third-party rewards, but that's not always possible depending on the claiming process.
Before trading → make sure to understand how the exit price is computed, what is shown in the PnL breakdown and how money markets behave.
Both ROE and APY are useful indicators to estimate your profits and costs on a given position. You can always toggle between them in the app (when opening a position, in the Advance Trade Selection tool and in the Open Positions list). At a high level:
APY (annual percentage yield) is determined by the interest rate difference in notional terms (calculated as a percentage of the notional value of the position)
ROE (return on equity) is the same concept but computed on your initial equity (margin).
The APY is determined by the difference between the lending profits and the borrowing cost of a position, which you normally see referenced as borrow APY and supply APY on money markets. That’s why it’s also called APY on the Contango UI. The APY is thus the implied funding rate of your position, but its sign is inverted compared to funding rates on other perp venues. It's a useful metric to monitor when trading non-correlated pairs (e.g. ETH/USDC). Please note that the APY varies with leverage: the higher the leverage, the worst the APY (as more money has to be borrowed). On a side note, Contango has the cheapest and most stable funding in the space (source).
On the other hand, ROE is computed on your initial margin and thus offers an insight into the estimated returns you can have on your initial capital. It becomes a useful metric to monitor when doing correlated asset loops (e.g. wstETH/ETH or USDC.e/USDC), as you're not betting on the underlying asset increasing in value, you're just "farming" an interest rate spread. Similarly to the APY, the ROE varies with leverage.