Importing your trades from Bybit

On Trader and Pro, connect Bybit with a read-only API key and your perpetual, futures and spot trades appear in your Luxabit journal by themselves. How to set it up, what is imported and how stop-losses are read.

On Trader and Pro you can connect your Bybit account. Your trades then appear in your journal by themselves, marked Bybit, so you spend your time on reviewing them instead of typing them over.

Trader includes 1 exchange connection and Pro up to 3, so on Pro you can connect Bybit next to OKX or Binance. If you have more connections than your plan includes (for example after switching from Pro to Trader), the oldest keep syncing and the others are paused until you disconnect one or upgrade.

Luxabit only reads. It cannot place orders, close positions or move money, and it refuses any API key that could.

Setting it up

  1. Log in on Bybit and go to your profile → API → Create New Key, and choose System-generated API Keys.
  2. Choose API Transaction, give the key a name and set the permissions to Read-Only. Don't give it Read-Write or withdrawal rights: Luxabit checks the key with Bybit and refuses keys that have them.
  3. Leave the IP restriction off: Luxabit's servers don't have a fixed address. Bybit may then let the key expire after a few months. Your account page shows it when that happens, and you connect a new key there.
  4. In Luxabit, open your Account page, choose Bybit under Connect an exchange, choose the site you log in on (bybit.com or Bybit EU: a key only works on the site where you created it) and paste the API key and secret.

Optionally, choose the date from which your trades are imported. Luxabit checks the key and imports your trades straight away.

What is imported

  • Perpetuals and futures (USDT and USDC contracts, and inverse contracts): Bybit reports fills rather than positions, so Luxabit rebuilds each position from them. A fill from flat opens a trade, fills the other way close it, and the trade ends once nothing is left. The entry and exit are the average prices of those fills. Positions still open are imported as open trades and closed by a later sync.
  • Spot: a buy when you hold none of that coin opens a trade; selling closes it once less than 1% of what you bought is left. Coins you bought before the imported history are left out.
  • History: trades opened from the date you chose, at most 90 days back. Fills that close a position opened before that are left out.
  • Size and fees: the size is in coins, so profit and loss is in the quote currency (USDT or USDC). Fees are the trading fees plus the net funding paid while the position was open. Inverse contracts are sized in USD and settle in the coin itself, so they show no size and no profit and loss.

Options and margin trading on spot are not imported.

Orders that haven't filled yet

A limit order on Bybit that waits to open a trade shows in your journal as a planned trade, with the order price as its entry and the stop-loss and take-profit you set on the order. Orders that only reduce or close a position, and spot sell orders, are left out. A planned trade from Bybit doesn't expire while its order waits. At each sync:

  • Filled: the planned trade becomes the open trade, with the price and size it filled at. What you added to it (notes, tags, strategy, your answers to your own rules) stays. If the order added to a trade that was already open, the planned trade goes and that trade carries on.
  • Cancelled without a fill: the planned trade is marked skipped.
  • Changed on Bybit: a new price or size is taken over.

Stop-loss and take-profit

Luxabit reads your stop-loss and take-profit from Bybit: the TP/SL orders you placed while the trade was open, the TP/SL you set on the entry order, and the TP/SL on a position that is still open. The first stop counts, so your realised R is measured against the risk the trade started with.

A trade without a stop-loss shows No stop in the journal, has no R and fails "stop-loss set" in your Discipline Score. Had a mental stop? Open the trade and fill it in; a later sync leaves it as you set it. A stop you moved into profit shows Stop moved, because Bybit only keeps the last price of a stop and the original level is then unknown.

Keeping it up to date

The journal syncs by itself every day and whenever you open it, and you can press Sync now at any time. While a trade plan you made in the chat waits for its trade, the chat also checks every few minutes; a new trade that carries out that plan is linked to it. Each sync adds new trades and closes open ones, keeps your waiting orders up to date, updates what comes from Bybit (prices, size, fees and times) and leaves what you added alone: your stop-loss, notes, tags, strategy and answers to your own rules. A trade you delete from the journal is not imported again.

Your key and your data

Your API key and secret are stored encrypted and are only used to read your trades and, for the position size calculator, the balance of your trading account, which is not stored. Disconnect on your account page deletes them; trades already imported stay in your journal. Delete the key on Bybit as well. If your plan changes to Starter, syncing stops and your imported trades stay. See Account and data.

← All articles

Put it into practice

Write your trading plan in Luxabit and check your next idea against it before you enter. Free to start, no credit card.

Start for free