diff --git a/apps/api/src/app/portfolio/portfolio-calculator.ts b/apps/api/src/app/portfolio/portfolio-calculator.ts index 91914f3c7..c625e2b51 100644 --- a/apps/api/src/app/portfolio/portfolio-calculator.ts +++ b/apps/api/src/app/portfolio/portfolio-calculator.ts @@ -1382,7 +1382,9 @@ export class PortfolioCalculator { let unitPrices = Object.keys(marketSymbolMap).reduce( (obj, date) => - (obj = Object.assign(obj, { [date]: marketSymbolMap[date][symbol] })), + (obj = Object.assign(obj, { + [date]: marketSymbolMap[date][symbol]?.mul(exchangeRates[date]) + })), {} ); diff --git a/apps/api/src/app/portfolio/portfolio.service.ts b/apps/api/src/app/portfolio/portfolio.service.ts index d0baa06b8..082721701 100644 --- a/apps/api/src/app/portfolio/portfolio.service.ts +++ b/apps/api/src/app/portfolio/portfolio.service.ts @@ -317,14 +317,21 @@ export class PortfolioService { withDataDecimation: false }); - let investments = items.map( - ({ date, investmentValueWithCurrencyEffect }) => { + let investments: InvestmentItem[]; + + if (groupBy) { + investments = portfolioCalculator.getInvestmentsByGroup({ + groupBy, + data: items + }); + } else { + investments = items.map(({ date, investmentValueWithCurrencyEffect }) => { return { date, investment: investmentValueWithCurrencyEffect }; - } - ); + }); + } let streaks: PortfolioInvestments['streaks'];