Collect Historical Data

Collect historical data and store it locally as csv files. There are countless 3rd party APIs and tools for collecting market data. The CoinbaseCollector is an implementation of crypto market data collection using Coinbase’s API. The collected data is then saved locally in CSV files using _database_interface

Python source code: ../../examples/collect_historical_data.py

from boatwright.Data.Collection.Historical import CoinbaseCollector, AlpacaCollector
from boatwright.Data.CSVdatabase import CSVdatabase
from datetime import datetime

start = datetime(year=2023, month=11, day=1, hour=0, minute=0)
end = datetime(year=2024, month=2, day=1, hour=0, minute=0)

# Collect data from Coinbase
collector = CoinbaseCollector()
for granularity_unit in ["MINUTE", "HOUR", "DAY"]:
    data = collector.collect("BTC", start, end, granularity_unit, verbose=True) # retrieves data via Coinbase API 
    CSVdatabase(source="COINBASE").save("BTC", data, granularity_unit, verbose=True) # saves data as .csv files

# Collect data from Alpaca
collector = AlpacaCollector()
for granularity_unit in ["MINUTE", "HOUR", "DAY"]:
    data = collector.collect("AAPL", start, end, granularity_unit, verbose=True) # retrieves data via Alpaca API 
    CSVdatabase(source="ALPACA").save("AAPL", data, granularity_unit, verbose=True) # saves data as .csv files
../_images/data_structure.png