Power BI - Financial Performance Comparison

💡 Introduction

Developed a Power BI dashboard that automatically tracks and visualizes the financial performance of OTC companies in Taiwan’s computer and peripheral equipment industry. The dataset—covering indicators such as gross margin, ROE, current ratio, asset turnover, and revenue growth—is parsed daily from 公開資訊觀測站 (MOPS) using Python and GitHub Actions for automated data refresh, then imported into Power BI for visualization.
All indicators are organized into six analytical categories: financial structure, solvency, operational efficiency, profitability, growth, and cash flow.

Technical Approach
1. Data Extraction & Parsing • Used Selenium + BeautifulSoup to navigate and extract dynamic content from MOPS. • Incorporated error handling, retry logic, and headless browsing to ensure robustness. • Consolidated multiple financial tables per company and merged them into a single dataframe.
2. Data Storage & Management • Stored extracted data as CSV files in a structured finance_data directory. • Implemented incremental updates and duplicate removal to maintain clean, up-to-date datasets. • Optionally, data can be imported into SQL databases (PostgreSQL/MySQL/SQL Server) for scalability and integration with BI pipelines.
3. Automated Scheduling • Used GitHub Actions to refresh data daily at 23:30 Taiwan time. • Automated workflow ensures that the dashboard always reflects the latest financial data.
4. Dashboard & Visualization Design • Flexible comparison between companies, industry averages, and benchmarks.

🗝 Keywords: Python, ETL, Power BI


📊 Dashboard Showcase

Initially, a Line & Bar Chart was used to compare the selected company against industry peers and averages, but it appeared visually crowded. To improve clarity and insight, I designed alternative visualizations:
Band Chart: Allows switching between average and median benchmarks, with performance bands (min–max, 10–90%, 15–85%, IQR) to better represent variation without clutter.
Vertical Reference Line Chart: Emphasizes specific periods when a company outperformed or underperformed its benchmark.
Small Multiples: Consolidates all financial categories into a single overview, highlighting best and worst performance periods and marking below-average results.




Github Repository