intelligentinvestor
Description
Do fundamental stock analysis and predict the future price
intelligentinvestor
Description
intelligentinvestor is an investing environment for evaluating whether agents can allocate capital using point-in-time market data and SEC filings. The agent starts with $100,000 and manages a long-only portfolio from 2030 through 2035 across five large public companies from different industries:
AAPL: Apple Inc. (Technology)JPM: JPMorgan Chase & Co. (Financials)JNJ: Johnson & Johnson (Health Care)XOM: Exxon Mobil Corporation (Energy)WMT: Walmart Inc. (Consumer Staples)
At each quarterly decision date, the agent can invest any portion of current capital across the five stocks or leave capital uninvested as cash. The allocation is held for one quarter, then the environment settles realized returns, updates capital, emits a reward versus SPY, and reveals the next quarter.
The environment is point-in-time: stock prices and SEC filings (10-K, 10-K/A, 10-Q, 10-Q/A, 8-K, 8-K/A) begin in 2025, but data is revealed only through the current quarterly decision date. Future returns are hidden and used only for settlement and reward.
A five-year artificial date delay is applied to reduce reward hacking from memorized training data.
Capabilities
This environment helps evaluate whether agents can turn messy real-world financial evidence into disciplined, adaptive decisions over time.
- Reading and prioritizing SEC filings, including 10-K, 10-Q, 8-K, and amendments
- Comparing companies across distinct sectors
- Managing bankroll and position sizing over repeated quarterly decisions
- Reasoning under point-in-time information constraints
Tasks
The current release contains one task:
intelligentinvestor-2030-2035-quarterly: allocate capital quarterly from 2030 through 2035 acrossAAPL,JPM,JNJ,XOM,WMT, or cash.
The episode has 25 steps and 25 rewards: 24 quarterly allocation settlements from 2030Q1 through 2035Q4, plus a final closeout step that reports the final bankroll.
Reward Structure
The reward is dense and programmatic. Each quarter, the portfolio is settled using realized adjusted-close returns over the next quarterly holding period.
Quarter reward:
log(portfolio_end_capital / portfolio_start_capital)
- log(spy_end_capital / spy_start_capital)Capital updates after every quarter. Cash has a 0% quarterly return. The final result reports:
- final bankroll
- final SPY benchmark bankroll
- cumulative log-excess reward
- full quarterly allocation and settlement history
Data
The environment contains:
- Daily OHLCV and adjusted-close data from
2025-01-01through2035-12-31 - SEC filings from
2025-01-01through2035-12-31 - Forms:
10-K,10-K/A,10-Q,10-Q/A,8-K,8-K/A - Filing metadata with ticker, form type, filing date, report date, and accession number
Data is revealed quarter by quarter. At a decision date, tools only expose prices and filings whose dates are on or before that decision date.
Tools
The agent interacts with the environment through six tools:
get_current_state()returns the current quarter, capital, benchmark capital, available symbols, reveal date, and prior settlements.list_filings(ticker, year, form_type?)lists important SEC filing metadata for one ticker and one calendar year.read_filing(accession_number)reads one currently available filing document by accession number.get_price_history(symbol, start_date, end_date)returns daily price rows forAAPL,JPM,JNJ,XOM,WMT, orSPY. Each request can cover at most 90 calendar days and cannot go beyond the current reveal date.bash(command, timeout?, max_bytes?)runs shell or Python analysis inside a network-disabled sandbox without mounted market data.allocate_portfolio(allocations, cash?, rationale)allocates current capital for the next quarter, settles the quarter, updates capital, emits reward, and advances the episode.cashis an optional integer dollar amount; any unallocated capital also remains in cash.
The sum of stock allocations plus cash cannot exceed current capital.
Evaluation
Evaluation results will be reported after benchmark runs are complete.
Planned agent variants:
| Agent | Final bankroll | SPY benchmark bankroll |
|---|---|---|
| GPT-5.4 mini | 225466 (ran out of quota after 8 quarters) | 150915 |
| GPT-5.4 | Too Expensive to run | TBD |