How moneeshreddych/stockprizepredictor works
BullInsights collects market prices and financial news, stores them in Supabase, then serves market history, news, and ML forecasts to a browser dashboard. The documented ML workflow combines FinBERT sentiment scoring with historical-price features and Temporal Fusion Transformer forecasts; the sampled pipeline confirms sentiment and forecast persistence, but its omitted sections limit certainty about intermediate calls. Separate live-price collection and historical-price collection are visible in the source. The graph omits deployment and build machinery.
Main entry points: app.js Market dashboard · news_api.py News and chart API · market_server.py Market and prediction API · news_collector.py News collector
Components 22
Data collection
- News collector
news/news_collector.py - History collector
news/price_collector.py - Live collector
src/collector/main.py - News articles
database/schema.sql - Price data
database/schema.sql - Latest prices
database/schema.sql
ML analysis
- FinBERT sentiment
ml/pipeline.py - TFT forecasting
ml/pipeline.py - Predictions
database/schema.sql
API services
- News and chart API
api/news_api.py - Market and prediction API
api/market_server.py - Latest price endpoint
src/collector/main.py
Dashboard
- Market dashboard
frontend/js/app.js - News view
frontend/js/news-renderer.js - Forecast view
frontend/js/predictions.js
Other components
- Investor
- News providers
- Market data providers
- News APIs
- Twelve Data
- Yahoo Finance
- Supabase
src/database/supabase_client.py
Connections 26
- News collector → News providers: fetches articles
- News collector → News articles: checks and upserts
- History collector → Market data providers: fetches history
- History collector → Price data: upserts history
- Live collector → Twelve Data: fetches prices
- Live collector → Latest prices: upserts prices
- FinBERT sentiment → News articles: reads articles
- FinBERT sentiment → Predictions: stores scores
- TFT forecasting → Price data: uses history
- TFT forecasting → Predictions: upserts forecasts
- News and chart API → News articles: reads articles
- News and chart API → Twelve Data: fetches chart data
- News and chart API → Yahoo Finance: fallback history
- Market and prediction API → Latest prices: reads cached prices
- Market and prediction API → Predictions: reads forecasts
- Market and prediction API → Yahoo Finance: fetches market prices
- Latest price endpoint → Latest prices: reads latest prices
- Market dashboard → News and chart API: requests news and history
- Market dashboard → Market and prediction API: requests market data
- Market dashboard → Latest price endpoint: requests latest prices
- Market dashboard → News view: renders articles
- Market dashboard → Forecast view: updates forecasts
- Investor → Market dashboard: uses
- News collector → News APIs: fetches articles
- FinBERT sentiment → Supabase: persists scores
- TFT forecasting → Supabase: persists forecasts