How we calculate things

We try to be honest about what's accurate and what's estimated.

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.

Dividends

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).

Currency conversion

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.

Fees and taxes

We ignore brokerage fees and taxes for now. The engine is built so they can be added later if needed.

Data providers

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.

When we'll warn you

We display a badge on every holding showing data quality. Look for: 'Partial dividend data', 'FX estimated', or 'Short price history'.