A powerful iOS application for calculating and analyzing financial ratios. This comprehensive tool provides professional-grade financial analysis, company comparison, and ratio calculations with an intuitive, modern interface. Powered by real-time financial data from Financial Modeling Prep API.
- Financial Ratio Calculations: Calculate 18+ key financial ratios across 4 categories:
- Liquidity Measurement Ratios: Current Ratio, Cash Ratio, Acid-Test Ratio
- Debt Ratios: Debt Ratio, Interest Coverage, Cash Flow to Debt Ratio, Debt to Equity Ratio, Equity Ratio
- Profitability Indicator Ratios: Operating Profit Margin, Net Profit Margin, Return on Equity, Return on Debt, Return on Invested Capital, Return on Capital Employed
- Cash Flow Indicator Ratios: CFROI, Dividend Payout Ratio, Free Cash Flow-To-Sales, Retention Ratio
- Income Statement: Revenue, Operating Income, EBIT, Interest Expense, Income Tax Expense, Net Income
- Balance Sheet: Cash and Cash Equivalents, Short-term Investments, Receivables, Total Current Assets, Total Assets, Short-term Debt, Long-term Debt, Total Current Liabilities, Total Liabilities, Total Shareholders Equity
- Cash Flow Statement: Operating Cash Flow, Dividend Payments, Free Cash Flow
- Company Profiles: Create and manage company profiles with logos and information
- Fiscal Periods: Support for different fiscal periods (Quarterly, Annual)
- Company Comparison: Side-by-side comparison of financial ratios between companies
- Pre-loaded Companies: Extensive database of companies with financial data
- Multi-language Support: English, Japanese, Chinese (Simplified, Traditional, Hong Kong)
- Modern UI: Clean, intuitive interface with smooth animations
- Offline Capability: Core functionality works without internet connection
- Data Persistence: Core Data integration for local data storage
- In-App Purchases: Remove ads functionality
- Google Mobile Ads: Integrated advertising system
- App Store Integration: Store review prompts and ratings
- Social Sharing: Share results and company comparisons
- Feedback System: Built-in feedback and support features
Financial Ratios Go/
βββ AppDelegate.swift # Main app delegate
βββ FRGBaseModule/ # Base UI components
βββ Home/ # Main app functionality
β βββ Company/ # Company management
β βββ Controller/ # Main view controllers
β βββ CreateNew/ # Creation flows
β βββ Menu/ # Settings and menu
β βββ Model/ # Data models
β βββ View/ # Custom UI components
βββ RatioResult/ # Results display
βββ Resource/ # Static resources
βββ Utilities/ # Helper classes and extensions
βββ Assets.xcassets/ # App icons and images
FinancialRatio.swift: Defines all financial ratio categories and calculationsFinancialStatement.swift: Income statement, balance sheet, and cash flow statement modelsCompany.swift: Company profile and information modelFiscalPeriod.swift: Fiscal period management
- Single Analysis: Calculate ratios for individual companies
- Comparison Mode: Compare financial ratios between two companies
- Company Management: CRUD operations for company profiles
- Data Persistence: Core Data integration for local storage
- IQKeyboardManager (~> 6.2.1): Keyboard management
- SnapKit (~> 5.0.0): Auto Layout DSL
- EFCountingLabel: Animated counting labels
- Kingfisher: Image loading and caching
- SkeletonView: Loading state animations
- Google-Mobile-Ads-SDK: Advertisement integration
- MBProgressHUD: Progress indicators
- Then: Object initialization
- Toast-Swift: Toast notifications
- Swift: Primary programming language
- UIKit: User interface framework
- Core Data: Local data persistence
- StoreKit: In-app purchases
- Foundation: Core functionality
- iOS (iPhone and iPad)
- macOS (via Mac Catalyst)
- Xcode 12.0 or later
- iOS 12.0+ deployment target
- CocoaPods for dependency management
-
Clone the repository
git clone https://github.com/banghuazhao/financial-ratios-go.git cd financial-ratios-go -
Install dependencies
pod install
-
Open the workspace
open "Financial Ratios Go.xcworkspace" -
Build and run
- Select your target device or simulator
- Press
Cmd + Rto build and run
The app uses Google Mobile Ads for monetization. Update the following in Info.plist:
<key>GADApplicationIdentifier</key>
<string>YOUR_ADMOB_APP_ID</string>For production builds:
- Update bundle identifier
- Configure signing certificates
- Set up App Store Connect metadata
- Select a company from the list or create a new one
- Choose a fiscal period
- Enter financial statement data
- View calculated financial ratios with explanations
- Select two companies to compare
- Choose fiscal periods for each company
- Enter financial data for both companies
- View side-by-side ratio comparison
- Add Company: Create new company profiles with logos
- Edit Company: Modify existing company information
- Fiscal Periods: Manage different reporting periods
- Data Import: Import financial data from external sources
The app supports multiple languages:
- English (en)
- Japanese (ja)
- Chinese Simplified (zh-Hans)
- Chinese Traditional (zh-Hant)
- Chinese Hong Kong (zh-HK)
Localization files are located in the respective .lproj directories.
- Follow Swift style guidelines
- Use meaningful variable and function names
- Add comments for complex business logic
- Maintain consistent indentation
- Create new models in the
Modeldirectory - Add view controllers in appropriate directories
- Update the tab bar controller if needed
- Add localization strings
- Test on multiple devices and orientations
- Unit tests for financial calculations
- UI tests for user flows
- Integration tests for data persistence
- Performance testing for large datasets
- iOS 12.0 or later
- iPhone and iPad compatible
- Universal app (iPhone + iPad)
- Mac Catalyst support
- Primary: Finance
- Secondary: Business
- No personal data collection
- Financial data stored locally
- Optional analytics for app improvement
We welcome contributions! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow existing code patterns
- Add appropriate documentation
- Include unit tests for new features
- Update localization files
- Test on multiple devices
This project is licensed under the MIT License - see the LICENSE file for details.
Banghua Zhao
- Created: September 2019
- Email: banghuazhao@gmail.com
- GitHub: @banghuazhao
- Financial ratio formulas and explanations
- UI/UX design inspiration
- Community feedback and suggestions
- Open source contributors
For support and questions:
- Create an issue on GitHub
- Contact through the app's feedback feature
- Email: banghuazhao@gmail.com
Financial Ratios Go - Making financial analysis accessible and intuitive for everyone. π


