Maker taker fees
Maker taker fees
In the context of liquidity and marketplaces, maker and taker fees refer to the fees charged by the exchange or trading platform to users who participate in buying and selling assets.
A maker is a user who places an order on the exchange that does not immediately fill, but instead rests on the order book waiting for a counterparty to take the other side of the trade. In this scenario, the maker is adding liquidity to the market by creating an order that can be executed in the future. Maker fees are usually lower than taker fees, or in some cases, may be charged at a discount, to incentivize users to add liquidity to the market.
On the other hand, a taker is a user who places an order that immediately matches with an existing order on the order book, thereby "taking" liquidity from the market. Taker fees are usually higher than maker fees, as they represent the cost of executing an order immediately and thereby reducing the available liquidity in the market.
Maker and taker fees are a common mechanism used by exchanges to generate revenue, while also incentivizing users to act in ways that promote market liquidity, increase trading volume and ensure a robust market.
Maker taker fees in the orders API v3:
In the v1 endpoints of IMX Order Book, buyers were traditionally required to pay all fees (including both the maker and taker fees).
However, this behavior has now changed on the v3 API /trade for IMX Order Book, each corresponding maker and taker will pay for their respective fees. This change has been implemented to make the fee structure more fair and transparent, as it ensures that buyers are only paying taker fees when they are actually removing liquidity from the market, while makers are only paying maker fees when they are adding liquidity to the market.
Overall, this change to the fee structure helps to promote market efficiency by incentivizing users to add liquidity to the market, which can help to reduce spreads and increase trading volume. It also ensures that buyers are only paying for the service they are actually receiving, which helps to increase transparency and build trust between users and their marketplaces.
Maker taker fees information and breakdowns on order are now available as their own separate fields in the new getOrder(s) v3 endpoints.
When retrieving orders using the v3 endpoints, marketplace fees are no longer returned as ecosystem
type fees in array of fees. The fee charged by the maker's marketplace will be a maker
type fee, and the fee charged by the taker's marketplace will be a taker
type fee. This will be reflected on all orders created in the platform. For orders that don't split the fees between maker and taker, where the taker pays or paid for all fees, the maker
fee will be reported under the taker_fees
field.
Here is an example of what a listing order, with split fees, would look like in the v3 endpoint:
Here is an example of what a listing order, without split fees, would look like in the v3 endpoint:
New maker taker fields and the deprecation of quantity_with_fees in buy and sell
The introduction of maker fees and taker fees quantity_with_fees
fields means that buy.data.quantity_with_fees
as well as sell.data.quantity_with_fees
will be deprecated in favour of taker_fees.quantity_with_fees
and maker_fees.quantity_with_fees
.
Marketplaces will now have to use the combination of quantity_with_fees
from taker_fees
and maker_fees
to display their listing and/or bid price breakdowns.
maker_fees.quantity_with_fees
represents the fee adjusted amount of fungible (e.g ETH or ERC20 token) the maker would transfer or receive when the trade is executed.
taker_fees.quantity_with_fees
represents the fee adjusted amount of fungible (e.g ETH or ERC20 token) the taker would transfer or receive when the trade is executed.
We've also added a new field maker_taker_type
which can be read to determine whether an order is a listing or a bid.
A listing is a maker sell order (selling nft for fungible) and a bid is a maker buy order (selling fungible for nft).
Depending on whether an order is a listing or a bid, price can be calculated with the below formulas:
Example of calculating a listing price from an API response:
So, the listing price can be broken down into:
However, the amount that the seller would receive is 0.495 Eth (0.5 Eth - 1% maker marketplace fee) which is what is displayed under taker_fees.quantity_with_fees.
Example of calculating a bid amount from an API response:
In conjunction, the bid amount can be broken down into:
Last updated