Arbitrage crypto trading bot — how to automate arb strategies on OKX

okx learn
OKX Learn
2022.07.20

OKX’s trading bot features a mode to simplify placing orders to take advantage of arbitrage opportunities between different trading instruments. This tutorial will focus on the arbitrage order trading bot, which is just one of our powerful automated trading strategies. To learn more about our other crypto trading bots, check this dedicated guide

Discrepancies between spot and futures contract prices can present profitable situations for traders that take simultaneous positions in both instruments. This is known as spread arbitrage. Similarly, longing an asset in the spot market and shorting it with a perpetual swap provides an opportunity to profit via funding rate payments. This is known as funding rate arbitrage. 

If you’ve never traded futures or perpetual swaps before, we recommend you read OKX’s tutorials about each product before attempting to use the arbitrage bot. This will help you understand the risks when trading futures or perpetual swaps.

How to set up OKX’s arbitrage trading bot

First, select Arbitrage order from the list of trading bot strategies. 

Then, tap the trading pairs at the top to select the arbitrage bot you want to use. 

To profit from perpetual swap funding rate payments, tap Fees. To arbitrage the spread between two instruments, tap Spreads

Funding rate arbitrage

Each funding rate — or fee — arbitrage portfolio has both a spot pair and an equivalent perpetual swap contract. When selecting a portfolio, you’ll see important information about each arbitrage portfolio here, including expected APYs and current funding rates. 

First, tap the highlighted menu and then either Crypto-margined to settle trades in your chosen cryptocurrency or USDT-margined to settle in USDT, and tap the portfolio you want to trade. 

On the order details screen, enter the details of each leg of the order, including the desired USD price and amount in the crypto asset traded in either crypto or USDT. 

The arbitrage bot will automatically select whether to buy or sell each instrument according to the portfolio selected. You can change which leg to buy and sell, but we do not recommend less-experienced traders attempt to deploy such a custom portfolio strategy. 

You can also select whether to use “Cross” or “Isolated” margin mode for your derivative trades, and the amount of leverage used for greater capital efficiency. Cross margin mode uses all account funds of the currency traded as a position’s margin. Meanwhile, the isolated margin mode uses only just funds designated as the margin position. 

Check the details and tap Both Legs to submit both orders simultaneously. 

If the funding rate is positive, you want to be shorting the perpetual contract, as long positions will pay you to keep it open. Conversely, if the funding rate is negative, you want to long the perpetual swap to earn funding rate payments from short positions. 

The strategy is low risk, as the two positions cancel each other out. However, if the funding rate goes against you for a prolonged period, you will pay the opposite side of the perpetual position and may lose money overall. Adding leverage to a position will also increase its risk profile. 

Spread arbitrage

Spread arbitrage can be performed between two futures contracts or a futures contract and spot position. In spread arbitrage, we take opposite positions in two markets, profiting from price differences.  

Let’s assume the BTC spot price is currently $50,000, and a futures contract is priced at $50,100. If we buy 1 BTC in the spot market and short sell the futures contract, we will profit with minimal risk no matter the price when the futures contract settles. 

For example, the spot price at settlement is $55,000. We can sell our spot position for a $5,000 profit — minus trading fees. Meanwhile, our futures position will lose money because we agreed to sell BTC for $50,100 at settlement. OKX sells the BTC on our behalf to honor the futures contract, losing us $4,900. So, we have $5,000 in profit from our spot position and a loss of $4,900 from the futures contract, resulting in a net position of just under $100 — minus the trading fees.  

If the price went the other way, we’d still profit. Let’s say the price dropped to $45,000. Our spot position would lose $5,000. However, our futures position would sell BTC at $50,100 above the spot price, locking in a $100 profit (minus trading fees). The only real risk with this strategy is that the price moves so much that your futures position is liquidated. You can read more about OKX’s liquidation rules here

From the arbitrage portfolio screen, tap Spreads. Then, choose either Crypto-margined or USDT-margined, and tap the second menu to choose the instruments that will comprise your arbitrage bot strategy. Tap Derivatives-spot or Derivatives-derivatives according to your preference. 

Then, choose your arbitrage strategy portfolio. You’ll see various details about the expected profitability of each arbitrage portfolio to help inform your decision.  

Next, fill in your order details for both legs of the order. The portfolio chosen will determine the order type for each leg — either Buy or Sell. Again, you can change the order types for each leg, but we do not recommend that less-experienced traders attempt this. 

You can choose between “Cross” and “Isolated” margin mode for your derivatives positions. Cross margin mode uses all account funds of the currency traded as a position’s margin. Meanwhile, the isolated margin mode uses only funds designated as the margin position.

You can also add leverage to your order using the multiplier option. Although leverage can increase your potential profits versus your starting capital, it also increases your liquidation risk. 

For each leg of the trade, enter the price for your limit order and the amount in the crypto asset or USDT. Alternatively, you can enter your desired spread size using the “Spread rate” option between the two legs. 

You can further customize your trades using the order types Queuing, Surpassed, BBO and Market. Tap the Set price menu to tweak the “Queuing” and “Surpassed” parameters. These two order types will create a range in which your order will be filled — useful to ensure both legs of the arbitrage are filled at favorable prices. 

When you are happy with your orders, tap Both legs to place them simultaneously. You can also use the checkbox to immediately place a market order for the second leg as soon as the initial order fills, guaranteeing that both legs are placed. However, this may reduce the overall spread size, impacting the strategy’s profitability.    

You can check on and close arbitrage trading bot positions in the trade history section at the bottom of the trading screen. Tap Bot, and then Arbitrage order to view current profits and close open positions. 

Deploy powerful automated crypto arbitrage strategies with ease on OKX

OKX’s trading bots simplify deploying even complex strategies with just a few taps or clicks. The arbitrage order trading bot makes it incredibly easy to profit from price discrepancies between instruments and funding rate payments. Give it a try today and add spread or funding rate arbitrage to your trading strategy arsenal. Game on!