9.2 KiB
News Analysis & Alert System Guide
Overview
The enhanced Gold Trading Simulator now includes a comprehensive news analysis and alerting system that provides real-time market intelligence and automated notifications for significant events.
Key Features
1. Real-Time News Feed
- Aggregates news from multiple sources (Alpha Vantage, Finnhub)
- Automatic sentiment analysis using TextBlob
- Relevance scoring for gold-specific news
- Impact assessment (HIGH, MEDIUM, LOW)
- Category classification (MONETARY_POLICY, GEOPOLITICS, ECONOMIC_DATA, etc.)
2. Intelligent Alerts
- Price movement alerts (spikes, drops)
- Support/resistance breach detection
- High volatility warnings
- Breaking news notifications
- Economic event reminders
3. News-Price Correlation
- Tracks how news events affect gold prices
- Measures correlation strength
- Identifies significant market-moving events
News Feed Features
Sentiment Analysis
The system analyzes every article and assigns:
- Sentiment: POSITIVE, NEGATIVE, or NEUTRAL
- Sentiment Score: -1.0 to +1.0 scale
- Overall Market Sentiment: Aggregated across all articles
Impact Classification
News articles are scored for gold market impact:
- HIGH: Federal Reserve decisions, major geopolitical events, significant inflation data
- MEDIUM: Economic indicators, central bank commentary, moderate policy changes
- LOW: General market news with indirect gold correlation
Content Categories
- MONETARY_POLICY: Fed meetings, interest rate decisions, QE announcements
- GEOPOLITICS: Wars, conflicts, sanctions, international tensions
- ECONOMIC_DATA: CPI, GDP, employment reports, PMI data
- MARKET_SENTIMENT: Risk appetite, safe-haven flows, VIX movements
- COMMODITY: Gold-specific news, mining sector, ETF flows
Filtering Options
Filter news by:
- All articles
- Bullish (positive sentiment)
- Bearish (negative sentiment)
- Neutral articles
Auto-Refresh
Enable automatic refresh every 5 minutes to stay current with breaking news.
Alert System
Alert Types
PRICE_SPIKE
- Triggered when price increases ≥ 1% (default threshold)
- Severity: HIGH if ≥ 2%, MEDIUM if ≥ 1%
PRICE_DROP
- Triggered when price decreases ≥ 1%
- Severity: HIGH if ≤ -2%, MEDIUM if ≥ -1%
NEWS_BREAKING
- High-impact news articles (impact_on_gold = HIGH)
- Severity: CRITICAL
- Includes link to original article
SUPPORT_BREACH
- Price breaks below identified support level
- Severity: HIGH
- Action required: Consider position adjustment
RESISTANCE_BREACH
- Price breaks above identified resistance level
- Severity: HIGH
- Action required: Potential breakout trade
HIGH_VOLATILITY
- Current price range exceeds 2x average range
- Severity: MEDIUM
- Indicates increased market uncertainty
ECONOMIC_EVENT
- Upcoming scheduled events (Fed meetings, CPI releases, etc.)
- Severity varies by importance
Severity Levels
- CRITICAL: Immediate attention required, major market event
- HIGH: Significant event requiring awareness
- MEDIUM: Notable event worth monitoring
- LOW: Informational alert
API Keys & Configuration
Required API Keys
Alpha Vantage (Required)
- Provides: Market data + News Sentiment API
- Free tier: 500 calls/day
- Get key: https://www.alphavantage.co/support/#api-key
- Includes gold price data AND news/sentiment
OpenRouter (Required)
- Provides: Claude 3.5 Sonnet AI analysis
- Pay-per-use pricing
- Get key: https://openrouter.ai/
Optional API Keys
Finnhub (Optional - Enhanced News)
- Provides: Additional financial news coverage
- Free tier: 60 calls/minute
- Get key: https://finnhub.io/register
- Adds more news sources and broader coverage
NewsAPI (Reserved for future)
- Currently not implemented
- Placeholder for additional news source
Environment Configuration
Add to backend/.env:
# Required
ALPHA_VANTAGE_API_KEY=your_key_here
OPENROUTER_API_KEY=your_key_here
# Optional (for more news coverage)
FINNHUB_API_KEY=your_key_here
NEWS_API_KEY=
API Endpoints
News Feed
GET /api/news/feed?limit=50
Returns:
- Array of news articles
- Bullish/bearish/neutral counts
- Overall market sentiment
- Average sentiment score
Alerts
GET /api/news/alerts?limit=50
Returns:
- Recent alerts
- Critical alert count
- Unread alert count
Economic Calendar
GET /api/news/economic-calendar
Returns:
- Upcoming economic events
- High-impact event count
Clear Alerts
POST /api/news/alerts/clear
Removes alerts older than 24 hours.
News Relevance Scoring
The system uses a sophisticated algorithm to score news relevance:
High Relevance Keywords (0.4 points each)
- gold, xau, precious metals, bullion, gold price
- gold market, gold trading, gold miners, gold etf
Medium Relevance Keywords (0.2 points each)
- federal reserve, fed, inflation, interest rates
- dollar, usd, monetary policy, central bank
- jerome powell, treasury, bonds
Context Relevance Keywords (0.1 points each)
- geopolitics, war, sanctions, recession
- crisis, safe haven, risk off, uncertainty
Minimum Threshold: Articles with relevance score < 0.3 are filtered out
Sentiment Analysis Details
Uses TextBlob for natural language processing:
Polarity Score Calculation:
- Range: -1.0 (most negative) to +1.0 (most positive)
- Analyzes: Title + Description + Summary
Classification:
- POSITIVE: polarity > 0.1 → Bullish for gold
- NEGATIVE: polarity < -0.1 → Bearish for gold
- NEUTRAL: -0.1 ≤ polarity ≤ 0.1
Note: For gold as a safe-haven asset, negative news (recession, crisis) often = positive for gold prices.
Alert Configuration
Customizable Thresholds
In backend/app/config.py:
# Price change threshold for alerts (percentage)
PRICE_ALERT_THRESHOLD: float = 1.0
# News refresh interval (seconds)
NEWS_REFRESH_INTERVAL: int = 300 # 5 minutes
Support/Resistance Levels
Set via AI analysis or manually:
from app.services.alert_service import alert_service
alert_service.set_support_resistance(
support=[4000, 3950, 3900],
resistance=[4100, 4150, 4200]
)
News-Price Correlation
The correlation analyzer:
- Captures news timestamp
- Finds price before news (within 1 hour)
- Finds price after news (within 1 hour)
- Calculates price change
- Determines correlation strength:
- STRONG: |change| > 1.0%
- MODERATE: |change| > 0.5%
- WEAK: |change| ≤ 0.5%
Best Practices
For Scalpers (M1-M15 timeframes)
- Enable auto-refresh on news feed
- Filter for HIGH impact news only
- Watch for PRICE_SPIKE/DROP alerts
- Monitor volatility alerts during news releases
For Swing Traders (H4-D1 timeframes)
- Review news feed 2-3x daily
- Focus on MONETARY_POLICY and GEOPOLITICS categories
- Monitor support/resistance breach alerts
- Track upcoming economic events
Risk Management
- Reduce position size before high-impact events
- Set wider stops during high volatility periods
- Avoid trading during major news releases unless experienced
- Use correlation analysis to understand typical price reactions
Troubleshooting
"No news articles found"
- Check Alpha Vantage API key is valid
- Verify API hasn't hit daily limit (500 calls)
- Check internet connection
- Review backend logs for errors
"Alerts not appearing"
- Ensure backend is running
- Check price data is updating
- Verify support/resistance levels are set (via AI analysis)
- Check browser console for errors
"News sentiment seems incorrect"
- TextBlob uses general sentiment (not gold-specific)
- Negative news can be positive for gold (safe haven)
- Use category + impact rating for better context
- Review article manually if sentiment seems wrong
API Rate Limits
Alpha Vantage
- Free tier: 500 calls/day, 5 calls/minute
- News endpoint: Counts as 1 call
- Tip: Cache news for 5 minutes to reduce calls
Finnhub (if configured)
- Free tier: 60 calls/minute
- News endpoint: 1 call
- Generous limits for development
OpenRouter
- No rate limits (reasonable use)
- Pay-per-use: ~$0.01-0.05 per AI analysis
- Very affordable for news analysis
Future Enhancements
- Real-time WebSocket news stream
- Custom alert rules builder
- Email/SMS alert notifications
- Historical news backtesting
- Machine learning sentiment models
- Economic calendar integration (Forex Factory, Investing.com)
- News event impact prediction
- Social media sentiment (Twitter/X gold mentions)
Example Workflow
Morning Routine
- Open simulator
- Review overnight news (filter: ALL)
- Check critical alerts
- Review economic calendar for today
- Note high-impact events scheduled
During Trading Session
- Monitor alerts panel for price movements
- Check news feed every 30-60 minutes
- Watch for breaking news notifications
- Adjust positions before scheduled events
End of Day
- Review news-price correlations
- Analyze which news moved the market
- Clear old alerts
- Note patterns for future trading
Remember: News and alerts are decision support tools. Always verify information and maintain your own trading discipline. The simulator is for educational purposes only.