Blog

March 19, 2019

Introduction to Reduce-only

As many of our users have requested we have now introduced reduce-only orders on our exchange.

We provide this feature on all of our orders and traders can use reduce-only with market and limit-orders as well as stops. When the trader enables reduce-only the order can only close contracts in a position. The orders will only function as an exit and so, reduce-only ensures less maintenance for traders.

Limit-orders with reduce-only

To make sure we don’t have orders that can’t be filled in the orderbook limit-orders with the reduce-only feature enabled can never exceed the amount of open contracts on the future the reduce-only order is placed. Our system will automatically adjust the quantity of contracts to the quantity of open contracts.

If part of a position is closed by any other means than the reduce-only order, the reduce-only order will be automatically adjusted downwards.

If the trader decides to increase their position before the reduce-only order is executed the quantity of the reduce-only order will not increase as well. The trader will need to adjust this themselves if wanted.

If a trader already has a reduce-only order placed and a new reduce-only order is placed in front of that the quantities will be adjusted so that the open quantity of all reduce-only orders will never exceed the quantity of open contracts. The first reduce-only order that can execute is key, all other reduce-only orders behind that will adjust so that the total quantity of contracts in reduce-only orders will never exceed the quantity of contracts in an open position.

Example of automatic adjusting of reduce-only order:

A trader has a long position on Perpetual BTC/USD of 10.000 contracts with an average price of $3900 and the most recent price is going sideways at $3950.

The trader has a limit-sell (take-profit) with reduce-only set for 5000 contracts at $4100 (order 1).

The trader has a limit-sell with reduce-only set for 5000 contracts at $4050 (order 2).

Now the trader places a limit-sell with reduce-only for 8000 contracts at $4000 (order 3)

As order 3 is the first that can execute this quantity is the key. As there are only 10.000 contracts in an open position for the trader the reduce-only order 2 will adjust to 2000 contracts (10.000 – 8.000). Order 1 will cancel as all contracts in the open position will be closed when both order 1 and order 2 are executed.

Market-orders with reduce-only

A trader may wish to close a position with a market-order. Any quantity can be filled in and the market-order will, when executed, automatically adjust the quantity downwards and only close a position.

Stops with reduce-only

As a stop is not an order in the orderbook until it is triggered a stop can be set up with reduce-only while exceeding the quantity of contracts that is open on the asset. As soon as the stop is triggered the quantity is adjusted downwards to the quantity of open contracts. If it is a stop-market the position will be reduced by the quantity given in the stop but the stop will never open a position. If it is a stop-limit, the limit-order will be adjusted downwards to the quantity of open contracts or if the quantity given in the stop is lower than the open quantity it will use the given quantity.

With the use of a stop (loss) with reduce-only enabled a trader can set up their stop (loss) before their limit entries are filled and ensure the loss exit.

API – close position.

All previous mentioned orders can be set up with the API as well but we have an additional order. The command /private/close_position will close the open order. It can be done both as limit-order as well as market-order. Executing this command will close the position and if it is executed as limit-order it will place a reduce-only order for the open quantity.

A simple example how reduce-only can be used:

A trader opens a long position on the BTC/USD pair with an average price of $3900.

The trader places a limit-sell order with reduce-only with a limit-price of $4000.

The trader sets a stop-loss with reduce-only that triggers a market-sell at $3800.

No matter what the market does the trader knows his position will be closed at either $3800 or $4000 and there is no chance of opening a new position.

If the market would push the price of BTC to $4000 the limit-sell of the trader would close the position in profit. If $4000 gets ultimately rejected and the markets dumps the price to $3750 the stop would trigger but not execute any order as there is no position to reduce.

zqooN – March 2019