Prices
We use adjusted closing prices, which account for stock splits and dividend distributions. If the market was closed on a selected date, we use the next available trading day.
We try to be honest about what's accurate and what's estimated.
We use adjusted closing prices, which account for stock splits and dividend distributions. If the market was closed on a selected date, we use the next available trading day.
Dividend data comes from EODHD with Yahoo Finance as a fallback. Coverage is excellent for US stocks and varies for UAE and Saudi stocks — some smaller GCC names may have incomplete histories. Reinvestment is encoded via the adjusted closing price (which already accounts for both stock splits and dividend distributions).
We use Frankfurter.app for historical and current FX rates. Historical FX is applied at each investment moment. Current FX is applied to today's value. We never silently mix currencies.
We ignore brokerage fees and taxes for now. The engine is built so they can be added later if needed.
Stock data: EODHD (paid, accurate) with Yahoo Finance as automatic fallback for symbols EODHD doesn't cover. FX: Frankfurter.app. When neither covers a symbol, a deterministic mock fills in so the UI stays usable — those results are tagged with a “Demo data” badge.
We display a badge on every holding showing data quality. Look for: 'Partial dividend data', 'FX estimated', or 'Short price history'.