Inspiration

Cryptocurrency prices like Bitcoin change quickly, and predicting them is a really interesting challenge. We wanted to see if we could build a simple tool to forecast short-term price movements.

What it does

PulsePredict is a web dashboard designed to provide short-term price forecasts for Bitcoin (BTCUSD). It aims to give users a quick glance at potential market trends by:

Fetching near real-time data including current price (from CoinGecko), historical hourly prices and volume (from Gemini), and market sentiment via the Fear & Greed Index.

Using the Prophet time series forecasting model (developed by Meta/Facebook) to analyze this data. Generating predictions for Bitcoin's price 1 hour, 12 hours, and 24 hours into the future. Displaying the current market status, the price predictions (with % change), an estimated historical accuracy score, and a custom "Prediction Confidence" score on a clean web interface.

How we built it

Python using the Flask micro-framework to create the web server and handle requests.

Challenges we ran into

Getting data reliably from three different external APIs, each with its own format and potential rate limits, was challenging. We encountered and fixed several specific errors while implementing Prophet, such as correctly adding regressors, ensuring input data had no timezone, and using the right arguments for function.

Accomplishments that we're proud of

Implementing a machine learning model (Prophet) for time series forecasting.(It was our first time working with machine learning) Integrating multiple real-world APIs to get live/recent data.

What we learned

How to build a web application using Flask. How to work with Pandas for data manipulation.

What's next for pulsepredict

Allow users to select different cryptocurrencies or adjust prediction timeframes.

Built With

Share this project:

Updates