Paper trading. No real money is invested and nobody earned these results. Every figure here is hypothetical. The full disclosures →
HYPOTHETICAL PERFORMANCE These are paper-trading portfolios. No client money is invested, no orders are routed to any venue, and no result shown here was achieved with real capital. Hypothetical results have inherent limitations and do not reflect the effect of real order flow on price.
AI Portfolios
The public record of AI-managed portfolios.

P02 · Retired

AI Swing Trader

by AI Portfolios

No recorded value yet. This book is not at zero — it has not been marked.
All time
—
Holdings
0
Risk level
high
About

Trend continuation and mean reversion are both real but regime-dependent. The deterministic layer decides how much risk may be taken and where the stop sits; the AI decides which of the eligible setups it prefers and why. Risk is sized in dollars-at-risk, never in dollars-invested.

Follow AI Swing Trader

This is the simple view. Nothing has been removed — the decision records, the refused proposals, the AI's own words, the cost model, the published limits and the hash chain are all in Advanced, which is the switch in the header. How to verify any of it →

Showing every layer. Pick Simple or Advanced in the header to choose one — nothing is removed either way, and the full record is always in this page.

Home / portfolios / P02

AI Swing Trader

P02retiredhigh riskrulebook v2.2.0rank and explain
RetiredRETIRED

This book is closed. Its record stays published in full; retirement is a state transition recorded as an event, not a deletion.

This portfolio is retired. It is preserved unedited, it appears in every aggregate statistic on this site, and it was never deleted. Retired at era 2's opening, having traded in era 1. Two measured reasons, neither of them a fault in the thesis. First, its universe is the platform's widest — 1,706 candidates for 532 eligible — and even after session 29 cut the tick's feed cost by 63% it carries roughly five and a half minutes of rate-limiter floor before the model is called, against a published fifteen-minute intraday cadence shared with two other books. A tick that overruns is skipped by `flock` and a skipped firing writes no record, so the book would have decided at a fraction of the rate its page promises with nothing disclosing it. Second, its TRIM rule — the only way it frees cash without exiting a position outright — was arithmetically inert until session 28 replaced it, and the replacement has never fired against the model. A fresh record must not open carrying either.

Capture directional moves lasting roughly 3 to 30 trading days in liquid US equities and ETFs, using a defined-risk framework where every position has a pre-committed stop and a maximum holding period.

AI Swing Trader's decisions, live →The public decision feed posts every decision when it's made — before settlement, refusals included. On Telegram, free.
Cadence — when it last decided, and when it next will
Next decision due
2026-09-28 11:30Z
Decision slots
3
SlotLast dueAnsweredStatus
premarket scan
30 7 * * MON-FRI · America/New_York
—neverunchecked
This slot marks and reports; it never calls the model, so it leaves no decision record to check it against.
midday check
0 12 * * MON-FRI · America/New_York
—neverunchecked
This slot marks and reports; it never calls the model, so it leaves no decision record to check it against.
postclose react
10 16 * * MON-FRI · America/New_York
—neverunchecked
This slot marks and reports; it never calls the model, so it leaves no decision record to check it against.

Catch-up policy. A decision instant that passes unanswered is run on the next pass, once, and the record stamps both instants — when it was due and when it actually ran. Past the catch-up window the gap stays open and is published as missed rather than backfilled.

Track record

No track record exists.

This portfolio was retired before its first decision cycle and is preserved in this state permanently.

Starting capital
$100,000own work — never restated
Benchmarks
SPY · MTUM, 50_50_SPY_CASH
Mandate hash
e310a29c1eaca2c92ca9c98757be6581561dcd478cc6dab92e6700765a64d3dc

What the AI is allowed to do

This portfolio's AI ranks candidates and explains its reasoning. It proposes direction and conviction only. Every price, quantity, weight and risk limit is computed by deterministic code the model cannot see or influence.

It may propose

BUY · TRIM · SELL · HOLD · TIGHTEN_STOP

At most 4 proposals per run, each carrying a direction, a conviction from 1 to 5, a rationale, and references to the facts it used.

It cannot
  • set a price
  • set a quantity or share count
  • set a weight or position size
  • set or move a risk limit
  • execute anything

Model tier fast · prompt version P02-v1. Any change to the decider or the prompt is recorded as a MODEL_CHANGE event in the audit chain — without it the record would be a chimera of two systems presented as one.

Enforced limits

Every limit below names the code path that enforces it. This is not decoration: a limit that is published but never fires is worse than no limit, because a reader has no way to tell the difference. A test walks every mandate, drives the engine into the state each declared control claims to protect against, and fails the build if nothing stops it.

exposure
LimitValueEnforced by
Maximum gross exposure100.0%gate 2 — size_order
Maximum single sector40.0%gate 2 — size_order
permissions
LimitValueEnforced by
Shortingprohibitedgate 1 — proposal validation
Derivativesprohibitedgate 1 — proposal validation
Marginprohibitedgate 1 — proposal validation
sizing
LimitValueEnforced by
Maximum positions12gate 3 — BREACH_MAX_POSITIONS (portfolio limit check)
Minimum new position2.0%gate 2 — size_order
Maximum order as % of ADV0.5%gate 2 — size_order
loss limits
LimitValueEnforced by
Weekly loss limit8.0%gate 3 — HALT_WEEKLY_LOSS_LIMIT
Single-day loss alert4.0%gate 3 — alert
data integrity
LimitValueEnforced by
Stale-data halt24 hoursgate 3 — HALT_STALE_DATA
drawdown ladder
LimitValueEnforced by
At −10.0% drawdownalert, scale_risk_budget:0.5gate 3 — drawdown ladder
At −15.0% drawdownalert, pause_new_positions_days:5, scale_risk_budget:0.5gate 3 — drawdown ladder
At −20.0% drawdownalert, scale_risk_budget:0.25, mandatory_deep_reviewgate 3 — drawdown ladder
At −25.0% drawdownsuspend_portfolio, publish_post_mortem, require_new_rulebook_versiongate 3 — drawdown ladder
turnover
LimitValueEnforced by
Max trades per week12entry block — PAUSE_TURNOVER_CAP_REACHED (never blocks an exit)
Min holding period days1entry block — PAUSE_TURNOVER_CAP_REACHED (never blocks an exit)
circuit breakers
LimitValueEnforced by
Halt trading if price gap unexplained pct20gate 3 — circuit breaker
Halt trading if vix above45gate 3 — circuit breaker
Halt trading if factpack hash mismatchtruegate 3 — circuit breaker

Execution

Cost profile
zero_commission_us
Fill convention
vwap_window
Decision → order latency
60s
VWAP window
15 minutes

Fills are struck on a VWAP window that begins strictly after the decision timestamp plus a latency delay. No fill can use information from the bar in which the decision was made, so look-ahead is arithmetically impossible rather than merely avoided.

Philosophy

Trend continuation and mean reversion are both real but regime-dependent. The deterministic layer decides how much risk may be taken and where the stop sits; the AI decides which of the eligible setups it prefers and why. Risk is sized in dollars-at-risk, never in dollars-invested.

Review schedule

JobCronTimezoneMakes a decision
premarket scan30 7 * * MON-FRIAmerica/New_Yorkyes
midday check0 12 * * MON-FRIAmerica/New_Yorkyes
postclose react10 16 * * MON-FRIAmerica/New_Yorkyes

Published on a fixed, regular schedule. Never event-triggered — no "market is crashing, sell now" alerts, deliberately. This table is the promise; the cadence panel at the top of the page is whether it was kept, instant by instant.

Machine-readable mandate: config/portfolios/P02_ai_swing_trader.yaml · human rulebook: docs/portfolios/P02_ai_swing_trader.md · effective from 2026-08-06 (wall clock) · payload 06ec491b8950…

Every trade, as it happens
What each portfolio bought, what it sold and what it lost. Free, on Telegram.
Join →
Or follow @AIPortfolios186 on X, where the same trades are posted.
Live public decision feed.Every decision, fill and refusal, as it is published — including the ones that lose money. Delivered on Telegram, free.Get the feed →or subscribe by RSS/Atom

The same decisions are posted on X as @AIPortfolios186.

Data provided for free by IEX. By accessing or using IEX Historical Data, you agree to the IEX Historical Data Terms of Use. · Powered by CoinGecko · Logos provided by Logo.dev · Company logos identify holdings only and imply no endorsement.