https://github.com/chemaclass/transactions-aggregator
This is a pet project to calculate/aggregate data from the resulting export file of a history of transactions.
https://github.com/chemaclass/transactions-aggregator
aggregator csv php transactions
Last synced: 3 months ago
JSON representation
This is a pet project to calculate/aggregate data from the resulting export file of a history of transactions.
- Host: GitHub
- URL: https://github.com/chemaclass/transactions-aggregator
- Owner: Chemaclass
- License: other
- Created: 2022-01-04T10:57:46.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-01-15T08:36:45.000Z (over 3 years ago)
- Last Synced: 2025-03-30T13:38:24.400Z (3 months ago)
- Topics: aggregator, csv, php, transactions
- Language: PHP
- Homepage:
- Size: 258 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Transactions Aggregator
[](https://github.com/Chemaclass/cdc-transactions-history/actions/workflows/ci.yml)
[](https://scrutinizer-ci.com/g/Chemaclass/cdc-transactions-history/?branch=master)
[](https://scrutinizer-ci.com/g/Chemaclass/cdc-transactions-history/?branch=master)
[](https://shepherd.dev/github/Chemaclass/cdc-transactions-history)
[](LICENSE)This is a pet project to gather interesting data from the resulting export file of the history transactions from the
Crypto.com app. For example, how much investment have you put into a particular ticker.### Why?
I used the "Crypto.com App" for learning purposes, and I would like to read the history as a csv that you can download
with all your transactions, and from it, I would like to extract and aggregate some data as I want.For this reason I created this project, to be able to read that file and get the data I am interested with, while
practicing TDD and some software architecture decisions just for fun.### How does it work
1. It applies a concrete aggregator for each transaction type group.
2. The mapping with the aggregators is chosen on the fly when mapping the transactions. See `CsvHeadersTransactionMapper`.### Commands
- [aggregate](src/TransactionsHistory/Domain/Service/AggregateService.php):
- `php bin/console aggregate data/transactions.csv --currency=BCH,ETH,ADA`
- Options
- `type`: filter by transaction type (optional; allowed multiple)
- `currency`: filter by currency/ticker (optional; allowed multiple)