1. Algo Order
Algo orders are sets of instructions for placing trades according to predetermined logic. The logic of all available algo order types is explained in this document. Order submission is carried out according to user-defined parameters. OKCoin does not manually interfere with the execution of algo orders.
Algo trading tools allow users to enter trade information in advance, and save execution time when predetermined market conditions are in place. Some traders use algorithmic execution tools to help them stick to their trading strategy, and avoid poor executions.
Algo orders will not be executed if pre-set conditions are not met. Also, our system does not place a hold on user account funds when an algo order is made. However, triggered also orders will be canceled if the account does not have sufficient funds for its execution.
By using our algorithmic trading tools, you understand and agree to our Algo Trading Agreement.
2. Trigger Order
Trigger order is a trading instruction with pre-defined trigger and order parameters set by a customer. Trigger orders are sometimes referred to as stop-limit orders. When the last traded price has reached the trigger price, our system will send trading instructions to the order book.
For example, the last traded price of BTC is 9,600 USDT. If a user believes that the price will continue higher after it breaches resistance at 10,000 USDT, the user may place a trigger order with the following parameters:
Trigger price: 10,000 USDT
Order price: 10,050 USDT
Amount: 1.5 BTC
Our system will then automatically send a limit order with the above parameters to the order book when the last traded price reaches 10,000 USDT or above. This can save users time by reducing their need to monitor the market.
3. Trail Order
Trail orders allow users to execute trades dependent on predefined swings in the market. When market price reaches a defined maximum (or minimum), and retraces a specified amount, a limit order is submitted (1±user-defined callback rate).
Case 1: BTC current price is 1,900 US dollars. The user believes the market trend remains bearish but the price will rebound later. The user would like to execute a buy order BTC when 1) the market rebound exceeds the pre-set "callback rate" and 2) the market price exceeds the predefined trigger price.
The user can place a trail order with the following parameters:
Assuming the market swings as follow:
BTC market price fell from 1,900 US dollars and reached the lowest point at 1,780 US dollars. And the price rebounds back to 1,799 US dollars. Hence the market returned 1.1% from the dip [(1799-1780)/1780] = 1.1%
Trail order would NOT be sent because:
- Market rebound rate (which is 1.1%) > user-defined callback rate (which is 1%). => condition matched
- Market Price (1799) < User-defined trigger price (1800) => condition unmatched
In summary, trail order would only be sent in the following conditions:
- Buy Order = 1) Market lowest price <= Trigger Price AND 2) Market rebound >= Callback
- Sell Order = 1) Market highest price >= Trigger Price AND 2) Market rebound <= Callback
4. Iceberg Order
An iceberg order is an algorithmic order type allowing users to avoid displaying a large quantity order. An iceberg order automatically breaks up a large order into multiple smaller orders. These orders will be placed on the market according to the latest best bid and ask price as well as parameters set by the user. When one of the smaller orders has completely filled, or the latest market price has deviated significantly from the price of the current order, a new order will be placed.
Case 1: A user would like to buy 1,000 BTC and does not want to impact the market, so they place an iceberg order:
The system will automatically place slice of the order. The amount of each order slice will be 90% - 110% of the defined average amount. The order price will be the latest buy price*(1-price variance). Once the order completely filled, a new order will be placed. When the last market price exceeds 2*(order variance), the previous order would be cancelled and a new one will be placed.
When the amount traded equals the total order amount, the iceberg trade has been filled. When the last market price exceeds the highest buy price of 20,000 US Dollars, the iceberg order would halt temporarily. If the price falls to 20,000 US Dollars, the iceberg order would be begin again.
5. Time-weighted average price (TWAP)
Time-weighted average price (TWAP) is the average price of an instrument over a specified time. TWAP is a strategy that executes an order in slices of the total order quantity and at regular intervals of time as specified by users. The purpose of TWAP is to minimize market impact basket.
Example 1: User would like to buy 1,000 BTC and place an order as TWAP.
Assuming the order book as below:
Assuming the user set the Price Variance as 1%, the Max Buy Limit Price is thus set as $18,726.93 * (1 + 1.00%) = $18,914.19. System would then compute the current aggregated sell quantities posted in the order in which the price is lower than mentioned $18,914.19. Subsequently the system would reference the user-defined sweep ratio to determine the sliced order size. Sliced order sizes equal the available liquidity under price limit multiplied by the sweep ratio.
The sliced limit buy order would be posted at $18,914.19.
All unfilled order quantities would not be posted as pending order but would be cancelled. Order would be resent according to user-defined time intervals with an updated price and quantities.
In case the sliced order price reaches the max/min price limit defined by the user, the order would be sent at the max/min price as defined. Said order would be automatically cancelled should there be no matched price in the market.