Skip to content

ccxt module

Module with CCXTData.


CCXTData class

CCXTData(
    wrapper,
    data,
    single_key=True,
    classes=None,
    level_name=None,
    fetch_kwargs=None,
    returned_kwargs=None,
    last_index=None,
    delisted=None,
    tz_localize=None,
    tz_convert=None,
    missing_index=None,
    missing_columns=None,
    **kwargs
)

Data class for fetching using CCXT.

See https://github.com/ccxt/ccxt for API.

See CCXTData.fetch_symbol() for arguments.

Usage

  • Set up the API key globally (optional):
>>> from vectorbtpro import *

>>> vbt.CCXTData.set_exchange_settings(
...     exchange_name="binance",
...     populate_=True,
...     exchange_config=dict(
...         apiKey="YOUR_KEY",
...         secret="YOUR_SECRET"
...     )
... )
  • Pull data:
>>> data = vbt.CCXTData.pull(
...     "BTCUSDT",
...     exchange="binance",
...     start="2020-01-01",
...     end="2021-01-01",
...     timeframe="1 day"
... )

Superclasses

Inherited members


fetch_symbol class method

CCXTData.fetch_symbol(
    symbol,
    exchange=None,
    exchange_config=None,
    start=None,
    end=None,
    timeframe=None,
    tz=None,
    find_earliest_date=None,
    limit=None,
    delay=None,
    retries=None,
    fetch_params=None,
    show_progress=None,
    pbar_kwargs=None,
    silence_warnings=None,
    return_fetch_method=False
)

Override Data.fetch_symbol() to fetch a symbol from CCXT.

Args

symbol : str

Symbol.

Symbol can be in the EXCHANGE:SYMBOL format, in this case exchange argument will be ignored.

exchange : str or object

Exchange identifier or an exchange object.

See CCXTData.resolve_exchange().

exchange_config : dict

Exchange config.

See CCXTData.resolve_exchange().

start : any

Start datetime.

See to_tzaware_datetime().

end : any

End datetime.

See to_tzaware_datetime().

timeframe : str

Timeframe.

Allows human-readable strings such as "15 minutes".

tz : any

Timezone.

See to_timezone().

find_earliest_date : bool
Whether to find the earliest date using CCXTData.find_earliest_date().
limit : int
The maximum number of returned items.
delay : float

Time to sleep after each request (in seconds).

Note

Use only if enableRateLimit is not set.

retries : int
The number of retries on failure to fetch data.
fetch_params : dict
Exchange-specific keyword arguments passed to fetch_ohlcv.
show_progress : bool
Whether to show the progress bar.
pbar_kwargs : dict
Keyword arguments passed to ProgressBar.
silence_warnings : bool
Whether to silence all warnings.
return_fetch_method : bool
Required by CCXTData.find_earliest_date().

For defaults, see custom.ccxt in data. Global settings can be provided per exchange id using the exchanges dictionary.


find_earliest_date class method

CCXTData.find_earliest_date(
    symbol,
    for_internal_use=False,
    **kwargs
)

Find the earliest date using binary search.

See CCXTData.fetch_symbol() for arguments.


get_exchange_setting class method

CCXTData.get_exchange_setting(
    *args,
    exchange_name=None,
    **kwargs
)

CustomData.get_custom_setting() with sub_path=exchange_name.


get_exchange_settings class method

CCXTData.get_exchange_settings(
    *args,
    exchange_name=None,
    **kwargs
)

CustomData.get_custom_settings() with sub_path=exchange_name.


has_exchange_setting class method

CCXTData.has_exchange_setting(
    *args,
    exchange_name=None,
    **kwargs
)

CustomData.has_custom_setting() with sub_path=exchange_name.


has_exchange_settings class method

CCXTData.has_exchange_settings(
    *args,
    exchange_name=None,
    **kwargs
)

CustomData.has_custom_settings() with sub_path=exchange_name.


list_symbols class method

CCXTData.list_symbols(
    pattern=None,
    use_regex=False,
    sort=True,
    exchange=None,
    exchange_config=None
)

List all symbols.

Uses CustomData.key_match() to check each symbol against pattern.


resolve_exchange class method

CCXTData.resolve_exchange(
    exchange=None,
    **exchange_config
)

Resolve the exchange.

If provided, must be of the type ccxt.base.exchange.Exchange. Otherwise, will be created using exchange_config.


resolve_exchange_setting class method

CCXTData.resolve_exchange_setting(
    *args,
    exchange_name=None,
    **kwargs
)

CustomData.resolve_custom_setting() with sub_path=exchange_name.


set_exchange_settings class method

CCXTData.set_exchange_settings(
    *args,
    exchange_name=None,
    **kwargs
)

CustomData.set_custom_settings() with sub_path=exchange_name.