Feature Request: Adding support for complex OCO orders

Our community of traders has expressed significant gratitude for the recent streamlining of the ordering process, enabling the direct linking of Take-Profit (TP) and Stop-Loss (SL) orders to the reference position. They also highly value the ability to set the SL as a percentage of capital, a feature frequently utilized by professionals for effective risk management.

For reference, these new features have been highligted in the following X post: https://twitter.com/i/status/1785339109268935042

After the recent enhancements, our users have expressed their desire for One-Cancel-Other (OCO) orders. Given the similar architecture of TP and SL orders, with the execution of one cancelling the other, we believe implementing OCO would be the next logical step for the dYdX chain. This addition would significantly improve the user experience, moving us closer to the functionality of centralized exchanges (CEX). The ultimate goal is to create an OCO system where each bracket of the pair can have its own pre-set SL and TP, allowing for complete order control and providing a superior user experience to current CEXs.

Quick note for less experienced traders: an OCO order is commonly used by more advanced traders to create “bracket” orders. One buy and one sell order being set in an OCO logic, allowing the user to arbitrage price volatility and range more effectively. This can also be used for “directional” trades, allowing the user to put two orders in the same direction (long or short), one with a limit entry and the second with a stop-market entry. This setup allows the trader to both ask for the price it would like to get, while also join the market with a stop order if the limit isn’t matched.

Both these strategies require the second order to be canceled when one of the pair is executed. By implementing OCO orders, we can provide a more robust and comprehensive trading platform, allowing users to enjoy a superior user experience compared to that of current centralized exchanges. This development is a crucial step towards achieving our goal of offering a seamless, intuitive, and highly functional trading experience for our users.

We are eager to see these updates available!
On behalf of the entire PRO Delegator’s validator team and our community, we thank you for considering our request.