NOTE: This project utilises web scraping technology. Please use responsibly and dont send too many requests.
I'm passionate about financial markets and investing. I'm also a motivated programmer who likes to apply his skills to solve problems. After spending hours developing Excel models manually, I decided to build an application to automatically scrape the web for company fundamentals and create Excel models. The application I have developed has saved me hours of time when valuing companies using the dividend discount financial model.
yfinance==0.1.63
requests==2.23.0
beautifulsoup4==4.9.1
Eel==0.14.0
pandas==1.2.4
openpyxl==3.0.10
pip3 install -r requirements.txt
The application takes four parameters which enable it to find and build the model. The company ticker symbol, current price and company float are all standard information. However, the company name is more specific. I'm currently using web scraping to gather the data related to specific companies from a site called https://www.macrotrends.net. This site provides the fundamentals for a specific company. The input for the company name is the URL parameter for that particular company. For example, coca cola becomes cocacola etc.
Below is an example valuation of Taiwan Semiconductor Manufacturing (TSM). We can see that the historical intrinsic value has usually been above its current share price. This could explain why the stock rose until 2021 (share price is under the company's intrinsic value, so investors buy the shares expecting the stock to rise). In 2021 the valuation became too high, and it was above its 'intrinsic value', which then caused the price to fall back in 2022.