AWS Logo
Menu
AI Stock Screener for Hedge Funds with Bedrock & OpenSearch

AI Stock Screener for Hedge Funds with Bedrock & OpenSearch

Learn how LinqAlpha’s AI stock screener uses hybrid search, finance-tuned embeddings, and an audit agent to streamline hedge fund research and speed decisions.

Published Apr 2, 2025
This post is originally published on the AWS Technical Blog.

Introducing LinqAlpha

LinqAlpha is a Boston-based vertical AI startup that provides financial research solutions for hedge funds and asset managers. LinqAlpha is focused on building multi-agentic AI systems tailored for investment research. By combining hybrid search with a finance-specific embedding model, LinqAlpha helps institutional investors efficiently process unstructured data—such as earnings calls, news, analyst reports, and filings—to support faster and more accurate decisions for hedge funds and asset managers. LinqAlpha currently supports over 100 hedge funds and asset managers globally.

The Challenge of Stock Screening in Hedge Funds

Hedge fund analysts are often required to screen not just the companies within their direct coverage, but thousands across sectors and geographies—many outside their core expertise. This process demands synthesizing both structured data (e.g., financial statements) and unstructured data (e.g., news, disclosures, analyst notes). Traditional workflows rely heavily on manual document review, making it time-consuming and resource-intensive.
To solve this, LinqAlpha developed the 'Company Screener Agent', an LLM-powered agent that uses hybrid search and multi-agent orchestration to extract insights in real time from massive, messy datasets, enabling analysts to rapidly understand companies far beyond their usual coverage.

Overview of LinqAlpha’s Company Screener Agent

LinqAlpha’s Company Screener Agent is a solution that maximizes the efficiency of investment research through AI-based search and automated stock selection features.
  1. Hybrid Search-Based Stock Filtering
    By combining Amazon OpenSearch’s keyword search with a finance-specific embedding model for vector search, it delivers faster and more precise results from vast amounts of data. This allows investors to go beyond simple keyword searches and explore stocks in context.
  2. LLM-Based Screener Agent
    Utilizing Claude 3.7 Sonnet, the Screener Agent comprehensively analyzes market news, analyst reports, and financial data to provide AI-driven investment insights. Based on these insights, it automatically summarizes key information and organizes investment rationales, making it highly effective for stock filtering and risk assessment.
A real-world use case includes automatically screening promising stocks within a specific industry (semiconductors, biotech, finance, etc.). It also incorporates news and social media data to assess investment risks and helps users respond immediately to rapidly changing market conditions.
In this post, we will explore how to build a hybrid search by vectorizing text using a finance-specific embedding model and combining it with Amazon OpenSearch’s keyword search. We will then outline the overall flow of how the LLM-based Screener Agent automatically selects stocks and even provides summary reports and investment rationales.

Role of the Finance-Specific Embedding Model

To effectively analyze financial data, LinqAlpha uses a proprietary finance-specific embedding model. Unlike general-purpose natural language processing models, this finance-oriented embedding model learns specialized terminology and context from financial documents to provide more accurate search results.
In particular, as of March 1, 2024, LinqAlpha’s embedding model ranked No. 1 on the Hugging Face MTEB leaderboard, demonstrating its performance. LinqAlpha has also developed its own finance-specific embedding model optimized for financial research, enabling advanced search and analysis. Further details can be found in LinqAlpha’s blog.
Source: Hugging Face MTEB leaderboard.
LinqAlpha's Embeddings Ranked #1 on Hugging Face MTEB Leaderboard
LinqAlpha's finance-specialized embedding model is designed to more precisely capture the relationships and context within complex financial documents. As a result, it offers higher search accuracy across a broad set of data sources such as earnings reports, 10-K/10-Q filings, analyst notes, and corporate disclosures. With this technical advancement, LinqAlpha helps investors quickly discover the information they need from vast amounts of market data.

Key Process of the Company Screener Agent

LinqAlpha’s Company Screener Agent supports accurate and rapid investment decisions by integrating three core components: Hybrid Search, AI-based Screener Agent, and Audit Agent. Traditionally, filtering by financial metrics and analyzing news and analyst reports were handled separately. LinqAlpha unifies these tasks into a single, hybrid search-driven analysis platform, and then validates the AI-generated conclusions using the Audit Agent, giving investors confidence in the results.
The core flow of LinqAlpha Screener is divided into four main steps:
  1. The user sets specific criteria (e.g., Market Cap) to perform an initial filter.
  2. The Claude 3.7 Sonnet-based Screener Agent queries Amazon OpenSearch for relevant data (news, analyst reports, disclosures) and synthesizes it into outputs like Yes/No or Positive/Negative.
  3. The Audit Agent then verifies the Screener Agent’s conclusions—particularly checking the accuracy of references.
  4. Finally, if necessary, the user can directly view earnings-call scripts or source documents via an audit trail.
Through this process, LinqAlpha Screener helps investors efficiently explore data and make prompt decisions based on reliable information.Solution Architecture
  • Data Preprocessing: AWS Lambda processes and extracts metadata from financial documents.
  • Indexing & Search: The data is embedded using LinqAlpha’s finance model and stored in Amazon OpenSearch for both keyword and vector search.
  • Query Execution: Amazon EC2 powers the runtime; Claude 3.7 Sonnet interprets queries, re-ranks results, and formulates investment rationales.
  • Low Latency: Claude runs in the us-east-1 region, optimized for fast inference.

Solution Architecture

The overall architecture of the LinqAlpha Screener is built around data collection and preprocessing, hybrid search and AI analysis, and final result delivery. AWS Lambda handles preprocessing of incoming financial data and extracts metadata to store in Amazon OpenSearch. Here, LinqAlpha’s finance-specific embedding model generates vectors and indexes them in Amazon OpenSearch, enabling both keyword-based and semantic search.
When a user enters a query, an Amazon EC2 instance uses OpenSearch for the initial search, and Claude 3.7 Sonnet analyzes the query to optimize the search strategy. Claude 3.7 Sonnet then re-ranks the search results, and ultimately compiles investment rationales for the end user. Claude 3.7 Sonnet is hosted in the us-east-1 region and is optimized for fast response times.Why Amazon Bedrock?
After evaluating multiple LLMs via Amazon Bedrock, Claude 3.7 Sonnet was selected for its superior:
  • Human-evaluated accuracy
  • Formatting consistency
  • Balanced performance, despite slightly slower time-to-first-token than Claude 3.5 Haiku

Workflow and Implementation Details

Initial Screening by Market Cap and Additional Queries

In the first step of LinqAlpha Screener, thousands of U.S. stocks are filtered by Market Cap. The user can also enter a question like “How are companies responding to changing U.S. regulations?” to see how companies handle specific issues.
OpenSearch generates a list of stocks filtered by Market Cap, and Claude 3.7 Sonnet automatically creates summaries for each stock based on the user’s additional question. The UI displays Ticker, Company Name, Market Cap, etc., and a concise answer to the query in the right-hand column.

Using the Screener Agent for Stock Analysis and Yes/No Conclusions

The Screener Agent analyzes each stock using data from OpenSearch (news, analyst reports, disclosures, etc.). Claude 3.7 Sonnet summarizes key points about each stock and reranks the search results via secondary analysis.
Finally, Claude 3.7 Sonnet delivers an overall conclusion—Yes/No or Positive/Negative—to aid user decision-making. The UI presents an AI-generated summary of each stock in columns, clearly highlighting the final conclusion.

Final Verification and Reference Checking with the Audit Agent

The Audit Agent performs a secondary verification of the Screener Agent’s results. Claude 3.7 Sonnet specifically checks the sources referenced (news articles, analyst reports, disclosure documents) to ensure there is no false or exaggerated information.
The UI features an “Audit Results” or “Citation Check” column listing source references clearly, so users can instantly confirm which data the AI analysis is based on.

Viewing Detailed Content (Transcripts, etc.) – Providing an Audit Trail

If a user wants to dive deeper into a particular stock or issue, the Screener Agent can immediately provide the relevant document (full news article, earnings-call script, etc.).
This allows investors to quickly access comprehensive details without missing any important information during the analysis stage. In the UI, hovering or clicking on specific information displays the original document in a popup window.

Why We Chose AWS

Why We Chose Amazon Bedrock

After comparing various LLMs using Amazon Bedrock, Claude 3.7 Sonnet emerged as the most suitable model for investment analysis and stock screening. Below is the evaluation of multiple models:
  • Claude 3.7 Sonnet scored the highest in Human Annotated Evaluation (expert assessments of model outputs).
  • Its Time to First Token was slightly slower than Claude 3.5 Haiku, but it maintained stable performance in terms of Formatting Error Rate.

Why We Chose Amazon OpenSearch

Although there are various solutions that can be used as vector databases (e.g., Milvus, Pinecone, Weaviate), we chose OpenSearch for the following reasons:
  1. Outstanding Full-text Search Features
    Beyond vector search, it is often crucial to accurately identify documents containing specific keywords. OpenSearch excels in keyword searching with capabilities such as stemming and lemmatization.
  2. Flexible Tokenizer Settings and Multilingual Support
    Our needs extend beyond English text alone. OpenSearch offers various tokenizer options, making it optimal for multilingual searches.
  3. Metadata Filtering and Complex Query Support
    We often need to filter by metadata (e.g., Market Cap, geographic data, date ranges). OpenSearch supports complex bool queries and range queries, allowing effective combination of vector and keyword searches.
  4. Advantages of Hybrid Search
    Pure vector search may miss documents containing certain critical keywords, while keyword-only search fails to capture semantic context. OpenSearch performs both vector and keyword searches to achieve high-accuracy retrieval of essential information from financial texts.

Real-World Benefits

After implementation, several hedge fund research teams in the US, Dubai, Hong Kong, and Singapore experienced the following outcomes:
  • Reduced Working Hours: Preliminary research on each stock (news/disclosures/report reviews) dropped from about two hours to under 20 minutes (a roughly 6.5x improvement).
  • Expanded Coverage: The number of stocks that can be covered in the same timeframe nearly tripled.
  • Reduced Cognitive Bias: By consolidating news and disclosures, AI helps mitigate personal biases and supports more objective analysis.

User Testimonials

“The Company Screener has streamlined my workflow, cutting research time from hours to minutes.”
— [Equity Analyst, Hedge Fund]
“AI-powered scoring feature in the company screener allows us to classify companies beyond standard categories, capturing nuances like tariffs and regulatory impact.”
— [Investment Research Analyst, Asset Manager]
 

Comments