How kusumachan/friday-screener works
Friday Screener is a CLI for screening and comparing Indonesian stocks. The main workflow starts with a user command, fetches market data, optionally adds news and corporate actions, analyzes fundamentals into weighted category scores and insights, then displays a result or comparison. The analyzer uses configurable screening criteria; the data and result models define the handoff between acquisition, analysis, and presentation. README-described capabilities guide the map where excerpts are incomplete; unsampled command wiring is not inferred beyond documented workflows.
Main entry points: commands.py Commands and output · fundamental_analyzer.py Fundamental analyzer · yahoo_finance_service.py Market data service · stock_data.py Stock data model
Components 10
CLI workflow
- Application entry
src/main.py - Commands and output
src/cli/commands.py
Data acquisition
- Market data service
src/services/yahoo_finance_service.py - News and actions
src/services/news_scraper_service.py
Screening analysis
- Fundamental analyzer
src/analyzers/fundamental_analyzer.py - Screening criteria
src/config/settings.py
Domain models
- Stock data model
src/models/stock_data.py - Screening result
src/models/screening_result.py
Other components
- Investor or analyst
- Yahoo Finance
Connections 13
- Investor or analyst → Application entry: starts
- Application entry → Commands and output: dispatches
- Commands and output → Market data service: fetches data
- Market data service → Yahoo Finance: requests data
- Market data service → Stock data model: builds
- Commands and output → News and actions: fetches news
- News and actions → Yahoo Finance: requests news
- Commands and output → Stock data model: attaches news
- Commands and output → Fundamental analyzer: analyzes
- Fundamental analyzer → Stock data model: reads metrics
- Fundamental analyzer → Screening criteria: uses thresholds
- Fundamental analyzer → Screening result: produces
- Commands and output → Screening result: displays results