$git clone https://github.com/longsizhuo/openInvestResearch-grade investment decision engine for AI agents: isolated multi-agent committee, auditable verdicts, backtests with lookahead protection, published negative results
| 1 | <div align="center"> |
| 2 | |
| 3 | <img width="120" height="120" alt="owl-02-lineart-gold" src="https://github.com/user-attachments/assets/e4c1efa0-026a-4777-ae62-48b9b0be435c" /> |
| 4 | |
| 5 | # openInvest |
| 6 | |
| 7 | **A self-hosted investment decision engine built for modern AI agents. Multi-agent information isolation and cross-challenge protocol, providing an auditable decision trail (Audit Trail).** |
| 8 | |
| 9 | [](https://www.python.org/) |
| 10 | [](docs/wiki/20-agent-usage-tutorial.md) |
| 11 | [](LICENSE) |
| 12 | [](https://github.com/longsizhuo/openInvest) |
| 13 | [](https://glama.ai/mcp/servers/longsizhuo/openInvest) |
| 14 | |
| 15 | [📚 Full Architecture Wiki](docs/wiki/README.md) · [🇨🇳 中文版](README_zh.md) |
| 16 | |
| 17 | </div> |
| 18 | |
| 19 | --- |
| 20 | |
| 21 | ## What is OpenInvest? |
| 22 | |
| 23 | OpenInvest is a self-hosted investment decision engine built for modern AI agents. |
| 24 | |
| 25 | It provides a verifiable investment committee, evidence-based reasoning, long-horizon backtesting, and auditable decision records. Instead of replacing Claude Code, Codex, Hermes, or OpenClaw, OpenInvest is designed to power them. |
| 26 | |
| 27 | --- |
| 28 | |
| 29 | ## Live Performance & PnL |
| 30 | |
| 31 | <div align="center"> |
| 32 | <img src="https://raw.githubusercontent.com/longsizhuo/openInvest/pnl-data/docs/pnl_chart.svg" alt="PnL chart" width="100%"/> |
| 33 | <sub>Data feed is automatically updated every 2 hours using `jobs/pnl_snapshot` and pushed to the <a href="https://github.com/longsizhuo/openInvest/tree/pnl-data">pnl-data branch</a></sub> |
| 34 | <br/> |
| 35 | <sub>Upper half: 30-day net asset value trend · Lower half: Net asset value comparison against 8 benchmark assets (transparent disclosure, <b>not an alpha claim</b>—the committee's proven value is discipline and transparency, not excess return, see <a href="docs/wiki/adr/023-honest-positioning-not-alpha.md">ADR-023</a>)</sub> |
| 36 | <br/> |
| 37 | <sub>📌 <b>Note</b>: The current chart shows the author's live production portfolio. After self-hosting, the system will automatically render your own equity curve based on the holdings defined in your `memory/` directory.</sub> |
| 38 | </div> |
| 39 | |
| 40 | <!-- OUTPERFORM_FEED_START --> |
| 41 | <!-- OUTPERFORM_FEED_END --> |
| 42 | |
| 43 | * **Benchmark Portfolio**: The system introduces 8 standard control benchmarks across 4 quadrants (AI advisors / Mutual funds / Wealth management / Broad market index). For details on the comparison methodology and data cleaning logic, see [docs/wiki/README.md](docs/wiki/README.md). |
| 44 | |
| 45 | --- |
| 46 | |
| 47 | ## Research & Falsification |
| 48 | |
| 49 | **System Self-Disclosure**: This system is an **auditing tool to eliminate human investment cognitive biases and enforce reasoning transparency**, not a return-amplifying black box. Latest automated audit (`docs/verdict_accuracy.md`): Directional verdicts (excluding HOLD) have a true hit rate of **42.2%** (n=56, **below random**); `HOLD` accounts for **56%** of all decisions. The system's value lies in transparency and discipline (mostly staying inactive, low turnover), **not directional prediction**. Detailed log stream can be found in [docs/verdict_accuracy.md](docs/verdict_accuracy.md). |
| 50 | |
| 51 | This project systematically attempts to falsify its own edge and publishes negative results as-is. The deterministic features the committee reads, and the timing signals around them, were tested against pre-registered statistical gates — none survived as tradable alpha. |
| 52 | |
| 53 | | Test | Result | Verdict | |
| 54 | |---|---|---| |
| 55 | | Q1 cross-sectional stock picking | 6 features, mean-IC 0.025–0.067, Holm-corrected **p=0.397** | No significant stock-picking signal | |
| 56 | | M1 multivariate GBM (out-of-sample) | mean OOS IC **+0.003**, p=0.925 | Feature combination doesn't help either — no signal | |
| 57 | | Q2 gold MA200 trend | **p_holm=0.016**, significant — but `trend_dca` shows it is **beta, not tradable alpha**: timing terminal value **3.07 vs 15.10** buy-and-hold, Sharpe **+0.36 vs +0.68**, max drawdown deeper (**−57% vs −44%**) | Statistically significant, economically untradable | |
| 58 | | Per-asset multi-signal families | 3 assets × 4 signal families × parameter grid = 24 variants per asset; after costs + DSR deflation, **none passes DSR > 0.95** | No tradable signal in any family | |
| 59 | | Positive control | A cheating perfect-foresight timing signal scores **DSR = 1.00** | The harness can detect a real signal | |
| 60 | |
| 61 | Methodology: Newey-West HAC t-statistics, Deflated Sharpe Ratio (Bailey & López de Prado 2014, re-derived equation by equation), Holm correction, zero lookahead, and LLM training-cutoff probes. |
| 62 | |
| 63 | Details: [experiments/signal-eval/README.md](experiments/signal-eval/README.md) · [docs/verdict_accuracy.md](docs/verdict_accuracy.md) · [ADR-022](docs/wiki/adr/022-backtest-memory-contamination-and-holdout-discipline.md) · [ADR-023](docs/wiki/adr/ |