EOD Historical Data Python Library (Unofficial)

Overview

EOD Historical Data Python Library (Unofficial)

https://eodhistoricaldata.com

Installation

python3 -m pip install eodhistoricaldata

Note

Demo API key below is provided by EOD Historial Data for testing purposes https://eodhistoricaldata.com/financial-apis/new-real-time-data-api-websockets

Usage

None: """Main""" websocket = WebSocketClient( # Demo API key for testing purposes api_key="OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX", endpoint="crypto", symbols=["BTC-USD"] #api_key="OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX", endpoint="forex", symbols=["EURUSD"] #api_key="OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX", endpoint="us", symbols=["AAPL"] ) websocket.start() message_count = 0 while True: if websocket: if ( message_count != websocket.message_count ): print(websocket.message) message_count = websocket.message_count sleep(0.25) # output every 1/4 second, websocket is realtime if __name__ == "__main__": main() ">
"""Sample script"""

from time import sleep
from eodhistoricaldata import WebSocketClient

def main() -> None:
    """Main"""

    websocket = WebSocketClient(
        # Demo API key for testing purposes
        api_key="OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX", endpoint="crypto", symbols=["BTC-USD"]
        #api_key="OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX", endpoint="forex", symbols=["EURUSD"]
        #api_key="OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX", endpoint="us", symbols=["AAPL"]
    )
    websocket.start()

    message_count = 0
    while True:
        if websocket:
            if (
                message_count != websocket.message_count
            ):
                print(websocket.message)
                message_count = websocket.message_count
                sleep(0.25)  # output every 1/4 second, websocket is realtime

if __name__ == "__main__":
    main()
You might also like...
TE-dependent analysis (tedana) is a Python library for denoising multi-echo functional magnetic resonance imaging (fMRI) data
TE-dependent analysis (tedana) is a Python library for denoising multi-echo functional magnetic resonance imaging (fMRI) data

tedana: TE Dependent ANAlysis TE-dependent analysis (tedana) is a Python library for denoising multi-echo functional magnetic resonance imaging (fMRI)

Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data.
Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data.

Hatchet Hatchet is a Python-based library that allows Pandas dataframes to be indexed by structured tree and graph data. It is intended for analyzing

 🧪 Panel-Chemistry - exploratory data analysis and build powerful data and viz tools within the domain of Chemistry using Python and HoloViz Panel.
🧪 Panel-Chemistry - exploratory data analysis and build powerful data and viz tools within the domain of Chemistry using Python and HoloViz Panel.

🧪📈 🐍. The purpose of the panel-chemistry project is to make it really easy for you to do DATA ANALYSIS and build powerful DATA AND VIZ APPLICATIONS within the domain of Chemistry using using Python and HoloViz Panel.

Tuplex is a parallel big data processing framework that runs data science pipelines written in Python at the speed of compiled code

Tuplex is a parallel big data processing framework that runs data science pipelines written in Python at the speed of compiled code. Tuplex has similar Python APIs to Apache Spark or Dask, but rather than invoking the Python interpreter, Tuplex generates optimized LLVM bytecode for the given pipeline and input data set.

Python data processing, analysis, visualization, and data operations

Python This is a Python data processing, analysis, visualization and data operations of the source code warehouse, book ISBN: 9787115527592 Descriptio

Catalogue data - A Python Scripts to prepare catalogue data

catalogue_data Scripts to prepare catalogue data. Setup Clone this repo. Install

fds is a tool for Data Scientists made by DAGsHub to version control data and code at once.
fds is a tool for Data Scientists made by DAGsHub to version control data and code at once.

Fast Data Science, AKA fds, is a CLI for Data Scientists to version control data and code at once, by conveniently wrapping git and dvc

A data parser for the internal syncing data format used by Fog of World.
A data parser for the internal syncing data format used by Fog of World.

A data parser for the internal syncing data format used by Fog of World. The parser is not designed to be a well-coded library with good performance, it is more like a demo for showing the data structure.

Functional Data Analysis, or FDA, is the field of Statistics that analyses data that depend on a continuous parameter.
Comments
  • Syntax issue with query Parameter in get_calendar_ functions

    Syntax issue with query Parameter in get_calendar_ functions

    Hello,

    When using the get_calendar_XXX, functions we cannot use the query parameters defined by EOD as the word "from" is forbidden by Python, for instance : earning=client.get_calendar_earnings(from='2022-11-01', to='2022-11-30')

    will raise an issue.

    Should I pass the argument differently ?

    opened by ATCBGroup 1
  • dependency on matplotlib but it is not installed with pip

    dependency on matplotlib but it is not installed with pip

    dependency on matplotlib but it is not installed with pip

    [email protected]:~/git/traderai/eod$ cat test.py
    from eodhd import APIClient
    api = APIClient("DEMO")
    
    [email protected]:~/git/traderai/eod$ python3 test.py
    Traceback (most recent call last):
      File "/home/mshamber/.local/lib/python3.8/site-packages/eodhd/eodhdgraphs.py", line 5, in <module>
        import matplotlib.pyplot as plt
    ModuleNotFoundError: No module named 'matplotlib'
    
    [email protected]:~/git/traderai/eod$ python3 -m pip install eodhd
    Requirement already satisfied: eodhd in /home/mshamber/.local/lib/python3.8/site-packages (1.0.8)
    Requirement already satisfied: websocket-client==1.3.3 in /home/mshamber/.local/lib/python3.8/site-packages (from eodhd) (1.3.3)
    Requirement already satisfied: rich==12.5.1 in /home/mshamber/.local/lib/python3.8/site-packages (from eodhd) (12.5.1)
    Requirement already satisfied: websockets==10.3 in /home/mshamber/.local/lib/python3.8/site-packages (from eodhd) (10.3)
    Requirement already satisfied: numpy==1.21.6 in /home/mshamber/.local/lib/python3.8/site-packages (from eodhd) (1.21.6)
    Requirement already satisfied: pandas==1.3.5 in /home/mshamber/.local/lib/python3.8/site-packages (from eodhd) (1.3.5)
    Requirement already satisfied: requests==2.28.1 in /home/mshamber/.local/lib/python3.8/site-packages (from eodhd) (2.28.1)
    Requirement already satisfied: commonmark<0.10.0,>=0.9.0 in /home/mshamber/.local/lib/python3.8/site-packages (from rich==12.5.1->eodhd) (0.9.1)
    Requirement already satisfied: typing-extensions<5.0,>=4.0.0; python_version < "3.9" in /home/mshamber/.local/lib/python3.8/site-packages (from rich==12.5.1->eodhd) (4.3.0)
    Requirement already satisfied: pygments<3.0.0,>=2.6.0 in /home/mshamber/.local/lib/python3.8/site-packages (from rich==12.5.1->eodhd) (2.13.0)
    Requirement already satisfied: python-dateutil>=2.7.3 in /home/mshamber/.local/lib/python3.8/site-packages (from pandas==1.3.5->eodhd) (2.8.2)
    Requirement already satisfied: pytz>=2017.3 in /home/mshamber/.local/lib/python3.8/site-packages (from pandas==1.3.5->eodhd) (2022.5)
    Requirement already satisfied: charset-normalizer<3,>=2 in /home/mshamber/.local/lib/python3.8/site-packages (from requests==2.28.1->eodhd) (2.1.1)
    Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3/dist-packages (from requests==2.28.1->eodhd) (2.8)
    Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests==2.28.1->eodhd) (2019.11.28)
    Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/lib/python3/dist-packages (from requests==2.28.1->eodhd) (1.25.8)
    Requirement already satisfied: six>=1.5 in /home/mshamber/.local/lib/python3.8/site-packages (from python-dateutil>=2.7.3->pandas==1.3.5->eodhd) (1.16.0)
    
    opened by opme 1
Releases(1.0.8)
Owner
Michael Whittle
Solution Architect
Michael Whittle
A simplified prototype for an as-built tracking database with API

Asbuilt_Trax A simplified prototype for an as-built tracking database with API The purpose of this project is to: Model a database that tracks constru

Ryan Pemberton 1 Jan 31, 2022
Wafer Fault Detection - Wafer circleci with python

Wafer Fault Detection Problem Statement: Wafer (In electronics), also called a slice or substrate, is a thin slice of semiconductor, such as a crystal

Avnish Yadav 14 Nov 21, 2022
Churn prediction with PySpark

It is expected to develop a machine learning model that can predict customers who will leave the company.

3 Aug 13, 2021
2019 Data Science Bowl

Kaggle-2019-Data-Science-Bowl-Solution - Here i present my solution to kaggle 2019 data science bowl and how i improved it to win a silver medal in that competition.

Deepak Nandwani 1 Jan 01, 2022
Python for Data Analysis, 2nd Edition

Python for Data Analysis, 2nd Edition Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media Buy

Wes McKinney 18.6k Jan 08, 2023
scikit-survival is a Python module for survival analysis built on top of scikit-learn.

scikit-survival scikit-survival is a Python module for survival analysis built on top of scikit-learn. It allows doing survival analysis while utilizi

Sebastian Pölsterl 876 Jan 04, 2023
Handle, manipulate, and convert data with units in Python

unyt A package for handling numpy arrays with units. Often writing code that deals with data that has units can be confusing. A function might return

The yt project 304 Jan 02, 2023
Analysis of a dataset of 10000 passwords to find common trends and mistakes people generally make while setting up a password.

Analysis of a dataset of 10000 passwords to find common trends and mistakes people generally make while setting up a password.

Aryan Raj 7 Sep 04, 2022
A DSL for data-driven computational pipelines

"Dataflow variables are spectacularly expressive in concurrent programming" Henri E. Bal , Jennifer G. Steiner , Andrew S. Tanenbaum Quick overview Ne

1.9k Jan 03, 2023
PATC: Introduction to Big Data Analytics. Practical Data Analytics for Solving Real World Problems

PATC: Introduction to Big Data Analytics. Practical Data Analytics for Solving Real World Problems

1 Feb 07, 2022
Implementation in Python of the reliability measures such as Omega.

reliabiliPy Summary Simple implementation in Python of the [reliability](https://en.wikipedia.org/wiki/Reliability_(statistics) measures for surveys:

Rafael Valero Fernández 2 Apr 27, 2022
Hidden Markov Models in Python, with scikit-learn like API

hmmlearn hmmlearn is a set of algorithms for unsupervised learning and inference of Hidden Markov Models. For supervised learning learning of HMMs and

2.7k Jan 03, 2023
A tax calculator for stocks and dividends activities.

Revolut Stocks calculator for Bulgarian National Revenue Agency Information Processing and calculating the required information about stock possession

Doino Gretchenliev 200 Oct 25, 2022
Data Analytics: Modeling and Studying data relating to climate change and adoption of electric vehicles

Correlation-Study-Climate-Change-EV-Adoption Data Analytics: Modeling and Studying data relating to climate change and adoption of electric vehicles I

Jonathan Feng 1 Jan 03, 2022
yt is an open-source, permissively-licensed Python library for analyzing and visualizing volumetric data.

The yt Project yt is an open-source, permissively-licensed Python library for analyzing and visualizing volumetric data. yt supports structured, varia

The yt project 367 Dec 25, 2022
Single machine, multiple cards training; mix-precision training; DALI data loader.

Template Script Category Description Category script comparison script train.py, loader.py for single-machine-multiple-cards training train_DP.py, tra

2 Jun 27, 2022
Automatic earthquake catalog building workflow: EQTransformer + Siamese EQTransformer + PickNet + REAL + HypoInverse

Automatic regional-scale earthquake catalog building workflow: EQTransformer + Siamese EQTransforme

Xiao Zhuowei 9 Nov 27, 2022
Repository created with LinkedIn profile analysis project done

EN/en Repository created with LinkedIn profile analysis project done. The datase

Mayara Canaver 4 Aug 06, 2022
Udacity-api-reporting-pipeline - Udacity api reporting pipeline

udacity-api-reporting-pipeline In this exercise, you'll use portions of each of

Fabio Barbazza 1 Feb 15, 2022
Validated, scalable, community developed variant calling, RNA-seq and small RNA analysis

Validated, scalable, community developed variant calling, RNA-seq and small RNA analysis. You write a high level configuration file specifying your in

Blue Collar Bioinformatics 917 Jan 03, 2023