Inspiration

I've built BitBot as a way for users to easily set new Bitcoin price alerts for themselves.

What it does

BitBot lets you set price alerts, and It can be later extended to handle other alerts such as volume, # of transactions, fees, etc., and to support other cryptocurrencies. Its current implementation uses Slack both as a way to interact with the bot and to be alerted (via a slackbot message).

How I built it

I built 2 lambda functions in python, the first implements the bot interaction process, validation, and confirmation (adding a new alert to dynamodb). the 2nd lambda functions can be periodically called by a cloudwatch event to check the current Bitcoin price (High and Low for the last day). When Interacting through Slack, the bot will save the Slack user ID, so it can later notify the user of said requested Bitcoin price.

Challenges I ran into

The python dynamodb library had difficulties with processing decimal numbers, I therefore converted the price to an integer with a precision of 2 digits after the dot.

Accomplishments that I'm proud of

Making a complete serverless solution for a functioning bot that can actually be used by myself and my colleagues, in a very short time.

What I learned

How to easily build a bot using AWS Lex.

What's next for BitBot - Bitcoin price alerts

Monitoring more cryptocurrencies, with different types of alerts, and possibly interacting with an exchange API to enable sending trade orders automatically.

Share this project:

Updates