- Overview
- Users & Features
- Technical
- Implementation (Current)
Product Requirements Document - Implementation
8. UI/UX Requirementsβ
8.1 Design Principlesβ
- Simplicity: Complex data presented in digestible formats
- Speed: Instant feedback, no loading spinners for < 500ms operations
- Education: Contextual help without overwhelming users
- Accessibility: WCAG 2.1 AA compliance
- Mobile-First: Responsive design, touch-friendly
8.2 Key Screensβ
1. Homepage / Stock Screenerβ
Purpose: Primary entry point, stock discovery
Layout:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Header: Logo | Search | Login/Account β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Hero: "Find your next investment in 60 seconds" β
β Templates: [High Dividend] [Growth] [Value] [Custom] β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Filters Panel (Left) β Results Table (Right) β
β ββββββββββββββββββββββββ β ββββββββββββββββββββββββββ β
β β Market: [x] KOSPI β β β Stock | Price | PER | β β
β β [ ] KOSDAQ β β β Samsung | 70,000 | 12 β β
β β β β β ... β β
β β Valuation β β ββββββββββββββββββββββββββ β
β β PER: [__] - [15] β β Pagination: 1 2 3 ... 10 β
β β PBR: [__] - [1.0] β β β
β β β β β
β β Growth β β β
β β Revenue Growth: β β β
β β [10%] - [__] β β β
β β β β β
β β [Apply Filters] β β β
β ββββββββββββββββββββββββ β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Today's Hot Stocks: [Stock1] [Stock2] [Stock3] ... β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Interactions:
- Click template β Auto-populate filters
- Adjust sliders β Real-time result update (debounced)
- Click stock β Navigate to detail page
- Sort by column header
- Export to CSV button (Premium)
2. Stock Detail Pageβ
Purpose: In-depth analysis of individual stock
Layout:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Header β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Samsung Electronics (005930) [Watchlist] β
β KOSPI | Semiconductors β
β β©70,000 (+2,500 +3.57%) β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Tabs: [Overview] [Financials] [Valuation] [Technicals] β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Price Chart (TradingView) β β
β β β β
β β [1D] [1W] [1M] [3M] [6M] [1Y] [5Y] β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β βββββββββββββββββββ βββββββββββββββββββ ββββββββββββββββ β
β β Valuation β β Profitability β β Growth β β
β β PER: 12.3 β β ROE: 15.2% β β Revenue: +8% β β
β β PBR: 0.85 β β ROA: 8.1% β β Profit: +12% β β
β β PSR: 1.2 β β Net Margin: 10% β β EPS: +15% β β
β βββββββββββββββββββ βββββββββββββββββββ ββββββββββββββββ β
β β
β Financial Summary (5 years bar chart) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Revenue: βββ βββ βββ βββ βββ β β
β β Profit: ββ ββ ββ βββ βββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Interactions:
- Hover over metrics β Tooltip with explanation
- Switch chart timeframes
- Toggle between quarterly/annual data
- Add to watchlist (authenticated users)
- Create alert (Premium)
3. Portfolio Pageβ
Purpose: Track user's holdings and performance
Layout:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β My Portfolios [+ New] β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β [Growth Portfolio βΌ] [Value Portfolio] [Dividend Portfolio]β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Total Value: β©50,250,000 (+β©2,500,000 +5.24%) β
β vs KOSPI: +2.1% (outperforming) β
β β
β Performance Chart (1M) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β /\ /\ β β
β β / \ / \ /\ β β
β β ββββββ/ββββ\/ββββ\ββ/ββ\βββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β Holdings: [+ Add] β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β βStock βSharesβAvg CostβCurrentβ Gain/Loss β % β β β
β ββββββββββββΌβββββββΌβββββββββΌββββββββΌββββββββββββΌββββ€ β β
β βSamsung β 10 β 68,000 β70,000 β+20,000 β+3%β β β
β βHyundai β 5 β200,000 β195,000β-25,000 β-3%β β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β Asset Allocation (Pie Chart) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Tech: 60% βββββ β β
β β Auto: 30% βββ β β
β β Finance: 10% β β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Interactions:
- Switch between portfolios
- Add new holding (search stock, enter details)
- Edit/delete holdings
- View transaction history
- Export to Excel
4. Mobile Viewsβ
Responsive Breakpoints:
- Mobile: < 768px (single column, stacked components)
- Tablet: 768px - 1024px (2 columns)
- Desktop: > 1024px (full layout)
Mobile-Specific Features:
- Bottom navigation bar (Home, Screen, Portfolio, Account)
- Swipeable charts
- Collapsible filter panel
- Pull-to-refresh for real-time updates
8.3 Accessibility Requirementsβ
| Requirement | Implementation |
|---|---|
| Keyboard Navigation | All interactive elements accessible via Tab, Enter, Esc |
| Screen Reader | Semantic HTML, ARIA labels, alt text for images |
| Color Contrast | WCAG AA: 4.5:1 for text, 3:1 for UI components |
| Focus Indicators | Visible focus rings for all interactive elements |
| Text Scaling | Support up to 200% zoom without breaking layout |
| Error Messages | Clear, actionable error messages with suggestions |
8.4 Design Systemβ
Color Palette:
- Primary: #2563eb (Blue - trust, stability)
- Success: #10b981 (Green - positive gains)
- Danger: #ef4444 (Red - losses, alerts)
- Warning: #f59e0b (Yellow - caution)
- Neutral: #6b7280 (Gray - text, borders)
Typography:
- Headings: Pretendard (Korean-optimized), Inter (English fallback)
- Body: Pretendard, system fonts
- Code/Numbers: JetBrains Mono (monospace)
Components:
- Buttons: Rounded corners, hover states, disabled states
- Tables: Striped rows, sortable columns, sticky headers
- Charts: Consistent color scheme, tooltips, zoom controls
- Forms: Inline validation, clear error messages
- Cards: Shadow on hover, clear hierarchy
9. Success Metricsβ
9.1 Key Performance Indicators (KPIs)β
Product Metricsβ
| Metric | Target | Measurement | Frequency |
|---|---|---|---|
| Active Users (MAU) | 50,000 by Month 12 | Google Analytics | Monthly |
| Screening Sessions | 100,000/month by Month 6 | App telemetry | Monthly |
| Avg Session Duration | 8+ minutes | Google Analytics | Weekly |
| User Retention (30-day) | 40% | Cohort analysis | Monthly |
| Conversion Rate (Free β Paid) | 5% | Subscription funnel | Monthly |
| Churn Rate | < 5% monthly | Subscription cancellations | Monthly |
| NPS (Net Promoter Score) | > 50 | User surveys | Quarterly |
Technical Metricsβ
| Metric | Target | Measurement | Frequency |
|---|---|---|---|
| API Response Time (p95) | < 200ms | APM (Sentry) | Real-time |
| Screening Query Time (p99) | < 500ms | APM | Real-time |
| Page Load Time (p95) | < 1.5s | RUM | Real-time |
| Uptime | 99.9% | Uptime monitoring | Monthly |
| Error Rate | < 0.1% | Error tracking | Real-time |
| Cache Hit Rate | > 80% | Redis metrics | Daily |
Business Metricsβ
| Metric | Target | Measurement | Frequency |
|---|---|---|---|
| Monthly Recurring Revenue (MRR) | $50K by Month 12 | Billing system | Monthly |
| Customer Acquisition Cost (CAC) | < $20 | Marketing spend / new users | Monthly |
| Lifetime Value (LTV) | > $100 | Cohort analysis | Quarterly |
| LTV:CAC Ratio | > 5:1 | Calculated | Quarterly |
9.2 Success Criteria by Milestoneβ
Month 3 (Beta Launch)β
- 1,000 registered users
- 10,000 screening sessions
- < 1% error rate
- Screening queries < 500ms (p99)
- Core features complete (screening, stock detail, basic portfolio)
Month 6 (Public Launch)β
- 10,000 active users
- 50,000 screening sessions/month
- 100 paid subscribers
- $3,000 MRR
- 30% user retention (30-day)
- NPS > 40
Month 12 (Growth Phase)β
- 50,000 active users
- 100,000 screening sessions/month
- 2,500 paid subscribers (5% conversion)
- $50,000 MRR
- 40% user retention (30-day)
- NPS > 50
- Featured in major Korean financial media
9.3 Measurement & Analyticsβ
Tools:
- Google Analytics 4: User behavior, funnel analysis
- Mixpanel: Event tracking, cohort analysis, A/B testing
- Sentry: Error tracking, performance monitoring
- LogRocket: Session replay for debugging UX issues
- Stripe/Billing System: Revenue metrics
Key Events to Track:
- User Registration
- First Screening
- Stock Detail View
- Watchlist Add
- Portfolio Created
- Subscription Upgrade
- Alert Created
- Export Data
- Session Duration
- Feature Usage Frequency
10. Development Roadmapβ
10.1 Phase 1: MVP (Months 1-3)β
Goal: Functional screening platform with core features
Features:
- Stock screening (20 key indicators)
- Stock detail pages (basic charts + financials)
- User authentication (email/password)
- Search functionality
- Responsive web design (desktop + mobile)
Infrastructure:
- Frontend (React + Vite + Tailwind)
- Backend (FastAPI + PostgreSQL)
- Data pipeline (daily KRX prices)
- Basic caching (Redis)
- Deployment (Docker + basic CI/CD)
Success Criteria:
- 1,000 beta users
- Screening < 500ms (p99)
- 99% uptime
Timeline: 12 weeks
- Week 1-2: Setup, architecture, DB schema
- Week 3-5: Backend API development
- Week 6-8: Frontend development
- Week 9-10: Data pipeline + indicator calculations
- Week 11: Testing, bug fixes
- Week 12: Beta launch
10.2 Phase 2: Public Launch (Months 4-6)β
Goal: Feature-complete platform ready for public launch
Features:
- Expand to 200+ indicators
- Real-time hot stocks section
- Portfolio management (basic)
- Pre-built screening templates
- OAuth login (Kakao, Naver, Google)
- Subscription tiers (Free/Basic/Pro)
- Payment integration (Stripe)
- Educational content (metric explanations)
Infrastructure:
- TimescaleDB for time-series data
- Advanced caching strategy
- Kubernetes deployment
- Monitoring (Grafana + Prometheus)
- Security hardening
Success Criteria:
- 10,000 active users
- 100 paid subscribers
- $3,000 MRR
Timeline: 12 weeks
- Week 13-15: Expand indicators to 200+
- Week 16-17: Portfolio + subscription system
- Week 18-19: Hot stocks + templates
- Week 20-21: Payment integration + testing
- Week 22-23: Marketing prep, documentation
- Week 24: Public launch
10.3 Phase 3: Growth & Optimization (Months 7-12)β
Goal: Scale to 50,000 users, optimize conversion
Features:
- Alerts & notifications
- Advanced portfolio analytics
- Peer comparison
- Export to Excel/CSV
- API access (Pro tier)
- Mobile app (iOS/Android - React Native)
- Backtesting (simple)
- Theme-based investing
Infrastructure:
- Auto-scaling (Kubernetes HPA)
- Multi-region deployment (if needed)
- Advanced monitoring & alerting
- Performance optimization
Success Criteria:
- 50,000 active users
- 2,500 paid subscribers
- $50,000 MRR
- Featured in media
Timeline: 24 weeks
- Week 25-28: Alerts + notifications
- Week 29-32: Advanced portfolio features
- Week 33-36: Mobile app (MVP)
- Week 37-40: API + export features
- Week 41-44: Backtesting + themes
- Week 45-48: Optimization, marketing push
10.4 Phase 4: Advanced Features (Months 13+)β
Future Considerations (Post-Year 1):
- AI-powered stock recommendations
- Social features (follow other investors, share portfolios)
- Live chat support
- Webinars / educational content
- Institutional-grade analytics
- ETF screening
- International markets (US, China)
- Cryptocurrency integration
- Advanced backtesting with custom strategies
- White-label solution for financial institutions
11. Risk Analysis & Mitigationβ
11.1 Technical Risksβ
| Risk | Probability | Impact | Mitigation |
|---|---|---|---|
| Data source API downtime | Medium | High | - Multiple data sources - Fallback to web scraping - Cache last known good data |
| Database performance degradation | Medium | High | - TimescaleDB for time-series optimization - Read replicas - Aggressive caching |
| Security breach | Low | Critical | - Regular security audits - Penetration testing - Bug bounty program - Insurance |
| Scaling issues under high load | Medium | Medium | - Load testing before launch - Auto-scaling (Kubernetes HPA) - CDN for static assets |
| Data accuracy errors | Low | High | - Daily reconciliation with official sources - Automated validation checks - User reporting mechanism |
11.2 Business Risksβ
| Risk | Probability | Impact | Mitigation |
|---|---|---|---|
| Low user acquisition | Medium | High | - Pre-launch marketing - SEO optimization - Content marketing (blog) - Partnerships with finance influencers |
| High churn rate | Medium | High | - Excellent onboarding - Regular feature updates - User feedback loops - Retention campaigns |
| Competitor with deeper pockets | Medium | Medium | - Focus on speed & UX (hard to replicate) - Build community - Proprietary scoring algorithms |
| Regulatory changes (data licensing) | Low | High | - Legal review of data usage terms - Diversify data sources - Budget for increased licensing costs |
| Market downturn (reduced trading activity) | Medium | Medium | - Long-term investors also use screeners - Diversify use cases (portfolio tracking) - Freemium model sustains user base |
11.3 Legal & Compliance Risksβ
| Risk | Probability | Impact | Mitigation |
|---|---|---|---|
| Data licensing violations | Low | Critical | - Clear licensing agreements with KRX/F&Guide - Legal review - Proper attribution |
| Investment advice liability | Low | High | - Prominent disclaimers on all pages - Terms of Service clearly state "informational only" - No personalized recommendations (Phase 1) |
| Privacy law violations (PIPA/GDPR) | Low | High | - Privacy policy review by legal - User consent flows - Data deletion on request - Encryption of PII |
| Copyright issues (charts, content) | Low | Medium | - Use open-source chart libraries - Original content only - Proper attribution for third-party sources |
11.4 Operational Risksβ
| Risk | Probability | Impact | Mitigation |
|---|---|---|---|
| Key team member departure | Medium | Medium | - Documentation of all systems - Knowledge sharing - Redundancy in critical roles |
| Vendor lock-in (cloud provider) | Low | Medium | - Use containerization (Docker/K8s) - Avoid proprietary services - Multi-cloud architecture (if needed) |
| Data pipeline failures | Medium | Medium | - Airflow retry mechanisms - Alerting on pipeline failures - Manual override capability |
| Customer support overload | Low | Medium | - Comprehensive documentation - FAQs and tutorials - Automated chatbot for common questions - Tiered support (email for Free, priority for Pro) |
12. Appendicesβ
Appendix A: Glossary of Financial Termsβ
PER (Price-to-Earnings Ratio)
- Definition: Current stock price divided by earnings per share (EPS)
- Formula: Stock Price / EPS
- Interpretation: Lower PER may indicate undervaluation, but varies by industry
PBR (Price-to-Book Ratio)
- Definition: Market capitalization divided by book value of equity
- Formula: Market Cap / Total Equity
- Interpretation: PBR < 1 suggests stock trades below book value
ROE (Return on Equity)
- Definition: Profitability relative to shareholders' equity
- Formula: Net Income / Shareholders' Equity Γ 100%
- Interpretation: Higher ROE indicates efficient use of equity capital
Free Cash Flow (FCF)
- Definition: Cash generated after capital expenditures
- Formula: Operating Cash Flow - Capital Expenditures
- Interpretation: Positive FCF indicates cash available for dividends, buybacks, or reinvestment
(... Full glossary of 200+ terms in separate document)
Appendix B: Competitor Feature Comparisonβ
| Feature | Our Platform | Naver Finance | Investing.com | Quantit |
|---|---|---|---|---|
| Indicator Count | 200+ | ~20 | ~50 | ~80 |
| Screening Speed | < 500ms | 2-3s | 1-2s | 3-5s |
| Real-time Updates | β (Premium) | β | β (delayed) | β |
| Portfolio Tracking | β | β | β | β |
| Mobile App | β (Phase 3) | β | β | β |
| Free Tier | β (generous) | β | β (limited) | β (very limited) |
| Export Data | β | β | β (Premium) | β |
| API Access | β (Pro) | β | β (Enterprise) | β |
| Backtesting | β (Phase 3) | β | β | β |
| Korean Language | β | β | Partial | β |
| Educational Content | β | Limited | β | Limited |
Appendix C: User Research Summaryβ
Method: Surveys (n=100), Interviews (n=20)
Key Findings:
- 78% of respondents find current tools "too complex" or "too slow"
- 65% want more indicators, especially value-focused metrics
- 82% would pay for faster, more comprehensive screening
- Top 3 desired features:
- Advanced filtering (92%)
- Real-time alerts (78%)
- Portfolio tracking (71%)
- Primary use case:
- Long-term investing (52%)
- Swing trading (31%)
- Day trading (17%)
Quotes:
"I spend 2 hours every weekend screening stocks manually. If a tool could do it in 2 minutes, I'd pay for that." - Survey Respondent #34
"I love the idea of 200 indicators, but please explain them simply. I'm not a finance major." - Interview Participant #8
Appendix D: Technical Debt & Future Refactoringβ
Known Technical Debt:
- Monolithic API: Consider microservices architecture in Phase 4 for better scalability
- PostgreSQL Full-Text Search: May need Elasticsearch if search volume grows significantly
- Manual indicator calculations: Explore GPU acceleration (CUDA) for massive parallel processing
- Session storage in Redis: Migrate to dedicated session store if scale demands it
Future Optimizations:
- Implement GraphQL for more flexible API queries (reduce over-fetching)
- Edge computing for real-time price updates (reduce latency)
- Machine learning for anomaly detection in financial data
- Blockchain-based audit trail for data integrity
Appendix E: Data Source API Documentationβ
KRX API (Korea Exchange)
- Endpoint:
https://api.krx.co.kr/...(hypothetical) - Authentication: API Key
- Rate Limit: 100 requests/min
- Data Format: JSON
- Documentation: (link to official docs)
F&Guide API
- Endpoint:
https://api.fguide.com/...(hypothetical) - Authentication: OAuth 2.0
- Rate Limit: 500 requests/min
- Data Format: JSON
- Documentation: (link to official docs)
(Detailed API specs in separate integration document)
Appendix F: Deployment Architecture Diagramβ
[Detailed Kubernetes deployment diagram with pods, services, ingress, persistent volumes, etc.]
(Full infrastructure-as-code repository link)
Appendix G: Testing Strategyβ
Unit Tests:
- Backend: 80%+ coverage (Pytest)
- Frontend: 70%+ coverage (Vitest + Testing Library)
- Critical paths: 100% coverage
Integration Tests:
- API endpoint tests (all endpoints)
- Database integration tests
- Data pipeline end-to-end tests
Performance Tests:
- Load testing (10,000 concurrent users)
- Stress testing (identify breaking point)
- Endurance testing (24-hour sustained load)
Security Tests:
- OWASP Top 10 vulnerability scanning
- Penetration testing (quarterly)
- Dependency vulnerability scanning (weekly)
User Acceptance Testing:
- Beta testing with 100 users (Month 3)
- A/B testing for conversion optimization (ongoing)
Document Revision Historyβ
| Version | Date | Author | Changes |
|---|---|---|---|
| 1.0 | 2025-11-09 | Product Team | Initial PRD creation |
Approval & Sign-offβ
| Role | Name | Signature | Date |
|---|---|---|---|
| Product Manager | _______________ | _______________ | ______ |
| Engineering Lead | _______________ | _______________ | ______ |
| Design Lead | _______________ | _______________ | ______ |
| Data Lead | _______________ | _______________ | ______ |
| CEO | _______________ | _______________ | ______ |
END OF DOCUMENT