Oracle3
Open-source trading engine and MCP server for prediction markets. Fee-aware no-arbitrage trading across related contracts, live on Kalshi, Polymarket and Solana or on paper.
Agent teams on your own Claude Code subscription, annotated gold and FX charts, and RLCD: a calibrated buy / sell / hold model that reports its own track record.
FinancePython · RustGitHub @f8fvwgzcOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
View Engine — local AI research and trading desk: an orchestrator hires agent teams on your Claude Code subscription, plus RLCD, a calibrated buy/sell/hold model, and annotated charts for gold and FX.
Taken from the repository README
Loading the full README.
Read the full README ↗View Engine is a local AI research and trading desk. Ask a question and an orchestrator hires a team of AI agents to research it on your own Claude Code subscription; drop a TradingView chart and it reads the structure (HH/HL/LH/LL, consolidation, support and resistance, sweeps and fakeouts), draws it, and gives a buy / sell / hold call from RLCD, a calibrated decision model trained on years of gold and FX history.
Website: https://f8fvwgzc.github.io/view-engine/ · Not financial advice: the model reports its own track record, and on current data that record says "hold".
A local research engine. Create a project, ask a question, and a single orchestrator hires a team of specialist agents for it, wires them into a dependency graph, lets them research the open web and exchange findings, and returns a decision-ready strategy with sources. You watch the team being born, talking and leaving in real time.
No credits, no API billing: agents run on your own CLI subscriptions (Claude Code, Codex, GitHub Copilot) or on local models (Ollama, any OpenAI-compatible server). Efficiency features — prompt caching, compression, memory — exist so those subscription limits go further.
Requirements: Docker, Rust, Node 22+, and at least one provider (e.g. claude logged in).
make dev
This starts Postgres (pgvector, host port 5433), Redis and the HTTP/3 edge (Caddy) in Docker, then the API on
http://localhost:3001, the UI on http://localhost:5173 and the quant sidecar on http://127.0.0.1:8090 on your
machine (needs uv). The API runs on the host so it can launch your CLIs. Open the app through the edge at
https://localhost:8443 (HTTP/3, HTTP/2 and HTTP/1.1 on one port; run make edge-trust once to trust its local
certificate). URLs are shareable: ?project=…&task=…&agent=….
Transport, caching and database layout are described in ADR 0001: browser ⇄ edge over HTTP/3, API ⇄ sidecars over gRPC with a two-tier (in-process + Redis) cache, and the index / key / trigger setup of Postgres.
Other targets: make test, make containers (everything in Docker; Ollama/OpenAI-compatible/simulated only).
reports_to) and its dependencies.continue/done) within their iteration limit.
Agents may request extra specialists mid-run; the orchestrator validates and wires them in.Create a task with Trading desk selected, name an instrument (USDJPY, EURUSD, XAUUSD, DXY, SPY…) or let the desk detect it, pick a horizon and optional timeframes, and drop/paste chart screenshots.
quant/, make quant, port 8090) builds a market data pack from free sources: OHLC for
every timeframe (Yahoo/Stooq), indicators and support/resistance zones, cross-asset correlations (DXY, yields,
JPY, gold, equities), the ForexFactory economic calendar, trading sessions, options positioning from ETF option
chains (OI walls, put/call, max pain, approximate dealer gamma — FXY/GLD/UUP/SPY proxies, ~15 min delayed) and
a LightGBM model's P(up) + expected range with walk-forward validation.Outputs are probabilities with a measured track record, not guarantees or financial advice. Realtime CME/OTC FX options and tick data need a paid feed; the sidecar's data layer is where such adapters plug in.
backend/rlcd)An independent API (port 8095, make rlcd) that answers typed questions with probabilities instead of text. It
follows the System One contract (one request = a state plus typed questions; answers are a choice, a
score or a noul, the probability that a statement is true), and it is our own outcome-trained model, not a
language model: every question maps to a trained head.
setup:5m, setup:15m, setup:1h) answer which of buy, sell or neither reaches its target
before its stop from the latest candle close, with the fixed day-trade risk (stop 20 pips, targets 50 and 100).quant/.cache/m1,
imported from free sources or your own MetaTrader exports in quant/data/import/), candles built from it, and for
every candle the chart-structure, session, news-timing and currency-strength features with what happened next.CalibratedClassifierCV on time-ordered folds; the most recent 20% of time is
never trained on and every number shown in Settings → RLCD MODEL comes from it.hold, with the reason.make rlcd-train retrains everything. POST /v1/systemone, /v1/rank, /v1/decide, /v1/scan, /v1/feedback,
/v1/train, GET /v1/calibration, /v1/bernoulli are documented in backend/rlcd/README.md.
backend/src/harness)| Module | What it does |
|---|---|
orchestrator.rs | Hiring, DAG validation, scheduler with retry/backoff, agent loop, critic rounds, final decision |
router.rs | Model router: role → provider:model, ordered fallback chain on usage limits / unavailability |
providers.rs | Adapters: Claude Code CLI (integrated, lean claude -p mode), Codex, Copilot, Ollama, OpenAI-compatible, simulated |
skills.rs + skills/ (yours) | User-owned SKILL.md library: in-memory index (inverted-index BM25 + vector similarity, RRF-fused) shortlists skills for the orchestrator and resolves them per agent without a model call; outcome stats nudge ranking; GitHub import |
memory.rs | Always-on long-term memory: pgvector + full-text hybrid recall fused by RRF, dedup, consolidation into observations |
compress.rs | HTML→text, dense-line elision, BM25 extractive compression, never_worse |
ledger.rs | Token accounting (input/output/cache read/write, tokens saved) and content-addressed response cache |
web.rs | Search/fetch for providers without native browsing (DuckDuckGo, Wikipedia, optional SearXNG), cached |
Claude Code calls run with --strict-mcp-config --setting-sources "" --system-prompt-file … and only the
WebSearch/WebFetch tools, which cut the fixed context per call from ~33k to a few hundred tokens. The shared
system prompt is byte-identical across agents so the provider prompt cache is reused within a run.
Codex, Copilot, Ollama and OpenAI-compatible adapters are implemented but not yet exercised end to end.
View Engine ships without skills. Your library lives in skills/ (git-ignored): write skills in
Settings → Skills, drop skills/<name>/SKILL.md folders in, or import packs from public GitHub repos
(e.g. anthropics/skills). See skills/README.md. Agents run fine with an empty library.
Settings (UI → gear icon) hold run defaults, the model router, the skill library and appearance (fonts, text
size, accent colour, header and panel sizes — stored per browser). Backend env vars: CLAUDE_BIN, CLAUDE_MODEL, CODEX_BIN,
CODEX_MODEL, COPILOT_BIN, OLLAMA_URL, OLLAMA_MODEL, OPENAI_BASE_URL, OPENAI_MODEL,
OPENAI_API_KEY, SEARXNG_URL, SKILLS_DIR, VIEW_ENGINE_WORKDIR, BIND_ADDR (default 127.0.0.1; the API has no
authentication, keep it local). With Ollama's nomic-embed-text pulled,
memory uses semantic embeddings; otherwise a local hashing embedder is used.
POST /api/events accepts external events (scripts, hooks) into the live stream.
Attributions for ported open-source patterns are in NOTICE. Add authentication before exposing this beyond your machine.