John Costa
3d92e58664
feat(api): add groupBy=year support to portfolio performance endpoint
This implements feature request #6221 by adding support for the `groupBy=year`
query parameter in the portfolio performance endpoint (GET /api/v2/portfolio/performance).
When `groupBy=year` is specified, the chart data is aggregated by year:
- Each year is represented by a single data point
- The date format is normalized to YYYY-01-01
- The last data point of each year is used as the representative value
The implementation follows existing patterns in the codebase (see getDividendsByGroup).
Extracted getChartByYear helper function with comprehensive unit tests.
Closes #6221
3 weeks ago
Thomas Kaul
418e8bc843
Task/remove deprecated first buy date in portfolio calculator ( #6244 )
* Remove deprecated firstBuyDate
* Update changelog
2 weeks ago
Thomas Kaul
30be7589b6
Task/refactor getDividends() from async to sync ( #6222 )
* Refactor from async to sync
2 weeks ago
Thomas Kaul
71902e39d1
Task/deprecate transactionCount in portfolio calculator and service ( #6228 )
* Deprecate transactionCount in favor of activitiesCount
* Update changelog
3 weeks ago
Thomas Kaul
18f09e88d9
Task/remove deprecated firstBuyDate from portfolio holding response ( #6220 )
* Remove deprecated firstBuyDate
* Update changelog
3 weeks ago
Thomas Kaul
4cfb785499
Task/deprecate firstBuyDate in portfolio holding response ( #6208 )
* Deprecate firstBuyDate
* Update changelog
3 weeks ago
Thomas Kaul
f19e417068
Task/remove deprecated activities from portfolio holding response ( #6157 )
* Remove deprecated activities
* Update changelog
4 weeks ago
Thomas Kaul
6727fb2b74
Bugfix/total fee calculation related to activities in custom currency ( #6191 )
* Fix total fee calculation related to activities in custom currency
* Update changelog
4 weeks ago
Thomas Kaul
09e7e6182d
Task/refactor firstOrderDate to dateOfFirstActivity in portfolio service ( #6161 )
* Refactor firstOrderDate to dateOfFirstActivity
1 month ago
Kenrick Tandrian
3943ca9f88
Feature/extend holdings endpoint to include performance with currency effects for cash positions ( #5650 )
* Extend holdings endpoint to include performance with currency effects for cash positions
* Update changelog
1 month ago
Vahant Sharma
e668c6465e
Bugfix/time in market for impersonation mode ( #6103 )
* Fix time in market for impersonation mode
* Update changelog
1 month ago
Kenrick Tandrian
a57b670d7b
Task/enforce module boundaries for api and common modules ( #5925 )
* feat(lint): allow circular self deps
* feat(lint): enforce module boundaries
* feat(lib): move data provider response interface to common
* feat(lib): move symbol item interface to common
* feat(lib): move activity interface to common
* feat(lint): temporarily disable @nx/enforce-module-boundaries for ui files
* feat(lint): temporarily disable @nx/enforce-module-boundaries for client files
* feat(lint): ignore circular deps between client and ui
* feat(common): implement barrel export for data provider response interface
* feat(common): implement barrel export for activity interface
* feat(common): implement barrel export for symbol item interface
3 months ago
Thomas Kaul
9f878c42f4
Task/refactor getHolding() in portfolio service ( #5898 )
* Refactor getHolding() if no holding has been found
* Update changelog
3 months ago
Aman
f940eb6725
Task/refactor PortfolioInvestments interface to PortfolioInvestmentsResponse interface ( #5774 )
* Refactor PortfolioInvestments to PortfolioInvestmentsResponse
4 months ago
Thomas Kaul
04d6d9cfa9
Bugfix/total buy and sell calculation in summary ( #5759 )
* Fix total buy and sell calculation related to activities in custom currency
* Update changelog
4 months ago
Dibyendu Sahoo
db2c2426c6
Task/refactor interest to interestInBaseCurrency in portfolio summary interface ( #5763 )
* Refactor interest to interestInBaseCurrency
4 months ago
Lagmator22
20da95239e
Task/refactor liabilities to liabilitiesInBaseCurrency in portfolio summary interface ( #5725 )
* Refactor liabilities to liabilitiesInBaseCurrency
4 months ago
Tanbir Ali
d2fe16c794
Task/refactor transactionCount to activitiesCount in portfolio holding response ( #5709 )
* Refactor transactionCount to activitiesCount in portfolio holding response
* Update changelog
4 months ago
Flavien Lankai-Mills
c173998677
Task/refactor fire wealth from number to object in portfolio summary interface ( #5644 )
* Refactor fire wealth from number to object in portfolio summary interface
* Update changelog
4 months ago
Tobias Kugel
cc9346f3de
Task/restructure portfolio report response ( #5454 )
* Restructure portfolio report response
* Update changelog
5 months ago
Attila Cseh
2b8a7de950
Feature/extend accounts endpoint by allocations ( #5358 )
* Extend accounts endpoint by allocations
* Update changelog
6 months ago
Thomas Kaul
52ea3c5e84
Feature/add buying power to static portfolio analysis rules ( #5365 )
* Add buying power rule
* Update changelog
6 months ago
Attila Cseh
711d716de0
Feature/extend accounts endpoint by dividend and interest ( #5335 )
* Extend accounts endpoint by dividend and interest
* Update changelog
6 months ago
Thomas Kaul
bd9aae6fec
Feature/refactor search query of holdings search ( #5333 )
* Refactor search query
* Update changelog
6 months ago
Attila Cseh
6de3db08ca
Feature/extend GET all accounts endpoint by search query filter ( #5329 )
* Extend GET all accounts endpoint by search query filter
* Update changelog
6 months ago
Thomas Kaul
7a5927592d
Feature/add support to exclude activity from analysis via tag ( #5297 )
* Add support to exclude activity from analysis via tag
* Update changelog
6 months ago
Thomas Kaul
cb30ea2979
Feature/restructure portfolio report response (part 2) ( #5282 )
* Restructure response of portfolio report endpoint
7 months ago
Joseph Bao
adc00694cf
Feature/add allocations percentage to accounts table component ( #4720 )
* Add allocations percentage to accounts table component
* Update changelog
---------
Co-authored-by: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
7 months ago
Thomas Kaul
4b03d5a926
Feature/restructure portfolio report response ( #5260 )
* Restructure response of portfolio report endpoint
* Update changelog
7 months ago
rohit
7c4cf2ca0c
Feature/set up language localization for Regional Market Cluster Risks ( #5145 )
* Set up language localization for Regional Market Cluster Risks
* Update changelog
7 months ago
Tobias Kugel
44ea3cba8d
Feature/set up localization for static portfolio analysis rules: Economic Market Cluster Risks ( #5169 )
* Set up localization for static portfolio analysis rules: Economic Market Cluster Risks
* Update changelog
7 months ago
Thomas Kaul
cf8eac3d44
Feature/rename Settings to settings in User database schema ( #5100 )
* Rename Settings to settings in User database schema
* Update changelog
7 months ago
Thomas Kaul
55e4d2fc7a
Feature/deprecate ITEM activity type in favor of BUY ( #5093 )
* Deprecate ITEM activity type in favor of BUY
* Update changelog
7 months ago
Thomas Kaul
7a97ec75f4
Feature/refactor portfolio service ( #5063 )
* Refactor portfolio service
8 months ago
Kenrick Tandrian
d9fb159c6a
Feature/integrate Fuse.js in GET holdings endpoint ( #5062 )
* Integrate Fuse.js in GET holdings endpoint
* Update changelog
---------
Co-authored-by: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
8 months ago
Thomas Kaul
433f1686e3
Feature/rename Account to account in Order database schema ( #5052 )
* Rename Account to account in Order database schema
* Update changelog
8 months ago
csehatt741
351fd8a1d4
Feature/language localization for static portfolio analysis rule: Currency Cluster Risks ( #5038 )
* Language localization for static portfolio analysis rule: Currency Cluster Risks
* Update changelog
8 months ago
Tobias Kugel
f0eb0dc7fc
Feature/localize asset class cluster risks (Equity and Fixed Income) ( #5033 )
* Localize asset class cluster risks
* Update changelog
8 months ago
Tobias Kugel
84c4d79a74
Feature/Set up account cluster risks localization (Current Investment) ( #5012 )
* Set up localization
* Update changelog
8 months ago
Thomas Kaul
738f7490f6
Feature/rename Platform to platform in Account database schema ( #4999 )
* Rename Platform to platform in Account database schema
* Update changelog
8 months ago
Tobias Kugel
7a251ef749
Feature/set up language localization for X-ray rule Account Cluster Risks (Single Account) ( #4959 )
* Set up language localization
* Update changelog
8 months ago
Tobias Kugel
3bcb19af14
Feature/migrate i18n service to injectable service ( #4829 )
* Migrate i18n service to injectable service
* Update changelog
8 months ago
Thomas Kaul
1dd3857618
Refactor getCashPositions() in portfolio service ( #4800 )
* Refactor getCashPositions()
8 months ago
Thomas Kaul
e2ec635bbf
Feature/localize X-ray rule EmergencyFundSetup ( #4835 )
* Set up language localization for static portfolio analysis rule: Emergency Fund (Set up)
* Update changelog
8 months ago
Tobias Kugel
fde8ff4bb6
Feature/localize X-ray rule FeeRatioInitialInvestment ( #4779 )
* Localize X-ray rule FeeRatioInitialInvestment
* Update changelog
---------
Co-authored-by: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
8 months ago
Thomas Kaul
cb7434a8b2
Feature/sync demo account activities based on tags ( #4797 )
* Sync demo account activities based on tags
* Update changelog
9 months ago
Thomas Kaul
c553fdf6d4
Bugfix/change investment value to take currency effects into account in holding detail dialog ( #4789 )
* Change investment value to take currency effects into account
* Update changelog
9 months ago
Thomas Kaul
a0f377e8eb
Feature/refactor ordersCount to activityCount ( #4688 )
* Refactor ordersCount to activityCount
9 months ago
Kenrick Tandrian
c38dab5ab0
Feature/extend holding endpoint by performances ( #4660 )
* Extend holding endpoint by performances
* Update changelog
9 months ago
Thomas Kaul
3646fb7f77
Feature/refactor portfolio holding response ( #4649 )
* Refactor portfolio holding response
* maxPrice -> marketPriceMax
* minPrice -> marketPriceMin
* orders -> activities
9 months ago