2024-07-08 17:10:04 +00:00
|
|
|
<!--- WARNING --->
|
|
|
|
<!--- THIS IS AN AUTO-GENERATED FILE --->
|
|
|
|
<!--- MANUAL CHANGES CAN AND WILL BE OVERWRITTEN --->
|
2024-07-08 17:06:10 +00:00
|
|
|
|
2024-08-02 15:11:05 +00:00
|
|
|
|
|
|
|
|
2024-11-28 20:03:50 +00:00
|
|
|
# Financial Depository Fetchers
|
2024-05-29 19:54:45 +00:00
|
|
|
|
2024-11-28 20:03:50 +00:00
|
|
|
![Test program/library](https://gitfub.space/Jmaa/fin-depo/actions/workflows/python-test.yml/badge.svg) ![Codequality (Ruff)](https://gitfub.space/Jmaa/fin-depo/actions/workflows/python-ruff.yml/badge.svg)
|
|
|
|
|
|
|
|
Python library for programmatic download of asset position information from
|
2024-07-22 15:00:07 +00:00
|
|
|
personal depository accounts.
|
|
|
|
|
|
|
|
This library is a core part of my personal financial applications, as it allows
|
|
|
|
me to monitor my investments on financial markets and web3 investments.
|
|
|
|
|
|
|
|
A lot can be said (mostly negative) about web3, but at least they are serious
|
|
|
|
about API access, which the modern banking system is not great at providing.
|
|
|
|
Even in The European Union, where GDPR is law and OpenBanking is a requirement,
|
2024-11-28 20:03:50 +00:00
|
|
|
it is hugely difficult for ordinary people to access and control their own
|
|
|
|
personal financial information.
|
2024-07-22 15:00:07 +00:00
|
|
|
|
|
|
|
This is a library; if you want a simple program for downloading the information
|
|
|
|
exposed by one of the supported services, try [my personal-data-fetchers
|
|
|
|
program](https://gitfub.space/Jmaa/personal-data-fetchers).
|
2024-05-29 19:54:45 +00:00
|
|
|
|
2024-07-20 20:12:09 +00:00
|
|
|
## Supported websites/services
|
|
|
|
|
|
|
|
- [**Kraken**](https://www.kraken.com/) crypto-currency exchange
|
|
|
|
(`KrakenDepoFetcher`):
|
|
|
|
Uses their [publicly documented API](https://docs.kraken.com/rest/). This
|
|
|
|
provides the same data as the homepage.
|
|
|
|
- [**Kucoin**](https://www.kucoin.com/) crypto-currency exchange
|
|
|
|
(`KucoinDepoFetcher`):
|
|
|
|
Uses their [publicly documented
|
2024-07-20 20:05:36 +00:00
|
|
|
API](https://www.kucoin.com/docs/beginners/introduction). This provides the
|
|
|
|
same data as is available on the Assets Overview Page. This fetcher also
|
|
|
|
allows for placing market orders, but be careful with this functionality.
|
2024-07-20 20:12:09 +00:00
|
|
|
- [**Partisia Blockchain**](https://browser.partisiablockchain.com/) wallet
|
|
|
|
balances (`PartisiaBlockchainAccountDepoFetcher`):
|
|
|
|
Uses a public reader node to check the account state. This is the same data as
|
|
|
|
can be found in the Partisia Browser Assets page.
|
|
|
|
- [**Nordnet**](https://www.nordnet.dk) nordic investment bank
|
|
|
|
(`NordnetDepoFetcher`):
|
|
|
|
Uses their [API](https://www.nordnet.dk/externalapi/docs/api). Thanks to
|
|
|
|
[Morten Helmstedt](https://helmstedt.dk/) for sharing his [Nordnet
|
2024-07-20 20:05:36 +00:00
|
|
|
utilities](https://github.com/helmstedt/nordnet-utilities), which helped with
|
|
|
|
implementing this functionality. Exposes the same data as the home page.
|
|
|
|
|
|
|
|
## Future extension
|
2024-05-29 19:54:45 +00:00
|
|
|
|
2024-06-20 10:48:28 +00:00
|
|
|
- [ ] Investment Bank: Saxo Bank OpenAPI
|
2024-11-28 20:03:50 +00:00
|
|
|
- [ ] Personal Bank: Personal Bank Account (Open Banking).
|
|
|
|
* Maybe using [Enable Banking](https://enablebanking.com/)? They seem to
|
|
|
|
allow developers to access their own accounts in a sort of half production
|
|
|
|
half demo environment.
|
|
|
|
* [AIIA](https://www.aiia.eu/) is also a possiblity?
|
2024-11-01 22:19:00 +00:00
|
|
|
- [ ] Partisia Blockchain: Implement sharding routing correctly.
|
2024-11-28 20:03:50 +00:00
|
|
|
- [ ] Depository history: Allow users to query both the state of their deposity
|
|
|
|
in the past, and to allow them to query the transactions.
|
|
|
|
* Most backends only support listing the transactions themselves, so the
|
|
|
|
depository history needs to be computed backwards from these.
|
2024-07-09 21:59:54 +00:00
|
|
|
|
2024-09-26 22:01:31 +00:00
|
|
|
## Dependencies
|
|
|
|
|
|
|
|
All requirements can be installed easily using:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
pip install -r requirements.txt
|
|
|
|
```
|
|
|
|
|
|
|
|
Full list of requirements:
|
|
|
|
- [enforce-typing](https://pypi.org/project/enforce-typing/)
|
|
|
|
- [python-kucoin](https://pypi.org/project/python-kucoin/)
|
|
|
|
- [krakenex](https://pypi.org/project/krakenex/)
|
|
|
|
- [frozendict](https://pypi.org/project/frozendict/)
|
|
|
|
- [fin-defs](https://gitfub.space/Jmaa/fin-defs)
|
|
|
|
|
|
|
|
|
|
|
|
## License
|
2024-07-09 21:59:54 +00:00
|
|
|
|
|
|
|
```
|
2024-07-16 20:15:42 +00:00
|
|
|
MIT License
|
|
|
|
|
2024-07-09 21:59:54 +00:00
|
|
|
Copyright (c) 2024 Jon Michael Aanes
|
|
|
|
|
2024-07-16 20:15:42 +00:00
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
|
of this software and associated documentation files (the "Software"), to deal
|
|
|
|
in the Software without restriction, including without limitation the rights
|
|
|
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
|
|
copies of the Software, and to permit persons to whom the Software is
|
|
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in all
|
|
|
|
copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
|
|
SOFTWARE.
|
2024-07-09 21:59:54 +00:00
|
|
|
```
|