CoinAPI
Bybit Crypto Future Price Data
Introduction
The Bybit Crypto Future Price Data by CoinAPI is for Cryptocurrency Futures price and volume data points. The data covers 433 Cryptocurrency pairs, starts in August 2020, and is delivered on any frequency from tick to daily. This dataset is created by monitoring the trading activity on Bybit.
The Bybit Crypto Future Margin Rate Data dataset provides margin interest rate data to model margin costs.
For more information about the Bybit Crypto Future Price Data dataset, including CLI commands and pricing, see the dataset listing.
About the Provider
CoinAPI was founded by Artur Pietrzyk in 2016 with the goal of providing real-time and historical cryptocurrency market data, collected from hundreds of exchanges. CoinAPI provides access to Cryptocurrencies for traders, market makers, and developers building third-party applications.
Data Summary
The following table describes the dataset properties:
Property | Value |
---|---|
Start Date | October 2019 |
Asset Coverage | 433 Crypto Futures Pairs |
Data Density | Dense |
Resolution | Tick, Second, Minute, Hourly, & Daily |
Timezone | UTC |
Market Hours | Always Open |
Example Applications
The Bybit Crypto Future Price dataset enables you to accurately design strategies for Crypto Futures with term structure. Examples include the following strategies:
- Horizontal/Diagonal arbitrage with the underlying Cryptocurrencies
- Trade Contango/Backwardation predictions
- Hedge for illiquid Cryptocurrencies
For more example algorithms, see Examples.
Data Point Attributes
The Bybit Crypto Future Price dataset provides TradeBar
, QuoteBar
, and Tick
objects.
TradeBar Attributes
TradeBar
objects have the following attributes:
QuoteBar Attributes
QuoteBar
objects have the following attributes:
Tick Attributes
Tick
objects have the following attributes:
Requesting Data
To add Bybit Crypto Future Price data to your algorithm, call the add_crypto_future
method. Save a reference to the Crypto Future Symbol
so you can access the data later in your algorithm.
class CoinAPIDataAlgorithm(QCAlgorithm): def initialize(self) -> None: self.set_start_date(2020, 6, 1) self.set_end_date(2021, 6, 1) # Set Account Currency to Tether self.set_account_currency("USDT", 100000) self.set_brokerage_model(BrokerageName.BYBIT, AccountType.MARGIN) crypto_future = self.add_crypto_future("BTCUSDT", Resolution.MINUTE) self.btcusdt = crypto_future.symbol
For more information about creating Crypto Future subscriptions, see Requesting Data.
Accessing Data
To get the current Bybit Crypto Future Price data, index the bars
, quote_bars
, or ticks
properties of the current Slice
with the Crypto Future Symbol
. Slice
objects deliver unique events to your algorithm as they happen, but the Slice
may not contain data for your security at every time step. To avoid issues, check if the Slice
contains the data you want before you index it.
def on_data(self, slice: Slice) -> None: if self.btcusdt in slice.bars: trade_bar = slice.bars[self.btcusdt] self.log(f"{self.btcusdt} close at {slice.time}: {trade_bar.close}") if self.btcusdt in slice.quote_bars: quote_bar = slice.quote_bars[self.btcusdt] self.log(f"{self.btcusdt} bid at {slice.time}: {quote_bar.bid.close}") if self.btcusdt in slice.ticks: ticks = slice.ticks[self.btcusdt] for tick in ticks: self.log(f"{self.btcusdt} price at {slice.time}: {tick.price}")
You can also iterate through all of the data objects in the current Slice
.
def on_data(self, slice: Slice) -> None: for symbol, trade_bar in slice.bars.items(): self.log(f"{symbol} close at {slice.time}: {trade_bar.close}") for symbol, quote_bar in slice.quote_bars.items(): self.log(f"{symbol} bid at {slice.time}: {quote_bar.bid.close}") for symbol, ticks in slice.ticks.items(): for tick in ticks: self.log(f"{symbol} price at {slice.time}: {tick.price}")
For more information about accessing Crypto Future data, see Handling Data.
Historical Data
To get historical Bybit Crypto Future Price data, call the history
method with the Crypto Future Symbol
. If there is no data in the period you request, the history result is empty.
# DataFrame history_df = self.history(self.btcusdt, 100, Resolution.DAILY) # TradeBar objects history_trade_bars = self.history[TradeBar](self.btcusdt, 100, Resolution.MINUTE) # QuoteBar objects history_quote_bars = self.history[QuoteBar](self.btcusdt, 100, Resolution.MINUTE) # Tick objects history_ticks = self.history[Tick](self.btcusdt, timedelta(seconds=10), Resolution.TICK)
For more information about historical data, see History Requests.
Example Applications
The Bybit Crypto Future Price dataset enables you to accurately design strategies for Crypto Futures with term structure. Examples include the following strategies:
- Horizontal/Diagonal arbitrage with the underlying Cryptocurrencies
- Trade Contango/Backwardation predictions
- Hedge for illiquid Cryptocurrencies
For more example algorithms, see Examples.