Investment research·Case study
A five-agent research system that gathers financial statements, market news, technical signals, and investor sentiment in parallel to generate an explainable buy/hold/sell report.
Overview
Investment research requires gathering information from multiple independent sources including financial statements, company fundamentals, market news, and investor sentiment. This project automates that workflow using multiple AI agents working in parallel to generate comprehensive research reports.
Problem
Retail investors spend hours switching between finance websites, news platforms, and earnings reports before making investment decisions. There was no single system capable of consolidating all this information into an explainable AI-generated report.
Solution
Built a five-agent research system where each AI agent specializes in one domain. Instead of sequential processing, agents execute in parallel, significantly reducing response time. The final recommendation is generated only after aggregating outputs from all research agents.
Architecture
Planning & dispatch
IngestionParallel research agents
Concurrent executionAggregation & report
ResponseKey features
Tech stack
Results
~30 second report generation
A full research report is generated in about 30 seconds despite querying five independent data domains.
Concurrent research streams
News, financials, technicals, sentiment, and company data are gathered in parallel instead of one after another.
~$0.0003 average cost per report
Low enough per-report inference cost to run continuously across a large ticker universe.
Frequently asked questions
Why use five parallel agents instead of one agent that gathers everything sequentially?
Investment research spans independent domains: news, fundamentals, technicals, sentiment, and company data. Running one agent per domain in parallel means total wait time is set by the slowest single agent rather than the sum of all five, which is what keeps full report generation to around 30 seconds.
What does each of the five research agents actually do?
The News Agent pulls recent headlines and catalysts, the Financial Agent analyzes fundamentals and financial statements, the Technical Agent evaluates price action and indicators, the Sentiment Agent gauges investor sentiment, and the Company Agent gathers company-level context. A planner dispatches the ticker to all five, and an aggregator merges their findings into a single report.
How does LangGraph coordinate parallel agents and merge their results?
Each research agent runs as an independent node in a LangGraph graph. LangGraph reducers combine their individual outputs into a single shared state, and the aggregator node only produces the final buy/hold/sell recommendation once every agent has reported back.
Does the Stock Research Agent work for tickers outside the US market?
Coverage depends on the underlying data sources. yfinance and Tavily both support a wide range of exchanges beyond the US, including listings relevant to UK, Australian, and Indian markets, though the depth of fundamentals and news coverage can vary by exchange and region.
Is the buy/hold/sell recommendation reliable enough to base investment decisions on?
The recommendation is generated only after all five agents report back, and every contributing input is traceable through LangSmith. That makes the output explainable and auditable, but it is a research aid that consolidates public information, not financial advice, and should be treated as one input into a broader investment decision.
What does the roughly $0.0003 average cost per report actually include?
It covers the LLM inference cost across all five parallel research agents plus the aggregation step for a single ticker report. Cost is tracked per report through LangSmith, which is what makes it practical to run continuously across a large ticker universe.
