Introducing Our New Self-Trade Prevention (STP) Function for Spot Trading via API on Binance
Not all self-trades are deliberate or intentional. Some users, running a number of different strategies simultaneously, may end up having two of their own orders matched by accident.
From January 26, 2023, Binance API users can take advantage of our new Self-Trade Prevention (STP) function for spot trading, which will block the execution of an order if it would result in a self-trade. The STP function will expire the maker or taker order, or both — as specified by the user.
The STP function gives users the tools they need to avoid any inadvertent self-trading. Other benefits include being able to run trading strategies with a guarantee of no self-trades and saving fees on unnecessary trades.
Binance’s Self-Trade Prevention (STP) is a new spot trading function that allows API users to set up a safety net that will prevent any of their orders from being matched with each other.
Binance is introducing a new Self-Trade Prevention (STP) function to help API spot trading users avoid self-trading. Without STP, unintentional self-trading could happen in a competitive marketplace. For example, when orders from separate trading units of the same firm, using the same unique UID, with unrelated trading strategies, happen to post orders that trade with each other. Coordinating trading strategies in a fast and competitive market is difficult for traders to do, so some traditional and crypto exchanges offer Self-Trade Prevention to assist traders.
This article explains the basics of self-trading, what we do to protect users, how and why it’s not always intentional, and the introduction of Binance’s Self-Trade Prevention (STP) function as a tool to prevent it.
What Is Self-Trading?
Our Market Surveillance team actively monitors market activity to identify intentional self-trading and any other forms of market manipulation. Binance has extensive tools to track intentional self-trading and investigate offenders.
However, it’s important to note that not all self-trading is intentional. For example, large and active traders (including liquidity providers) that run multiple strategies simultaneously may inadvertently end up having two of their own orders matched. The same could happen when different trading units operate within the same organization, using the same unique UID.
Our number one priority is to protect all of Binance’s users and give traders robust tools to trade with. As such, the launch of our STP function gives those who run the risk of inadvertently self-trading the ability to prevent it.
Binance’s Self-Trade Prevention Function for API Users
The introduction of our Self-Trade Prevention (STP) function — launch date: January 26, 2023 — allows any Binance user trading on our Spot Markets via API to set an STP parameter for their orders, which consequently prevents any inadvertent self-trading. Using this parameter, the user can choose whether they want the maker order, the taker order, or both orders to expire, if a self-trade would otherwise occur.
Please note that the STP function is only available to API users, not those trading on Binance’s website, mobile app, or desktop app. The reason for this is that self-trading, whether intentional or accidental, is extremely difficult to do manually. Realistically, it only happens with fast algorithmic trading, which is done by API.
Accidental self-trading that would cause a noticeable impact on market data would need to be done at a scale only executed by VIP users, typically trading via the API, hence the introduction of the STP function specifically for spot trading via API. There will be no impact on users who do not utilize this feature.
The Importance and Benefits of STP
Utilizing the STP function means that users conducting genuine market activities, but whose strategies may lead to unintentional self-trading, can maximize trade efficiency and avoid paying unnecessary trading fees. Apart from saving on fees, the STP function will also protect them from mistakenly self-trading and possibly being on the wrong side of investigations. In addition, the availability of this tool can help safeguard the integrity of market data by reducing the number of inadvertent self-trades. The STP function is about giving users the tools they need to trade efficiently and avoid any inadvertent mistakes.
We highly encourage our API users to take advantage of the STP function in order to protect themselves from inadvertently self-trading, which could potentially lead to negative repercussions. Users mindful of certain compliance requirements, or risk-management duties, may also find the STP function particularly useful.
For more details on the STP function, please refer to the Binance API documentation.