Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
OPENAI_API_KEY=your_openai_api_key_here
FIRECRAWL_API_KEY=your_firecrawl_api_key_here
# Optional but recommended
ALPHA_VANTAGE_API_KEY=your_alpha_vantage_api_key_here
FINANCIAL_DATA_API_KEY=your_financial_data_api_key_here

Expand All @@ -9,4 +9,4 @@ ANALYSIS_TIMEOUT_SECONDS=30

NEWS_SOURCES=bloomberg,reuters,yahoo-finance,marketwatch,cnbc
ANALYSIS_DEPTH=detailed
DEFAULT_PORTFOLIO_SIZE=100000
DEFAULT_PORTFOLIO_SIZE=100000
9 changes: 1 addition & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,11 @@

# TradeGraph Financial Advisor

A sophisticated multi-agent financial analysis system that uses **LangGraph**, **Firecrawl**, and **MCP (Model Context Protocol)** to provide intelligent trading recommendations based on real-time financial news and comprehensive company analysis.
A sophisticated multi-agent financial analysis system that uses **LangGraph**, **ddgs**, and **Crawl4AI** to provide intelligent trading recommendations based on real-time financial news and comprehensive company analysis.

## 🚀 Features

- **Multi-Agent Architecture**: Coordinated agents for news analysis, financial data processing, and report analysis
- **Real-Time News Analysis**: Scrapes and analyzes financial news from multiple sources using Firecrawl
- **SEC Filing Analysis**: Deep analysis of 10-K and 10-Q reports using AI
- **Technical Analysis**: Comprehensive technical indicators and chart pattern recognition
- **Sentiment Analysis**: AI-powered sentiment analysis of news and social media
Expand All @@ -21,7 +20,6 @@ A sophisticated multi-agent financial analysis system that uses **LangGraph**, *

- Python 3.10+
- OpenAI API key
- Firecrawl API key
- Optional: Alpha Vantage API key for enhanced financial data

## 🛠️ Installation
Expand Down Expand Up @@ -69,8 +67,6 @@ Required environment variables:

```env
OPENAI_API_KEY=your_openai_api_key_here
FIRECRAWL_API_KEY=your_firecrawl_api_key_here

# Optional but recommended
ALPHA_VANTAGE_API_KEY=your_alpha_vantage_api_key_here
FINANCIAL_DATA_API_KEY=your_financial_data_api_key_here
Expand Down Expand Up @@ -287,7 +283,6 @@ GOOGL: HOLD (Confidence: 65.0%)
### Technology Stack

- **LangGraph**: Workflow orchestration and agent coordination
- **Firecrawl**: Web scraping and content extraction
- **OpenAI GPT-4**: Natural language processing and analysis
- **yfinance**: Financial data retrieval
- **pandas/numpy**: Data processing and analysis
Expand Down Expand Up @@ -400,7 +395,6 @@ pre-commit run --all-files

### Rate Limits
- **OpenAI API**: Monitor usage to avoid rate limits
- **Firecrawl**: Respect rate limits (typically 100-1000 requests/hour)
- **Financial APIs**: Most have daily/monthly limits

### Data Accuracy
Expand Down Expand Up @@ -433,7 +427,6 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
## 🙏 Acknowledgments

- **LangGraph** team for the excellent multi-agent framework
- **Firecrawl** for reliable web scraping capabilities
- **OpenAI** for powerful language models
- **Financial data providers** for market data access

Expand Down
4 changes: 1 addition & 3 deletions api/main.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
import asyncio
import logging
from contextlib import asynccontextmanager
from datetime import datetime
from typing import Dict, Any, List
from typing import Dict, Any

from fastapi import (
FastAPI,
HTTPException,
BackgroundTasks,
WebSocket,
WebSocketDisconnect,
)
Expand Down
4 changes: 2 additions & 2 deletions api/models.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from datetime import datetime
from typing import Any, Dict, List, Optional, Union
from typing import Any, Dict, List, Optional
from pydantic import BaseModel, Field
from enum import Enum

Expand Down Expand Up @@ -271,4 +271,4 @@ class APIMetrics(BaseModel):
total_alerts: int = 0
active_websocket_connections: int = 0
system_metrics: Optional[SystemMetrics] = None
last_updated: datetime = Field(default_factory=datetime.now)
last_updated: datetime = Field(default_factory=datetime.now)
4 changes: 1 addition & 3 deletions api/routers/analysis.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import asyncio
import uuid
from datetime import datetime
from typing import Dict, Any, Optional
from typing import Dict, Optional

from fastapi import APIRouter, HTTPException, BackgroundTasks, Depends
from fastapi.responses import StreamingResponse
Expand All @@ -12,8 +12,6 @@
QuickAnalysisRequest,
AnalysisResult,
AnalysisStatus,
RecommendationResponse,
PortfolioResponse,
)

from ..auth.dependencies import get_current_user
Expand Down
Loading
Loading