ColinTalksCrypto Bitcoin Bull Run Index (CBBI)
The official Python implementation of the ColinTalksCrypto Bitcoin Bull Run Index (CBBI).
The CBBI is a Bitcoin index that utilizes advanced, real-time analysis of 10 metrics to help us understand what stage of the Bitcoin bull run and bear market cycles we are in. The CBBI is time-independent and price-independent. It simply indicates whether it believes we are approaching the top/bottom of a Bitcoin cycle.
If you want to learn more, check out this video.
Visit our website
Bookmark it and receive latest CBBI updates.
Script Demo
Docker Usage
To use the CBBI script with Docker, run the following command:
$ docker run --rm --pull=always zaczero/cbbi --help
$ docker run --rm --pull=always zaczero/cbbi
Manual Usage
To use the CBBI script without Docker, follow these two simple steps:
1. Install nix
Before you jump in, make sure to install the ❄️ Nix package manager. It's your shortcut to seamless dependency management and reproducible environment setup. It will save you lots of time and spare you from unnecessary stress.
2. Run the application
nix-shell --run "python main.py --help"
or with using interactive shell:
nix-shell
python main.py --help
Metrics
The current CBBI version (November 2022) includes the following metrics:
Name | Link |
---|---|
Pi Cycle Top Indicator | Visit page |
RUPL/NUPL Chart | Visit page |
RHODL Ratio | Visit page |
Puell Multiple | Visit page |
2 Year Moving Average | Visit page |
Bitcoin Trolololo Trend Line | Visit page |
MVRV Z-Score | Visit page |
Reserve Risk | Visit page |
Woobull Top Cap vs CVDD | Visit page |
Environment Variables
This project supports .env
files, which provide a convenient way of setting environment variables.
To use this feature, create a file called .env
in the project's root directory,
and add environment variables in the following format:
VARIABLE_NAME=value
GLASSNODE_API_KEY
Defines an API key to be used during GlassNode fallback requests. If unset or empty, a cache fallback will be used instead (via CBBI.info).
Example usage
- GLASSNODE_API_KEY=REPLACE_ME
TELEGRAM_TOKEN, TELEGRAM_CHAT_ID
Define both variables to receive Telegram notifications about metric errors that occur during the execution.
Example usage
- TELEGRAM_TOKEN=REPLACE_ME
- TELEGRAM_CHAT_ID=123456
Footer
Contact me
https://monicz.dev/#get-in-touch
License
This project is licensed under the GNU Affero General Public License v3.0.
The complete license text can be accessed in the repository at LICENSE.