QVeris
Run a task

6 Best Financial News APIs for AI Agents面向 AI Agent 的 6 个最佳金融新闻 API

Compare six providers by real-time delivery, ticker filters, sentiment, history, pricing, and REST, WebSocket, webhook, or MCP access—then build a source-backed news workflow your agent can operate safely.从实时推送、股票代码筛选、情绪分析、历史数据、价格,以及 REST、WebSocket、Webhook 与 MCP 接入方式对比六家供应商,并构建可追溯、可复核的智能体新闻工作流。

Financial News API Guide金融新闻 API 指南

TL;DR
  • Best fit for low-latency market news: Benzinga, when its delivery options and commercial license match the workflow.
  • Best fit for entity-first filtering and prototypes: Marketaux, especially when ticker and industry filters matter more than a deep archive.
  • Best fit for broader market-data workflows: Finnhub or Alpha Vantage, depending on the required endpoints, freshness, and current plan limits.
  • Best fit for multilingual general-news monitoring: NewsData.io; validate finance-specific entity mapping before production use.
  • Best fit for licensed enterprise research and archives: Nexis Data+, subject to the organization’s contract and redistribution rights.
  • Best multi-provider approach: Route by freshness, provenance, usage rights, and fallback quality instead of hardcoding one feed.

Last reviewed: July 27, 2026. Confirm current pricing, quotas, delivery modes, and redistribution rights in each provider’s official documentation.

  • 适合低延迟市场新闻:Benzinga,前提是其传输方式和商业授权符合工作流要求。
  • 适合实体筛选与原型验证:Marketaux,尤其适合重视股票代码和行业筛选、但不依赖深度历史库的场景。
  • 适合更广泛的市场数据工作流:Finnhub 或 Alpha Vantage,具体取决于所需端点、数据新鲜度与当前套餐限制。
  • 适合多语言通用新闻监控:NewsData.io;生产环境使用前应验证金融实体映射质量。
  • 适合企业授权研究与历史归档:Nexis Data+,具体取决于企业合同及再分发权限。
  • 适合多供应商接入:不要写死单一新闻源,应按新鲜度、来源可追溯性、使用权和回退质量进行路由。

最近复核:2026 年 7 月 27 日。价格、额度、传输方式与再分发权限请以各供应商官方文档为准。

What is a Financial News API?什么是金融新闻 API?

A financial news API is a programmatic interface that delivers market-relevant news content — headlines, articles, and sentiment scores — to software systems. For AI agents, the key value is real-time access to sentiment-scored news with ticker symbols, enabling your agent to monitor market events and trigger downstream actions without manual data gathering.金融新闻 API 是一种以程序化方式向软件系统提供市场相关新闻内容的接口,返回标题、文章、情绪评分等结构化数据。对于 AI Agent,其核心价值是实时获取带股票代码和情绪标签的新闻,使智能体无需人工收集数据即可监控市场事件并触发后续操作。

The core capability: your AI agent sends a query (a company ticker, sector keyword, or topic), and the API returns structured news data. The critical differentiator for AI agent use cases is sentiment scoring — an algorithmic assessment of whether the article tone is positive, negative, or neutral, typically ranging from -1.0 to +1.0.其基本工作方式是:AI Agent 提交公司股票代码、行业关键词或主题,API 返回结构化新闻数据。面向智能体场景的重要差异之一是情绪评分,即通过算法判断文章语气偏正面、负面还是中性,通常用 -1.0 到 +1.0 的区间表示。

For an AI agent, “financial news API” is not one requirement. A portfolio monitor may need company news by ticker every few minutes; a research assistant may need historical articles and source URLs; an event-driven trading workflow may need WebSocket or webhook delivery; and an analyst copilot may prefer MCP so it can discover and call tools from a compatible host. Treating these as one generic feed produces a comparison that looks complete but fails at implementation time.

This guide therefore evaluates the providers against operational questions: how quickly an item becomes available, whether the response identifies affected securities, whether the original source can be verified, whether full text is licensed for your intended use, how far back the archive goes, and which delivery modes the provider supports. Those questions are more durable than a single price or request limit, both of which can change after publication.

对于 AI Agent 来说,“金融新闻 API”并不是一个单一需求。投资组合监控智能体可能需要每隔几分钟按股票代码获取公司新闻;研究助手可能需要历史文章与原始来源链接;事件驱动工作流可能需要 WebSocket 或 Webhook 推送;分析 Copilot 则可能更适合通过 MCP 在兼容的宿主中发现并调用新闻工具。如果把这些需求都当成普通新闻流,页面看起来内容很多,真正实施时却很容易失效。

因此,本指南更关注长期有效的工程问题:一条新闻多快可以获取、响应能否识别受影响证券、能否追溯原始来源、全文授权是否适用于你的产品、历史数据能回看多久,以及供应商支持哪些传输方式。相比随时可能变化的单一价格或请求上限,这些指标更能决定一个金融新闻 API 是否适合生产环境。

Financial news APIs serve two distinct populations:

  • Human-facing dashboards — traders and analysts reading news summaries
  • AI agent pipelines — autonomous systems that consume structured data, evaluate sentiment, and execute actions

This comparison focuses on the AI agent use case. For that workload, the four most important dimensions are: sentiment score availability, ticker symbol tagging, update latency, and ease of integration.

The "AI agent + financial news" pairing is one of the most active LLM use cases in 2026. The pattern is straightforward: news event → sentiment analysis → agent decision → action. Whether the action is drafting a market brief, alerting a portfolio manager, or triggering a rebalancing workflow, the AI agent orchestration layer needs structured, machine-readable news data — not a human-readable news feed.

金融新闻 API 主要服务两类使用者:

  • 面向人的仪表盘——供交易员和分析师阅读新闻摘要;
  • AI Agent 工作流——由自主系统消费结构化数据、评估情绪并执行操作。

本页重点讨论 AI Agent 场景。对这类工作负载而言,最重要的四个维度是:是否提供情绪评分股票代码标注质量更新延迟集成难度

“AI Agent + 金融新闻”是 2026 年较活跃的 LLM 应用模式之一:新闻事件 → 情绪分析 → 智能体决策 → 执行动作。无论最终动作是生成市场简报、提醒投资组合经理,还是触发再平衡流程,AI Agent 编排层需要的都是可供机器读取的结构化新闻数据,而不是仅供人浏览的新闻流。

Sentiment scoring disclaimer: Sentiment scores reflect algorithmic analysis of article tone. They are not data analysis outputs or market intelligence recommendations. AI agents using these scores should combine them with other signals before triggering any action.

How to Choose a Financial News API for an AI Agent

The best financial news API is the one whose data contract matches the decision your agent must support. Start with the output: a breaking-news alert, a daily portfolio brief, an earnings research packet, a compliance review queue, or a backtest dataset. Then work backward to the latency, coverage, metadata, retention, and licensing required to produce that output reliably.

⚡ Real-time delivery

Measure publication-to-API latency and delivery method separately. “Real time” may mean fast REST polling, a pushed WebSocket event, or a webhook delivered after the provider has classified the story.

🏷️ Ticker and entity mapping

Prefer stable identifiers, exchange context, relevance scores, and multi-entity relationships. A raw keyword match can confuse companies with similar names or attach macro news to the wrong security.

🧭 Source provenance

Keep the publisher, canonical URL, publication time, first-seen time, and provider receipt time. Agents need this evidence to cite claims, resolve duplicates, and avoid presenting rewrites as independent confirmation.

🧠 Sentiment and event labels

Check whether sentiment is article-level or ticker-level, whether confidence is exposed, and whether labels cover useful catalysts such as earnings, M&A, regulation, litigation, product launches, or analyst actions.

🗃️ Historical depth

A live feed answers “what changed now.” Historical financial news supports backtesting, event studies, retrieval-augmented research, and evaluation of alert rules. Confirm retention and redistribution rights before collecting an archive.

🔐 Licensing and usage rights

Headline access, snippets, full text, model input, storage, display, and redistribution can carry different rights. A technically accessible article is not automatically licensed for every downstream AI use.

如何为 AI Agent 选择金融新闻 API

最好的金融新闻 API,不是字段最多或宣传延迟最低的那一个,而是数据契约与智能体所支持的决策完全匹配的那一个。先确定最终输出:突发新闻提醒、每日投资组合简报、财报研究包、合规复核队列,还是回测数据集;再反推所需的延迟、覆盖范围、元数据、历史保留周期和授权条件。

⚡ 实时推送

把“新闻发布到 API 可见的延迟”和“交付方式”分开评估。所谓实时,可能是高频 REST 轮询、WebSocket 主动推送,也可能是供应商完成分类后再发送 Webhook。

🏷️ 股票代码与实体映射

优先选择能够返回稳定标识符、交易所信息、相关度和多实体关系的接口。单纯关键词匹配容易混淆同名公司,也可能把宏观新闻错误关联到某只证券。

🧭 来源与时间证据

保留媒体名称、原始 URL、发布时间、首次发现时间和供应商接收时间。智能体需要这些证据来引用事实、合并重复报道,并避免把转载内容误当成多源确认。

🧠 情绪与事件标签

确认情绪是文章级还是股票级,是否包含置信度,以及是否覆盖财报、并购、监管、诉讼、产品发布和分析师评级等真正可执行的事件类型。

🗃️ 历史新闻深度

实时新闻回答“刚刚发生了什么”;历史金融新闻则用于回测、事件研究、检索增强研究和提醒规则评估。建立本地档案前,要确认数据保留和再分发权限。

🔐 授权与使用边界

标题、摘要、全文、模型输入、长期存储、前端展示和再分发可能对应不同授权。技术上能够抓取,并不等于可以用于所有下游 AI 场景。

Financial news API workflow showing collection, normalization, deduplication, sentiment analysis, source verification, alerts, research briefs, and human review.

6 Financial News APIs Compared

The six providers below cover the range from developer-friendly free tiers to enterprise-grade institutional data. The comparison focuses on dimensions that matter for AI agent integration.

Financial News API Comparison — Free Tier, Sentiment Scoring, Language Coverage, Ticker Tagging, and Pricing
Provider Developer Entry Sentiment Scoring Language Coverage Ticker Tagging Commercial Access
Benzinga Marketplace and direct plans; verify current trial terms提供 Marketplace 与直接订阅;需确认当前试用条款 Depends on product and enrichment取决于具体产品与增值字段 English Market-focused metadata; verify feed包含市场类元数据;需确认所选数据流 Marketplace listing or sales quoteMarketplace 标价或销售报价
Marketaux Self-serve access; verify the current allowance提供自助接入;请确认当前额度 Sentiment and entity enrichment available; verify the response schema提供情绪与实体增强;请核对当前响应结构 Multilingual coverage; verify supported languages覆盖多语言;请确认当前支持范围 Entity and symbol filters available; test mapping quality支持实体与代码筛选;应测试映射质量 Free and paid plans; verify current pricing提供免费与付费套餐;请确认当前价格
Finnhub News Free API access advertised; limits vary by endpoint公开提供免费 API;不同端点限额不同 Separate company news sentiment endpoint提供独立的公司新闻情绪端点 Primarily English market coverage以英文市场新闻为主 Yes — ticker-level Free access plus paid data packages免费接入与付费数据包并存
Alpha Vantage News Standard free service available; verify the current daily limit提供标准免费服务;请确认当前每日限额 Yes — integrated in main API English Yes — topic + ticker filtering Free service and premium plans; verify current terms提供免费服务与高级套餐;请确认当前条款
NewsData.io Free plan advertised; credits and delay vary by plan公开提供免费套餐;额度与延迟按套餐变化 Plan and endpoint dependent取决于套餐与端点 Broad global and multilingual coverage覆盖全球多语言新闻 Keyword/category filters; verify entity fields支持关键词与分类筛选;需核对实体字段 Free and paid plans; verify current pricing提供免费与付费套餐;需确认当前价格
Nexis Data+ Enterprise evaluation; ask about trial access企业评估接入;可咨询试用安排 Yes — LexisNexis NLP pipeline Global + specialized financial coverage Yes — comprehensive Enterprise quote and licensing review企业报价与许可评估
Reviewed against public provider documentation on July 27, 2026. Pricing, limits, delay, redistribution rights, and endpoint entitlements can change; verify the current plan before integrating.依据 2026 年 7 月 27 日公开供应商文档复核。价格、限额、延迟、再分发权限和端点授权可能变化,集成前请确认当前套餐。

Official sources: Review the current documentation from Benzinga, Marketaux, Finnhub, Alpha Vantage, NewsData.io, and Nexis Data+.官方来源:请查看 BenzingaMarketauxFinnhubAlpha VantageNewsData.ioNexis Data+ 的最新文档。

The comparison table reveals a clear segmentation: Marketaux and Finnhub lead on the dimensions that matter most for AI agents — sentiment scoring with developer access and ticker-oriented workflows. NewsData.io emphasizes broad news coverage. Benzinga provides market-focused content through direct and marketplace channels. Alpha Vantage integrates news sentiment into its broader financial data API, which suits teams already on that platform. Nexis Data+ sits in a separate enterprise tier for teams that prioritize licensed source breadth and institutional workflows.

If your AI agent needs sentiment-aware ticker workflows on a prototype budget, Finnhub, Marketaux, and Alpha Vantage are practical candidates to benchmark. Their public documentation exposes developer entry points, but free allowances, history windows, endpoint entitlements, and rate limits can change. Verify the current plan and run the same representative test set against each provider. If you need licensed institutional breadth, evaluate Nexis Data+ and confirm archive access, redistribution rights, and commercial terms with its sales team.如果你的 AI Agent 需要在原型预算下完成带情绪分析的股票代码新闻工作流,可以优先测试 FinnhubMarketauxAlpha Vantage。这些平台都提供开发者接入方式,但免费额度、历史窗口、端点权限和速率限制可能变化。请先核对当前套餐,再用同一组代表性样本进行对比。如果需要具备授权保障的机构级覆盖,可评估 Nexis Data+,并向其销售团队确认档案访问、再分发权限和商业条款。

AI Agent compatibility by provider: Marketaux is a useful fit for multilingual, entity-filtered finance news; Finnhub suits ticker-oriented company-news workflows; Alpha Vantage is convenient when news sentiment must sit beside quotes, fundamentals, and indicators in one vendor account; Benzinga is relevant for market-focused news products; NewsData.io is worth testing when broad multilingual news coverage matters; and Nexis Data+ belongs in enterprise evaluations where source breadth, licensing, and compliance controls outweigh self-serve simplicity.

Selection shortcut: Start with one provider that matches your dominant workflow, then run a representative test set covering earnings, macro announcements, corporate actions, regulatory news, and quiet market days. Compare missed events, duplicates, ticker mapping, source links, and time-to-availability before adding a second provider.

选择捷径:先选择一家最符合主要工作流的供应商,再使用包含财报、宏观公告、公司行动、监管新闻和普通交易日的代表性样本进行测试。重点比较漏报、重复报道、股票代码映射、来源链接和数据可见时间,然后再决定是否增加第二家供应商。

REST, WebSocket, Webhook, or MCP: Which Access Pattern Fits?

“Does the provider have an API?” is too broad for an agent workflow. Delivery mode changes how quickly the agent sees an event, how much infrastructure you operate, and whether the model should call the source interactively or consume events from a background service.

REST API

Best for ticker lookups, scheduled portfolio scans, historical queries, and reproducible research. REST is easy to cache and test, but aggressive polling can waste requests and still miss the earliest version of a story.

WebSocket stream

Best for low-latency monitoring and event-driven alert pipelines. Your service must handle reconnects, heartbeats, replay or gap recovery, backpressure, and duplicate messages after reconnecting.

Webhook delivery

Best when the provider should push matched events to your endpoint. Verify signature validation, retry behavior, ordering guarantees, idempotency keys, and how missed deliveries can be replayed.

MCP or agent tool

Best for interactive research in an MCP-compatible client. Expose narrow, read-only tools such as “news by ticker” or “news since timestamp,” and keep authentication, rate limits, and source URLs visible to the host.

Free financial news API reality: a free tier is useful for validating filters, schemas, and prototype prompts. Production monitoring usually needs more articles per response, higher request limits, stronger availability, clearer licensing, and a recovery path when the source is delayed or unavailable. Test with your real watchlist and peak news window before treating a free plan as production capacity.

Real-time news and historical news solve different jobs

A real-time stock news API should be evaluated on event availability, push support, sequence handling, and the ability to distinguish a breaking item from later rewrites. A historical financial news API should be evaluated on archive depth, point-in-time timestamps, survivorship bias, source consistency, and whether the same query can be reproduced months later. Teams frequently need both: live delivery for alerts and a historical corpus for evaluating whether those alerts would have been useful.

REST、WebSocket、Webhook 还是 MCP:应该怎么选?

“供应商有没有 API”这个问题过于宽泛。接入方式会直接影响智能体看到事件的速度、团队需要维护多少基础设施,以及模型应该主动查询数据,还是由后台服务持续接收并筛选事件。

REST API

适合按股票代码查询、定时扫描投资组合、获取历史新闻和复现研究结果。REST 容易缓存和测试,但高频轮询既消耗额度,也可能错过最早版本的报道。

WebSocket 实时流

适合低延迟监控和事件驱动提醒。服务端需要处理断线重连、心跳、消息补放、积压控制,以及重连后可能再次收到的重复事件。

Webhook 推送

适合让供应商把命中条件的事件主动发送到你的端点。必须确认签名验证、重试策略、顺序保证、幂等键,以及漏发事件如何重新拉取。

MCP 或智能体工具

适合在兼容 MCP 的客户端中开展交互式研究。工具应保持窄而清晰,例如“按股票代码查询新闻”或“查询某时间之后的新闻”,并让鉴权、限流和来源 URL 对宿主可见。

关于免费金融新闻 API:免费额度很适合验证筛选条件、响应结构和提示词原型,但生产监控通常需要更高的文章返回量、更稳定的请求额度、更明确的授权,以及数据延迟或不可用时的恢复方案。决定上线前,应使用真实观察列表,并在财报季或重大事件窗口做压力测试。

实时新闻与历史新闻解决的是两类问题

实时股票新闻 API 应重点评估事件可见延迟、推送能力、序列处理,以及能否区分首发快讯和后续改写;历史金融新闻 API 则应评估档案深度、时间点准确性、幸存者偏差、来源一致性,以及几个月后能否复现同一查询。成熟团队往往两者都需要:实时流负责提醒,历史语料负责验证提醒规则是否真的有效。

AI Agent Use Cases for Financial News

Financial news pipelines have distinct requirements for AI agents, including ticker mapping, sentiment context, deduplication, timestamps, and source attribution. Here are four patterns that production teams commonly evaluate:

Earnings Call Summary Agent

Your agent monitors news APIs for earnings releases from your portfolio companies. When a new earnings story appears, the agent pulls the headline, teaser, and sentiment score. If sentiment is negative (score < -0.3), it drafts a brief summary and alerts the portfolio manager via Slack or email. A typical trigger prompt: "AAPL earnings sentiment dropped to -0.45. Draft a 3-bullet summary of the key concerns and suggest which downstream teams need to be notified." Finnhub's ticker-level tagging makes this straightforward — you filter by company symbol and pull the latest stories within minutes of publication. This pattern scales to 50+ companies with a single polling loop.

FOMC Announcement Response Agent

Federal Reserve statements move markets within seconds. An AI agent can subscribe to financial news feeds filtered for "FOMC", "Federal Reserve", or "interest rate" keywords. When a new article surfaces, the agent reads the content, extracts the sentiment signal (hawkish vs dovish), and triggers a pre-defined workflow — risk alerts, market commentary generation, or a Slack thread for the macro team. A practical prompt: "A new FOMC article was published at 14:00 EST titled '[headline]'. Extract whether the tone is hawkish or dovish, identify the key metric mentioned, and post a one-paragraph impact summary to #macro-alerts." The multi-language capability in Marketaux lets you monitor international coverage (BoJ, ECB, PBOC) simultaneously, giving your agent a global macro view.

Sector Sentiment Tracking Dashboard

Your AI agent runs on a schedule — every hour, it queries news APIs for a basket of tickers in a sector (e.g., semiconductor stocks: NVDA, AMD, INTC, ASML). It aggregates the sentiment scores across multiple articles, calculates a sector-level sentiment trend, and writes the result to a dashboard or database. Over time, the trend data becomes a feature for downstream signal extraction models. A typical query: "For the past 24 hours, aggregate all news for NVDA, AMD, and INTC. Calculate the average sentiment score, flag any articles with absolute sentiment > 0.6, and write the results to the sector_sentiment table." This pattern requires consistent ticker tagging, which Finnhub and Marketaux both provide natively — and it benefits from multi-provider coverage to catch stories that a single source might miss.

Corporate Announcement Alert System

Regulatory filings, CEO departures, product recalls, and partnership announcements all create news events that matter to stakeholders. An AI agent can monitor for specific keywords and event types, gather the original source and relevant company context, and prepare a review packet when a threshold is crossed. For a high-impact event such as an executive departure, the safer pattern is to draft the memo and recommended tasks, then require human approval before notifying external recipients or changing a material workflow.

All four patterns share a common dependency: your agent needs structured, machine-readable news data — ticker symbols, sentiment scores, timestamps, and source metadata — delivered in a consistent format. That's the integration challenge the next sections address.

Financial News API Python Pattern for Agent Pipelines面向智能体工作流的金融新闻 API Python 接入模式

A production integration should normalize the provider response before it reaches the model. Keep provider-specific fields at the adapter boundary and give the agent a stable schema containing the headline, affected symbols, event time, source, canonical URL, sentiment, relevance, and a provider identifier. The example below uses Marketaux’s documented REST endpoint only to illustrate the pattern; the same adapter boundary applies to other providers.

生产环境不应把供应商原始响应直接塞进模型上下文。应在适配层内处理供应商特有字段,再向智能体提供稳定结构,包括标题、相关股票代码、事件时间、来源、原始 URL、情绪、相关度和供应商标识。下面使用 Marketaux 已公开的 REST 端点演示这一模式;其他供应商也可以复用相同的适配边界。

import os
import requests

API_URL = "https://api.marketaux.com/v1/news/all"

response = requests.get(
    API_URL,
    params={
        "api_token": os.environ["MARKETAUX_API_TOKEN"],
        "symbols": "AAPL,MSFT",
        "filter_entities": "true",
        "language": "en",
        "limit": 10,
    },
    timeout=10,
)
response.raise_for_status()

normalized = []
for item in response.json().get("data", []):
    normalized.append({
        "headline": item.get("title"),
        "published_at": item.get("published_at"),
        "source": item.get("source"),
        "url": item.get("url"),
        "symbols": [
            entity.get("symbol")
            for entity in item.get("entities", [])
            if entity.get("symbol")
        ],
        "provider": "marketaux",
    })

1. Preserve point-in-time fields

Store both the publisher timestamp and your first-seen timestamp. For backtests, use only information available at the simulated decision time; later article edits must not leak into earlier results.

2. Deduplicate by event, not URL

Syndicated stories may have different URLs and titles. Combine canonical URL checks with normalized headlines, entity overlap, publication windows, and event labels to form an event cluster.

3. Separate retrieval from judgment

The API retrieves evidence. A classifier or LLM may summarize and rank it, but material actions should use explicit thresholds, corroborating data, and human review where the impact is high.

4. Log every transformation

Record the request, provider, raw item ID, normalization version, prompt or model version, and final alert. Without this chain, a team cannot explain why an agent surfaced or suppressed a story.

1. 保存时间点字段

同时保存媒体发布时间和系统首次发现时间。回测时只能使用模拟决策时刻已经存在的信息,不能让后续改写后的文章内容泄漏到更早的结果中。

2. 按事件去重,而不是只看 URL

同一稿件被转载后可能拥有不同 URL 和标题。应结合规范化标题、实体重合度、发布时间窗口和事件标签,形成同一事件的报道簇。

3. 把信息获取与判断分开

API 负责获取证据;分类模型或 LLM 可以摘要和排序,但影响较大的动作仍应依赖明确阈值、其他数据交叉验证和必要的人类复核。

4. 记录每一步转换

记录请求参数、供应商、原始条目 ID、标准化版本、提示词或模型版本,以及最终提醒。没有这条链路,团队就无法解释智能体为什么展示或忽略某条新闻。

The Multi-Provider Problem

At some point, a single provider won't be enough. You need broader coverage to catch stories across different sources, lower latency to reduce the gap between publication and your agent's awareness, or redundancy against provider outages. That's when the multi-provider problem starts — and it's harder than it looks.

Single-Provider Code Example单供应商代码示例

Starting with a single provider is the right move. The integration is simpler, and you can validate your agent's news-triggered workflow before adding multi-provider complexity. Marketaux is a strong starting point for AI agent use cases: it provides sentiment scores with confidence intervals, ticker tagging, multilingual coverage, and a developer-friendly REST API.

# Fetch financial news with sentiment scores from Marketaux
# Verify the current plan allowance before production use
# Docs: https://marketaux.com/

curl -X GET "https://api.marketaux.com/v1/news" \
  -d "api_token=YOUR_API_KEY" \
  -d "symbols=AAPL,MSFT,GOOGL" \
  -d "filter_entities=true" \
  -d "language=en"

# Sample response structure (simplified):
{
  "data": [
    {
      "title": "Apple Reports Record Q1 Revenue",
      "description": "iPhone maker beats analyst expectations...",
      "sentiment": {
        "score": 0.72,       // -1 (negative) to +1 (positive)
        "label": "positive",
        "confidence": 0.87 // confidence interval
      },
      "entities": [
        { "symbol": "AAPL", "name": "Apple Inc." }
      ],
      "published_at": "2026-05-20T09:30:00Z",
      "source": "Reuters",
      "url": "https://..."
    }
  ]
}

The response structure is clean: sentiment scores are top-level, confidence intervals are included, and ticker symbols are in a dedicated entities array. For an AI agent, parsing this into a structured prompt is straightforward. The confidence score is particularly useful — you can set a threshold (e.g., only act on articles where confidence > 0.7) to filter lowquality sentiment predictions.

Where to start: Build a provider-neutral test harness first. Compare Marketaux and Finnhub News with the same ticker list, event window, and expected output. Use official documentation to confirm current authentication, quotas, history, fields, and redistribution rights. Select by measured event coverage, source provenance, duplicate rate, entity mapping, and time-to-availability—not advertised request volume alone.

The Four Challenges of Multi-Provider Integration多供应商集成的四大挑战

Challenge #1: Deduplication挑战 #1:去重
The same news event — say, an Apple earnings release — appears across Benzinga, Finnhub, Marketaux, and NewsData.io within minutes. Each provider assigns its own article ID and timestamp. Without deduplication logic, your AI agent processes the same story four times and potentially triggers four duplicate actions.同一条新闻事件,例如 Apple 发布财报,可能在几分钟内同时出现在 Benzinga、Finnhub、Marketaux 和 NewsData.io。每家供应商都会分配不同的文章 ID 和时间戳。如果没有去重逻辑,AI Agent 会把同一事件处理四次,并可能重复触发四次操作。
Challenge #2: Sentiment Normalization挑战 #2:情绪评分标准化
Finnhub scores from -1 to +1. Marketaux provides a confidence-weighted label. Alpha Vantage uses its own scale. When your agent aggregates sentiment across providers to build a sector trend, these incompatible scales make direct comparison meaningless without a normalization step.Finnhub 使用 -1 到 +1 的评分,Marketaux 提供带置信度的标签,Alpha Vantage 则使用自己的量表。当 Agent 汇总多家供应商的情绪数据来构建行业趋势时,如果不先进行标准化,这些不兼容的评分无法直接比较。
Challenge #3: Rate Limit Fragmentation挑战 #3:速率限制分散
Each provider applies its own quota model—daily credits, per-minute limits, endpoint-specific entitlements, or contract limits. A multi-provider agent needs per-provider counters, exponential backoff, circuit breakers, and fallback routing. Treat limits as configuration loaded from current plan metadata rather than hard-coded constants.每家供应商都有自己的额度模型,例如每日积分、每分钟请求数、端点权限或合同限制。多供应商 Agent 需要分别维护计数器、指数退避、熔断器和回退路由。应从当前套餐元数据读取限制配置,而不是把数值写死在代码中。
Challenge #4: Format Incompatibility挑战 #4:数据格式不兼容
Every provider returns JSON, but the field names and nesting differ. Finnhub puts sentiment at the top level. Marketaux nests it under an entities array. Alpha Vantage embeds it within a sentiment object with different field names. Your parsing code must handle each format separately, or you need a normalization layer.虽然各家供应商都返回 JSON,但字段名称和嵌套结构不同。Finnhub 把情绪字段放在顶层,Marketaux 将其放在 entities 数组中,Alpha Vantage 则嵌入字段名称不同的 sentiment 对象。解析代码必须分别处理每种格式,或者增加统一的标准化层。

Here's what the manual fallback pattern looks like in code:

# Manual multi-provider fallback — the naive approach
# Every new provider adds ~30-50 lines of parsing and error handling

import requests
import time

def fetch_news_with_fallback(symbols):
    providers = ["finnhub", "marketaux", "newsdata"]
    rate_limits = {"finnhub": {"calls": 60, "window": 60},
                   "marketaux": {"calls": 100, "window": 86400},
                   "newsdata": {"calls": 200, "window": 86400}}

    for provider in providers:
        if rate_limits[provider]["calls"] <= 0:
            continue  # Rate limited — skip to next
        try:
            response = call_provider_api(provider, symbols)
            # Each provider returns different JSON structure:
            articles = normalize_format(provider, response)  // ~40 lines
            return deduplicate(articles)
        except RateLimitError:
            rate_limits[provider]["calls"] -= 1
            time.sleep(2 ** (rate_limits[provider]["window"]))
        except APIError as e:
            continue  // Try next provider silently

    return []  // All providers failed

# The normalization function for just 3 providers:
def normalize_format(provider, response):
    if provider == "finnhub":
        return [{"title": r["headline"],
                   "sentiment": r["sentiment"],   // -1 to +1
                   "tickers": r["related"].split(",")}
                  for r in response["data"]]
    elif provider == "marketaux":
        return [{"title": r["title"],
                   "sentiment": r["sentiment"]["score"],  // nested
                   "tickers": [e["symbol"] for e in r["entities"]]}
                  for r in response["data"]]
    elif provider == "newsdata":
        return [{"title": r["title"],
                   "sentiment": None,  // No sentiment — map to None
                   "tickers": extract_tickers(r)}
                  for r in response["results"]]}

The code above handles 3 providers. The normalize_format function alone is 25+ lines, and it grows linearly with every new provider you add. The real cost isn't the code — it's the maintenance burden: every time a provider changes their response format (and they do), you update the normalization layer. Beyond the code, you need monitoring for rate limit exhaustion, alerting for provider outages, and a strategy for when two providers give contradictory sentiment scores for the same article.

The alternative is treating multi-provider complexity as an infrastructure problem, not a code problem. That's what capability routing addresses — you write one integration, and the routing layer handles provider discovery, fallback logic, and response normalization.

Unified Access Through Capability Routing

The capability routing pattern abstracts away provider-specific integration logic by presenting a unified interface to your AI agent. You write one integration call; the routing layer handles multi-provider fallback, deduplication, and response normalization. The key insight: multi-provider complexity is an infrastructure problem, not a code problem. By delegating that complexity to a routing layer, your agent code stays focused on the business logic — what to do with the data, not how to fetch it.

Why QVeris specifically for this use case? The QVeris CLI approach differs from MCP schema injection in a critical way: tool calls execute as subprocess calls that bypass the LLM's context window entirely. With traditional MCP, every tool schema gets injected into every prompt — 50 tools can mean 10,000-25,000 tokens of overhead before your actual query runs. The CLI subprocess pattern eliminates that overhead. Your agent calls qveris call, the routing layer handles the provider complexity, and the result returns directly without touching the LLM context with tool schemas.

# QVeris CLI — unified financial news access for AI agents
# No per-provider authentication. No manual fallback logic.
# Docs: https://qveris.ai/docs/cli

# Step 1: Discover available financial news capabilities
$ qveris discover "financial news with sentiment"

# Returns a list of matching capabilities across all providers:
# finnhub_news           Finnhub News API — sentiment scores, ticker tags (60 req/min free)
# marketaux_news         Marketaux News API — sentiment + confidence, 30+ languages
# alphavantage_news      Alpha Vantage News Sentiment — topic + ticker filtering

# Step 2: Query via unified interface — the routing layer handles fallback
$ qveris call finnhub_news --symbols "AAPL,MSFT,GOOGL" --format json

# Step 3: Wire into your AI agent's function-calling loop
# The agent calls qveris via subprocess — zero schema injection overhead

const newsResult = await execSync(`qveris call finnhub_news --symbols "${symbols}" --format json`)
const articles = JSON.parse(newsResult.stdout)

articles.forEach(article => {
  if (article.sentiment < -0.3) {
    agent.trigger("negative_sentiment_alert", {
      ticker: article.tickers[0],
      sentiment: article.sentiment,
      headline: article.title,
      url: article.url
    })
  }
})

The routing layer knows which providers support sentiment scoring, what their rate limits are, and how to normalize their response formats. Your agent code stays clean — it calls one interface and gets back structured data regardless of which provider ultimately answered. This is the pattern that makes "FOMC announcement → agent action" work reliably. The agent doesn't need to know which provider responded, whether a rate limit was hit, or how to parse a specific provider's JSON. The capability routing layer handles all of that behind the interface.

For AI agents using a function-calling pattern, QVeris CLI can be integrated into a tool loop through subprocess execution. The agent discovers a relevant capability, inspects its inputs, calls it, and receives structured output without hardcoding every provider schema into the application. Explore the QVeris CLI documentation.

Give Your AI Agent Unified Financial News Access为 AI Agent 提供统一的金融新闻访问

QVeris CLI handles multi-provider routing, sentiment normalization, and fallback logic — so your agent gets structured financial news without per-provider integration code. Connect to Finnhub, Marketaux, Alpha Vantage, and more through one interface.

Explore QVeris CLI →了解 QVeris CLI →

Getting Started Checklist

Ready to integrate financial news into your AI agent? Here's a practical checklist to go from zero to a working prototype:

1 Install QVeris CLI安装 QVeris CLI

Install via npm: npm install -g qveris. Or download the binary for macOS, Linux, or Windows from qveris.ai/docs/cli. Run qveris login to authenticate.

2 Discover available financial news capabilities发现可用的金融新闻能力

Run qveris discover "financial news with sentiment" to see all available news API capabilities. Each entry shows the provider, rate limits, and whether sentiment scoring is included. Start with finnhub_news or marketaux_news for sentiment-enabled options.

3 Query news for a specific ticker查询指定股票代码的新闻

Run qveris call finnhub_news --symbols "AAPL" --format json to retrieve the latest articles with sentiment scores and ticker tags. Examine the response structure before integrating into your agent.

4 Integrate into your agent's function-calling loop集成到 Agent 的函数调用循环

Wire the CLI call into your agent via subprocess execution: execSync("qveris call finnhub_news --symbols "AAPL" --format json"). Parse the JSON response and pass sentiment scores to your LLM prompt. Set a threshold (e.g., sentiment < -0.3) to trigger downstream actions like alerts or summaries.

5 Add fallback logic添加回退逻辑

Configure your agent to fall back to a secondary provider when the primary hits a rate limit. QVeris CLI handles provider switching automatically if you configure multiple providers in your routing profile. Monitor your daily request counts to stay within free-tier limits.

For more details on each step, see the QVeris CLI documentation. For a deeper dive into the function-calling pattern, see Function Calling for AI Agents.

FAQ: Financial News APIs for AI Agents

Which financial news API is best?哪个金融新闻 API 最好?
The best financial news API depends on your use case. For AI agent integration with sentiment scoring, Marketaux and Finnhub lead on free-tier accessibility and ticker tagging. For enterprise-grade coverage without free options, Nexis Data+ provides institutional depth. Benzinga suits developers needing AWS Marketplace integration. No single provider covers all dimensions — the right choice hinges on your sentiment analysis needs, language requirements, and whether you need real-time or near-real-time data.最合适的金融新闻 API 取决于具体场景。需要情绪评分、免费入门和股票代码标注时,可优先测试 Marketaux 与 Finnhub;需要机构级覆盖时,可评估 Nexis Data+;需要 AWS Marketplace 集成时,Benzinga 更值得考虑。没有一家供应商能覆盖所有维度,应结合情绪分析、语言覆盖以及实时或准实时要求进行选择。
How much does a financial news API cost?金融新闻 API 的费用是多少?
Pricing varies by provider, endpoint, delivery method, archive depth, and redistribution rights. Several providers publish developer or free access, while institutional feeds are usually quote-based. Treat public allowance figures as a snapshot: confirm current pricing and entitlements in official documentation, then test the expected request volume before production.价格会因供应商、端点、传输方式、档案深度和再分发权限而异。部分平台提供公开的开发者或免费接入,机构级数据源通常需要询价。公开额度只能视为某一时点的快照:上线前应在官方文档中确认当前价格与端点权限,并按预期请求量进行测试。
Can I use multiple financial news APIs together?可以同时使用多个金融新闻 API 吗?
Yes, but it introduces three significant challenges: deduplication (the same news event appears across providers with different IDs and timestamps), sentiment score normalization (each provider uses a different scoring scale and algorithm), and rate limit management (each provider has different throttling windows). Teams typically address these by building a normalization layer that handles response format differences and deduplication logic across providers.可以,但会带来三个主要问题:同一事件在不同供应商中具有不同 ID 和时间戳,因此需要去重;各家情绪算法和量表不同,因此需要标准化;每家供应商的限流窗口不同,因此需要分别管理额度。通常需要建立统一适配层来处理响应格式、情绪评分和跨供应商去重。
How do sentiment analysis approaches differ across financial news APIs?不同金融新闻 API 的情绪分析方法有何差异?
Providers use different methodologies for sentiment scoring. Finnhub assigns a normalized score from -1 (most negative) to +1 (most positive) per article, with ticker-level tagging. Marketaux provides sentiment scores with confidence intervals and supports multilingual articles. Alpha Vantage integrates news sentiment with its topic/ticker filtering within the broader API. Benzinga delivers headline + teaser content with institutional-grade metadata. NewsData.io focuses on raw news breadth across geographies. Nexis Data+ uses LexisNexis's proprietary NLP pipeline for enterprise financial analysis. No industry-standard benchmark exists for sentiment accuracy — each approach has trade-offs in speed, depth, and coverage.各供应商采用不同的情绪评分方法。Finnhub 为文章提供 -1 到 +1 的标准化分数并支持股票代码标注;Marketaux 提供带置信度的情绪评分和多语言支持;Alpha Vantage 将新闻情绪与主题、股票代码筛选整合;Benzinga 提供带机构级元数据的标题和摘要;NewsData.io 更重视跨地区新闻覆盖;Nexis Data+ 使用 LexisNexis 的企业级 NLP 流程。目前没有统一的行业准确率基准,各方案在速度、深度与覆盖范围之间各有取舍。
When should I NOT use a financial news API?哪些情况下不应使用金融新闻 API?
Avoid relying solely on a financial news API for real-time trading signals. News APIs have latency ranging from minutes to hours — they are not suitable for high-frequency trading or time-sensitive market intelligence generation where milliseconds matter. Also avoid single-source dependency for mission-critical monitoring: news APIs can have outages, rate limit hits, or tier changes that break your agent's news access. Build in fallback logic to switch providers automatically when issues occur.不要只依赖金融新闻 API 生成实时交易信号。新闻 API 的延迟可能从数分钟到数小时,不适合要求毫秒级响应的高频交易或高度时敏的市场情报。同时,关键监控任务不应依赖单一来源,因为供应商可能出现中断、触发限流或调整套餐。应设置回退逻辑,在发生问题时自动切换供应商。
What are the options for integrating multiple financial news APIs in one application?在一个应用中集成多个金融新闻 API 有哪些方案?
Three main approaches exist for multi-API integration. First, build a custom adapter layer: write separate integrations for each provider and a normalization layer to handle response format differences and sentiment scale variations. Second, use a routing proxy: deploy a middleware that sits between your application and providers, handling deduplication, format conversion, and provider fallback. Third, use a capability routing CLI: tools like QVeris CLI provide unified access to multiple news providers through a single interface, handling multi-provider routing, deduplication, and response normalization behind the scenes. Each approach trades off development time, maintenance burden, and flexibility.主要有三种方案。第一,自建适配层,为每家供应商分别编写集成,并统一处理响应格式与情绪量表。第二,使用路由代理,在应用和供应商之间部署中间层,负责去重、格式转换和故障回退。第三,使用能力路由 CLI,例如通过 QVeris CLI 的统一接口接入多个新闻供应商,由路由层处理供应商选择、去重和响应标准化。三种方案在开发时间、维护成本和灵活性方面各有权衡。
Is there a free financial news API with sentiment?有没有带情绪分析的免费金融新闻 API?
Yes. Some providers offer limited free access to financial news and sentiment fields, including Marketaux and Alpha Vantage, while Finnhub advertises free API access with separate company-news and news-sentiment endpoints. Free plans are best for schema validation and prototypes because request volume, articles per response, delay, history, support, and redistribution rights may be restricted.有。一些供应商提供有限的免费金融新闻和情绪字段,例如 Marketaux 与 Alpha Vantage;Finnhub 也公开提供免费 API,并分别提供公司新闻和新闻情绪端点。免费套餐更适合验证字段和制作原型,因为请求量、单次返回文章数、延迟、历史范围、支持服务和再分发权限可能受限。
Can a financial news API return news by stock ticker?金融新闻 API 能否按股票代码返回新闻?
Many finance-focused APIs support ticker or entity filters, but the mapping quality differs. Test exchange-qualified symbols, companies with ambiguous names, multi-company stories, ETFs, ADRs, and macro news. A production schema should preserve the provider’s relevance score and entity identifiers instead of reducing every match to a single ticker string.许多金融类 API 支持股票代码或实体筛选,但映射质量差异很大。测试时应覆盖带交易所的代码、名称容易混淆的公司、多公司新闻、ETF、ADR 和宏观新闻。生产数据结构应保留供应商的相关度和实体标识,而不是把所有匹配都简化成一个股票代码字符串。
Do AI agents need MCP if the provider already has REST?供应商已有 REST API,AI Agent 还需要 MCP 吗?
Not always. REST is usually the best foundation for backend services, scheduled jobs, and deterministic retrieval. MCP is useful when an interactive agent must discover and call a narrow news tool from a compatible host. WebSocket or webhook delivery remains more suitable for background event ingestion. Many production systems combine these patterns rather than choosing only one.不一定。REST 通常更适合后端服务、定时任务和确定性查询;当交互式智能体需要在兼容宿主中发现并调用一个窄范围新闻工具时,MCP 更方便;后台事件接收则更适合 WebSocket 或 Webhook。成熟系统经常组合使用这些方式,而不是只选一种。
What makes historical financial news suitable for backtesting?什么样的历史金融新闻适合回测?
A backtest needs point-in-time publication and first-seen timestamps, stable entity mapping, reproducible queries, documented archive coverage, and protection against later edits leaking into earlier decision windows. It also needs clear storage and model-use rights. A large archive without reliable timestamps can create misleading results.回测需要准确的发布时间与首次发现时间、稳定的实体映射、可复现查询、明确的档案覆盖范围,并防止后续文章修改泄漏到更早的决策窗口。同时还要具备清晰的存储和模型使用权限。只有数量庞大、却缺乏可靠时间点的数据,很容易产生误导性结果。

Related Guides