A telegram bot to track whales activities on multiple blockchains.

Overview

Telegram Bot : Whale Watcher

A straightforward telegram bot written in python to track whales activity on multiple blockchains, using whale-alert API

Installation

1. Telegram Bot

First, you need to read the documentation on telegram bot, and create one : telegram bot docs. Once you own a bot and you have securely stored his token, you can go to the next step!

2. Whale-alert API key

Once you have your bot, you need to be able to connect the to whale-alert api using one of the token they provide. You will find all the required informations here to get your api key : whale-alert authentication.

There is different pricing plans, the bot is well adapted for the free one with the base config.

3. Running the bot!

To run the bot, you'll need to either have python 3.9.7 already installed, or install using a virtual environment (recommended) with pyenv & pyenv-virtualenv:

Go into the main folder, and simply run :

pyenv install 3.9.7
pyenv virtualenv 3.9.7 whale_alert_bot
pyenv activate whale_alert_bot

Go into the main folder, and simply run :

pip install -r requirements.txt

Finally, run the main script to run the bot, along with your tokens allocated to the right environment variables:

WHALE_ALERT_API_KEY=YOUR-TOKEN TELEGRAM_BOT_TOKEN=YOUR_TOKEN python src/bots/watcher_bot.py

Or add the environment variables to a .env file, within the same folder as the settings.py file (recommended). They will be imported automatically while running the bot.

4. The environment variables

As we have seen previously, the bot can be personalised thanks to a bunch of environment variables to set in your .env file:

TRANSACTION_ENDPOINT

The endpoint to fetch transactions, defaults to the current on in whale-alert.

STATUS_ENDPOINT

The endpoint to fetch connection to blockchain statuses, defaults to the current on in whale-alert.

API_KEY

Your whale-alert API key. This is required.

TELEGRAM_BOT_KEY

Your telegram bot key. This is required.

MIN_INTERVAL

Minimum interval (in seconds) for which we want to allow the transaction alerts. Defaults to 15.

HISTORY_TIME_LIMIT

Maximum interval (in seconds) for which we want to allow the transaction alerts. Defaults to 3600 (free whale alert plan).

TX_VALUE_USD_THRESHOLD

Minimum value of the transactions we want to track (USD). Defaults to 500 000.

CURRENCY_WATCHED

Currency to watch. Default to None (all of them)

TX_ROWS_LIMIT

Limit amount of transactions per alert. Defaults to 100.

Usage

1. Helpers

Once your bot is running, just like the normals bots, you can get more details about the commands with the following commands:

/help
/start

2. Status Checker

This command allows you to precisely check the status of the connection of whale-alert to the different blockchains it's monitoring.

/check_status <optional: data_keys>

The data_keys are arguments representing the specific data you want to fetch from the whale-alert blockchains status. Without this argument, all of them are returned.

Example :
/check_status status name

Will only return the status and the name of each connected blockchain, in the payload.

3. Transaction watcher

This is the main command of the bot : it's monitoring the transactions on the blockchains and gives you an alert of the statuses every dt seconds.

/watcher_timer seconds minutes <optional: data_keys>

Seconds and minutes are describing the interval between each alert sent by the bot. (Max. 1h with the free version of the whale-alert API).

data_keys, are, like previously, the data you want to filter out in the transactions payload of the response.

Example :
/watcher_timer 20 0 amount_usd symbol blockchain

Will give you an alert every 20 seconds of all the big transactions, only returning you the given arguments from the payload described here

4. Upcoming

More detailed commands and more commands in development :)

Owner
Laurenz Bougan
Backend Developer
Laurenz Bougan
Graviti-python-sdk - Graviti Data Platform Python SDK

Graviti Python SDK Graviti Python SDK is a python library to access Graviti Data

Graviti 13 Dec 15, 2022
Simple Discord bot for snekbox (sandboxed Python code execution), self-host or use a global instance

snakeboxed Simple Discord bot for snekbox (sandboxed Python code execution), self-host or use a global instance

0 Jun 25, 2022
Discord bot for polls and votes including STV. Supports hiding results and is written with Discord.py

VoteBot Discord voting bot capable of standard polls, as found in many other bots; anonymous polls, where votes are hidden and totals are only display

6 Nov 15, 2022
AWS SQS event redrive Lambda With Python

AWS SQS event redrive Lambda This repository contains one simple AWS Lambda function in Python to redrive AWS SQS events from source queue to destinat

1 Oct 19, 2021
Deepl - DeepL Free API For Python

DeepL DeepL Free API Notice Since I don't want to make my AuthKey public, if you

Vincent Young 4 Apr 11, 2022
My personal discord bot using discord.py

Rara-chan My personal discord bot that I use for stuff that I find interesting. Features Responds to certain messages ChatBot capabilities NHentai scr

Mikask 3 Nov 06, 2022
qualysclient - a python SDK for interacting with the Qualys API

qualysclient - a python SDK for interacting with the Qualys API

5 Oct 28, 2022
A lightweight Python wrapper for the IG Markets API

trading_ig A lightweight Python wrapper for the IG Markets API. Simplifies access to the IG REST and Streaming APIs with a live or demo account. What

IG Python 247 Dec 08, 2022
A twitter multi-tool for OSINT on twitter accounts.

TwitterCheckr A twitter multi-tool for OSINT on twitter accounts. Infomation TwitterCheckr also known as TCheckr is multi-tool for OSINT on twitter a

IRIS 16 Dec 23, 2022
Embed the Duktape JS interpreter in Python

Introduction Pyduktape is a python wrapper around Duktape, an embeddable Javascript interpreter. On top of the interpreter wrapper, pyduktape offers e

Stefano 78 Dec 15, 2022
all-in-one wrapper for NASA API's

=========== About bowshock is an all-in-one wrapper for NASA API's. Here is a list of currently supported API's : NASA Earth API NASA APOD (Astronomy

Emir Ozer 85 Nov 09, 2022
This bot will send you an email or notify you via telegram & discord if dolar/lira parity breaks a record.

Dolar Rekor Kırdı Mı? This bot will send you an email or notify you via Telegram & Discord if Dolar/Lira parity breaks a record. Mailgun can be used a

Yiğit Göktuğ Budanur 2 Oct 14, 2021
AnyAPI is a library that helps you to write any API wrapper with ease and in pythonic way.

AnyAPI AnyAPI is a library that helps you to write any API wrappers with ease and in pythonic way. Features Have better looking code using dynamic met

Fatih Kilic 129 Sep 20, 2022
This is a Telegram video compress bot repo. By Binary Tech💫

This is a Telegram Video Compress Bot. Prouduct By Binary Tech 💫 Features Compresse videos and generate screenshots too.You can set custom video name

silentz lk 2 Jan 06, 2022
quote is a python wrapper for the Goodreads Quote API, powered by gazpacho.

About quote is a python wrapper for the Goodreads Quote API, powered by gazpacho.

Max Humber 11 Nov 10, 2022
Battle.net and PlayStation title watcher that reports updates via Discord.

Renovate Renovate is a Battle.net and PlayStation title watcher that reports updates via Discord. Usage Open config_example.json and provide the confi

Ethan 1 Nov 23, 2022
Simple software that can send WhatsApp message to a single or multiple users (including unsaved number**)

wp-automation Info: this is a simple automation software that sends WhatsApp message to single or multiple users. Key feature: -Sends message to multi

3 Jan 31, 2022
A Recommendation System For Diabetes Detection And Treatment

Diabetes-detection-tg-bot A Recommendation System For Diabetes Detection And Treatment Данная система помогает определить наличие или отсутствие сахар

Alexander Kanonirov 1 Nov 22, 2021
Posts locally saved videos to the desired subreddit

redditvideoposter posts locally saved videos to the desired subreddit ================================================================= STEPS: pip ins

Kyrus 2 Dec 01, 2021
A Python module for communicating with the Twilio API and generating TwiML.

twilio-python The default branch name for this repository has been changed to main as of 07/27/2020. Documentation The documentation for the Twilio AP

Twilio 1.6k Jan 05, 2023