Development Environment
Poetry
- Install Poetry
curl -sSL https://install.python-poetry.org | python3 -
- Install dependencies
poetry install - To add new dependencies use
poetry addpoetry add dependency_name
- Read
Poetrydocumentation for more.
Installation
pip
pip install PriceIndics
Poetry
poetry add PriceIndices
From Source (Github)
git clone https://github.com/dc-aichara/Price-Indices.git
cd Price-Indices
python3 setup.py install
Usages
from PriceIndices import MarketHistory, Indices
Examples
>>> history = MarketHistory()
# Get Market History
>>> df_history = history.get_history("bitcoin", "2020-03-16", "2021-03-15")
>>> df_history.head()
open high low close volume market_cap date
0 59267.429049 60540.992712 55393.165363 55907.200226 6.641937e+10 1.042946e+12 2021-03-15
1 61221.134297 61597.918396 59302.316977 59302.316977 4.390123e+10 1.106226e+12 2021-03-14
2 57343.370247 61683.864014 56217.972382 61243.084766 6.066983e+10 1.142369e+12 2021-03-13
3 57821.218747 57996.619490 55376.650088 57332.088964 5.568994e+10 1.069366e+12 2021-03-12
4 55963.180089 58091.062703 54484.593089 57805.123019 5.677234e+10 1.078136e+12 2021-03-11
# Get closing price
>>> price_data = history.get_price("bitcoin", "2020-03-16", "2021-03-15")
>>> price_data.head()
date price
0 2021-03-15 55907.200226
1 2021-03-14 59302.316977
2 2021-03-13 61243.084766
3 2021-03-12 57332.088964
4 2021-03-11 57805.123019
indices = Indices(df=price_data, plot_dir="plots")
>>> df_bvol = indices.get_vola_index(
plot=True,
plot_name="vola_index.png",
show_plot=False
)
>>> df_bvol.head()
date price BVOL_Index
0 2019-10-29 9427.69 0.711107
1 2019-10-28 9256.15 0.707269
2 2019-10-27 9551.71 0.709765
3 2019-10-26 9244.97 0.698544
4 2019-10-25 8660.70 0.692656
Plot will be saved in plots directory as vola_index.png.
>>> df_rsi = indices.get_rsi(
plot=True,
plot_name="rsi.png",
show_plot=False,
)
>>> print(df_rsi.head())
date price RSI_1 RS_Smooth RSI_2
0 2019-10-30 9205.73 64.641855 1.624958 61.904151
1 2019-10-29 9427.69 65.707097 1.709072 63.086984
2 2019-10-28 9256.15 61.333433 1.597755 61.505224
3 2019-10-27 9551.71 66.873327 2.012345 66.803267
4 2019-10-26 9244.97 63.535368 1.791208 64.173219
Plot will be saved in plots directory as rsi.png.
>>> df_bb = indices.get_bollinger_bands(
days=20,
plot=True,
plot_name="bollinger_bands.png",
show_plot=False,
)
>>> df_bb.head()
date price BB_upper BB_lower
0 2019-10-30 9205.73 9635.043581 -8428.5855
1 2019-10-29 9427.69 9550.707153 -8397.6225
2 2019-10-28 9256.15 9408.263164 -8356.0250
3 2019-10-27 9551.71 9268.466516 -8304.6565
4 2019-10-26 9244.97 9003.752779 -8239.3520
"""
This will also save Bollingers bands plot in your working directory as 'bollinger_bands.png' in plots folder.
"""
>>> df_macd = indices.get_moving_average_convergence_divergence(
plot=True,
plot_name="macd.png",
show_plot=False,
)
"""
This will return a pandas DataFrame and save EMA plot as 'macd.png' in in plots folder.
""""
>>> df_macd.head()
date price MACD
0 2019-10-30 9205.73 0.000000
1 2019-10-29 9427.69 17.706211
2 2019-10-28 9256.15 17.692715
3 2019-10-27 9551.71 41.057952
4 2019-10-26 9244.97 34.426864
>>> df_sma = indices.get_simple_moving_average(
days=20,
plot=True,
plot_name="sma.png",
show_plot=False,
)
"""This will return a pandas DataFrame and save EMA plot as 'sma.png' in plots folder.
""""
>>> df_sma.head()
date price SMA
0 2019-10-30 9205.73 8467.488000
1 2019-10-29 9427.69 8400.797333
2 2019-10-28 9256.15 8330.597333
3 2019-10-27 9551.71 8268.254667
4 2019-10-26 9244.97 8187.244667
>>> df_ema = indices.get_exponential_moving_average(
periods=(20,70),
plot=True,
plot_name="ema.png",
show_plot=False,
)
"""This will return a pandas DataFrame and save EMA plot as 'ema.png' in plots folder.
""""
>>> df_ema.head()
date price EMA_20 EMA_70
0 2019-10-30 9205.73 9205.730000 9205.730000
1 2019-10-29 9427.69 9226.869048 9211.982394
2 2019-10-28 9256.15 9229.657710 9213.226552
3 2019-10-27 9551.71 9260.329356 9222.761297
4 2019-10-26 9244.97 9258.866561 9223.386895
>>>
License
Check out webpage of PriceIndices package.
I have created a cryptocurrency technical indicators dashboard which uses this library.
Disclaimer:
All content provided here, is for educational purpose and your general information only, procured from third party sources.
I make no warranties of any kind in relation to this content, including but not limited to accuracy
and updatedness. No part of the content that I provide constitutes financial advice, legal advice
or any other form of advice meant for your specific reliance for any purpose. Any use or reliance on
my content is solely at your own risk and discretion. You should conduct your own research, review,
analyse and verify my content before relying on them. Trading is a highly risky activity that can
lead to major losses, please therefore consult your financial advisor before making any decision.
No content on this Site is meant to be a solicitation or offer.
Metadata
Release files for priceindices 1.4.0
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 | Actions |
|---|---|---|---|---|
| priceindices-1.4.0.tar.gz | 9.7 kB | Without provenance | Details for priceindices-1.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| priceindices-1.4.0-py3-none-any.whl | Python 3 | none | any | Details for priceindices-1.4.0-py3-none-any.whl |
Total release size: 19.1 kB
Release files / priceindices-1.4.0.tar.gz
| Download URL | priceindices-1.4.0.tar.gz |
|---|---|
| Size | 9.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b69e02e9e8265c1bcd866ca542ae81191affb1b53f0a9126d5a112e37c7c4e28
|
|
BLAKE2b-256 checksum How to use checksums |
36370a3c2c323c012184de29482e8abe41f048036892ca06727368e0258b1fae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Release files / priceindices-1.4.0-py3-none-any.whl
| Download URL | priceindices-1.4.0-py3-none-any.whl |
|---|---|
| Size | 9.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0474ab86b9f90f1f73dcaa61f02af121f3446e19d5d1a4b36caf5bbb20fdfb9a
|
|
BLAKE2b-256 checksum How to use checksums |
4c951d133a53bfb59211fdf7176dff0b4e658371d63356cfc02cd0260617a76a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Security for priceindices 1.4.0
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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.