Being one of the leading crypto exchanges in the world, OKEx offers services and products for both, new and advanced traders. While there are numerous features and markets you can explore with your OKEx account, we will be referring to the Spot and Futures Trading product for the purposes of this cryptocurrency trading tutorial.
Transferring crypto to your Spot Account
In order to start trading crypto on the Spot Trading market, you will need to first transfer your crypto assets from the “Funding Account” to the “Spot Account.” This can be done via the Transfer option, accessible from the “Assets” drop-down list in the top menu.
The “Transfer” screen will allow you to select your desired coin or token, view its available balance and transfer all or a specific amount between different accounts.
For this example, once you have moved your desired crypto from the “Funding Account” to the “Spot Account,” you can proceed to “Spot Trading.”
Viewing the Spot Trading market
You can access the Spot Trading market by navigating to “Trade” on the top menu, then choosing Basic trading.
The Spot Trading screen displays a variety of useful information for traders and allows you to pick from the numerous market pairs available for trading. For instance, the image below shows the BTC/USDT market, which opens by default when you start Spot Trading.
The BTC/USDT pair denotes that, in this market, you will be trading between BTC and USDT. The large figure displayed here (i.e., 49,239.1) represents the price of a single BTC in USDT terms, and its red color indicates that this figure recently dropped (in this case, by -2.44%).
Choosing a trading pair
Use this menu to view quotations for multiple trading pairs and contract types, such as spot, futures, perpetual swaps and options.
Switching selection modes
Tap on the highlighted icon to switch between assets and select your instrument type.
Choosing instrument type
You can select specific instruments in this part of the menu. Let’s pick “Perpetual” for this tour.
Selecting the underlying
After selecting your instrument type, you can then choose which type of underlying crypto asset you want to trade.
Switching your position mode
You can choose a position mode of cross or isolated that determines how your position margin is used. In cross mode, positions of the same settlement currency will be calculated together. In isolated mode, position risk is calculated independently and will not affect assets outside of your position.
Setting a stop loss and take profit
Set the price levels where you want to trigger an order. This will help you manage your risk and keep your capital safe by insuring you exit your trade exactly at the price you want.
Assets and Orders
Tracking asset distribution
This is a visual representation of all of your collateral assets.
Track your open positions and see the health of your individual trades. You can edit the position, adjust leverage, and even add stop losses and take profit levels.
All your pending transactions and orders that aren’t fully filled can be edited before they are closed.
Track your completed trades and previous orders to see your performance.
You can change your account type in “Settings” directly from the trading environment.
Choosing your account type
Change your account type between spot, single-currency cross and multi-currency cross.
Selecting your account type
Customize your account mode and permissions based on your trading preferences.
Switching between layouts
Customize the layout to match your trading style. Switch from Traditional to Options to focus on your puts and calls.
Executing a spot market trade
Once you select your desired market and trading pair, you can execute a trade. For this example, we have selected the ETH/USDT pair from the USDT market.
The image below shows how, at the time of writing, 1 ETH was trading for 4,306.28 USDT. In order to execute a buy trade, you would simply enter the amount of ETH in the “Amount (ETH)” field to the left side of the price info and chart.
By default, the “Order Type” will be set to “Limit,” which means your order will be executed at your chosen price or better. Advanced traders can change the “Order Type” to suit their needs.
The “Price (USDT)” field also automatically displays the last traded price and is changeable. If you set your desired price lower than the market rate, your order will join others in the Order Book until it is filled.
You can see the “Order Book” on the far right side, representing the market liquidity from both buyers and sellers. The red figures denote prices sellers are asking for their corresponding amounts in ETH while the green figures represent prices buyers are willing to offer for the amounts they wish to purchase.
These figures are consolidated by price and do not necessarily represent a single buyer or seller. The current market price represents the point where the asks and bids (sellers and buyers) converge in the Order Book.
Once you decide on your desired price, enter it into the “Price (USDT)” field followed by the “Amount (ETH)” you wish to buy. You will then be shown your “Total (USDT)” figure and can click on Buy ETH to submit your order, provided you have enough funds (USDT) in your Spot Trading account.
Submitted orders remain open until they get filled or are canceled by you. You can view these in the Open Orders tab on the same page, and review older, filled orders in the Order History tab. Both these tabs also provide useful information such as the “Filled Ratio” and average filled price.
Once your submitted order is filled by the market, you will have successfully executed a crypto trade on OKEx.
The coins or tokens acquired via this trade should now be available to you in the “Spot Account” balance and can be transferred to other accounts or to the Funding Account before you can withdraw them using the Withdraw option from the “Assets” drop-down list.
Spot Trading – Instruction of Order Types
1. Limit Order
A limit order is an order to buy or sell an amount at a specific price or better. After the order is placed, the system will post it on the order book, and match it with the orders available – at the price specified or better.
Case 1: Assuming that the current BTC market price is 13,000 USDT, if a user wants to buy at 12,900 USDT, he can select order type “Limit” and set the buy price as 12,900 USDT. After the order is placed, the order will be filled automatically when the price drops to 12,900 USDT or below.
2. Advanced Limit Order
Advanced limit order offers 3 more order options than a regular limit order, including “Post Only”, “Fill or Kill” and “Immediate or Cancel”. The regular limit order has been defaulted as “Good till Canceled”.
(1) Post Only: it never takes liquidity and makes sure the user will be a market maker. If a post-only limit order would cause a match with an existing order, the order will be canceled.
(2) Fill or Kill: it makes sure the order is executed or canceled entirely without partial fulfillments.
(3) Immediate or Cancel: it requires all or part of the order to be executed immediately, and any unfilled parts of the order are cancelled.
Examples, if a user wants to buy BTC and the order book is shown as below:
(1) The user wants to get a Maker Fee, he can select the “Post Only” option under the Advanced Limit Order. If the buy price is 18,726 USDT, the order will not be filled, so the order will be placed and the user will be maker. If the buy price is 18,737.25 USDT, the order will be executed with the sell one in the order book, and the user will be taker, then the order will be cancelled immediately;
(2) If the user selects the “Fill or Kill” option, sets the buy price as 18,745.75 USDT and the order amount as 300 BTC, as the total available amount on the order book is 266 BTC (1+1+8+100+156), the order amount is not fulfilled (300-266=34 BTC) so the order will be canceled entirely. But if the order amount is 266 or less than 266 BTC, the order will be placed and filed;
(3) The user selected the “Immediate or Cancel” option, set the buy price as 18,745.75 USDT and the order amount is 300 BTC, as the total available amount on the order book is 266 BTC (1+1+8+100+156), 34 BTC (300-266) will not be fulfilled, so the order will only be executed with 266 BTC and the unfulfilled 34 BTC will be canceled.
3. Market Order
A market order is an order to buy or sell an amount immediately at current market price. Note: Value of single market price order cannot exceed 100,000 USDT.
Case 1: Assuming that the current BTC market price is 13,000 USDT, if a user wants to buy BTC immediately at market price, he can select order type “Market” and set the buying amount as, for example, 20,000 USDT. After the order is placed, the order will be filled immediately, the unfilled part of the order will be canceled. In a fast-moving market, the final buy price of this order may not be 13,000 USDT, but the real-time market price, which may be higher than 13,000 USDT or lower than 13,000 USDT.
4. Stop Order
Stop order is a kind of algorithm trading strategy by which users can predefine the trigger price and the order price, and the order will be placed automatically with the preset order price once the market price reaches the predefined trigger price. Stop orders can be divided into conditional orders and OCO orders. Stop-loss only and take-profit only can be set via a conditional order. OCO order can set stop-loss and take-profit simultaneously, and when one is triggered, the other will be invalid. Stop order will freeze the corresponding assets in advance.
Case 1: Conditional Order
The current market price of BTC is 9,700(USDT), and User A thinks that the price will pop up if it can crush the resistance below 10,000 (USDT). Then the user A can set buy-in when the price reaches at 10,000(USDT) via a conditional order. Setting steps: select order type [ Stop Order] — [Conditional], and set the parameters to trigger price: 10,000(USDT), order price:10,000(USDT), Amount:10, then click [Buy BTC] to submit the order. The conditional order will be triggered when the BTC market price reaches 10,000(USDT), and appear in the order book as a limit order with an order price of 10,000(USDT) and an order amount of 10 BTC.
Case 2: OCO orders
The current market price of BTC is 9,500(USDT). User B thinks that the price will form a resistance at 10,000 (USDT), and a further downtrend will occur if the price falls to 9,000(USDT), so he wants to lock the profit when the price reaches 10,000 (USDT), and stop the losses when the price drops to 9,000(USDT). Then the user B can sell his BTC with an OCO order. Setting steps: select order type [ Stop Order] — [OCO], and set the parameters to TP trigger price: 10,000(USDT), TP order price:10,000(USDT), SL trigger price:9,000(USDT), SL order price:9,000(USDT), Amount:10, then click [Sell BTC] to submit the order. T/P will be triggered when the BTC market price reaches 10,000(USDT), and appear in the order book as a limit order with an order price of 10,000(USDT) and an order amount of 10 BTC. The S/L settings will become invalid.
Note: If there is a huge price volatility, the stop order may not be filled after being triggered.
5. Trigger Order
Trigger Order is a set of instructions for placing a trade order at predefined parameters. When the latest market price reaches the trigger price, the system will automatically place order according to the pre-set price and amount.
Trigger Order will not freeze the corresponding assets in advance. When a Trigger Order is triggered, if the users account balance is lower than the order amount, the system will automatically place order according to the actual balance. If the users account balance is lower than the minimum trading amount, order cannot be placed.
(1) Trigger – Limit：If a user places a stop order with the limit price, when the stop order is triggered, the system will put the order to the market in the form of a limit order.
Case 1 (Buy with Trigger – Limit):
BTC is at 6,600 USDT and the user believes if the price falls to 6,500 USDT, it falls further. Thus, the user wants to buy BTC at 6,450 USDT when the price reaches 6,500 USDT. As shown in the figure below: select the order type “Trigger Order”, set the trigger price to 6,500 USDT, and the order price as 6,450 USDT with the amount of 10 BTC. When the price of BTC reaches 6,500 USDT or below, the condition of the trigger price is met, the order will be triggered, and the system will put the order to the market in the form of a limit order: the buy price is 6,450 USDT, and the buy amount is 10 BTC. Note: If the users available USDT balance is 1,000 USDT at this time, because 1,000 USDT is not enough to buy the order amount (10 BTC), the system will put the limit order to the market with the amount that 1,000 USDT can buy, if the users available balance is 0 USDT at this time, the order will not be placed.
Case 2 (Sell with Trigger – Limit):
BTC is at 6,600 USDT and the user believes the price will rise further if it can reach 6,800 USDT. Thus, the user wants to sell 10 BTC at 6,850 USDT when the price reaches 6,800 USDT. He can open a Trigger-Limit order, as shown in the figure below: when the price reaches 6,800 USDT or above, the order will be triggered, and the system will put the order to the market in the form of a limit order: the sell price is 6,850 USDT, and the sell amount is 10. If the user has only 8 BTC balance at this time, which is lower than the order amount (10 BTC), the system will automatically post an order of 8 BTC to the market. If the users balance is 0.0001 BTC which is smaller than the minimum trading amount 0.001 BTC, the order cannot be placed.
When using Trigger – Limit，to ensure that the order can be filled after being triggered, it is recommended to set the order price and trigger price as two prices close to each other.
(2) Trigger – Market：If a user places a stop order with the market price, when the trigger order is triggered, the system will put the order to the market in the form of a market order, enabling the order to be filled quickly.
Case 1（Buy with Trigger – Market）:
Assuming that the current BTC price is 6,900 USDT, the user wants to immediately buy BTC at the market price when the BTC price reaches 7,000 USDT, and the purchase amount is 14,000 USDT. As shown in the figure below: select the order type “Trigger Order”, set the trigger price to 7,000 USDT, and set the order price as the market price with the amount of 14,000 USDT. When the price of BTC reaches 7,000 USDT or reaches above 7,000 USDT, the condition of the trigger price is met, so the order is triggered, and the system will put the order to the market in the form of a market order: the purchase price is the market price, and the purchase amount is 14,000 USDT. Note: If the users available USDT balance is 10,000 USDT, the system will put the market order to the market with the purchase amount of 10,000 USDT as 10,000 USDT is less than the order amount of 14,000 USDT; if the users available balance is 0 USDT at this time, the order will not be placed.
Case 2（Sell with Trigger – Market）:
Assuming that the current BTC price is 6,900 USDT, the user wants to immediately sell BTC at the market price when the BTC price reaches 6,600 USDT, and the sell amount is 4 BTC. As shown in the figure below: Select the order type “Trigger Order”, set the trigger price to 6,600 USDT, and set the order price as the market price with the amount of 4 BTC. When the price of BTC reaches 6,600 USDT or reaches below 6,600 USDT, the condition of the trigger price is met, so the order is triggered, and the system will put the order to the market in the form of a market order: the sell price is the market price, and the sell amount is 4 BTC. Note: If the users available BTC balance is 2 BTC, the system will put the market order to the market with the sell amount of 2 BTC as 2 BTC is less than the order amount of 4 BTC; if the users available balance is 0 BTC at this time, the order will not be placed.
6. Trail Order
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. The callback rate ranges from 0.1% to 5%.
When a Trail order is triggered, if the users account balance is lower than the order amount, the system will automatically place order according to the actual balance. If the users account balance is lower than the minimum trading amount, order cannot be placed.
Case 1: The current price of BTC is19,000 USDT. The user believes the BTC market will go down but rebound on a certain price floor. If the user wants to execute a buy order at the market price when the rebound rate exceeds the pre-set “callback rate”, he can place a trail order as follows:
Assuming the market swings as follow:
BTC market price falls from 19,000 USDT and reaches the lowest point at 17,800 USDT, 17,800
In summary, trail order would only be sent in the following conditions:
A buy trail order will be placed when trigger price = lowest price, and rebound rate = callback rate.
A sell trail order will be placed when trigger price = callback rate.
7. Iceberg Order
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 1,000 BTC and does not want to increase the cost. He can place an iceberg order:
The system will automatically place an iceberg order. The amount of each order will be 80% – 100% of the single average amount. The order price will be the latest buy price* (1-price variance). The price variance ranges from 0.01% to 1%. 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 USDT, the iceberg order would be temporarily halted. After the price falls down to 20,000 USDT, the iceberg order would be recommenced.
8. 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.
Case 1: The user would like to buy 1000 BTC and place an order as TWAP.
Assuming the order book as below:
The user set the Price Variance as 1%, the Max Buy Limit Price is thus set as 18,726.93 USDT * (1 + 1.00%) = 18,914.19 USDT. System would then compute the current aggregated sell quantities posted in the order in which the price is lower than mentioned 8,914.19 USDT (which is 156+100+8+1+1=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.3 BTC (266*5%). The sliced limit buy order would be posted at USDT 18914.19 for 13.3 BTC. 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.
Notes: The price variance ranges from 0.01% to 1%, sweep ratio ranges from 0.01% to 100%, and time interval ranges from 5 to 120s.
What are Futures Contracts? How to Trade Them?
What are Futures Contracts?
Futures contract is an agreement to trade a particular commodity or financial instrument at a predetermined price at a specified time in the future.
In a futures contract, both counter-parties have their obligations and rights.
For example: Both counter-parties agree on 10 contracts of the delivery of soybean at the price $5000. Then the buyer has an obligation and right to buy 10 tons of soybean at the price $5000 on a specific date. At the same time, the seller has an obligation and right to sell 10 tons of soybean at the price $5000 on the same date. The contract that represents the obligations and rights of both counter-parties is a futures contract.
But most of the time, investors do not ask for physical delivery. Instead, before the contract expires, which is also prior to the delivery day, investors will close the position to profit from the the price difference.
How to Trade Futures Contracts?
1. According to the BTC price movement, user may choose to open long or short position of different delivery dates. Currently, OKEx supports weekly, bi-weekly, quarterly and bi-quarterly contracts.
2. Weekly contracts will be settled on the imminent Friday.
Bi-weekly contracts will be settled on next Friday.
Quarterly and bi-quarterly contracts will be settled on the last Friday of March, June, September and December.
3. User will have to enter the quantity and price to place an order. When creating an order, the margin required is the value of the filled contract in BTC equivalent divided by the leverage multiplier. Order can only be placed when the account equity balance is larger than or equal to the margin.
4. When creating a new futures account, user will have to choose the margin mode before trading. Different margin modes have different margin formulae and risk management systems. User may switch the margin mode when he/she does not have any opened position and order (margin of all contract = zero).
In cross-margin mode, the risks and profits of all holding positions will be shared together. Under this mode, the minimum margin ratio for opening a position is 100%.
In fixed-margin mode, the margins and profits of each position will be isolated. User can only open a position when the equity balance is larger than the initial margin. However, the initial margin for each contract might be different.
5. Once the order is filled, user will hold the respective positions (long or short). In cross-margin mode, the equity balance of futures account has to be larger than 10% of the holding positions for 10x leverage contracts; 20% for 20x leverage contracts. In fixed-margin mode, the UPL varies based on the latest market price, but the margin remains the same as initial margin. Once the margin ratio drops to or below 10% (10x) / 20% (20x), our system will take over and force-liquidate the position(s).
6. User may open more or close position(s) anytime to take profit / stop loss.
7. On the delivery day, all opened positions will be closed at market price(USD). The profit / loss will be transferred to the futures account under “Realized profit loss”.
8. After delivery, the societal losses will be covered proportionally by the accounts with realised profits from the same contract.
9. After settlement, all realized profit and loss will be transferred to the equity balance.
10. The existing contract ends. New contracts will be launched.
How Do I Manage My Open Orders? How to Open an Order?
How Do I Manage My Open Orders?
All open orders can be found under “Orders” page, and you can always cancel them before they are filled.
“Margin” only includes the margin needed for unfilled contract(s). While “Fee” only includes the fee charged for filled contract(s).
How to Open an Order?
a) Choose the expiration type: weekly, bi-weekly, quarterly or bi-quarterly
b) Enter the price (USD) and quantity (contracts). System will calculate the available number of contracts for opening and the margin ratio after opening position.
c) Choose the execution type (Open Long, Open Short, Close Long, Close Short) to submit the order.
Under cross-margin mode, 10x leverage, an order can only be opened when the margin ratio is larger than or equal to 90%; for 20x leverage, an order can only be opened when the margin ratio is larger than or equal to 80%. Under fixed-margin mode, an order can only be opened when the available margin is larger than the margin required.
Open Long: Buy to open the position, you would profit if the price rises.
Close Long: Sell to close the position. Taking the opposing position from the long position which is no longer desirable.
Open Short: Sell to open the position, you would profit if the price falls.
Close Short: Buy to close the position. Taking the opposing position from the short position which is no longer desirable.