Skip to content

aakash-code/openequity

OpenEquity Research Platform

License: MIT Python Version Node Version TypeScript

Democratizing professional-grade equity research tools for everyone.

OpenEquity is the world's first comprehensive open-source equity research platform that bridges the $20,000+ annual cost barrier of professional financial terminals. We combine equity research tools, financial modeling capabilities, CFA curriculum integration, and collaborative features in a single, free platform.


🎯 Vision

Create a world where anyoneβ€”students, individual investors, emerging market professionalsβ€”has access to institutional-quality financial analysis tools without the prohibitive costs of Bloomberg Terminal, FactSet, or similar platforms.

✨ Key Features

Core Capabilities

  • πŸ“Š Professional Equity Research Tools - Comprehensive financial analysis suite
  • πŸ“ˆ Integrated Spreadsheet - Native Excel-compatible spreadsheet with financial formulas
  • πŸ’Ή Real-time Market Data - Live quotes and historical data from multiple sources
  • πŸ€– AI-Powered Analysis - NLP-driven earnings call analysis and sentiment scoring
  • πŸŽ“ CFA Integration - Native curriculum alignment and practice tools
  • πŸ‘₯ Collaborative Research - Real-time co-editing and team workspaces
  • πŸͺ Model Marketplace - Share and fork financial models

Competitive Advantages

Feature Bloomberg Terminal OpenEquity
Annual Cost $24,000+ Free (Open Source)
Spreadsheet Integration Separate Plugin Native
CFA Curriculum None Integrated
AI Analysis Limited Advanced NLP/ML
Collaboration Limited Full Suite
Customization Restricted Unlimited

πŸš€ Quick Start

Prerequisites

  • Docker & Docker Compose (recommended)
  • OR: Node.js 18+, Python 3.11+, PostgreSQL 15+

Option 1: Docker (Recommended)

# Clone the repository
git clone https://github.com/yourusername/openequity.git
cd openequity

# Start all services
make dev-setup

# Or manually:
docker-compose up -d

Access the application:

Option 2: Local Development

Backend Setup

cd backend

# Create virtual environment
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Configure environment
cp .env.example .env
# Edit .env with your settings

# Run database migrations
alembic upgrade head

# Start server
uvicorn app.main:app --reload

Frontend Setup

cd frontend

# Install dependencies
npm install

# Configure environment
cp .env.example .env.local
# Edit .env.local with your settings

# Start development server
npm run dev

πŸ“ Project Structure

openequity/
β”œβ”€β”€ frontend/              # Next.js frontend application
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/          # Next.js app router
β”‚   β”‚   β”œβ”€β”€ components/   # React components
β”‚   β”‚   β”œβ”€β”€ lib/          # Utilities and configs
β”‚   β”‚   β”œβ”€β”€ hooks/        # Custom React hooks
β”‚   β”‚   └── types/        # TypeScript types
β”‚   └── package.json
β”‚
β”œβ”€β”€ backend/              # FastAPI backend application
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ api/         # API routes
β”‚   β”‚   β”œβ”€β”€ core/        # Core configuration
β”‚   β”‚   β”œβ”€β”€ db/          # Database connection
β”‚   β”‚   β”œβ”€β”€ models/      # SQLAlchemy models
β”‚   β”‚   β”œβ”€β”€ schemas/     # Pydantic schemas
β”‚   β”‚   β”œβ”€β”€ services/    # Business logic
β”‚   β”‚   └── ml/          # ML models
β”‚   └── requirements.txt
β”‚
β”œβ”€β”€ database/             # Database schemas and migrations
β”‚   β”œβ”€β”€ schemas/         # SQL schema files
β”‚   β”œβ”€β”€ migrations/      # Alembic migrations
β”‚   └── seeds/           # Sample data
β”‚
β”œβ”€β”€ infrastructure/       # Infrastructure as code
β”‚   β”œβ”€β”€ docker/          # Docker configurations
β”‚   β”œβ”€β”€ kubernetes/      # K8s manifests
β”‚   └── nginx/           # Nginx configs
β”‚
β”œβ”€β”€ docs/                # Documentation
β”‚   β”œβ”€β”€ PDR.md          # Product Design Requirements
β”‚   β”œβ”€β”€ ROADMAP.md      # Development roadmap
β”‚   └── api/            # API documentation
β”‚
β”œβ”€β”€ .github/             # GitHub Actions workflows
β”œβ”€β”€ docker-compose.yml   # Docker Compose configuration
└── Makefile            # Development commands

πŸ› οΈ Technology Stack

Frontend

  • Framework: Next.js 14+ (React 18+)
  • Language: TypeScript 5.0+
  • Styling: Tailwind CSS 3.0+
  • State Management: Redux Toolkit
  • Data Fetching: TanStack Query
  • Charts: Recharts + D3.js
  • Spreadsheet: Luckysheet/OnlyOffice
  • Testing: Jest + React Testing Library

Backend

  • Framework: FastAPI 0.110+
  • Language: Python 3.11+
  • Database: PostgreSQL 15+ with TimescaleDB
  • ORM: SQLAlchemy 2.0+
  • Cache: Redis 7.0+
  • Search: Elasticsearch 8.0+
  • Queue: Celery + RabbitMQ
  • ML: PyTorch/TensorFlow
  • Testing: pytest

Infrastructure

  • Containerization: Docker
  • Orchestration: Kubernetes
  • CI/CD: GitHub Actions
  • Monitoring: Prometheus + Grafana
  • Logging: ELK Stack

πŸ§ͺ Testing

Backend Tests

# Run all tests
cd backend
pytest

# Run with coverage
pytest --cov=app tests/

# Run specific test file
pytest tests/test_api.py -v

Frontend Tests

# Run all tests
cd frontend
npm test

# Run in watch mode
npm run test:watch

# Run with coverage
npm run test:coverage

End-to-End Tests

# Using Cypress
npm run e2e

# Using Playwright
npm run test:e2e

πŸ“š Documentation


πŸ—ΊοΈ Roadmap

Phase 1: Foundation (Months 1-3) - Current

  • Basic data infrastructure
  • Core API endpoints
  • Spreadsheet integration
  • User authentication
  • Company profiles

Phase 2: Core Features (Months 4-6)

  • Financial analysis engine
  • Valuation models
  • Real-time data feeds
  • Basic collaboration
  • Mobile responsive design

Phase 3: Advanced Features (Months 7-9)

  • AI/ML capabilities
  • CFA integration
  • Model marketplace
  • Advanced collaboration
  • API documentation

Phase 4: Scale & Polish (Months 10-12)

  • Performance optimization
  • Mobile apps
  • Enterprise features
  • Comprehensive testing
  • Production deployment

See ROADMAP.md for detailed timeline.


🀝 Contributing

We welcome contributions from developers, finance professionals, and anyone passionate about democratizing financial tools!

How to Contribute

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please read our Contributing Guidelines for details on our code of conduct and development process.

Areas We Need Help

  • πŸ”§ Backend Development (Python/FastAPI)
  • 🎨 Frontend Development (React/Next.js)
  • πŸ“Š Financial Modeling Expertise
  • πŸ€– Machine Learning / NLP
  • πŸ“ Documentation
  • πŸ§ͺ Testing & QA
  • πŸŽ“ CFA Curriculum Integration

πŸ“Š Target Users

Primary: CFA Candidates

  • 300,000+ globally
  • Need affordable practice tools
  • Require professional-grade analysis

Secondary: Finance Students

  • 2M+ globally
  • Limited access to expensive tools
  • Seeking hands-on experience

Tertiary: Independent Investors

  • Individual researchers
  • Emerging market analysts
  • Small investment firms

🎯 Success Metrics

Year 1 Goals:

  • 50,000+ active users
  • 100+ contributing developers
  • 1,000+ financial models in marketplace
  • 25+ university adoptions
  • CFA Institute partnership

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

Why MIT?

We chose MIT for maximum flexibility and adoption, allowing:

  • βœ… Free use, modification, and distribution
  • βœ… Commercial use
  • βœ… Private use
  • βœ… Patent use (with proper attribution)

πŸ™ Acknowledgments

  • CFA Institute for the inspiration
  • Open-source community for the tools
  • All contributors who make this possible

πŸ“ž Contact & Support


🌟 Star History

If you find this project useful, please consider giving it a star! ⭐

Star History Chart


πŸ’‘ Why OpenEquity?

Financial markets should be accessible to everyone, not just those who can afford $20,000+ annual subscriptions. OpenEquity levels the playing field by providing:

  • Education: Help students learn professional tools
  • Opportunity: Enable emerging market analysts
  • Innovation: Foster collaborative research
  • Transparency: Open-source financial analysis

Join us in democratizing finance! πŸš€


Made with ❀️ by the OpenEquity Community

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published