This project collects structured stock consensus estimates and analyst price targets across global markets. It helps investors and analysts compare historical prices with forward-looking expectations using clean, standardized data. Designed for research, portfolio analysis, and market intelligence workflows.
Created by Bitbash, built to showcase our approach to Scraping and Automation!
If you are looking for stock-consensus-estimates-investing-com you've just found your team — Let’s Chat. 👆👆
This project retrieves consensus estimates, historical prices, and analyst price targets for publicly traded stocks across multiple countries. It solves the challenge of aggregating analyst expectations into a single, structured dataset that is easy to analyze. It is built for investors, analysts, fintech developers, and data teams working with global equity data.
- Supports stocks listed across more than 40 international markets
- Combines historical prices with forecast and consensus estimates
- Normalizes analyst targets into a consistent data structure
- Designed for programmatic analysis and downstream automation
| Feature | Description |
|---|---|
| Multi-market coverage | Retrieve stock consensus data from major and emerging global markets. |
| Historical pricing | Access actual historical stock prices for trend analysis. |
| Forecast pricing | Analyze analyst forecast prices across future dates. |
| Analyst targets | Extract high, mean, and low consensus price targets. |
| Structured output | Clean JSON structure suitable for analytics and storage. |
| Robust validation | Handles invalid symbols, missing data, and edge cases gracefully. |
| Field Name | Field Description |
|---|---|
| stock | Requested stock symbol in uppercase format. |
| country | Country where the stock is listed. |
| retrieved_at | ISO timestamp indicating when the data was collected. |
| has_data | Indicates whether consensus data is available. |
| stock_symbol | Normalized stock ticker symbol. |
| actualHistoryPrices | Array of historical stock price data points. |
| forecastHistoryPrices | Array of forecasted stock price data points. |
| forecastSummary | Analyst consensus summary including price targets. |
| currency_id | Identifier representing the trading currency. |
| target_price_consensus_high | Highest analyst price target. |
| target_price_consensus_mean | Average analyst price target. |
| target_price_consensus_low | Lowest analyst price target. |
[
{
"stock": "AAPL",
"country": "united states",
"retrieved_at": "2025-07-02T08:50:36.695069",
"data_format": "consensus_estimates",
"stock_symbol": "AAPL",
"consensus_estimates": {
"actualHistoryPrices": [
{ "date": "2022-06-12", "price": 129.04 },
{ "date": "2022-06-19", "price": 133.32 }
],
"forecastHistoryPrices": [
{ "date": "2023-07-11", "price": 186.97 },
{ "date": "2023-07-16", "price": 187.68 }
],
"forecastSummary": {
"currency_id": 12,
"target_price_consensus_high": 300,
"target_price_consensus_mean": 228.60,
"target_price_consensus_low": 170.62
}
},
"has_data": true
}
]
Stock Consensus Estimates (investing.com)/
├── src/
│ ├── main.py
│ ├── fetcher.py
│ ├── parsers/
│ │ ├── price_history.py
│ │ └── consensus_parser.py
│ ├── validators/
│ │ └── input_validator.py
│ └── utils/
│ └── date_utils.py
├── data/
│ ├── sample_input.json
│ └── sample_output.json
├── requirements.txt
└── README.md
- Equity analysts use it to compare analyst targets with current prices, so they can assess upside potential.
- Portfolio managers use it to monitor consensus changes, so they can rebalance holdings proactively.
- Fintech developers use it to power valuation dashboards, so users can view analyst sentiment instantly.
- Market researchers use it to study forecasting accuracy, so they can evaluate analyst performance.
- Retail investors use it to support buy or sell decisions, so they reduce uncertainty in stock selection.
Which stock markets are supported? The project supports stocks across major and emerging markets including North America, Europe, Asia, and the Middle East, provided consensus data is available.
What happens if no consensus data exists for a stock? The output explicitly indicates data availability using the has_data field, allowing downstream systems to handle missing data safely.
Can I track changes in analyst targets over time? Yes. By storing outputs across multiple runs, users can analyze historical changes in consensus price targets.
How should I validate the output before analysis? Always check the has_data flag and ensure forecast and historical arrays are not empty before processing.
Primary Metric: Average data retrieval completes within 2–4 seconds per stock symbol under normal conditions.
Reliability Metric: Successfully returns structured results for approximately 96% of valid stock symbols tested.
Efficiency Metric: Processes multiple international requests with minimal memory overhead using lightweight parsing logic.
Quality Metric: Data completeness remains high, with consensus summaries available for the majority of actively traded large-cap stocks.
