Author: Bala Swapnika Gopi
Date: May 17, 2025
Course: DATA605 — Spring 2025
This project builds an automated pipeline to:
- Fetch real-time Bitcoin price data using CoinGecko API
- Process data using Apache Ray for distributed computing
- Perform time-series analysis with moving averages
- Generate interactive visualizations
There are two primary entry points:
bitcoin_API.ipynb— Interactive API exploration and documentationbitcoin_example.ipynb— End-to-end pipeline demonstration
For detailed API documentation, refer to bitcoin_API.md.
bitcoin_utils.py # shared utilities for data processing and analysis
bitcoin_API.ipynb # interactive API walkthrough
bitcoin_API.md # API documentation
bitcoin_example.ipynb # example pipeline implementation
bitcoin_example.md # pipeline documentation
bitcoin_7d_plus_realtime.csv # historical Bitcoin price data
architecture.png # system architecture diagram
bitcoin_flowchart.png # process flow visualization
price_moving_avg_runtime.png # performance metrics visualization
Dockerfile # container specification
docker_build.sh # build container
docker_bash.sh # start interactive shell
docker_jupyter.sh # launch JupyterLab
docker_exec.sh # execute commands
docker_push.sh # push to registry
docker_clean.sh # cleanup
docker_name.sh # naming helper
requirements.txt # Python dependencies
install_jupyter_extensions.sh # Jupyter setup
install_project_packages.sh # Project dependencies
bashrc # Shell configuration
-
Clone the repo & navigate
git clone https://github.com/[username]/tutorials.git cd tutorials/DATA605/Spring2025/projects/TutorTask93_Spring2025_Real-Time_Bitcoin_Data_Processing_with_Apache_Ray -
Install Dependencies
- Python 3.8+
- Required packages:
- ray==2.10.0
- pandas
- requests
- plotly
- yfinance
- scikit-learn
- statsmodels
- jupyterlab
- matplotlib
- tensorflow
-
Docker Setup
- Install Docker (Desktop/Engine)
- Build the container:
chmod +x docker_*.sh ./docker_build.sh
-
Build the image
./docker_build.sh (If you use ubuntu add "sudo" when you run docker commands, for eg: "sudo ./docker_build.sh")
-
Start JupyterLab
./docker_jupyter.sh
- Access by copy pasting one of the links generated
-
Interactive Shell
./docker_bash.sh
Open bitcoin_API.ipynb in JupyterLab to:
- Learn about available API endpoints
- Test data fetching
- Explore real-time processing
Open bitcoin_example.ipynb to see:
- Complete data pipeline
- Analysis examples
- Visualization demos
-
Real-time Data Processing
- Live Bitcoin price fetching
- Distributed processing with Ray
- Automated data collection
-
Analysis Capabilities
- Moving averages calculation
- Basic statistics
- Time series analysis
-
Visualization
- Interactive price charts
- Moving average plots
- Performance metrics