4D Stock Picker Dashboard
Current Allocation
· Model target weights · before whole-share rounding
The ETF allocation currently splits 73.4% SPY / 26.6% QQQ.
A three-week rhythm
Sleeve 2 rotationThe model staggers three sleeves, updating one each week.
Membership exits and corporate actions can require earlier changes.
Recent model performance
Whole-portfolio raw returns and annualized CAGR through the latest signal close. Choose a tier above to compare its results.
The current stock selection
19 unique companies across the SPY and QQQ selection buckets
Shown in bucket rank order. SNDK appears in both buckets; its weights are combined in the portfolio.
Weekly signal history
Newest first · full historyLoading published history…
All published weeks are retained. Returns follow the selected tier, using published weights and adjusted entry/exit opens before trading costs. These are model returns, not account results. Closed cohorts with missing prices or unreconciled interim actions show Pending. Scheduled means the entry date is still ahead.
Weekly signal history
54 weeks · BalancedNewest first · full history
| Trade date | Sleeve | State | Allocation | Companies | Status | Close date | Closed gain/loss |
|---|---|---|---|---|---|---|---|
| 2026-10-19 | 1 | ON3 | Stocks 50.0% · SPY 50.0% | 15 | Scheduled | 2026-11-09Scheduled | — |
| 2026-10-12 | 3 | ON2 | Stocks 50.0% · SPY 36.7% · QQQ 13.3% | 19 | Holding | 2026-11-02Scheduled | — |
| 2026-10-05 | 2 | ON3 | QQQ 24.6% · SPY 75.4% | 0 | Holding | 2026-10-26Scheduled | — |
| 2026-09-28 | 1 | ON3 | QQQ 22.9% · SPY 77.1% | 0 | Holding | 2026-10-19Scheduled | — |
| 2026-09-21 | 3 | ON3 | QQQ 10.8% · SPY 39.2% · Stocks 50.0% | 17 | Closed | 2026-10-12 | -0.40% |
| 2026-09-14 | 2 | ON3 | QQQ 10.5% · SPY 39.5% · Stocks 50.0% | 17 | Closed | 2026-10-05 | +9.44% |
| 2026-09-08 | 1 | ON1 | SHY 8.3% · UUP 8.3% · IBIT 8.3% · QQQ 7.5% · SPY 30.0% · Stocks 37.5% | 15 | Closed | 2026-09-28 | +3.17% |
| 2026-08-31 | 3 | ON1 | SHY 8.3% · UUP 8.3% · IBIT 8.3% · QQQ 7.3% · SPY 30.2% · Stocks 37.5% | 15 | Closed | 2026-09-21 | +5.11% |
| 2026-08-24 | 2 | ON1 | SHY 6.2% · UUP 6.2% · GLD 6.2% · IBIT 6.2% · QQQ 7.3% · SPY 30.2% · Stocks 37.5% | 15 | Closed | 2026-09-14 | -1.05% |
| 2026-08-17 | 1 | ON2 | QQQ 9.9% · SPY 40.1% · Stocks 50.0% | 17 | Closed | 2026-09-08 | -0.75% |
| 2026-08-10 | 3 | ON2 | QQQ 9.7% · SPY 40.3% · Stocks 50.0% | 16 | Closed | 2026-08-31 | +0.97% |
| 2026-08-03 | 2 | ON2 | QQQ 9.8% · SPY 40.2% · Stocks 50.0% | 15 | Closed | 2026-08-24 | +6.30% |
| 2026-07-27 | 1 | ON2 | QQQ 9.6% · SPY 40.4% · Stocks 50.0% | 17 | Closed | 2026-08-17 | +9.30% |
| 2026-07-20 | 3 | ON3 | QQQ 10.1% · SPY 39.9% · Stocks 50.0% | 15 | Closed | 2026-08-10 | +3.13% |
| 2026-07-13 | 2 | ON2 | QQQ 10.6% · SPY 39.4% · Stocks 50.0% | 19 | Closed | 2026-08-03 | -5.46% |
| 2026-07-06 | 1 | ON2 | QQQ 11.8% · SPY 38.2% · Stocks 50.0% | 18 | Closed | 2026-07-27 | -4.65% |
| 2026-06-29 | 3 | ON1 | SHY 8.3% · TLT 8.3% · UUP 8.3% · QQQ 10.6% · SPY 26.9% · Stocks 37.5% | 15 | Closed | 2026-07-20 | -6.47% |
| 2026-06-22 | 2 | ON1 | SHY 8.3% · TLT 8.3% · UUP 8.3% · QQQ 12.0% · SPY 25.5% · Stocks 37.5% | 15 | Closed | 2026-07-13 | -6.95% |
| 2026-06-15 | 1 | ON1 | SHY 12.5% · UUP 12.5% · QQQ 13.4% · SPY 24.1% · Stocks 37.5% | 15 | Closed | 2026-07-06 | -3.98% |
| 2026-06-08 | 3 | ON1 | SHY 12.5% · UUP 12.5% · QQQ 15.0% · SPY 22.5% · Stocks 37.5% | 15 | Closed | 2026-06-29 | +2.81% |
| 2026-06-01 | 2 | ON2 | QQQ 25.1% · SPY 24.9% · Stocks 50.0% | 17 | Closed | 2026-06-22 | +8.09% |
| 2026-05-26 | 1 | ON2 | QQQ 25.1% · SPY 24.9% · Stocks 50.0% | 16 | Closed | 2026-06-15 | +7.02% |
| 2026-05-18 | 3 | ON2 | QQQ 25.4% · SPY 24.6% · Stocks 50.0% | 19 | Closed | 2026-06-08 | +5.45% |
| 2026-05-11 | 2 | ON2 | QQQ 25.4% · SPY 24.6% · Stocks 50.0% | 19 | Closed | 2026-06-01 | +5.81% |
| 2026-05-04 | 1 | ON2 | QQQ 26.5% · SPY 23.5% · Stocks 50.0% | 20 | Closed | 2026-05-26 | +5.35% |
| 2026-04-27 | 3 | ON1 | SHY 6.2% · UUP 6.2% · GLD 6.2% · FXF 6.2% · QQQ 19.3% · SPY 18.2% · Stocks 37.5% | 15 | Closed | 2026-05-18 | +9.10% |
| 2026-04-20 | 2 | ON1 | SHY 6.2% · UUP 6.2% · GLD 6.2% · FXF 6.2% · QQQ 21.7% · SPY 15.8% · Stocks 37.5% | 15 | Closed | 2026-05-11 | +7.07% |
| 2026-04-13 | 1 | ON0 | SHY 12.5% · UUP 12.5% · GLD 12.5% · FXF 12.5% · QQQ 28.9% · SPY 21.1% | 0 | Closed | 2026-05-04 | +3.98% |
| 2026-04-06 | 3 | OFF2 | SHY 16.7% · UUP 16.7% · GLD 16.7% · SPY 50.0% | 0 | Closed | 2026-04-27 | +4.29% |
| 2026-03-30 | 2 | OFF2 | SHY 16.7% · UUP 16.7% · GLD 16.7% · SPY 50.0% | 0 | Closed | 2026-04-20 | +6.02% |
| 2026-03-23 | 1 | OFF3 | SHY 12.5% · UUP 12.5% · GLD 12.5% · FXF 12.5% · SPY 50.0% | 0 | Closed | 2026-04-13 | +2.30% |
| 2026-03-16 | 3 | OFF2 | SHY 16.7% · UUP 16.7% · GLD 16.7% · SPY 50.0% | 0 | Closed | 2026-04-06 | -2.05% |
| 2026-03-09 | 2 | OFF3 | SHY 10.0% · TLT 10.0% · UUP 10.0% · GLD 10.0% · FXF 10.0% · SPY 50.0% | 0 | Closed | 2026-03-30 | -3.29% |
| 2026-03-02 | 1 | ON3 | SPY 50.0% · Stocks 50.0% | 15 | Closed | 2026-03-23 | -0.94% |
| 2026-02-23 | 3 | ON2 | QQQ 20.8% · SPY 29.2% · Stocks 50.0% | 20 | Closed | 2026-03-16 | +0.12% |
| 2026-02-17 | 2 | ON3 | SPY 50.0% · Stocks 50.0% | 15 | Closed | 2026-03-09 | +0.03% |
| 2026-02-09 | 1 | ON3 | QQQ 21.1% · SPY 28.9% · Stocks 50.0% | 18 | Closed | 2026-03-02 | -0.30% |
| 2026-02-02 | 3 | ON1 | SHY 8.3% · GLD 8.3% · FXF 8.3% · QQQ 15.0% · SPY 22.5% · Stocks 37.5% | 15 | Closed | 2026-02-23 | +1.60% |
| 2026-01-26 | 2 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 15.1% · SPY 22.4% · Stocks 37.5% | 15 | Closed | 2026-02-17 | -1.73% |
| 2026-01-20 | 1 | ON1 | SHY 6.2% · TLT 6.2% · UUP 6.2% · GLD 6.2% · QQQ 13.4% · SPY 24.1% · Stocks 37.5% | 16 | Closed | 2026-02-09 | +0.81% |
| 2026-01-12 | 3 | ON1 | SHY 6.2% · TLT 6.2% · UUP 6.2% · GLD 6.2% · QQQ 14.6% · SPY 22.9% · Stocks 37.5% | 16 | Closed | 2026-02-02 | +0.88% |
| 2026-01-05 | 2 | ON1 | SHY 6.2% · UUP 6.2% · GLD 6.2% · FXF 6.2% · QQQ 14.4% · SPY 23.1% · Stocks 37.5% | 16 | Closed | 2026-01-26 | +4.20% |
| 2025-12-29 | 1 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 14.2% · SPY 23.3% · Stocks 37.5% | 16 | Closed | 2026-01-20 | +2.67% |
| 2025-12-22 | 3 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 14.3% · SPY 23.2% · Stocks 37.5% | 16 | Closed | 2026-01-12 | +2.10% |
| 2025-12-15 | 2 | ON1 | SHY 6.2% · UUP 6.2% · GLD 6.2% · FXF 6.2% · QQQ 14.9% · SPY 22.6% · Stocks 37.5% | 15 | Closed | 2026-01-05 | +2.41% |
| 2025-12-08 | 1 | ON1 | SHY 6.2% · TLT 6.2% · UUP 6.2% · GLD 6.2% · QQQ 15.4% · SPY 22.1% · Stocks 37.5% | 15 | Closed | 2025-12-29 | +1.13% |
| 2025-12-01 | 3 | ON1 | SHY 6.2% · TLT 6.2% · UUP 6.2% · GLD 6.2% · QQQ 15.8% · SPY 21.7% · Stocks 37.5% | 15 | Closed | 2025-12-22 | +4.52% |
| 2025-11-24 | 2 | ON1 | SHY 6.2% · TLT 6.2% · UUP 6.2% · GLD 6.2% · QQQ 15.9% · SPY 21.6% · Stocks 37.5% | 15 | Closed | 2025-12-15 | +7.35% |
| 2025-11-17 | 1 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 16.0% · SPY 21.5% · Stocks 37.5% | 15 | Closed | 2025-12-08 | +5.66% |
| 2025-11-10 | 3 | ON1 | SHY 6.2% · TLT 6.2% · UUP 6.2% · GLD 6.2% · QQQ 16.0% · SPY 21.5% · Stocks 37.5% | 16 | Closed | 2025-12-01 | -0.96% |
| 2025-11-03 | 2 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 18.1% · SPY 19.4% · Stocks 37.5% | 15 | Closed | 2025-11-24 | -5.30% |
| 2025-10-27 | 1 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 20.3% · SPY 17.2% · Stocks 37.5% | 15 | Closed | 2025-11-17 | -2.80% |
| 2025-10-20 | 3 | ON1 | SHY 5.0% · TLT 5.0% · UUP 5.0% · GLD 5.0% · FXF 5.0% · QQQ 21.7% · SPY 15.8% · Stocks 37.5% | 15 | Closed | 2025-11-10 | +2.24% |
| 2025-10-13 | 2 | ON1 | SHY 4.2% · TLT 4.2% · UUP 4.2% · GLD 4.2% · FXF 4.2% · IBIT 4.2% · QQQ 22.7% · SPY 14.8% · Stocks 37.5% | 15 | Closed | 2025-11-03 | +4.03% |
Model returns follow each dated allocation and its applicable trading-cost assumptions. Open-sleeve close dates are scheduled rotation dates. Holding sleeves have no realized gain/loss; missing or unreconciled execution prices show Pending. Each status follows its latest verified data date. All weeks are retained. Sleeve labels use the same calendar on both dashboards.
Historical perspective
1995–2026 · shared-majority simulation through October 16, 2026
Fractional backtest allocation. Whole-share holdings can differ materially. Historical results are not a forecast.
Picks & sleeve sizing
Explore target holdings with your chosen blend and sleeve budget.
Estimated target holdings
| Security | Selection bucket | Model weight | Reference price | Whole shares | Estimated value |
|---|
These are sizing estimates, not a new trade instruction or a record of fills. Recheck available cash and quotes before placing orders.
Selection ranks
| Rank | Security | Index Bucket |
|---|
Evidence & results
Returns and risk, compared over the same dates.
February 6, 1995–October 16, 2026 · hypothetical model results
Growth of $10,000
The full record · logarithmic scale
Portfolio returns
Raw total returns
Annualized CAGR
Five-year periods
Same periods · same benchmarksCalendar five-year blocks. The first and latest blocks are partial. CAGR is annualized; drawdowns and time below peak reset within each block. Sharpe uses the same daily cash proxy.
During market stress
Raw period returnsEach comparison uses the same stated close-to-close dates. These are cumulative returns during the selected market events, not each portfolio’s maximum drawdown.
Time spent in drawdown
Drawdown depth runs from 0% on the left to −25% on the right. The vertical axis shows the share of trading days at or below each drawdown level.
What these results mean
Backtest: February 6, 1995–October 16, 2026. Total-return data, next-open execution and yielding MMF cash. Modeled costs apply to both buys and sells at sleeve rotations and other model trades: 5bp (0.05%) per ETF dollar traded. Stock results follow the selected allocation tier, including modeled stock trading costs.
The long-run series starts in 1995 and uses proxy data before the relevant ETFs existed, which includes costs and convexity modelling. Sharpe ratios use the runner’s daily money-market/T-bill proxy. Trading costs and the frozen strategy assumptions are included in the underlying model. “Time below 10% drawdown” is the share of trading days at least 10% below a previous peak. Recent-period returns are total raw returns, not annualized.
FXF and IBIT use actual ETF history only and enter after 200 sessions of warmup; their pre-inception history is not filled with currency or bitcoin proxies. Stock trades use 10bp (0.10%) per side in these comparisons. The stock universe uses point-in-time index membership at each historical selection date, rather than today’s constituents. Hypothetical results are not investor account returns.
Four dimensions of the market state.
A shared market framework for both 4D systems.
Read the market
The system looks for agreement across quarterly, half-year and longer-term trend measures. Each of SPY, QQQ, SHY, TLT, UUP, GLD, FXF and IBIT must be strictly above at least two of its 63-, 126- and 200-session simple averages, with 200 sessions of history. The system then looks at slow-momentum, trend-quality and volume-pressure factors to refine the allocations. Whether QQQ is included is the result of its own model. The resulting state determines the new sleeve’s equity budget and target mix.
Select the stocks
The Stock Picker ranks eligible companies in the S&P 500 and Nasdaq-100 universes. Selection uses point-in-time index membership: the companies that belonged to each index on that historical selection date, rather than today’s constituents. The simulation also handles later membership exits and terminal settlements. Its five tiers blend that stock selection with the ETF allocation: ETF Base, Core, Balanced, Growth and Full Stock. Stock weights within each selected index bucket are proportional to inverse 21-session volatility, without a position floor. A stock’s combined target across both index buckets is capped at 25% of the selected tier’s sleeve; excess is redistributed among the other selected stocks within the original bucket budgets. The cap applies at entry; prices can drift afterward. Companies selected in both buckets appear once with their weights combined. The Stock Picker uses the shared ETF equity budget without an extra OFF1 QQQ allocation.
Stagger the decisions
Three sleeves share the portfolio. One rotates each week and normally holds its cohort for three weeks. Friday’s completed signal applies to the next market session, usually Monday. Holidays can shift the execution date.
Read the state
ON means the broad equity trend is favorable; OFF means it is unfavorable. In the current framework, ON requires SPY to be above at least two of its three trend averages. The number (0–3) counts supporting momentum, trend-quality and volume signals. For example, ON2 means a favorable equity trend with two supporting signals. QQQ has its own trend test.
Follow the model weights
The current allocation applies to the sleeve being updated. The other sleeves retain earlier signals. Budget-aware sizing compares rounding up and down to keep whole-share targets funded and close to the model allocation.
The assets in the mix
The defensive reserve is split equally among qualifying SHY, TLT, UUP, GLD, FXF and IBIT positions. Each needs 200 sessions of history and at least two favorable trend votes. If none qualify, the reserve goes to yielding cash. If only one qualifies and triggers the high-volatility safeguard, its allocation goes to cash.
“Defensive” describes the allocation role, not a promise of low risk. Long bonds, currencies, gold and especially bitcoin can suffer substantial losses. FXF and IBIT enter the historical model only after sufficient actual ETF history; no earlier currency or bitcoin proxy is used.
Read the research
12% CAGR Since 1995: Using Four Market States To Refine The Volatility-Adjusted Dual Clock System ↗
Using Adaptive Time Frames to Allocate Risk ↗
Published research on the evolution of the framework. Each article describes the model and results as of its publication.