Trigger order allows users to pre-set a price order and trigger conditions for an instrument. When the market price reaches the trigger price, the order at pre-defined price would then route to the market.
Case 1: If the user believes uptrend momentum continues when BTC reached 19,250 US dollars, he/she could open a long position at 19,251 US dollars.
When the market price reaches the trigger price and the pre-set price triggers the limit rules, the system will place the order at the highest price or the lowest price currently allowed.
Trail orders allows user to set in advance strategy for significant swings in the market. When the last price reaches maximum (or minimum) market price after trail order is submitted (1±user-defined callback rate), this triggers the order to be executed on the market.
Case 1: BTC current price is19,000 US dollars. The user believes the overall market trend remains bearish but the price will rebound later. The user would like to execute a buy order BTC when 1) the market rebounding rate exceeds the pre-set "callback rate" and 2) the market price exceeds the predefined trigger price.
The user can place a trail order as follows:
Assuming the market swings as follow:
BTC market price fell from 19,000 US dollars and reached the lowest point at 17,800 US dollars. And the price rebounds back to 17,999 US dollars. Hence the market returned 1.11% from the dip [(17999-17800)/17800] = 1.11%
Trail order would NOT be sent because:
- Market rebound rate (which is 1.11%) > user-defined callback rate (which is 1%). => condition matched
- Market Price (17999) < User-defined trigger price (18000) => condition unmatched
In summary, trail order would only be sent in the following conditions:
- Buy Order = 1) Market rebound >= callback AND 2) Market price >= Trigger Price
- Sell Order = 1) Market rebound <= callback AND 2) Market price <= Trigger Price
An iceberg order is an algorithmic order type allowing users to avoid place a large order while avoiding slippage. An iceberg order automatically breaks up a user´s 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 the 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 automatically.
Case 1: A user would like to buy BTC at 19,000 US dollars and does not want to increase the cost so he/she place an iceberg order:
The system will automatically place an iceberg order. The amount of each order will be 90% - 110% of the single order average. 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 be temporarily halted. After the price falls down to 20,000 US Dollars, the iceberg order would be recommenced.
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 will attempt to execute an order which trades in slices of order quantity at regular intervals of time as specified by users. The purpose of TWAP is to minimize the market impact on basket orders.
Parameters of TWAP:
Price Variance (%): Buy Order = Best Bid * (1 + Price Variance %). Sell Order = Best Ask * (1 – Price Variance %)
Sweep Ratio (%): Sliced order size in percentage of an order. The sum of all sliced orders is equal to the total order quantity.
Total Amount: Total order size in terms of unit of underlying or number of contracts
Per Order Limit: Max Size per sliced order in terms of unit of underlying or number of contracts
Price Limit: Max/Min price for each sliced order
Time Interval: Time in second between order placement
Example 1: User would like to go long 1000 contracts 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 (aka 1+1+8+100+156 = 266). Subsequently the system would take a reference on user-defined sweep ratio so to determine the sliced order size, in this case, which is 13.3BTC (266*5%).
The sliced limit buy order would be posted at $18914.19 for 13.3BTC.
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.
In case the sliced order quantities reaches the max/min order quantity defined by the user, the order would be sent at the user-defined quantity accordingly.