An open API service indexing awesome lists of open source software.

https://github.com/tatianasharova/exchange_bot

CryptoInfo Bot
https://github.com/tatianasharova/exchange_bot

aiogram coinmarketcap-api crypto-bot cryptocurrency sqlalchemy telegram telegram-bot

Last synced: 7 months ago
JSON representation

CryptoInfo Bot

Awesome Lists containing this project

README

          

# **Crypto telegram bot**

[![Python](https://img.shields.io/badge/-Python-464646?style=flat-square&logo=Python)](https://www.python.org/)
[![Telegram](https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white)](https://core.telegram.org/)
![SQLite](https://a11ybadges.com/badge?logo=sqlite)

Телеграм бот с trashhold системой, который может предоставить информацию о стоимости выбранной криптовалюты в USD и оформить подписку на стоимость криптовалют.
Если пользователь удаляет и банит бота, его данные из бд стираются.

Стек: aiogram, SQLalchemy, telegram, SQLite, python, aiohttp

## Возможности бота:
1. Проверить курс любой криптовалюты:
Напишите боту короткое название криптовалюты, например BTC или ETH, и вам придет ответ с её стоимостью на данный момент.

2. Отправлять уведомления:
Установите минимальную(MIN) и/или максимальную(MAX) цену для криптовалюты.
Бот пришлёт сообщение, когда цена станет ниже или выше заданного вами значения.

Пример:
Хотите узнать, когда Bitcoin станет дешевле $90,000 или дороже $100,000? Установите эти значения, и бот сообщит вам, когда это произойдет.

## План по доработке:
1. Настроить CI.
2. Написать тесты.

### Локальный запуск бота:

**_Склонировать репозиторий к себе_**
```
git@github.com:TatianaSharova/exchange_bot.git
```
**_В директории проекта создать файл .env и заполнить своими данными:_**
```
TELEGRAM_BOT_TOKEN - токен вашего телеграм бота
COIN_MARKET_TOKEN - токен от API криптовалютной биржи CoinMarket
DB_LITE - 'sqlite+aiosqlite:///bot_base.db'
COINMARKETCAP_URL - 'https://pro-api.coinmarketcap.com/v2/cryptocurrency/quotes/latest'
```
**_Создать и активировать виртуальное окружение:_**

Для Linux/macOS:
```
python3 -m venv venv
```
```
source venv/bin/activate
```
Для Windows:
```
python -m venv venv
```
```
source venv/Scripts/activate
```
**_Установить зависимости из файла requirements.txt:_**
```
pip install -r requirements.txt
```
**_Запустить бот:_**
```
python bot.py
```

### Автор
[Татьяна Шарова](https://github.com/TatianaSharova)