Skip to main content
The ResearchAgent reads from positions, risk metrics, feeds, alpha decay, execution quality, hypotheses, and the knowledge graph. It runs threshold-based rules and returns a list of findings sorted by severity. No LLM calls. Same fund state always produces the same report.

Quick Start

Works standalone too. Both fund and knowledge_graph are optional:

How It Works

1

Parse intent

Keyword matching extracts the focus area, strategy name, and topics from the query.
2

Plan

Each focus area maps to a set of internal tools to call.
3

Observe

Tools query fund subsystems. Failed tools are skipped.
4

Analyze

Analyzers run threshold rules against observations and produce findings.
5

Report

Findings are deduplicated, sorted by severity, and returned as a dict.

Query Types

Tools

15 internal query tools. Each returns a dict or skips if its subsystem is missing.

Fund tools

positions, markets, risk, performance, feeds, strategies

Quant tools

correlations, regime, hypotheses, alpha_decay, execution_quality, stress_test

Graph tools

graph_context, graph_opportunities, graph_correlations

Analyzers

12 analyzers with fixed thresholds. All thresholds are class attributes you can override.

Output

Every call returns a dict with findings, data_sources, reasoning_trace, summary, duration_secs. Each finding has: