h1net
49a07ea763
fix: handle missing exchange rates gracefully instead of crashing
When exchange rate data is unavailable (e.g. on a fresh install before
the data gathering job completes), toCurrencyAtDate() returned undefined.
This propagated into new Big(undefined) in PortfolioCalculator and into
number accumulations in PortfolioService, crashing the Overview, Portfolio
and Holdings pages with "[big.js] Invalid number".
Return 0 instead of undefined from toCurrencyAtDate() when no exchange
rate can be found, consistent with the existing pattern in #6397 . Add
defensive ?? 0 guards at call sites in ActivitiesService and
PortfolioService for additional safety.
The error log is preserved so missing exchange rates are still flagged
in the server logs without crashing the frontend.
Fixes #6482
2 weeks ago
Thomas Kaul
a3b1b922d2
Task/implement OnModuleInit interface in AssetsController ( #6451 )
* Implement OnModuleInit interface
3 weeks ago
Thomas Kaul
269b981e86
Task/implement OnModuleInit in I18nService ( #6448 )
* Implement onModuleInit
3 weeks ago
Thomas Kaul
efa93a3b98
Feature/setup Bull Dashboard ( #6501 )
* Initial setup
* Update changelog
3 weeks ago
Thomas Kaul
41f0dfda65
Task/debounce portfolio and asset profile change listeners ( #6505 )
* Debounce portfolio and asset profile change event listeners
* Update changelog
3 weeks ago
Thomas Kaul
80057ccc73
Bugfix/redis health check race condition ( #6504 )
* Fix false Redis health check failures caused by race condition
* Update changelog
3 weeks ago
Thomas Kaul
e5a771671f
Task/rename order permissions to activity ( #6494 )
* Rename order permissions to activity
3 weeks ago
Thomas Kaul
07b165f79a
Task/add asset profile to portfolio position interface (part 3) ( #6502 )
* Reorder
3 weeks ago
Thomas Kaul
7ac32ee6f3
Task/add asset profile to portfolio position interface (part 2) ( #6500 )
* Add currency to asset profile
3 weeks ago
Thomas Kaul
4a832f12ca
Task/deprecate order endpoints in favor of activities endpoints ( #6446 )
* Deprecate order endpoints in favor of activities endpoints
* Update changelog
4 weeks ago
Thomas Kaul
b7d976d2ff
Task/add asset profile to portfolio position interface ( #6473 )
* Add asset profile
* Update changelog
4 weeks ago
Thomas Kaul
86d4d6ed64
Task/implement OnModuleInit interface in TwitterBotService ( #6447 )
* Implement OnModuleInit interface
4 weeks ago
Thomas Kaul
8e47e198fa
Task/remove deprecated committed funds from summary of portfolio details ( #6442 )
* Remove deprecated committedFunds
* Update changelog
4 weeks ago
Thomas Kaul
b5eb7d9884
Bugfix/resolve data source transformation in export and performance endpoint ( #6411 )
* Resolve data source transformation in errors of performance endpoint and export functionality
* Update changelog
1 month ago
Thomas Kaul
08c04e69cf
Task/exclude scraper configuration and symbol mapping from import and export functionality ( #6415 )
* Exclude scraper configuration and symbol mapping from import and export
* Update changelog
1 month ago
Thomas Kaul
98fb0b86af
Task/improve usability of asset profile details dialog for currencies ( #6406 )
* Improve usability
* Update changelog
1 month ago
Thomas Kaul
f2c81ada90
Task/refactor $queryRawUnsafe() in data provider service ( #6408 )
* Refactor $queryRawUnsafe()
* Update changelog
1 month ago
Thomas Kaul
a7434c9ba7
Task/remove deprecated fee ratio X-ray rule ( #6364 )
* Remove deprecated static portfolio analysis rule: Fees (Fee Ratio)
* Update changelog
1 month ago
Abhishek Garg
48f1c064bc
Bugfix/handle X-ray rule exception when market price is missing ( #6397 )
* Handle X-ray rule exception when market price is missing
* Update changelog
1 month ago
Thomas Kaul
3eb9d53220
Bugfix/validation of valuables ( #6372 )
* Fix validation of valuables
* Update changelog
1 month ago
Thomas Kaul
b888005144
Task/refresh cryptocurrencies list 20260216 ( #6342 )
* Update cryptocurrencies.json
* Update changelog
1 month ago
David Requeno
117a938bad
Feature/add new market data preset ( #6346 )
* Add new market data preset (no activities)
* Update changelog
1 month ago
Thomas Kaul
0d67478cc3
Task/harmonize validation for create activity endpoint with existing import activity logic ( #6349 )
* Harmonize validation
* Update changelog
1 month ago
Thomas Kaul
8c88ce918f
Feature/add support for custom cryptocurrencies defined in database ( #6344 )
* Add support for custom cryptocurrencies defined in database
* Update changelog
1 month ago
Thomas Kaul
75d3494fa4
Task/add support for cryptocurrency Sky ( #6338 )
* Add support for Sky
* Update changelog
1 month ago
Thomas Kaul
e59421f008
Feature/add static portfolio analysis fee ratio rule based on total investment volume ( #6332 )
* Add fee ratio rule based on total investment volume
* Update changelog
2 months ago
Thomas Kaul
f38a2d7ff1
Bugfix/investment value in portfolio summary ( #6329 )
* Include currency effects in investment value of portfolio summary
* Update changelog
2 months ago
Thomas Kaul
299bca2780
Task/extend error messages in scraper configuration ( #6322 )
* Improve error handling
* Update changelog
2 months ago
Thomas Kaul
8a98c0a3f0
Task/ignore nested ETFs when fetching top holdings in Yahoo Finance service ( #6319 )
* Ignore nested ETFs in top holdings
* Update changelog
2 months ago
Varun Chawla
c489a1cc00
Bugfix/integrate missing valueInBaseCurrency in import activities response ( #6294 )
* Integrate missing valueInBaseCurrency in import activities response
* Update changelog
2 months ago
Neeraj Bachani
373a4857ac
Bugfix/reset buy tracking variables when position closes ( #6298 )
* Reset buy tracking variables when position closes
* Update changelog
---------
Co-authored-by: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
2 months ago
Thomas Kaul
e361f09398
Bugfix/expand date range to cover full day in exchange rate calculation ( #6311 )
* Expand date range (start to end of day)
* Update changelog
2 months ago
Anurag Choudhury
d7349cd621
Bugfix/adapt accounts and tags of assistant in impersonation mode ( #6231 )
* Adapt accounts and tags of assistant in impersonation mode
* Update changelog
---------
Co-authored-by: Thomas Kaul <4159106+dtslvr@users.noreply.github.com>
2 months ago
Thomas Kaul
f57726972e
Task/refresh cryptocurrencies list 20260207 ( #6289 )
* Update cryptocurrencies.json
* Update changelog
2 months ago
Thomas Kaul
63e75942a8
Task/remove deprecated transaction count in portfolio calculator and service ( #6288 )
* Remove deprecated transactionCount in portfolio calculator and service
* Update changelog
2 months ago
Thomas Kaul
348ee5de8d
Task/add missing transform data source interceptors in market data controller ( #6287 )
* Add missing transform data source interceptors
2 months ago
Thomas Kaul
5adacda88f
Task/remove deprecated session id from create stripe checkout session response ( #6280 )
* Remove deprecated sessionId
2 months ago
Thomas Kaul
4ff372f020
Task/remove deprecated transaction count in get admin endpoint ( #6281 )
* Remove deprecated transaction count
* Update changelog
2 months ago
Thomas Kaul
eb6177d2e5
Bugfix/fix exception when fetching top holdings in Yahoo Finance service ( #6279 )
* Add missing guard
* Update changelog
2 months ago
Thomas Kaul
0365b9b614
Task/upgrade stripe to version 20.3.0 ( #6273 )
* Upgrade stripe to version 20.3.0
* Update changelog
2 months ago
Thomas Kaul
0034ed0adf
Feature/introduce fast-redact in value redaction interceptor ( #6269 )
* Introduce fast-redact
* Update changelog
---------
Co-authored-by: Valentin Zickner <valentin@coderworks.de>
2 months ago
Thomas Kaul
9c4638c185
Feature/add impersonation mode in get account balances endpoint ( #6272 )
* Add impersonation mode
* Update changelog
2 months ago
Thomas Kaul
eae2c20dfe
Task/deprecate transactionCount in GET api/v1/admin endpoint ( #6265 )
* Deprecate transactionCount in favor of activitiesCount
* Update changelog
2 months ago
Kenrick Tandrian
7dbacdbf0f
Feature/extract top holdings from Yahoo Finance for ETF and mutual funds ( #6254 )
* Extract top holdings from Yahoo Finance for ETF and mutual funds
* Update changelog
2 months ago
Thomas Kaul
418e8bc843
Task/remove deprecated first buy date in portfolio calculator ( #6244 )
* Remove deprecated firstBuyDate
* Update changelog
2 months ago
Thomas Kaul
30be7589b6
Task/refactor getDividends() from async to sync ( #6222 )
* Refactor from async to sync
2 months ago
Thomas Kaul
f364874e27
Task/extend portfolio calculator tests with investments by year ( #6240 )
* Extend tests with investmentsByYear
2 months ago
Thomas Kaul
f03b8f097e
Task/refresh cryptocurrencies list 20260123 ( #6236 )
* Update cryptocurrencies.json
* Update changelog
2 months ago
Thomas Kaul
13031aaad3
Task/deprecate firstBuyDate in portfolio calculator ( #6239 )
* Deprecate firstBuyDate in favor of dateOfFirstActivity
* Update changelog
2 months ago
Thomas Kaul
71902e39d1
Task/deprecate transactionCount in portfolio calculator and service ( #6228 )
* Deprecate transactionCount in favor of activitiesCount
* Update changelog
2 months ago