Skip to main content

An open source Python library for scraping Historical Cryptocurrency data from CoinBase Pro API. (Maintained fork of Historic-Crypto)

Project description

This is a maintained fork of Historic-Crypto by David Woroniuk (https://github.com/David-Woroniuk/Historic_Crypto).

Historic Crypto

An open source Python library for the collection of Historical Cryptocurrency data.

This library interacts with the CoinBase Pro API to:

  • List the Cyptocurrency Pairs available through the API.
  • Return Live Data from the API
  • Return historical data from the API in a Pandas DataFrame.

The HistoricalData class returns all attributes (Open, Close, High, Low, Volume) of the selected Cryptocurrency, whilst the Cryptocurrencies class returns all Cryptocurrencies available through the API, with a 'coin_search' parameter if the user wishes to check if that Coin ID is available.

Installation

Install:

pip install Historic-Crypto-Modern

Backward compatible imports supported:

from Historic_Crypto import HistoricalData
from Historic_Crypto import Cryptocurrencies
from Historic_Crypto import LiveCryptoData

Usage

Cryptocurrencies

If you are unsure of the correct 'ticker' to search for:

from Historic_Crypto import Cryptocurrencies

Cryptocurrencies().find_crypto_pairs()

Returns a Pandas DataFrame containing the columns "id" and "display_name" and "status", with the "id" column indicating the search term which should be queried by the other classes within the package.

Additionally, a number of optional arguments can be added:

Argument Description
coin_search search for a specific cryptocurrency string (str) Default = None.
extended_output displays either a condensed or extended output (Bool) Default = False.
verbose prints status messages (Bool) Default = True.
from Historic_Crypto import Cryptocurrencies

data = Cryptocurrencies(coin_search = 'XLM', extended_output=False).find_crypto_pairs()

HistoricalData

Once you know the ticker which you would like to search for, you can search for it using the HistoricalData class.

from Historic_Crypto import HistoricalData

new = HistoricalData('ETH-USD', 300, '2025-06-01-00-00', '2025-06-02-00-00').retrieve_data()
new = HistoricalData('ETH-USD', '1d', '2025-06-01-00-00', '2025-06-30-00-00').retrieve_data()

The arguments for the class are listed below:

Argument Description
ticker supply the ticker information which you want to return (str).
granularity please supply a granularity in seconds (60, 300, 900, 3600, 21600, 86400) (int) or ('1m', '5m', '15m', '1h', '6h', '1d') (str).
start_date a string in the format YYYY-MM-DD-HH-MM (str).
end_date a string in the format YYYY-MM-DD-HH-MM (str). Optional, Default: Now
verbose printing during extraction. Default: True

LiveCryptoData

If you want to see the current Bid/Ask of a specific Cryptocurrency:

from Historic_Crypto import LiveCryptoData

new =  LiveCryptoData('ATOM-USD').return_data()

Returns a Pandas DataFrame 'data', which contains the trade_id, price, size, bid, ask and volume of the previous transaction, indexed by timestamp.

The arguments for the class are listed below:

Argument Description
ticker information for which the user would like to return (str).
verbose print progress during extraction (bool). Default:True

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

historic_crypto_modern-1.0.1.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

historic_crypto_modern-1.0.1-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file historic_crypto_modern-1.0.1.tar.gz.

File metadata

  • Download URL: historic_crypto_modern-1.0.1.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for historic_crypto_modern-1.0.1.tar.gz
Algorithm Hash digest
SHA256 3886b0274a127539c325fffb0d3e602d35d832b90391da86db60846004b01f6e
MD5 80d15236132c03e61421ed1905c9950d
BLAKE2b-256 9a95d9333a63ea96d68a2576d698d0cf2512f84732596f32db7224dde91ff219

See more details on using hashes here.

File details

Details for the file historic_crypto_modern-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for historic_crypto_modern-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6785fd3e4ffa405fce40e1b512b7918d421879ceda2ff097ef8b43b66f9d65bf
MD5 53d8828f900b86622d0889c4b79d7997
BLAKE2b-256 5cb4b12279f733f9ff2e7df12cb110fefe9255400386bd99dae0e3d53dbf560c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page