Inspiration

Our team share a common interest in cryptocurrency investment and was inspired to make financial knowledge more accessible and understandable to the masses.

What it does

CryptoBot is a telegram bot that scrapes the live cryptocurrency data from Yahoo Finance and produces a bar graph visualising the top ten currencies with the highest positive percentage change in growth value. Then, the user can select one of the currencies to produce a line graph that forecasts the changes in value over the next few days with exponential smoothing analysis techniques and finance API.

How we built it

We successfully developed a Telegram bot dedicated to cryptocurrency analysis and forecasting by seamlessly integrating various tools and technologies. Live cryptocurrency price data is obtained from Yahoo Finance using BeautifulSoup (a web scraping technique) to identify top-performing cryptocurrencies with significant positive percentage price growth. Pandas is employed to convert and structure the pricing data into a data frame for efficient data manipulation and analysis. yfinance API was seamlessly integrated to gather historical pricing data for each cryptocurrency. We applied the exponential smoothing technique on this historical data gathered for forecasting of cryptocurrency prices.

Challenges we ran into

We faced numerous roadblocks in our creation process, such as finding a suitable data source that allows us to conduct comparison and time-based analysis. As it was our first time creating a telegram bot, certain functions such as the addition of buttons and waiting for the user response were also unfamiliar to us. We were also stumped on the method or model to use to forecast our data. However, with the help of research, we managed to create a functioning bot that achieved our goals.

Accomplishments that we're proud of

We managed to create a bot that can send visual plots such as bar charts and line graphs to depict the trends and rankings related to live cryptocurrency data available on Yahoo Finance. In a digital age where cryptocurrency trading is becoming more prevalent, we are proud to be able to convert readily available finance data into something meaningful that people can glean insights from.

What we learned

We learned how to customise the interface of a telegram bot, from the creation of buttons to the conversion of plots to images to be sent to the user. With regards to the data side of things, we learned to conduct data scraping with BeautifulSoup, data cleaning with pandas and data visualisation with seaborn. We also researched and learned about forecasting models such as the exponential smoothing model from the statsmodels package to predict data trends.

What's next for CryptoBot

We hope to explore more forecasting and machine learning techniques to predict the cryptocurrency value trends with enhanced accuracy. Develop and integrate advanced risk management features to minimize potential losses.

Built With

  • beautifulsoup-package
  • pandas
  • pytelegrambotapi
  • python
  • statsmodels-package
  • yfinance-api
Share this project:

Updates