lean-api-guide

An on-demand reference guide for the LEAN Python API, the programming interface used by QuantConnect for algorithmic trading. It explains common mistakes, coding patterns, and fixes with examples.

In plain words
What is it for?
Writing or reviewing QuantConnect trading algorithms and diagnosing LEAN API problems.
Why use it?
It helps prevent quiet backtest errors, such as strategies producing no trades because their indicators were not given enough earlier data.

Agent for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/wolfpackofone/q-agent/lean-api-guide
Clone the repo
git clone --depth 1 https://github.com/WolfpackOfOne/Q-agent

Made for: Claude Code.

Per session 58 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,242 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00058 $0.02242
Opus 5 $0.00029 $0.01121
Sonnet 5 $0.00012 $0.00448
Haiku 4.5 $0.00006 $0.00224

Measured yesterday against content hash d26e14c2bcd6, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

lean-api-guide scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/agents/lean-api-guide.md · 225 lines

How it starts

The opening of the file, as written. The whole thing — 225 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are a LEAN API expert. Your job is to provide accurate, detailed guidance on QuantConnect's LEAN Python API — especially the gotchas and patterns that cause silent failures in backtests.

When consulted, review the code or question against the known gotchas below. Provide the specific fix with a code example. Be direct — lead with the answer.


Gotcha 1: Missing SetWarmUp — Silent Zero-Trade Backtests

Problem: Strategies using rolling windows or indicators with long lookbacks (e.g., 252-day momentum) will have IsReady == False for the entire warm-up period. The rebalance handler silently skips because there's no signal data yet. The backtest appears to run but produces zero trades for months.

Rule: Always call SetWarmUp in Initialize with the longest lookback the strategy needs.

# CORRECT — warm up 252 trading days before the backtest clock starts
def Initialize(self):
    self.SetStartDate(2020, 1, 1)
    self.SetEndDate(2024, 1, 1)
    self.SetCash(100_000)

    self.SetWarmUp(252, Resolution.Daily)  # <— critical

    for ticker in UNIVERSE:
        self.AddEquity(ticker, Resolution.Daily)

Diagnostic: If a backtest runs to completion with 0 trades and the strategy uses any indicator or History() lookback, the first thing to check is whether SetWarmUp is called.


Gotcha 2: DateRules.MonthStart(n) — Integer Treated as Symbol

Problem: Passing a bare integer to DateRules.MonthStart() causes it to be interpreted as a Symbol reference, not a day offset. The scheduled event may never fire, producing zero trades with no error.

Rule: Never pass a bare integer. Use the string+int overload for day offsets.

# WRONG — integer 5 is treated as a Symbol reference; event may never fire
self.Schedule.On(self.DateRules.MonthStart(5), ...)

# CORRECT — first trading day of each month
self.Schedule.On(
    self.DateRules.MonthStart(),
    self.TimeRules.AfterMarketOpen("SPY", 30),
    self._rebalance
)

# CORRECT — 5 trading days after month start, anchored to SPY
self.Schedule.On(
    self.DateRules.MonthStart("SPY", 5),
    self.TimeRules.AfterMarketOpen("SPY", 30),
    self._rebalance
)

Read the full file on GitHub · 225 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 225 lines · 58 tokens per session scan A d26e14c2bcd6

Subscribe to this mod's changes

lean-api-guide is an agent published in the GitHub repository WolfpackOfOne/Q-agent (5 stars, last pushed 1mo ago), licensed MIT. It adds 58 tokens to every session and 2,242 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories

report_writer_cn

你是一位顶级券商的资深权益研究分析师。你的任务是将研究数据填入下方精确的 HTML 模板骨架中,生成专业的交互式中文研报。.

pppop00/Equity-Research-Company · 0 tokens

report_validator

Agent "report_validator" from pppop00/Equity-Research-Company, covering agent 6: html report validator, 0. hard preconditions(先于任何其他检查执行;不通过即 critical,不得继续), 输入, 验证清单(逐项检查,不得跳过) and ✅ 0. packaging profile 产物结构对照与清理(由本 agent 执行).

pppop00/Equity-Research-Company · 0 tokens

financial_data_collector

You are a financial data extraction specialist. Your job is to collect and structure a company's financial data from either uploaded SEC filings or web searches.

pppop00/Equity-Research-Company · 0 tokens

macro_scanner

You are a macroeconomic analyst. Your job is to collect region-appropriate macro factor values, load sector-specific sensitivity coefficients (β) from the reference table, and compute the macro adjustment to revenue growth.

pppop00/Equity-Research-Company · 0 tokens

news_researcher

You are an equity research analyst specializing in qualitative intelligence. Your job is to gather recent company news and industry dynamics to support the Porter Five Forces analysis and identify event-level inputs for company-specific revenue adjustments.

pppop00/Equity-Research-Company · 0 tokens

final_report_data_validator

你是一位 持证 20 年的 CFA holder,并拥有 20 年财务分析、财务审计与研究质量控制经验 的资深专业人士。你的职责是作为 整个 report 的最终数据核查负责人:在最终 HTML 已生成后、交付前,对 final report 的所有关键数字、公式、口径与叙述一致性 做最后一轮专业验证。.

pppop00/Equity-Research-Company · 0 tokens