Browse Source

Task/optimize portfolio holding endpoint by improving processing of historical market data (#7023)

* Improve processing of historical market data

* Update changelog
pull/7025/head^2
Thomas Kaul 1 week ago
committed by GitHub
parent
commit
f4b3a671c7
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 1
      CHANGELOG.md
  2. 9
      apps/api/src/services/data-provider/data-provider.service.ts

1
CHANGELOG.md

@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Improved the dynamic numerical precision for various values in the account detail dialog on mobile - Improved the dynamic numerical precision for various values in the account detail dialog on mobile
- Improved the dynamic numerical precision for various values in the holding detail dialog on mobile - Improved the dynamic numerical precision for various values in the holding detail dialog on mobile
- Optimized the endpoint `GET api/v1/portfolio/holding/:dataSource/:symbol` by improving the processing of the historical market data
### Fixed ### Fixed

9
apps/api/src/services/data-provider/data-provider.service.ts

@ -385,10 +385,11 @@ export class DataProviderService implements OnModuleInit {
response = marketDataByGranularity.reduce((r, marketData) => { response = marketDataByGranularity.reduce((r, marketData) => {
const { date, marketPrice, symbol } = marketData; const { date, marketPrice, symbol } = marketData;
r[symbol] = { if (!r[symbol]) {
...(r[symbol] || {}), r[symbol] = {};
[format(new Date(date), DATE_FORMAT)]: { marketPrice } }
};
r[symbol][format(new Date(date), DATE_FORMAT)] = { marketPrice };
return r; return r;
}, {}); }, {});

Loading…
Cancel
Save