XTCryptoSignals


NameXTCryptoSignals JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://xtcryptosignals.com
SummaryPlatform that collects cryptocurrencies price data, fires alerts based on price sentiment and many other features.
upload_time2024-01-16 16:33:36
maintainerPaulo Antunes
docs_urlNone
authorPaulo Antunes
requires_python>=3.7
licenseGPL
keywords xtcryptosignals api cryptocurrency bitcoin ethereum signals trading crypto signals exchange crypto
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # XTCryptoSignals
[![Downloads](https://pepy.tech/badge/xtcryptosignals)](https://pepy.tech/project/xtcryptosignals) [![Downloads](https://pepy.tech/badge/xtcryptosignals/month)](https://pepy.tech/project/xtcryptosignals) [![Downloads](https://pepy.tech/badge/xtcryptosignals/week)](https://pepy.tech/project/xtcryptosignals)

**XTCryptoSignals** is a Python library that includes the following 3 services:

* #### Tasks

    * **Data collection** of crypto-currencies pairs such as BTC/USDT, ETH/BTC or 
    any other pair that is supported by the Exchange API.
    * A **Signals** service based on setup rules to send real-time alerts about 
    price, price change, trading volume or market sentiment sending Web Push 
    Notifications to the client browser (Firefox, Chrome) or/and to a [Telegram Channel](https://t.me/xtcryptosignals).
    * **Market Depth**, **Content** and **Data** fetching Tasks.

(Web Push Notifications are implemented with [ServiceWorker](https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/showNotification) 
that is compatible with the most known web browsers.)

* #### RESTFul Server API
    * Restful interface that exposes API entry points to get desired crypto-currencies data.
    * SocketIO Server to broadcast real-time data to clients.

* #### Website

## Roadmap

* [x] Add crypto-currencies exchanges (Dec 2018)
* [x] Implement RESTFul API and socket.io to access price data in real time (Jan 2019)
* [x] Build website (Jan 2019)
* [x] Add Gunicorn to make it production ready (March 2019)
* [x] Building Unit, functional and end-to-end testing for existing and future features (Jan 2019)
* [x] User account creation, Session and Assets Management (Oct 2019)
* [x] Implement web push notification signals for price range, price change, 
trading volume, price sentiment, etc (July 2019)
* [x] Implement Telegram bot to broadcast notifications (Feb 2020)
* [x] Create nice features and make platform improvements on-the-fly (From 2020 onwards)
* [ ] Create more Test cases and setup a more meaningful CI/CD Github Actions

## Getting Started

### Pre-requisites

* [Python >= 3.7](https://www.python.org/downloads)
* [Redis](https://redis.io/download)
* [MongoDB](https://www.mongodb.com)


## Installation

### Install from source
Clone project repository:
```bash
git clone https://github.com/pantunes/xtcryptosignals.git
cd xtcryptosignals
```

Setup Python virtual environment:
```bash
virtualenv venv -p python3
source venv/bin/activate
```

Install package in develop mode:
```bash
pip install -e .
```
(Dependencies will be installed automatically from [requirements.txt](requirements.txt))

### Path to the settings file
Before running `xt-server`, `xt-client`, `xt-tasks` and tests the env var `SETTINGS_APP`
should be set to the path of its settings file.  
This can be achieved inline `SETTINGS_APP=<path to configuration>` followed by the app cli or 
executing `export SETTINGS_APP=<path to configuration>` before running any of the command line
.  

Example of `xt-client` settings file [client.dev.env](xtcryptosignals/config/client.dev.env):
```bash
SECRET_KEY='bRdzq6ZMQ;HGB3JWVxs&WQ4>6r{'
GA_TRACKING_ID='UA-12341343-2'
```

Example of `xt-server` or `xt-tasks` settings file [server.dev.env](xtcryptosignals/config/server.dev.env):
```bash
SECRET_KEY='MfYfEeom6)EyhcKcFh@+WGx8hvhP/,K67hA6'
CORS_ALLOWED_ORIGINS=('https://mydomain.com',)
MONGODB_HOST='localhost'
MONGODB_PORT=27017
MONGODB_NAME='MyDatabaseName'
```

Run tests:
```bash
SETTINGS_APP=server.dev.env python setup.py test
# or
SETTINGS_APP=server.dev.env pytest
```

### Install from PyPi
Create folder project:
```bash
mkdir xtcryptosignals
cd xtcryptosignals
```

Setup Python virtual environment:
```bash
virtualenv venv -p python3
source venv/bin/activate
```

Install package:
```bash
pip install xtcryptosignals
```

#### Run database migrations
It will populate some collections with data:
```bash
FLASK_ENV=development SETTINGS_APP=server.dev.env mongodb-migrate --url mongodb://127.0.0.1:27017/XTC-Dev --migrations xtcryptosignals/server/migrations/
```

### Install from docker-compose (the simplest way):
Clone project repository:
```bash
git clone https://github.com/pantunes/xtcryptosignals.git
cd xtcryptosignals
```
Create multi-container Docker Applications:
```bash
docker-compose build
```
Nothing more is necessary...

## Tasks
### Start service

#### Development:

```bash
SETTINGS_APP=server.dev.env xt-tasks

# to test 1 tick
SETTINGS_APP=server.dev.env xt-tasks --test

```

#### Production:

```bash
SETTINGS_APP=server.prod.env xt-tasks --log-ticker-minimal
```

To get a list of supported exchanges:
```bash
SETTINGS_APP=server.prod.env xt-tasks --list-config exchanges
```
```bash
binance
binance_dex
uphold
okex
idex
switcheo
hotbit
bibox
okcoin
bithumb
coinbene
dcoin
bitmax
bilaxy
bitstamp
kucoin
coinbase_pro
```
(Drop [me](mailto:pjmlantunes@gmail.com) an e-mail if you want support for a new 
exchange or please contribute to this project creating a pull request)

Command line help:
```bash
xt-tasks --help
```
```bash
Usage: xt-tasks [OPTIONS]

  Use this tool to start all or part of the tasks.

Options:
  --test                          Process 1 iteration for all configured coins
                                  and/or tokens. (Useful for testing purposes)

  --list-config [exchanges|currencies]
                                  List 'exchanges' or 'currencies' (coins or
                                  tokens) per exchange that are currently
                                  supported.

  -t, --task [cfgi|project|tether|ticker|notifications|order_book]
                                  Task to be executed. If this parameter is
                                  omitted all tasks will be started

  -q, --queue TEXT                Queue name to execute indicated tasks.
  --disable-ticker-messaging      Disable ticker message broadcasting.
  --log-ticker-minimal            Only log ticker errors and important
                                  warnings in stdout.

  --version                       Show version.
  -h, --help                      Show this message and exit.
```

### Setup

There is already an initial setup with some crypto-currencies (coins and tokens) 
that can be added or/and removed in [settings_exchanges.py](xtcryptosignals/settings_exchanges.py).

```python
BIBOX: {
    'pairs': [
        ('ONT', 'USDT'),
        ('ONT', 'BTC'),
        ('ONT', 'ETH'),
        ('NEO', 'USDT'),
        ('NEO', 'BTC'),
        ('NEO', 'ETH'),
        ('LTC', 'USDT'),
        ('LTC', 'BTC'),
        ('CARD', 'ETH'),
    ]
}

UPHOLD: {
    'pairs': [
        ('BTC', 'USD'),
        ('ETH', 'USD'),
        ('LTC', 'USD'),
        ('XRP', 'USD'),
    ]
}
```

Initial setup to create dynamic MongoDB collections for data segmentation categorized 
by Exchanges pooling frequency in [settings.py](xtcryptosignals/settings.py).
```python
HISTORY_FREQUENCY = (
    '10s', '30s', '1m', '10m', '30m', '1h', '2h', '3h', '4h', '12h', '1d', '4d', 
    '1w', '2w', '4w', '12w', '24w', '1y',
)
```

### Results
The Ticker service is highly performant as can take advantage of multi-processing multi-core CPU.  

### RESTFul Server API
### Start service

#### Development:

```bash
FLASK_ENV=development SETTINGS_APP=client.dev.env xt-server
```

Swagger API endpoints accessible at `http://127.0.0.1:5000/apidocs`:    

![screen-shot](xtcryptosignals/client/static/imgs/readme/swagger.png)

#### Production:

```bash
FLASK_ENV=production SETTINGS_APP=client.prod.env xt-server
```


## Website
### Start service

#### Development:

```bash
FLASK_ENV=development SETTINGS_APP=client.dev.env xt-client
```

#### Production:
```bash
FLASK_ENV=production SETTINGS_APP=client.prod.env xt-client --num-workers=N
```
N corresponds to the number of workers to be spinned up.  

## Run all services at once

#### Embed command line:
```bash
xt-all --help
```

```bash
Usage: xt-all [OPTIONS] [copy-config-files|start|stop|restart]

Options:
  -h, --help  Show this message and exit.
```
For Production enviroment `xt-all copy-config-files` should be executed on first place 
to copy default config files to the folder `/config`.  
The configuration should be reviewed and changed, before running `xt-all start`
to start all 3 services: `xt-server`, `xt-client` and `xt-tasks`.  

#### Docker Compose (the simplest way):
With the following command all services will be started and running:

```bash
docker-compose up
```
Access the URL `http://127.0.0.1:5000` to load the Platform client UI, nothing more is necessary...

## Screenshots

Open the browser with the URL `http://127.0.0.1:8000`:

**Overview** | **Pairs**
:-------------------------:|:-------------------------:
![screen-shot](xtcryptosignals/client/static/imgs/readme/1.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/2.png)
**Coins/Tokens** | **Dark Theme** 
![screen-shot](xtcryptosignals/client/static/imgs/readme/3.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/8.png)
**Login** | **Portfolio**
![screen-shot](xtcryptosignals/client/static/imgs/readme/4.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/5.png) 
**Alerts Setup** | **Web Push Notification** | 
![screen-shot](xtcryptosignals/client/static/imgs/readme/6.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/7.png)
**Twitter Chart** | **Crypto Fear & Greed Index Chart** | 
![screen-shot](xtcryptosignals/client/static/imgs/readme/12.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/9.png)
**Tether Chart** | **Coin / Token Chart** | 
![screen-shot](xtcryptosignals/client/static/imgs/readme/10.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/11.png)
**Market Depth** | **Telegram Notifications** | 
![screen-shot](xtcryptosignals/client/static/imgs/readme/13.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/14.png)
**Spotlight Search** | | 
![screen-shot](xtcryptosignals/client/static/imgs/readme/15.png) |

## Example of added Feature
Pull Request to show how easy is to [Add Kyber Network, Aave and Ren Projects/Tokens](https://github.com/pantunes/xtcryptosignals/commit/95e1ec9cda86e5b457343163068ad164f8df81aa).

## Disclaimer

This project is work in progress and when it comes to trading use it at your own risk.

## License

This project is licensed under the [GNU](https://www.gnu.org/licenses/gpl-3.0.en.html) License.

## Contact

Through the website [xtcryptosignals.com](https://xtcryptosignals.com/ticker/tokens/10s#contact).  

## Acknowledgments

![Jetbrains](xtcryptosignals/client/static/imgs/readme/jetbrains.png)  
Thanks to [Jetbrains](https://www.jetbrains.com/?from=xtcryptosignals) in order to 
support us with an Open Source license.

## Donation

In case this project helped you in some way I'm accepting a small donation to keep this open-source project on-🔥 :
- BTC: bc1qheg9zjhezsvnzywvnj9tunsj39llslqp33ekrs
- ETH: 0x2e9B4409d40d2605361Ea1278B1514C74c66Eac3


            

Raw data

            {
    "_id": null,
    "home_page": "https://xtcryptosignals.com",
    "name": "XTCryptoSignals",
    "maintainer": "Paulo Antunes",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "pjmlantunes@gmail.com",
    "keywords": "xtcryptosignals,api,cryptocurrency,bitcoin,ethereum,signals,trading,crypto signals,exchange,crypto",
    "author": "Paulo Antunes",
    "author_email": "pjmlantunes@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/c0/f4/9dd476f60b040a137232e403c776c2ba4f1e546dc7aabd1fc2713257e916/XTCryptoSignals-1.0.1.tar.gz",
    "platform": null,
    "description": "# XTCryptoSignals\n[![Downloads](https://pepy.tech/badge/xtcryptosignals)](https://pepy.tech/project/xtcryptosignals) [![Downloads](https://pepy.tech/badge/xtcryptosignals/month)](https://pepy.tech/project/xtcryptosignals) [![Downloads](https://pepy.tech/badge/xtcryptosignals/week)](https://pepy.tech/project/xtcryptosignals)\n\n**XTCryptoSignals** is a Python library that includes the following 3 services:\n\n* #### Tasks\n\n    * **Data collection** of crypto-currencies pairs such as BTC/USDT, ETH/BTC or \n    any other pair that is supported by the Exchange API.\n    * A **Signals** service based on setup rules to send real-time alerts about \n    price, price change, trading volume or market sentiment sending Web Push \n    Notifications to the client browser (Firefox, Chrome) or/and to a [Telegram Channel](https://t.me/xtcryptosignals).\n    * **Market Depth**, **Content** and **Data** fetching Tasks.\n\n(Web Push Notifications are implemented with [ServiceWorker](https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/showNotification) \nthat is compatible with the most known web browsers.)\n\n* #### RESTFul Server API\n    * Restful interface that exposes API entry points to get desired crypto-currencies data.\n    * SocketIO Server to broadcast real-time data to clients.\n\n* #### Website\n\n## Roadmap\n\n* [x] Add crypto-currencies exchanges (Dec 2018)\n* [x] Implement RESTFul API and socket.io to access price data in real time (Jan 2019)\n* [x] Build website (Jan 2019)\n* [x] Add Gunicorn to make it production ready (March 2019)\n* [x] Building Unit, functional and end-to-end testing for existing and future features (Jan 2019)\n* [x] User account creation, Session and Assets Management (Oct 2019)\n* [x] Implement web push notification signals for price range, price change, \ntrading volume, price sentiment, etc (July 2019)\n* [x] Implement Telegram bot to broadcast notifications (Feb 2020)\n* [x] Create nice features and make platform improvements on-the-fly (From 2020 onwards)\n* [ ] Create more Test cases and setup a more meaningful CI/CD Github Actions\n\n## Getting Started\n\n### Pre-requisites\n\n* [Python >= 3.7](https://www.python.org/downloads)\n* [Redis](https://redis.io/download)\n* [MongoDB](https://www.mongodb.com)\n\n\n## Installation\n\n### Install from source\nClone project repository:\n```bash\ngit clone https://github.com/pantunes/xtcryptosignals.git\ncd xtcryptosignals\n```\n\nSetup Python virtual environment:\n```bash\nvirtualenv venv -p python3\nsource venv/bin/activate\n```\n\nInstall package in develop mode:\n```bash\npip install -e .\n```\n(Dependencies will be installed automatically from [requirements.txt](requirements.txt))\n\n### Path to the settings file\nBefore running `xt-server`, `xt-client`, `xt-tasks` and tests the env var `SETTINGS_APP`\nshould be set to the path of its settings file.  \nThis can be achieved inline `SETTINGS_APP=<path to configuration>` followed by the app cli or \nexecuting `export SETTINGS_APP=<path to configuration>` before running any of the command line\n.  \n\nExample of `xt-client` settings file [client.dev.env](xtcryptosignals/config/client.dev.env):\n```bash\nSECRET_KEY='bRdzq6ZMQ;HGB3JWVxs&WQ4>6r{'\nGA_TRACKING_ID='UA-12341343-2'\n```\n\nExample of `xt-server` or `xt-tasks` settings file [server.dev.env](xtcryptosignals/config/server.dev.env):\n```bash\nSECRET_KEY='MfYfEeom6)EyhcKcFh@+WGx8hvhP/,K67hA6'\nCORS_ALLOWED_ORIGINS=('https://mydomain.com',)\nMONGODB_HOST='localhost'\nMONGODB_PORT=27017\nMONGODB_NAME='MyDatabaseName'\n```\n\nRun tests:\n```bash\nSETTINGS_APP=server.dev.env python setup.py test\n# or\nSETTINGS_APP=server.dev.env pytest\n```\n\n### Install from PyPi\nCreate folder project:\n```bash\nmkdir xtcryptosignals\ncd xtcryptosignals\n```\n\nSetup Python virtual environment:\n```bash\nvirtualenv venv -p python3\nsource venv/bin/activate\n```\n\nInstall package:\n```bash\npip install xtcryptosignals\n```\n\n#### Run database migrations\nIt will populate some collections with data:\n```bash\nFLASK_ENV=development SETTINGS_APP=server.dev.env mongodb-migrate --url mongodb://127.0.0.1:27017/XTC-Dev --migrations xtcryptosignals/server/migrations/\n```\n\n### Install from docker-compose (the simplest way):\nClone project repository:\n```bash\ngit clone https://github.com/pantunes/xtcryptosignals.git\ncd xtcryptosignals\n```\nCreate multi-container Docker Applications:\n```bash\ndocker-compose build\n```\nNothing more is necessary...\n\n## Tasks\n### Start service\n\n#### Development:\n\n```bash\nSETTINGS_APP=server.dev.env xt-tasks\n\n# to test 1 tick\nSETTINGS_APP=server.dev.env xt-tasks --test\n\n```\n\n#### Production:\n\n```bash\nSETTINGS_APP=server.prod.env xt-tasks --log-ticker-minimal\n```\n\nTo get a list of supported exchanges:\n```bash\nSETTINGS_APP=server.prod.env xt-tasks --list-config exchanges\n```\n```bash\nbinance\nbinance_dex\nuphold\nokex\nidex\nswitcheo\nhotbit\nbibox\nokcoin\nbithumb\ncoinbene\ndcoin\nbitmax\nbilaxy\nbitstamp\nkucoin\ncoinbase_pro\n```\n(Drop [me](mailto:pjmlantunes@gmail.com) an e-mail if you want support for a new \nexchange or please contribute to this project creating a pull request)\n\nCommand line help:\n```bash\nxt-tasks --help\n```\n```bash\nUsage: xt-tasks [OPTIONS]\n\n  Use this tool to start all or part of the tasks.\n\nOptions:\n  --test                          Process 1 iteration for all configured coins\n                                  and/or tokens. (Useful for testing purposes)\n\n  --list-config [exchanges|currencies]\n                                  List 'exchanges' or 'currencies' (coins or\n                                  tokens) per exchange that are currently\n                                  supported.\n\n  -t, --task [cfgi|project|tether|ticker|notifications|order_book]\n                                  Task to be executed. If this parameter is\n                                  omitted all tasks will be started\n\n  -q, --queue TEXT                Queue name to execute indicated tasks.\n  --disable-ticker-messaging      Disable ticker message broadcasting.\n  --log-ticker-minimal            Only log ticker errors and important\n                                  warnings in stdout.\n\n  --version                       Show version.\n  -h, --help                      Show this message and exit.\n```\n\n### Setup\n\nThere is already an initial setup with some crypto-currencies (coins and tokens) \nthat can be added or/and removed in [settings_exchanges.py](xtcryptosignals/settings_exchanges.py).\n\n```python\nBIBOX: {\n    'pairs': [\n        ('ONT', 'USDT'),\n        ('ONT', 'BTC'),\n        ('ONT', 'ETH'),\n        ('NEO', 'USDT'),\n        ('NEO', 'BTC'),\n        ('NEO', 'ETH'),\n        ('LTC', 'USDT'),\n        ('LTC', 'BTC'),\n        ('CARD', 'ETH'),\n    ]\n}\n\nUPHOLD: {\n    'pairs': [\n        ('BTC', 'USD'),\n        ('ETH', 'USD'),\n        ('LTC', 'USD'),\n        ('XRP', 'USD'),\n    ]\n}\n```\n\nInitial setup to create dynamic MongoDB collections for data segmentation categorized \nby Exchanges pooling frequency in [settings.py](xtcryptosignals/settings.py).\n```python\nHISTORY_FREQUENCY = (\n    '10s', '30s', '1m', '10m', '30m', '1h', '2h', '3h', '4h', '12h', '1d', '4d', \n    '1w', '2w', '4w', '12w', '24w', '1y',\n)\n```\n\n### Results\nThe Ticker service is highly performant as can take advantage of multi-processing multi-core CPU.  \n\n### RESTFul Server API\n### Start service\n\n#### Development:\n\n```bash\nFLASK_ENV=development SETTINGS_APP=client.dev.env xt-server\n```\n\nSwagger API endpoints accessible at `http://127.0.0.1:5000/apidocs`:    \n\n![screen-shot](xtcryptosignals/client/static/imgs/readme/swagger.png)\n\n#### Production:\n\n```bash\nFLASK_ENV=production SETTINGS_APP=client.prod.env xt-server\n```\n\n\n## Website\n### Start service\n\n#### Development:\n\n```bash\nFLASK_ENV=development SETTINGS_APP=client.dev.env xt-client\n```\n\n#### Production:\n```bash\nFLASK_ENV=production SETTINGS_APP=client.prod.env xt-client --num-workers=N\n```\nN corresponds to the number of workers to be spinned up.  \n\n## Run all services at once\n\n#### Embed command line:\n```bash\nxt-all --help\n```\n\n```bash\nUsage: xt-all [OPTIONS] [copy-config-files|start|stop|restart]\n\nOptions:\n  -h, --help  Show this message and exit.\n```\nFor Production enviroment `xt-all copy-config-files` should be executed on first place \nto copy default config files to the folder `/config`.  \nThe configuration should be reviewed and changed, before running `xt-all start`\nto start all 3 services: `xt-server`, `xt-client` and `xt-tasks`.  \n\n#### Docker Compose (the simplest way):\nWith the following command all services will be started and running:\n\n```bash\ndocker-compose up\n```\nAccess the URL `http://127.0.0.1:5000` to load the Platform client UI, nothing more is necessary...\n\n## Screenshots\n\nOpen the browser with the URL `http://127.0.0.1:8000`:\n\n**Overview** | **Pairs**\n:-------------------------:|:-------------------------:\n![screen-shot](xtcryptosignals/client/static/imgs/readme/1.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/2.png)\n**Coins/Tokens** | **Dark Theme** \n![screen-shot](xtcryptosignals/client/static/imgs/readme/3.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/8.png)\n**Login** | **Portfolio**\n![screen-shot](xtcryptosignals/client/static/imgs/readme/4.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/5.png) \n**Alerts Setup** | **Web Push Notification** | \n![screen-shot](xtcryptosignals/client/static/imgs/readme/6.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/7.png)\n**Twitter Chart** | **Crypto Fear & Greed Index Chart** | \n![screen-shot](xtcryptosignals/client/static/imgs/readme/12.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/9.png)\n**Tether Chart** | **Coin / Token Chart** | \n![screen-shot](xtcryptosignals/client/static/imgs/readme/10.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/11.png)\n**Market Depth** | **Telegram Notifications** | \n![screen-shot](xtcryptosignals/client/static/imgs/readme/13.png) | ![screen-shot](xtcryptosignals/client/static/imgs/readme/14.png)\n**Spotlight Search** | | \n![screen-shot](xtcryptosignals/client/static/imgs/readme/15.png) |\n\n## Example of added Feature\nPull Request to show how easy is to [Add Kyber Network, Aave and Ren Projects/Tokens](https://github.com/pantunes/xtcryptosignals/commit/95e1ec9cda86e5b457343163068ad164f8df81aa).\n\n## Disclaimer\n\nThis project is work in progress and when it comes to trading use it at your own risk.\n\n## License\n\nThis project is licensed under the [GNU](https://www.gnu.org/licenses/gpl-3.0.en.html) License.\n\n## Contact\n\nThrough the website [xtcryptosignals.com](https://xtcryptosignals.com/ticker/tokens/10s#contact).  \n\n## Acknowledgments\n\n![Jetbrains](xtcryptosignals/client/static/imgs/readme/jetbrains.png)  \nThanks to [Jetbrains](https://www.jetbrains.com/?from=xtcryptosignals) in order to \nsupport us with an Open Source license.\n\n## Donation\n\nIn case this project helped you in some way I'm accepting a small donation to keep this open-source project on-\ud83d\udd25 :\n- BTC: bc1qheg9zjhezsvnzywvnj9tunsj39llslqp33ekrs\n- ETH: 0x2e9B4409d40d2605361Ea1278B1514C74c66Eac3\n\n",
    "bugtrack_url": null,
    "license": "GPL",
    "summary": "Platform that collects cryptocurrencies price data, fires alerts based on price sentiment and many other features.",
    "version": "1.0.1",
    "project_urls": {
        "Homepage": "https://xtcryptosignals.com"
    },
    "split_keywords": [
        "xtcryptosignals",
        "api",
        "cryptocurrency",
        "bitcoin",
        "ethereum",
        "signals",
        "trading",
        "crypto signals",
        "exchange",
        "crypto"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "51d7a17f9258adef8952d19b4e61d06d05db6deb651418fdf5d96597ee63f47c",
                "md5": "0e21db17943aaf7dc80192859b0d378a",
                "sha256": "81bf29dbdb16a2b4489bf7dca078f5b65f90ccc3e93bb3232a58418c5d0d4c96"
            },
            "downloads": -1,
            "filename": "XTCryptoSignals-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0e21db17943aaf7dc80192859b0d378a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 10696187,
            "upload_time": "2024-01-16T16:33:28",
            "upload_time_iso_8601": "2024-01-16T16:33:28.567937Z",
            "url": "https://files.pythonhosted.org/packages/51/d7/a17f9258adef8952d19b4e61d06d05db6deb651418fdf5d96597ee63f47c/XTCryptoSignals-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c0f49dd476f60b040a137232e403c776c2ba4f1e546dc7aabd1fc2713257e916",
                "md5": "7fe301d73ff384bb3989932dc198c4c4",
                "sha256": "1ba2b235a55c24be27fba56246e9ba4e657ad871d731ae0a622c7af3294ef8a4"
            },
            "downloads": -1,
            "filename": "XTCryptoSignals-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "7fe301d73ff384bb3989932dc198c4c4",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 10545376,
            "upload_time": "2024-01-16T16:33:36",
            "upload_time_iso_8601": "2024-01-16T16:33:36.201450Z",
            "url": "https://files.pythonhosted.org/packages/c0/f4/9dd476f60b040a137232e403c776c2ba4f1e546dc7aabd1fc2713257e916/XTCryptoSignals-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-16 16:33:36",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "xtcryptosignals"
}
        
Elapsed time: 0.21173s