AI Price Forecasts Dataset
Access deep learning-powered price predictions for over 10,000 tickers. FinBrain’s AI models analyze historical price data and alternative signals to generate daily and monthly forecasts with directional signals.
What’s Included
Section titled “What’s Included”The AI Price Forecasts dataset provides:
- Price Forecasts: Predicted price (
mid) withlowerandupperbounds for each future date - Expected Moves: Short, mid, and long-term expected percentage changes
- Bound Changes: Lower and upper bound percentage changes
- Daily & Monthly Types: Choose your prediction horizon
Coverage
Section titled “Coverage”| Market | Tickers | Update Frequency |
|---|---|---|
| S&P 500 | 500+ | Daily |
| NASDAQ | 3,000+ | Daily |
| NYSE | 2,500+ | Daily |
| Crypto | 100+ | Daily |
| Total | 10,000+ | Daily |
Understanding Predictions
Section titled “Understanding Predictions”Expected Move Fields
Section titled “Expected Move Fields”| Field | Daily Predictions | Monthly Predictions |
|---|---|---|
metadata.expectedShortTerm | 3-day expected % move | 3-month expected % move |
metadata.expectedMidTerm | 5-day expected % move | 6-month expected % move |
metadata.expectedLongTerm | 10-day expected % move | 12-month expected % move |
Prediction Objects
Section titled “Prediction Objects”Each prediction in the predictions array contains structured fields:
{ "date": "2024-11-04", "mid": 201.33, "lower": 197.21, "upper": 205.45}mid: Predicted pricelower: Lower bound of the confidence intervalupper: Upper bound of the confidence interval
All numeric values are returned as numbers (not strings).
Quick Start
Section titled “Quick Start”from finbrain import FinBrainClient
fb = FinBrainClient(api_key="YOUR_API_KEY")
df = fb.predictions.ticker("AAPL", prediction_type="daily", as_dataframe=True)print(df)# mid lower upper# date# 2024-11-04 201.33 197.21 205.45import requests
API_KEY = "YOUR_API_KEY"BASE_URL = "https://api.finbrain.tech/v2"headers = {"Authorization": f"Bearer {API_KEY}"}
# Get daily price forecasts for AAPLresponse = requests.get(f"{BASE_URL}/predictions/daily/AAPL", headers=headers)result = response.json()
predictions = result["data"]["predictions"]for p in predictions: print(f"{p['date']}: mid={p['mid']}, lower={p['lower']}, upper={p['upper']}")For complete code examples in Python, JavaScript, C++, Rust, and cURL, see the API Reference for Ticker Predictions.
Visualization
Section titled “Visualization”Plot AI price predictions with the built-in SDK chart:
from finbrain import FinBrainClient
fb = FinBrainClient(api_key="YOUR_API_KEY")
# One-line interactive chart with confidence bandsfb.plot.predictions("AAPL")
Use Cases
Section titled “Use Cases”Systematic Trading Signals
Section titled “Systematic Trading Signals”Build trading systems that generate buy/sell signals based on AI predictions:
from finbrain import FinBrainClient
fb = FinBrainClient(api_key="YOUR_API_KEY")
def get_trading_signal(symbol, threshold=1.0): """Check if a ticker has a strong expected move""" result = fb.predictions.ticker(symbol, prediction_type="daily") expected = result["metadata"]["expectedShortTerm"] # 3-day expected move
if expected > threshold: return "bullish", expected elif expected < -threshold: return "bearish", expected else: return "neutral", expected
# Screen a watchlistwatchlist = ["AAPL", "MSFT", "GOOGL", "AMZN", "NVDA", "META", "TSLA"]for symbol in watchlist: try: signal, expected = get_trading_signal(symbol) if signal != "neutral": print(f"{symbol}: {signal} ({expected:+.2f}%)") except Exception: continuePortfolio Screening
Section titled “Portfolio Screening”Filter your investment universe based on expected price movements:
from finbrain import FinBrainClient
fb = FinBrainClient(api_key="YOUR_API_KEY")
def screen_portfolio(symbols, min_expected=0.5): """Screen portfolio for positive expected moves""" opportunities = []
for symbol in symbols: try: result = fb.predictions.ticker(symbol, prediction_type="daily") metadata = result["metadata"] expected_3day = metadata["expectedShortTerm"]
if expected_3day > min_expected: opportunities.append({ "symbol": symbol, "expected_3day": expected_3day, "expected_5day": metadata["expectedMidTerm"], "expected_10day": metadata["expectedLongTerm"] }) except Exception: continue
return sorted(opportunities, key=lambda x: x["expected_3day"], reverse=True)
# Screen tech stockswatchlist = ["AAPL", "MSFT", "GOOGL", "AMZN", "NVDA", "META", "TSLA"]opportunities = screen_portfolio(watchlist)
for opp in opportunities: print(f"{opp['symbol']}: {opp['expected_3day']:.2f}% (3-day), {opp['expected_5day']:.2f}% (5-day)")Multi-Horizon Analysis
Section titled “Multi-Horizon Analysis”Compare short, mid, and long-term expectations to identify momentum:
from finbrain import FinBrainClient
fb = FinBrainClient(api_key="YOUR_API_KEY")
def analyze_momentum(symbol): """Analyze if momentum is accelerating or decelerating""" result = fb.predictions.ticker(symbol, prediction_type="daily") metadata = result["metadata"] short = metadata["expectedShortTerm"] # 3-day mid = metadata["expectedMidTerm"] # 5-day long_term = metadata["expectedLongTerm"] # 10-day
# Check if expectations are increasing across time horizons if short > 0 and mid > short and long_term > mid: return "accelerating_bullish" elif short < 0 and mid < short and long_term < mid: return "accelerating_bearish" elif short > 0 and mid > 0 and long_term > 0: return "bullish" elif short < 0 and mid < 0 and long_term < 0: return "bearish" else: return "mixed"
momentum = analyze_momentum("AAPL")print(f"AAPL momentum: {momentum}")Related Resources
Section titled “Related Resources”- Ticker Predictions API Reference - Single ticker endpoint
- News Sentiment - Combine with sentiment data