Browse Source

performance percentage is 100% if average buy price is zero and performance value is not null

pull/4793/head
bptrgx 1 month ago
parent
commit
6db676e636
  1. 8
      apps/api/src/app/portfolio/calculator/roai/portfolio-calculator.ts

8
apps/api/src/app/portfolio/calculator/roai/portfolio-calculator.ts

@ -783,6 +783,8 @@ export class RoaiPortfolioCalculator extends PortfolioCalculator {
? totalGrossPerformance.div(
timeWeightedAverageInvestmentBetweenStartAndEndDate
)
: totalGrossPerformance
? new Big(1)
: new Big(0);
const grossPerformancePercentageWithCurrencyEffect =
@ -792,6 +794,8 @@ export class RoaiPortfolioCalculator extends PortfolioCalculator {
? totalGrossPerformanceWithCurrencyEffect.div(
timeWeightedAverageInvestmentBetweenStartAndEndDateWithCurrencyEffect
)
: totalGrossPerformanceWithCurrencyEffect
? new Big(1)
: new Big(0);
const feesPerUnit = totalUnits.gt(0)
@ -809,6 +813,8 @@ export class RoaiPortfolioCalculator extends PortfolioCalculator {
? totalNetPerformance.div(
timeWeightedAverageInvestmentBetweenStartAndEndDate
)
: totalNetPerformance
? new Big(1)
: new Big(0);
const netPerformancePercentageWithCurrencyEffectMap: {
@ -902,6 +908,8 @@ export class RoaiPortfolioCalculator extends PortfolioCalculator {
netPerformancePercentageWithCurrencyEffectMap[dateRange] = average.gt(0)
? netPerformanceWithCurrencyEffectMap[dateRange].div(average)
: netPerformanceWithCurrencyEffectMap[dateRange]
? new Big(1)
: new Big(0);
}

Loading…
Cancel
Save