A databroker for financial data
Project description
FinDataBroker
FinDataBroker is a databroker that is aimed at working in combination with FinanceJSON, to ease the saving and loading to different formats. In short it is nothing else than a wrapper to save and load dicts of lists of dicts in a convenient way. The motivation for this packages is to logically separate data storage and loading from packages analysing the data, reducing the complexity of the analysis packages.
The databroker package provides classes to save data stored in the the FinanceJSON format to the following storage systems:
- MongoDb
- Sqlite
In future versions the following formats will be added:
- JSON
- HDF5
- PostGreSQL
- ElasticSearch
When data is loaded back it is always returned as a dict, where the value is a list of dicts. This way, when different of these loaded dicts are combined, in a single dictionary, the overall dictionary is consistent with the FinanceJSON schema and can be validated to check if all the loaded data is consistent, at the same time making the tools of FinanceJSON available for this dataset.
Requirements
- pymongo
- dataset
Installation
pip install FinDataBroker
Example
A FinanceJSON file for a stock:
{
"yh_symbol": [{"symbol": "XYZ"}],
"ms_symbol": [{"symbol": "US_XYZ"}],
"yh_assetProfile": [
{
"index_symbol": "XYZ",
"date": "2019-01-01",
"address1": "foo",
"auditRisk": 1,
"boardRisk": 2,
"city": "bar",
"country": "a"
}],
}
FinDataBroker CLI
This repository also contains a Python based commandline tool which is able validate and extract data from financeJSON files and written to the selected database format.
Write a financeJSON file to a mongodb:
FinDataBroker write2mongo /path/to/financejsonfile user:pwd@url:port databasename
Write a financeJSON file to an sqlite database:
FinDataBroker write2sqlite /path/to/financejsonfile sqlite:///database.db
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file FinDataBroker-1.0.0a4.tar.gz
.
File metadata
- Download URL: FinDataBroker-1.0.0a4.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2378ef12a7000e40630ad05d7a7bdcd2fc2ff264b5f0508ae6c579c370522daf |
|
MD5 | 4fbf0fca5ca09f82b5cc2c477d66aef7 |
|
BLAKE2b-256 | 7f4d04a48f525acc61b45ae8879e3bf0e8bdc1d1866574b03f2d87f93268dd6b |
File details
Details for the file FinDataBroker-1.0.0a4-py3-none-any.whl
.
File metadata
- Download URL: FinDataBroker-1.0.0a4-py3-none-any.whl
- Upload date:
- Size: 22.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d6f05a3d219310c8ab07d186f229b8c6516d8144d246fe172ce5bb28c62c147f |
|
MD5 | f9d3c31fa1f458741d5c3c55db15ce8b |
|
BLAKE2b-256 | 4aaa9c8f2676ae6c9eb81d189b2e58aa87ee777b199131f8644a649dd5bad18e |