Skip to content

sheeki03/analystOS

Repository files navigation

analystOS

AI-powered research platform for crypto and traditional finance with Web UI + optional Notion automation

A production-ready research and market intelligence platform powered by OpenRouter (50+ AI models). Analyze cryptocurrencies and stocks side-by-side, run comprehensive financial research, and automate due diligence workflows.

Key Capabilities

Crypto Stocks Cross-Asset
Real-time prices via CoinGecko Fundamentals via OpenBB/FMP Compare BTC vs VISA directly
Historical data & charts SEC filings (10-K, 10-Q, 8-K) Volatility normalization (24/7 vs market hours)
Top 250 coins by market cap Income, balance sheet, cash flow Sector-based analysis
AI-powered analysis Analyst estimates & insider trades Yield comparison (staking vs dividends)

Two Ways to Use

Web UI (Interactive Research)

1. Open the Streamlit web interface 2. Upload documents, add URLs, or enter a research query 3. Use Financial Research for stocks or Crypto AI for crypto 4. Compare assets across markets with Market Intelligence 5. Get comprehensive research reports instantly 

Notion Automation (Zero-Touch Mode)

1. Connect your Notion database 2. Add a project to Notion 3. Agent automatically detects the new entry 4. AI researches, scores, and evaluates 5. Full report published back to Notion 

Features

Financial Research (Stocks)

  • Price Data: Real-time snapshots and historical prices via OpenBB
  • Fundamentals: Income statements, balance sheets, cash flow statements
  • SEC Filings: 10-K, 10-Q, 8-K with item-level extraction
  • Metrics: Financial ratios, analyst estimates, insider trades
  • News: Company news and market sentiment
  • AI Router: Natural language queries routed to appropriate tools

Crypto Intelligence

  • Live Market Data: Real-time cryptocurrency prices via CoinGecko MCP
  • Historical Analysis: Price history with customizable intervals
  • Top Coins: Access to top 250 cryptocurrencies by market cap
  • AI Chat: Interactive crypto analysis and insights
  • Portfolio Tracking: Multi-coin comparisons and trends

Market Intelligence (Cross-Asset)

  • Direct Comparison: Compare crypto vs stocks (BTC vs V, ETH vs MA)
  • Volatility Analysis: Normalized comparisons accounting for 24/7 vs market hours
  • Sector Views: CMC-style sector categorization for tech stocks
  • Yield Comparison: Staking APY vs dividend yields

Research Suite

  • Multi-Format Documents: PDF, DOCX, TXT, Markdown with OCR
  • DocSend Integration: Automated presentation analysis
  • Web Scraping: Firecrawl-powered sitemap discovery and extraction
  • Deep Research: LangChain ODR framework for multi-agent research
  • RAG Chat: Context-aware Q&A using FAISS vector search

Entity Extraction (LangExtract)

  • Structured Extraction: People, organizations, funding rounds, metrics
  • Source Grounding: All entities linked to source documents
  • Smart Caching: Results cached for unchanged content

Notion Automation

  • Real-Time Monitoring: Watches Notion database for new entries
  • Auto-Research: Triggers deep research on new projects
  • AI Scoring: Automated due diligence evaluation
  • Direct Publishing: Reports published to Notion pages

Architecture

├── main.py # Streamlit entry point ├── src/ │ ├── controllers/ │ │ └── app_controller.py # Auth, routing, validation │ ├── pages/ │ │ ├── interactive_research.py # Document processing & AI analysis │ │ ├── financial_research.py # Stocks research UI │ │ ├── market_intelligence.py # Cross-asset comparison │ │ ├── crypto_chatbot.py # Crypto AI interface │ │ └── notion_automation.py # Notion CRM integration │ ├── services/ │ │ ├── financial_tools/ # 19 financial data tools │ │ │ ├── tools.py # Tool implementations │ │ │ ├── router.py # OpenRouter-based routing │ │ │ ├── schemas.py # OpenAI function schemas │ │ │ └── crypto_resolver.py # Ticker format conversion │ │ ├── market_intelligence/ # Cross-asset services │ │ │ ├── cross_asset_service.py │ │ │ ├── volatility_service.py │ │ │ └── sector_service.py │ │ ├── openbb/ # OpenBB Platform client │ │ │ └── client.py │ │ └── mcp/ # MCP integrations │ │ └── coingecko_client.py # CoinGecko data │ ├── core/ │ │ ├── research_engine.py # Research automation │ │ ├── scanner_utils.py # Web discovery (Firecrawl) │ │ └── docsend_client.py # DocSend processing │ └── utils/ │ └── session_persistence.py # Secure session management ├── config/ │ ├── users.yaml # User management │ ├── mcp_config.json # MCP integrations │ └── sector_classifications.yaml # Sector mappings └── tests/ 

Technology Stack

  • Backend: Python 3.11+, Streamlit
  • Financial Data: OpenBB Platform, CoinGecko, FMP
  • AI/ML: OpenRouter, LangChain, FAISS
  • Browser Automation: Selenium, Playwright
  • Document Processing: PyMuPDF, Tesseract OCR
  • Visualization: Plotly, Altair

Quick Start

1. Installation

# Clone repository git clone https://github.com/sheeki03/analystOS.git cd analystOS # Install dependencies pip install -r requirements.txt # Install browser dependencies playwright install # Install Tesseract OCR (for document processing) # macOS: brew install tesseract # Ubuntu: sudo apt-get install tesseract-ocr

2. Configuration

Create a .env file:

# Required: AI Model Access OPENROUTER_API_KEY=your_openrouter_key # Financial Data (Stocks) FMP_API_KEY=your_fmp_key # financialmodelingprep.com OPENBB_PAT=your_openbb_token # Optional, for higher limits # Optional: Additional Providers FINNHUB_API_KEY=your_finnhub_key # For news OPENAI_API_KEY=your_openai_key ANTHROPIC_API_KEY=your_anthropic_key # Optional: Notion Integration NOTION_TOKEN=your_notion_token # Optional: Web Scraping FIRECRAWL_API_KEY=your_firecrawl_key # Optional: Deep Research TAVILY_API_KEY=your_tavily_key # Security SESSION_SECRET_KEY=your_random_secret_key

3. Run Application

streamlit run main.py

Visit http://localhost:8501 and login.


Financial Tools Reference

Price Tools

Tool Description Source
get_price_snapshot Current stock price OpenBB/FMP
get_prices Historical stock prices OpenBB/FMP
get_crypto_price_snapshot Current crypto price CoinGecko
get_crypto_prices Historical crypto prices CoinGecko
get_available_crypto_tickers Top 250 crypto tickers CoinGecko

Fundamentals

Tool Description Source
get_income_statements Revenue, expenses, profit OpenBB/FMP
get_balance_sheets Assets, liabilities, equity OpenBB/FMP
get_cash_flow_statements Operating, investing, financing OpenBB/FMP
get_all_financial_statements Combined statements OpenBB/FMP
get_financial_metrics_snapshot Current ratios & metrics OpenBB/FMP
get_financial_metrics Historical metrics OpenBB/FMP

Filings & Research

Tool Description Source
get_filings SEC filing list OpenBB/SEC
get_10k_filing_items Annual report sections OpenBB/SEC
get_10q_filing_items Quarterly report sections OpenBB/SEC
get_8k_filing_items Current event reports OpenBB/SEC
get_news Company news OpenBB/Finnhub
get_analyst_estimates Earnings estimates OpenBB/FMP
get_insider_trades Insider transactions OpenBB/SEC
get_segmented_revenues Revenue by segment OpenBB/FMP

Crypto Limitations

  • USD pairs only: BTC-USD supported, BTC-ETH not supported
  • No minute interval: Use day, week, month, or year
  • Max 365 days: Historical data limited to 1 year from today
  • Close prices only: Returns close + volume, not OHLC

Default Watchlist

The platform comes with a default cross-asset watchlist:

Crypto: BTC, ETH, SOL Payments: V (Visa), MA (Mastercard) Tech: NVDA, INTC, MSFT, GOOGL Finance: JPM, COIN, SOFI


Usage Examples

Financial Research

Query: "Show me AAPL revenue for the last 3 years" → Routes to get_income_statements(ticker="AAPL", period="annual", limit=3) Query: "Compare NVDA and AMD financial metrics" → Routes to get_financial_metrics for both tickers 

Crypto Analysis

Query: "Bitcoin price last month" → Routes to get_crypto_prices(ticker="BTC-USD", interval="day", ...) Query: "Top 10 cryptocurrencies" → Uses CoinGecko markets endpoint 

Cross-Asset Comparison

Query: "Compare BTC vs VISA market cap" → Uses Market Intelligence cross-asset service 

Security Features

  • HMAC-Signed Sessions: URL session tokens are cryptographically signed
  • Input Validation: Username/password validation with strength requirements
  • Subprocess Whitelist: Only approved commands can execute
  • SSL Verification: Never disabled, fails safely
  • Role-Based Access: Admin vs researcher permissions
  • XSS Prevention: Safe Streamlit rendering methods

AI Models

Supported via OpenRouter:

Provider Models
OpenAI GPT-5.2, GPT-5.2 Pro
Anthropic Claude Sonnet 4, Claude Sonnet 4.5, Claude Opus 4.5
Google Gemini 3, Gemini 2.5 Pro, Gemini 2.5 Flash
Free Tier Nemotron 3 Nano 30B, Qwen3 30B/235B, DeepSeek R1T Chimera, Molmo 2 8B Vision
Image Gen Seedream 4.5

Testing

# Run all tests pytest # Run with coverage pytest --cov=src tests/ # Run specific tests pytest tests/integration/test_tool_schemas.py pytest tests/services/test_crypto_resolver.py

Version History

v3.0.0 (Current)

  • Added OpenBB integration for stocks/fundamentals
  • Added 19 financial data tools
  • Added Market Intelligence with cross-asset comparison
  • Added Financial Research and Market Intelligence pages
  • Enhanced CoinGecko client with markets endpoint
  • Integrated Firecrawl for sitemap scanning
  • Security hardening (SSL, HMAC sessions, input validation)

v2.1.0

  • Deep Research (ODR) integration
  • Enhanced crypto intelligence
  • Entity extraction (LangExtract)

v2.0.0

  • Notion automation
  • Crypto chatbot

v1.0.0

  • Basic research and document processing

Contributing

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

License

MIT License - see LICENSE for details.


Support


Built for researchers, analysts, and investors who need comprehensive market intelligence across crypto and traditional finance.

About

analystOS - AI research platform for stocks and crypto with Web UI + Notion automation. Upload docs, scrape URLs, chat with research via RAG. Powered by OpenRouter (50+ models).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors