Skip to content

Taurus

Taurus turns plain-English investment intent into real, executable portfolios.

Core trick

An LLM emits a declarative StrategySpec with target weights that a deterministic engine validates and executes as paper orders.

Tags

Description

Taurus turns plain-English investment intent into real, executable portfolios. Type a thesis — "$5,000 in defence" or "long the AI infrastructure trade" — and Taurus reasons about the market, builds a weighted basket of US-listed ETFs and stocks using live broker data, and routes the order via Kite MCP. The interface is a chat, not a ticker grid. We're closing the gap between having a view and implementing it: tens of millions of US retail investors form views every day but freeze at the broker UI because the tools assume you already know which symbols to type. Robo-advisors are too generic, Bloomberg is too expensive, influencers are conflicted. Taurus is the expressive robo — the missing translation layer between intent and execution.
Ishaannarang22/taurus★ 00 forksTypeScriptCreated May 23, 2026 · last push Jul 19, 2026

README excerpt

# Taurus

**Prompt-driven investing.** Describe a strategy in plain English (for example, "invest $4,000 in AI companies") and Taurus's AI agent designs a weighted stock basket, funds it from your paper account, executes the orders, and then manages the portfolio on a daily schedule.

**Live:** https://taurus-nu.vercel.app

![Taurus dashboard](taurus-home.png)

## What it does

- **Natural-language strategy generation.** A Gemini-powered generator turns a prompt into a declarative `StrategySpec`: a basket of stocks with target weights, entry prices, a rebalance rule, and a cash reserve. Nothing is persisted until you confirm the spec ("ETF on demand").
- **Deterministic paper-trading engine.** A dependency-injected execution engine fills orders against real market prices, tracks positions, average entry price, and cash, and is idempotent per (strategy, account, day) so scheduler retries never double-fill.
- **Autonomous portfolio agent.** A daily cron drives a Gemini tool-calling loop (`get_quote`, `get_positions`, `get_cash`, `get_strategies`, `place_order`) that reviews each account and acts. Guardrails (max orders per run, max order notional, long-only) are enforced in code, not by the prompt.
- **Real market data.** Quotes come from Zerodha Kite Connect when a session token is present, with Alpha Vantage as the fallback source, behind a common `MarketDataProvider` interface.
- **Optional live execution.** With `KITE_LIVE_TRADING=true`, buy orders route to Zerodha as real 

Team