Data Sources
Where the numbers in the simulator come from, and what that means for how you read them.
Historical prices and dividends
Daily price and dividend history is retrieved from Yahoo Finance using yfinance, an open-source Python library. yfinance is an independent project; it is not affiliated with or endorsed by Yahoo, and neither is InvestGraph.
For each simulation, our server requests the security's daily history up to your chosen end date and uses two fields from it:
- Close: the daily closing price, requested without dividend adjustment. Every simulated purchase uses this price.
- Dividends: the cash dividend per share, recorded on each ex-dividend date. The simulation applies these as an explicit cash flow, which is why it deliberately avoids dividend-adjusted prices that would count them twice.
How stock splits and other corporate actions are reflected in these figures is determined by the data source. Prices are in the currency the security trades in; InvestGraph does not convert currencies.
To keep the service fast and avoid unnecessary requests, fetched history is cached in memory on our server for up to one hour.
Ticker symbol search
The list of symbols suggested as you type in the ticker field is built from public listing directories:
- US listings: the Nasdaq Trader symbol directory files, which cover securities listed on Nasdaq and other US exchanges.
- Korean listings: the listed-company list published on KIND (kind.krx.co.kr), the Korea Exchange's corporate disclosure site.
This list is refreshed periodically and is used only for search suggestions. A symbol appearing in the list does not guarantee that price history is available for it, and you can type symbols that are not in the list.
Accuracy and limitations
We do not create or verify the underlying market data. Please keep in mind that:
- Data may be delayed. The most recent trading days may not be available yet.
- Data may be adjusted or revised. Providers sometimes restate historical prices and dividends, for example after corporate actions, so the same simulation can give slightly different results at different times.
- Data may be incomplete or wrong. Missing days, incorrect dividend amounts, or other errors occasionally occur, especially for older history and less widely traded securities.
- Some securities are unavailable. Delisted securities and very old history are often missing, which can introduce survivorship bias.
- Only daily closing prices are used. Intraday prices, opening prices, and the price you would actually have paid at a broker are not modeled.
Treat every result as an approximation for learning purposes, not as a record of what an actual account would have earned. If you spot a figure that looks wrong, please let us know.
No affiliation
InvestGraph is not affiliated with, endorsed by, or sponsored by Yahoo, Nasdaq, or the Korea Exchange. All trademarks belong to their respective owners.