Browse Source

Bugfix/fix calculation of allocations by market (#3853)

* Fix calculation of allocations by market (unknown)

* Update changelog
pull/3852/head^2
Thomas Kaul 2 days ago
committed by GitHub
parent
commit
413076141c
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 4
      CHANGELOG.md
  2. 30
      apps/api/src/app/portfolio/portfolio.service.ts

4
CHANGELOG.md

@ -17,6 +17,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Optimized the portfolio calculations with smarter date interval selection
- Improved the language localization for German (`de`)
### Fixed
- Fixed an issue in the calculation of allocations by market (_Unknown_)
## 2.111.0 - 2024-09-28
### Added

30
apps/api/src/app/portfolio/portfolio.service.ts

@ -470,8 +470,7 @@ export class PortfolioService {
if (withMarkets) {
({ markets, marketsAdvanced } = this.getMarkets({
assetProfile,
valueInBaseCurrency
assetProfile
}));
}
@ -1433,11 +1432,9 @@ export class PortfolioService {
}
private getMarkets({
assetProfile,
valueInBaseCurrency
assetProfile
}: {
assetProfile: EnhancedSymbolProfile;
valueInBaseCurrency: Big;
}) {
const markets = {
[UNKNOWN_KEY]: 0,
@ -1499,16 +1496,23 @@ export class PortfolioService {
.toNumber();
}
}
} else {
markets[UNKNOWN_KEY] = new Big(markets[UNKNOWN_KEY])
.plus(valueInBaseCurrency)
.toNumber();
marketsAdvanced[UNKNOWN_KEY] = new Big(marketsAdvanced[UNKNOWN_KEY])
.plus(valueInBaseCurrency)
.toNumber();
}
markets[UNKNOWN_KEY] = new Big(1)
.minus(markets.developedMarkets)
.minus(markets.emergingMarkets)
.minus(markets.otherMarkets)
.toNumber();
marketsAdvanced[UNKNOWN_KEY] = new Big(1)
.minus(marketsAdvanced.asiaPacific)
.minus(marketsAdvanced.emergingMarkets)
.minus(marketsAdvanced.europe)
.minus(marketsAdvanced.japan)
.minus(marketsAdvanced.northAmerica)
.minus(marketsAdvanced.otherMarkets)
.toNumber();
return { markets, marketsAdvanced };
}

Loading…
Cancel
Save