xrp-price-aggregate
Based on XRPL-Labs/XRP-Price-Aggregator
Usage
-
pip install xrp-price-aggregate -
Run directly as a module or import and provide aggregation count (how many rounds) along with delay between each round.
# run xrp_price_aggregate.__main__ and also beautify the results python -m xrp_price_aggregate | python -m json.tool { "raw_results_named": { "hitbtc": [ "0.72235" ], ... }, "raw_results": [ "0.72110", "0.72236", "0.72202", ... ], "raw_median": "0.72219", "raw_stdev": "0.00071", "filtered_results": [ "0.72236", "0.72202", "0.72240", ... ], "filtered_median": "0.72236", "filtered_mean": "0.72219" }>>> # await it yourself >>> import asyncio >>> import xrp_price_aggregate >>> asyncio.run(xrp_price_aggregate.as_awaitable_json()) '{"raw_results_named": {"hitbtc": ["0.711729"], "binance": ["0.7131"], "bitrue": ["0.71292"], "bitfinex": ["0.7122"], "ftx": ["0.712675", "0.7126"], "kraken": ["0.71223"], "cex": ["0.71334", "0.7135"], "bitstamp": ["0.71328"]}, "raw_results": ["0.7131", "0.7122", "0.71328", "0.71334", "0.7135", "0.712675", "0.7126", "0.711729", "0.71223", "0.71292"], "raw_median": "0.7127975", "raw_stdev": "0.0005759840275563203497399309551", "filtered_results": ["0.71310", "0.71328", "0.71334", "0.71268", "0.71260", "0.71223", "0.71292"], "filtered_median": "0.71292", "filtered_mean": "0.71288"}'
>>> # synchronous is the default case >>> import xrp_price_aggregate >>> xrp_price_aggregate.as_json() '{"raw_results_named": {"cex": ["0.72039", "0.72136"], "hitbtc": ["0.72122"], "kraken": ["0.72132"], "bitfinex": ["0.72145"], "bitstamp": ["0.72047"], "bitrue": ["0.72122"], "binance": ["0.72150"], "ftx": ["0.72078", "0.72155"]}, "raw_results": ["0.72150", "0.72145", "0.72047", "0.72039", "0.72136", "0.72078", "0.72155", "0.72122", "0.72132", "0.72122"], "raw_median": "0.72127", "raw_stdev": "0.00043", "filtered_results": ["0.72150", "0.72145", "0.72136", "0.72155", "0.72122", "0.72132", "0.72122"], "filtered_median": "0.72136", "filtered_mean": "0.72137"}' >>> xrp_price_aggregate.as_dict(count=3, delay=2) {'raw_results_named': {'binance': [Decimal('0.721'), Decimal('0.7213'), Decimal('0.7211')], 'ftx': [Decimal('0.7208'), Decimal('0.720975'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.7208'), Decimal('0.720975')], 'bitfinex': [Decimal('0.7215'), Decimal('0.7215'), Decimal('0.72141')], 'hitbtc': [Decimal('0.720796'), Decimal('0.720796'), Decimal('0.720796')], 'bitstamp': [Decimal('0.72047'), Decimal('0.72047'), Decimal('0.72047')], 'bitrue': [Decimal('0.72081'), Decimal('0.72094'), Decimal('0.72111')], 'kraken': [Decimal('0.72132'), Decimal('0.72132'), Decimal('0.72132')], 'cex': [Decimal('0.72039'), Decimal('0.72136'), Decimal('0.72039'), Decimal('0.72136'), Decimal('0.72039'), Decimal('0.72136')]}, 'raw_results': [Decimal('0.721'), Decimal('0.7215'), Decimal('0.72047'), Decimal('0.72039'), Decimal('0.72136'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.720796'), Decimal('0.72132'), Decimal('0.72081'), Decimal('0.7213'), Decimal('0.7215'), Decimal('0.72047'), Decimal('0.72039'), Decimal('0.72136'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.720796'), Decimal('0.72132'), Decimal('0.72094'), Decimal('0.7211'), Decimal('0.72141'), Decimal('0.72047'), Decimal('0.72039'), Decimal('0.72136'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.720796'), Decimal('0.72132'), Decimal('0.72111')], 'raw_median': Decimal('0.720975'), 'raw_stdev': Decimal('0.0003566360729171225136133563969'), 'filtered_results': [Decimal('0.721'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.720796'), Decimal('0.72132'), Decimal('0.72081'), Decimal('0.7213'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.720796'), Decimal('0.72132'), Decimal('0.72094'), Decimal('0.7211'), Decimal('0.7208'), Decimal('0.720975'), Decimal('0.720796'), Decimal('0.72132'), Decimal('0.72111')], 'filtered_median': Decimal('0.720975'), 'filtered_mean': Decimal('0.7209962777777777777777777778')}
Note on Jupyter
When running in Jupyter notebooks, be sure to use
nest_asyncio
import nest_asyncio
import xrp_price_aggregate
nest_asyncio.apply()
agg_results = xrp_price_aggregate.as_dict(count=6, delay=3)
Public Colab Example Notebook,
backup of the .ipynb as a Gist
Metadata
Release files for xrp-price-aggregate 0.0.15
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| xrp-price-aggregate-0.0.15.tar.gz | 13.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| xrp_price_aggregate-0.0.15-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.0 kB
Release files / xrp-price-aggregate-0.0.15.tar.gz
| Download URL | xrp-price-aggregate-0.0.15.tar.gz |
|---|---|
| Size | 13.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4adfbff15cf1ca49285ce0593717b8dc531b5f24f3b921cc54b0a3450fae7631
|
|
BLAKE2b-256 checksum How to use checksums |
8c38c584a224274a900480d877e9e47a9a4c9cf8ddacc91323c49145af32ce74
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.10
|
Release files / xrp_price_aggregate-0.0.15-py3-none-any.whl
| Download URL | xrp_price_aggregate-0.0.15-py3-none-any.whl |
|---|---|
| Size | 17.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a2e113921dbb33354d00aab246e867cfca32781a6585d0a6545a19d5f648f82f
|
|
BLAKE2b-256 checksum How to use checksums |
aade605f2937c46199ccc960c39cbc5915dddf03a2beabe22dd3b3142be06b43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.10
|
Security for xrp-price-aggregate 0.0.15
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.