{
 "bench": "rta-bench-1",
 "entries": 67,
 "generated_utc": "2026-11-14",
 "models": 6,
 "periods": {
  "2020": {
   "anchors": [
    {
     "avg_exposure": 0.759225,
     "avg_holding_days": 46.364911,
     "excess_vs_equal_weight": 0.273739,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.135881,
     "name": "swing_trend",
     "period": "2020",
     "round_trips": 23.0,
     "sharpe": 2.181326,
     "total_return": 0.674441,
     "turnover": 2.217335,
     "volatility": 0.249226
    },
    {
     "avg_exposure": 0.35554,
     "avg_holding_days": 3.512317,
     "excess_vs_equal_weight": -0.337886,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.198434,
     "name": "swing_rsi2",
     "period": "2020",
     "round_trips": 257.0,
     "sharpe": 0.388742,
     "total_return": 0.062817,
     "turnover": 26.432631,
     "volatility": 0.201147
    },
    {
     "avg_exposure": 0.817167,
     "avg_holding_days": 28.865865,
     "excess_vs_equal_weight": -0.125137,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.134181,
     "name": "swing_breakout",
     "period": "2020",
     "round_trips": 69.0,
     "sharpe": 1.232287,
     "total_return": 0.275566,
     "turnover": 7.093022,
     "volatility": 0.213156
    },
    {
     "avg_exposure": 0.231373,
     "avg_holding_days": 9.306144,
     "excess_vs_equal_weight": -0.37836,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.119089,
     "name": "swing_pullback",
     "period": "2020",
     "round_trips": 61.0,
     "sharpe": 0.247831,
     "total_return": 0.022342,
     "turnover": 6.335951,
     "volatility": 0.091454
    },
    {
     "avg_exposure": 0.795237,
     "avg_holding_days": 9.420352,
     "excess_vs_equal_weight": -0.166868,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.176497,
     "name": "swing_news",
     "period": "2020",
     "round_trips": 212.0,
     "sharpe": 1.178298,
     "total_return": 0.233835,
     "turnover": 21.637562,
     "volatility": 0.190898
    },
    {
     "avg_exposure": null,
     "avg_holding_days": null,
     "kind": "buy and hold",
     "leak_check": null,
     "max_drawdown": -0.337172,
     "name": "SPY",
     "period": "2020",
     "round_trips": null,
     "sharpe": 0.63404,
     "total_return": 0.172352,
     "turnover": null,
     "volatility": 0.333872
    },
    {
     "avg_exposure": null,
     "avg_holding_days": null,
     "kind": "buy and hold",
     "leak_check": null,
     "max_drawdown": -0.325267,
     "name": "Equal weight",
     "period": "2020",
     "round_trips": null,
     "sharpe": 1.125525,
     "total_return": 0.400702,
     "turnover": null,
     "volatility": 0.351896
    }
   ],
   "clean": [],
   "may_remember": [
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.164349,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.107035,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.076665,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": 0.028367,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": 0.007708,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": 0.002533,
         "group": "Real Estate",
         "runs": 1
        },
        {
         "contribution": 0.000832,
         "group": "Financials",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.136908,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": 0.115904,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.28% on average (58 buys, 55% of them ahead of SPY; t = 0.4, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.51%, so selling gave that up (94 sells; t = -0.9, within noise).",
        "Decision IC: on the 50 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.001 with the next five days' returns (IC IR -0.00, t = -0.0, within noise).",
        "Holdings IC: the weights it held after each of 50 decision days had a mean rank IC of 0.038 with the next five days' returns (t = 1.2, within noise).",
        "Factor exposures: market 0.34 (t 6.3), size -0.00 (t -0.0), growth 0.48 (t 4.0), momentum 0.09 (t 1.8); together they explain 67% of the daily variation (R²).",
        "Of the +23.8% a year it earned over T-bills (arithmetic mean): growth +11.0%, market +7.2%, momentum +2.0%, size -0.0%; the alpha left is +3.6% a year (t = 0.4, within noise).",
        "Verdict: most of the return is factor exposure (+20.2% a year, growth above all); the alpha left is not significant.",
        "P&L: +$25,433 in all, +$25,281 from 49 positions and +$152 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$18,417, 10 positions); 6-10 days the least (-$1,134, 4 positions).",
        "By sector: Technology made the most (+$10,703, 19 positions); Financials the least (+$83, 2 positions).",
        "By stock: NVDA made the most (+$5,431, 2 positions); INTU the least (-$802, 2 positions).",
        "By market regime of the previous close: risk-on 26 days +2.3% (SPY -4.3%); uncertain 142 days +14.4% (SPY +14.2%); risk-off 85 days +7.3% (SPY +7.2%).",
        "News: 25 positions opened on news made +$11,590, the other 24 +$13,691; 12 positions closed on news made +$3,331; over the five days from the fill, news-triggered buys beat SPY by 0.64% (t 0.7).",
        "Concentration: the profit is spread out; the best two positions made 32% of the positions' net P&L, the best being NVDA bought 2020-04-15 and still open at the end, +$5,464. Had the best position made nothing, the run would have returned +20.0% instead of +25.4%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": 0.035786,
        "alpha_t": 0.360177,
        "best_trade_share": 0.21614,
        "beta_growth": 0.482102,
        "beta_market": 0.341267,
        "beta_momentum": 0.090367,
        "beta_size": -0.002257,
        "buy_excess_5d": 0.002756,
        "buy_excess_5d_t": 0.371266,
        "capm_alpha_annual": 0.164349,
        "capm_alpha_t": 1.359572,
        "concentrated": false,
        "decision_excess_5d": -0.002085,
        "decision_excess_5d_t": -0.483459,
        "decision_hit_rate_5d": 0.460526,
        "decision_ic": -0.000713,
        "decision_ic_t": -0.03438,
        "decisions": 152.0,
        "exposure_return_annual": 0.201759,
        "holdings_ic": 0.037936,
        "holdings_ic_t": 1.150064,
        "news_decision_share": 0.381579,
        "news_entry_pnl": 11590.399234,
        "r2": 0.671693,
        "return_without_best_trade": 0.199691,
        "sell_avoided_5d": -0.005072,
        "sell_avoided_5d_t": -0.850803,
        "spy_return": 0.172352,
        "total_return": 0.253922
       }
      },
      "avg_exposure": 0.622788,
      "avg_holding_days": 32.421832,
      "beta": 0.345774,
      "excess_vs_equal_weight": -0.14678,
      "excess_vs_spy": 0.08157,
      "files": [
       "claude-sonnet-4.6-2020-blind-s0.json"
      ],
      "max_drawdown": -0.140136,
      "n": 1,
      "round_trips": 94.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 1.383689,
      "sharpe_range": null,
      "steps": 51,
      "total_return": 0.253922,
      "total_return_range": null,
      "turnover": 4.028402,
      "usage": {
       "calls": 51.0,
       "input_tokens": 637730.0,
       "list_price_usd": 2.462,
       "output_tokens": 36585.0
      }
     },
     "cutoff": "2026-01",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": null,
      "control_period": "2026",
      "missing_answers": {
       "blind": 200,
       "named": 200,
       "recall": 0
      },
      "p_value": null,
      "paired": "not run (Claude row cap)",
      "probe": "riskaware.research.memory: direct recall only (50 windows per period, temperature 0), with the model's cutoff; the paired named/blind probe was not run (Claude row cap); recall_score = rank correlation of the guessed and actual moves, each scaled by the stock's usual 20-day move",
      "recall_ci95": [
       0.34676864380749145,
       0.7964736570321175
      ],
      "recall_direction_accuracy": 0.78,
      "recall_majority_baseline": 0.68,
      "recall_score": 0.6036494597839136,
      "recall_verdict": "recalls",
      "recall_windows": 50,
      "score": null,
      "scored_points": "all",
      "verdict": null,
      "why": "paired probe not run (Claude row cap); direct recall only"
     },
     "model": "claude-sonnet-4.6",
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-sonnet-4.6",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.069552,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.115826,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": 0.063931,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.022897,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.006669,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.016948,
         "group": "Utilities",
         "runs": 1
        },
        {
         "contribution": -0.023898,
         "group": "Financials",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.115169,
         "group": "news",
         "runs": 1
        },
        {
         "contribution": 0.053242,
         "group": "other",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.61% on average (79 buys, 56% of them ahead of SPY; t = 0.9, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.24%, so selling gave that up (125 sells; t = -0.6, within noise).",
        "Decision IC: on the 49 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.003 with the next five days' returns (IC IR -0.02, t = -0.1, within noise).",
        "Holdings IC: the weights it held after each of 50 decision days had a mean rank IC of 0.015 with the next five days' returns (t = 0.5, within noise).",
        "Factor exposures: market 0.50 (t 13.7), size -0.12 (t -2.6), growth 0.42 (t 3.5), momentum -0.00 (t -0.1); together they explain 81% of the daily variation (R²).",
        "Of its +17.2% a year over T-bills (arithmetic mean): market +10.5%, growth +9.6%, size -0.6%, momentum -0.1%; the alpha left is -2.3% a year (t = -0.2, within noise).",
        "Verdict: most of the return is factor exposure (+19.4% a year, market above all); the alpha left is not significant.",
        "P&L: +$16,985 in all, +$16,841 from 59 positions and +$144 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$18,630, 11 positions); 6-10 days lost the most (-$2,331, 4 positions).",
        "By sector: Consumer Discretionary made the most (+$11,583, 12 positions); Financials lost the most (-$2,390, 3 positions).",
        "By stock: TSLA made the most (+$7,036, 6 positions); GOOGL lost the most (-$1,982, 1 position).",
        "By market regime of the previous close: risk-on 26 days +0.4% (SPY -4.3%); uncertain 142 days +10.1% (SPY +14.2%); risk-off 85 days +5.9% (SPY +7.2%).",
        "News: 42 positions opened on news made +$11,517, the other 17 +$5,324; 17 positions closed on news made +$3,551; over the five days from the fill, news-triggered buys beat SPY by 0.55% (t 0.7).",
        "Concentration: the profit is spread out; the best two positions made 43% of the positions' net P&L, the best being TSLA bought 2020-07-02 and sold 2020-09-04, +$4,066. Had the best position made nothing, the run would have returned +12.9% instead of +17.0%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.022899,
        "alpha_t": -0.226091,
        "best_trade_share": 0.241451,
        "beta_growth": 0.422978,
        "beta_market": 0.495998,
        "beta_momentum": -0.003453,
        "beta_size": -0.117402,
        "buy_excess_5d": 0.006085,
        "buy_excess_5d_t": 0.872287,
        "capm_alpha_annual": 0.069552,
        "capm_alpha_t": 0.592272,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.000884,
        "decision_excess_5d_t": 0.230933,
        "decision_hit_rate_5d": 0.509804,
        "decision_ic": -0.003261,
        "decision_ic_t": -0.148222,
        "decisions": 204.0,
        "exposure_return_annual": 0.194438,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.014801,
        "holdings_ic_t": 0.489878,
        "long_contribution": 0.16841,
        "news_decision_share": 0.458537,
        "news_entry_pnl": 11516.856461,
        "r2": 0.811907,
        "return_without_best_trade": 0.129191,
        "sell_avoided_5d": -0.002402,
        "sell_avoided_5d_t": -0.551319,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.16947
       }
      },
      "avg_exposure": 0.594437,
      "avg_holding_days": 24.727721,
      "beta": 0.481778,
      "excess_vs_equal_weight": -0.231232,
      "excess_vs_spy": -0.002882,
      "files": [
       "claude-haiku-4.5-2020-blind-s0.json"
      ],
      "max_drawdown": -0.202916,
      "n": 1,
      "round_trips": 126.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.891048,
      "sharpe_range": null,
      "steps": 51,
      "total_return": 0.16947,
      "total_return_range": null,
      "turnover": 5.244807,
      "usage": {
       "calls": 51.0,
       "input_tokens": 639555.0,
       "list_price_usd": 0.8205,
       "output_tokens": 36184.0
      }
     },
     "cutoff": "2025-07",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": null,
      "control_period": "2026",
      "missing_answers": {
       "blind": 200,
       "named": 200,
       "recall": 0
      },
      "p_value": null,
      "paired": "not run (Claude row cap)",
      "probe": "riskaware.research.memory: direct recall only (50 windows per period, temperature 0), with the model's cutoff; the paired named/blind probe was not run (Claude row cap); recall_score = rank correlation of the guessed and actual moves, each scaled by the stock's usual 20-day move",
      "recall_ci95": [
       0.025646044594756782,
       0.6609236705305581
      ],
      "recall_direction_accuracy": 0.78,
      "recall_majority_baseline": 0.68,
      "recall_score": 0.3847779111644658,
      "recall_verdict": "recalls",
      "recall_windows": 50,
      "score": null,
      "scored_points": "all",
      "verdict": null,
      "why": "paired probe not run (Claude row cap); direct recall only"
     },
     "model": "claude-haiku-4.5",
     "named": {
      "after_cutoff": null,
      "alpha_annual": 0.026049,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.107536,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": 0.070851,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.008316,
         "group": "Materials",
         "runs": 1
        },
        {
         "contribution": -0.008367,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.0134,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.044125,
         "group": "Consumer Staples",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.083526,
         "group": "news",
         "runs": 1
        },
        {
         "contribution": 0.043579,
         "group": "other",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.85% on average (121 buys, 59% of them ahead of SPY; t = 1.6, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.57%, so selling gave that up (132 sells; t = -1.3, within noise).",
        "Decision IC: on the 49 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of 0.004 with the next five days' returns (IC IR 0.02, t = 0.2, within noise).",
        "Holdings IC: the weights it held after each of 50 decision days had a mean rank IC of 0.030 with the next five days' returns (t = 1.1, within noise).",
        "Factor exposures: market 0.55 (t 15.4), size -0.20 (t -3.7), growth 0.28 (t 2.4), momentum 0.02 (t 0.4); together they explain 85% of the daily variation (R²).",
        "Of its +13.8% a year over T-bills (arithmetic mean): market +11.6%, growth +6.4%, size -1.0%, momentum +0.4%; the alpha left is -3.7% a year (t = -0.4, within noise).",
        "Verdict: most of the return is factor exposure (+17.4% a year, market above all); the alpha left is not significant.",
        "P&L: +$12,864 in all, +$12,710 from 69 positions and +$153 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$18,956, 12 positions); 11-20 days lost the most (-$3,666, 9 positions).",
        "By sector: Consumer Discretionary made the most (+$10,754, 9 positions); Consumer Staples lost the most (-$4,412, 11 positions).",
        "By stock: AMZN made the most (+$5,910, 1 position); UNH lost the most (-$3,126, 4 positions).",
        "By market regime of the previous close: risk-on 26 days +0.1% (SPY -4.3%); uncertain 142 days +8.5% (SPY +14.2%); risk-off 85 days +4.0% (SPY +7.2%).",
        "News: 44 positions opened on news made +$8,353, the other 25 +$4,358; 18 positions closed on news made +$1,784; over the five days from the fill, news-triggered buys beat SPY by 0.81% (t 1.3).",
        "Concentration: the gains are spread out (the best two positions made 31% of them) but winners and losers nearly cancel, so the best two made 70% of the net P&L; the best was AMZN bought 2020-03-17 and sold 2020-10-19, +$5,910. Had the best position made nothing, the run would have returned +7.0% instead of +12.9%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.03656,
        "alpha_t": -0.407357,
        "best_trade_share": 0.464977,
        "beta_growth": 0.282042,
        "beta_market": 0.547242,
        "beta_momentum": 0.018192,
        "beta_size": -0.19698,
        "buy_excess_5d": 0.008527,
        "buy_excess_5d_t": 1.552594,
        "capm_alpha_annual": 0.026049,
        "capm_alpha_t": 0.256222,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.001082,
        "decision_excess_5d_t": 0.311437,
        "decision_hit_rate_5d": 0.509881,
        "decision_ic": 0.003601,
        "decision_ic_t": 0.156141,
        "decisions": 253.0,
        "exposure_return_annual": 0.17412,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.030431,
        "holdings_ic_t": 1.123381,
        "long_contribution": 0.127105,
        "news_decision_share": 0.384314,
        "news_entry_pnl": 8352.560031,
        "r2": 0.853604,
        "return_without_best_trade": 0.069535,
        "sell_avoided_5d": -0.005742,
        "sell_avoided_5d_t": -1.330806,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.128266
       }
      },
      "avg_exposure": 0.617873,
      "avg_holding_days": 29.144955,
      "beta": 0.526773,
      "excess_vs_equal_weight": -0.272436,
      "excess_vs_spy": -0.044086,
      "files": [
       "claude-haiku-4.5-2020-named-s0.json"
      ],
      "max_drawdown": -0.17863,
      "n": 1,
      "round_trips": 133.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.680373,
      "sharpe_range": null,
      "steps": 51,
      "total_return": 0.128266,
      "total_return_range": null,
      "turnover": 5.753521,
      "usage": {
       "calls": 51.0,
       "input_tokens": 638506.0,
       "list_price_usd": 0.8296,
       "output_tokens": 38217.0
      }
     },
     "named_minus_blind": -0.041204,
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-haiku-4.5",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.023616,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.071301,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.014128,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.003868,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.010768,
         "group": "Financials",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.084711,
         "group": "news",
         "runs": 1
        },
        {
         "contribution": -0.013918,
         "group": "other",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought trailed SPY by 0.95% on average (22 buys, 32% of them ahead of SPY; t = -1.7, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 1.08%, so selling gave that up (22 sells; t = -0.5, within noise).",
        "Decision IC: on the 25 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.015 with the next five days' returns (IC IR -0.08, t = -0.4, within noise).",
        "Holdings IC: the weights it held after each of 47 decision days had a mean rank IC of -0.008 with the next five days' returns (t = -0.3, within noise).",
        "Factor exposures: market 0.23 (t 13.5), size -0.02 (t -0.7), growth 0.19 (t 4.6), momentum 0.03 (t 1.5); together they explain 78% of the daily variation (R²).",
        "Of its +7.2% a year over T-bills (arithmetic mean): market +4.8%, growth +4.4%, momentum +0.7%, size -0.1%; the alpha left is -2.6% a year (t = -0.6, within noise).",
        "Verdict: most of the return is factor exposure (+9.8% a year, market above all); the alpha left is not significant.",
        "P&L: +$7,386 in all, +$7,079 from 17 positions and +$306 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$9,230, 4 positions); 3-5 days lost the most (-$1,682, 5 positions).",
        "By sector: Technology made the most (+$7,130, 5 positions); Financials lost the most (-$1,077, 8 positions).",
        "By stock: CRM made the most (+$3,340, 1 position); NOW lost the most (-$1,721, 2 positions).",
        "By market regime of the previous close: risk-on 26 days -1.7% (SPY -4.3%); uncertain 142 days +3.1% (SPY +14.2%); risk-off 85 days +5.9% (SPY +7.2%).",
        "News: 11 positions opened on news made +$8,471, the other 6 -$1,392; 4 positions closed on news made -$424; over the five days from the fill, news-triggered buys trailed SPY by 0.66% (t -1.6).",
        "Concentration: the profit rests on the best two positions, which made 94% of the positions' net P&L and 57% of all their gains; the best was CRM bought 2020-05-13 and still open at the end, +$3,340. Had the best position made nothing, the run would have returned +4.0% instead of +7.4%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.026025,
        "alpha_t": -0.553177,
        "best_trade_share": 0.471841,
        "beta_growth": 0.193074,
        "beta_market": 0.226964,
        "beta_momentum": 0.029207,
        "beta_size": -0.015284,
        "buy_excess_5d": -0.009503,
        "buy_excess_5d_t": -1.721728,
        "capm_alpha_annual": 0.023616,
        "capm_alpha_t": 0.420876,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.010142,
        "decision_excess_5d_t": -0.918319,
        "decision_hit_rate_5d": 0.477273,
        "decision_ic": -0.015112,
        "decision_ic_t": -0.406581,
        "decisions": 44.0,
        "exposure_return_annual": 0.097642,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.007958,
        "holdings_ic_t": -0.298872,
        "long_contribution": 0.070793,
        "news_decision_share": 0.545455,
        "news_entry_pnl": 8471.128248,
        "r2": 0.780507,
        "return_without_best_trade": 0.040453,
        "sell_avoided_5d": -0.010781,
        "sell_avoided_5d_t": -0.479034,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.073504
       }
      },
      "avg_exposure": 0.219766,
      "avg_holding_days": 26.823558,
      "beta": 0.226747,
      "excess_vs_equal_weight": -0.327198,
      "excess_vs_spy": -0.098848,
      "files": [
       "claude-haiku-5.5-2020-blind-s0.json"
      ],
      "max_drawdown": -0.089644,
      "n": 1,
      "round_trips": 22.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.770211,
      "sharpe_range": null,
      "steps": 51,
      "total_return": 0.073504,
      "total_return_range": null,
      "turnover": 1.31116,
      "usage": {
       "calls": 51.0,
       "input_tokens": 825287.0,
       "list_price_usd": 0.088,
       "output_tokens": 11000.0
      }
     },
     "cutoff": "2026-06",
     "memory": null,
     "model": "claude-haiku-5.5",
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-haiku-5.5",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.073697,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.151158,
         "group": "Technology",
         "runs": 2
        },
        {
         "contribution": 0.056215,
         "group": "Consumer Discretionary",
         "runs": 3
        },
        {
         "contribution": 0.043518,
         "group": "Health Care",
         "runs": 2
        },
        {
         "contribution": 0.009096,
         "group": "Industrials",
         "runs": 3
        },
        {
         "contribution": -0.00504,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.006613,
         "group": "Communication Services",
         "runs": 2
        },
        {
         "contribution": -0.021908,
         "group": "Consumer Staples",
         "runs": 3
        },
        {
         "contribution": -0.022053,
         "group": "Utilities",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.175253,
         "group": "news",
         "runs": 3
        },
        {
         "contribution": -0.011955,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.084503,
        "alpha_t": -0.684,
        "best_trade_share": 0.316485,
        "beta_growth": 0.581485,
        "beta_market": 0.478371,
        "beta_momentum": 0.12753,
        "beta_size": -0.028284,
        "buy_excess_5d": 0.012146,
        "buy_excess_5d_t": 2.723813,
        "capm_alpha_annual": 0.073697,
        "capm_alpha_t": 0.489754,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.003361,
        "decision_excess_5d_t": 0.916351,
        "decision_hit_rate_5d": 0.524904,
        "decision_ic": 0.0224,
        "decision_ic_t": 1.01627,
        "decisions": 118.666667,
        "exposure_return_annual": 0.260333,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.035083,
        "holdings_ic_t": 1.113882,
        "long_contribution": 0.163298,
        "news_decision_share": 0.480844,
        "news_entry_pnl": 17525.346174,
        "r2": 0.646213,
        "return_without_best_trade": 0.113914,
        "sell_avoided_5d": -0.006319,
        "sell_avoided_5d_t": -1.109452,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.163562
       }
      },
      "avg_exposure": 0.806221,
      "avg_holding_days": 27.985675,
      "beta": 0.482472,
      "excess_vs_equal_weight": -0.23714,
      "excess_vs_spy": -0.00879,
      "files": [
       "gemini-3.5-flash-2020-blind-s0.json",
       "gemini-3.5-flash-2020-blind-s1.json",
       "gemini-3.5-flash-2020-blind-s2.json"
      ],
      "max_drawdown": -0.196101,
      "n": 3,
      "round_trips": 57.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.749567,
      "sharpe_range": [
       0.491401,
       0.953794
      ],
      "steps": 51,
      "total_return": 0.163562,
      "total_return_range": [
       0.101138,
       0.208257
      ],
      "turnover": 5.392319,
      "usage": {
       "calls": 153.0,
       "input_tokens": 2126873.0,
       "list_price_usd": 3.4937,
       "output_tokens": 33712.0
      }
     },
     "cutoff": "2025-01",
     "memory": {
      "beyond_control": 0.06408548996521679,
      "beyond_control_ci95": [
       -0.07959760831144111,
       0.21650274511978695
      ],
      "ci95": [
       -0.08596144262714035,
       0.11176663521831402
      ],
      "measured_on": null,
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "score": 0.014205682272909081,
      "verdict": "inconclusive",
      "why": "too few pairs to tell: AUC gap +0.014 before the cutoff and -0.050 after it (the control), difference +0.064, 95% CI [-0.080, +0.217]"
     },
     "model": "gemini-3.5-flash",
     "named": {
      "after_cutoff": null,
      "alpha_annual": 0.02721,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.060016,
         "group": "Consumer Discretionary",
         "runs": 3
        },
        {
         "contribution": 0.05229,
         "group": "Technology",
         "runs": 3
        },
        {
         "contribution": 0.023783,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.002638,
         "group": "Consumer Staples",
         "runs": 3
        },
        {
         "contribution": -0.010518,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": -0.018082,
         "group": "Utilities",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.077389,
         "group": "news",
         "runs": 3
        },
        {
         "contribution": 0.044484,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.12104,
        "alpha_t": -1.084319,
        "best_trade_share": 0.393431,
        "beta_growth": 0.597183,
        "beta_market": 0.54414,
        "beta_momentum": 0.075966,
        "beta_size": -0.130872,
        "buy_excess_5d": 0.007475,
        "buy_excess_5d_t": 1.544435,
        "capm_alpha_annual": 0.02721,
        "capm_alpha_t": 0.188169,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 8e-06,
        "decision_excess_5d_t": -0.020034,
        "decision_hit_rate_5d": 0.48905,
        "decision_ic": 0.000415,
        "decision_ic_t": 0.021904,
        "decisions": 89.666667,
        "exposure_return_annual": 0.261213,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.010944,
        "holdings_ic_t": 0.369309,
        "long_contribution": 0.121873,
        "news_decision_share": 0.380305,
        "news_entry_pnl": 7738.909435,
        "r2": 0.741752,
        "return_without_best_trade": 0.07802,
        "sell_avoided_5d": -0.009281,
        "sell_avoided_5d_t": -1.600521,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.121959
       }
      },
      "avg_exposure": 0.868446,
      "avg_holding_days": 26.933413,
      "beta": 0.53363,
      "excess_vs_equal_weight": -0.278743,
      "excess_vs_spy": -0.050393,
      "files": [
       "gemini-3.5-flash-2020-named-s0.json",
       "gemini-3.5-flash-2020-named-s1.json",
       "gemini-3.5-flash-2020-named-s2.json"
      ],
      "max_drawdown": -0.198985,
      "n": 3,
      "round_trips": 40.333333,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.581903,
      "sharpe_range": [
       0.468495,
       0.724677
      ],
      "steps": 51,
      "total_return": 0.121959,
      "total_return_range": [
       0.092899,
       0.166826
      ],
      "turnover": 4.035691,
      "usage": {
       "calls": 153.0,
       "input_tokens": 2097441.0,
       "list_price_usd": 3.3883,
       "output_tokens": 26898.0
      }
     },
     "named_minus_blind": -0.041603,
     "open_weights": false,
     "provider": "Google",
     "slug": "gemini-3.5-flash",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.065425,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.065453,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": 0.05703,
         "group": "Technology",
         "runs": 2
        },
        {
         "contribution": 0.008002,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.000878,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.002931,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": -0.005438,
         "group": "Industrials",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.132765,
         "group": "no reason",
         "runs": 2
        },
        {
         "contribution": 0.021822,
         "group": "other",
         "runs": 2
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": 0.076872,
        "alpha_t": 0.394252,
        "best_trade_share": 1.054094,
        "beta_growth": 0.012151,
        "beta_market": 0.187723,
        "beta_momentum": -0.071952,
        "beta_size": 0.025222,
        "buy_excess_5d": 0.013261,
        "buy_excess_5d_t": 0.726623,
        "capm_alpha_annual": 0.065425,
        "capm_alpha_t": 0.45293,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.005211,
        "decision_excess_5d_t": -1.110544,
        "decision_hit_rate_5d": 0.633333,
        "decision_ic": 0.056333,
        "decision_ic_t": -0.426407,
        "decisions": 8.666667,
        "exposure_return_annual": 0.027733,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.006504,
        "holdings_ic_t": 0.352465,
        "long_contribution": 0.103058,
        "news_decision_share": 0.016667,
        "news_entry_pnl": 0.0,
        "r2": 0.552732,
        "return_without_best_trade": 0.004055,
        "sell_avoided_5d": -0.028301,
        "sell_avoided_5d_t": -1.216004,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.106041
       }
      },
      "avg_exposure": 0.255436,
      "avg_holding_days": 78.072866,
      "beta": 0.185078,
      "excess_vs_equal_weight": -0.294661,
      "excess_vs_spy": -0.066311,
      "files": [
       "llama3.2-2020-blind-s0.json",
       "llama3.2-2020-blind-s1.json",
       "llama3.2-2020-blind-s2.json"
      ],
      "max_drawdown": -0.089168,
      "n": 3,
      "round_trips": 3.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.726222,
      "sharpe_range": [
       0.462698,
       0.979459
      ],
      "steps": 51,
      "total_return": 0.106041,
      "total_return_range": [
       0.023473,
       0.214319
      ],
      "turnover": 0.496121,
      "usage": {
       "calls": 153.0,
       "input_tokens": 1654346.0,
       "list_price_usd": 0.0,
       "output_tokens": 15386.0
      }
     },
     "cutoff": "2023-12",
     "memory": {
      "beyond_control": 0.14511742196878757,
      "beyond_control_ci95": [
       -0.06396049829004259,
       0.3427582462219258
      ],
      "ci95": [
       -0.057204526154891286,
       0.2559020000276531
      ],
      "control_period": "2026",
      "missing_answers": {
       "blind": 0,
       "named": 0,
       "recall": 0
      },
      "p_value": 0.11794102948525736,
      "paired": "run",
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "recall_ci95": [
       -0.3678638150533243,
       0.25645363429085083
      ],
      "recall_direction_accuracy": 0.62,
      "recall_majority_baseline": 0.68,
      "recall_score": -0.05018007202881152,
      "recall_verdict": "no sign",
      "recall_windows": 50,
      "score": 0.09563825530212083,
      "scored_points": "before",
      "verdict": "inconclusive",
      "why": "too few pairs to tell: AUC gap +0.096 before the cutoff and -0.049 after it (the control), difference +0.145, 95% CI [-0.064, +0.343]"
     },
     "model": "llama3.2",
     "named": {
      "after_cutoff": null,
      "alpha_annual": 0.096208,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.150649,
         "group": "Technology",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.150649,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": 0.031968,
        "alpha_t": 0.641915,
        "best_trade_share": 1.0,
        "beta_growth": 0.256481,
        "beta_market": 0.228548,
        "beta_momentum": 0.031573,
        "beta_size": -0.027799,
        "buy_excess_5d": 0.033874,
        "buy_excess_5d_t": 4.290835,
        "capm_alpha_annual": 0.096208,
        "capm_alpha_t": 1.49704,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.032265,
        "decision_excess_5d_t": 3.902066,
        "decision_hit_rate_5d": 1.0,
        "decision_ic": 0.155029,
        "decision_ic_t": 7.711397,
        "decisions": 3.0,
        "exposure_return_annual": 0.112281,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.023526,
        "holdings_ic_t": 1.275654,
        "long_contribution": 0.150649,
        "news_decision_share": 0.333333,
        "news_entry_pnl": 0.0,
        "r2": 0.743435,
        "return_without_best_trade": 0.003263,
        "sell_avoided_5d": 0.028793,
        "sell_avoided_5d_t": null,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.153534
       }
      },
      "avg_exposure": 0.225138,
      "avg_holding_days": 182.5,
      "beta": 0.226945,
      "excess_vs_equal_weight": -0.247168,
      "excess_vs_spy": -0.018818,
      "files": [
       "llama3.2-2020-named-s0.json",
       "llama3.2-2020-named-s1.json",
       "llama3.2-2020-named-s2.json"
      ],
      "max_drawdown": -0.064983,
      "n": 3,
      "round_trips": 0.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 1.436702,
      "sharpe_range": [
       1.408132,
       1.459285
      ],
      "steps": 51,
      "total_return": 0.153534,
      "total_return_range": [
       0.148241,
       0.162334
      ],
      "turnover": 0.121686,
      "usage": {
       "calls": 153.0,
       "input_tokens": 1643693.0,
       "list_price_usd": 0.0,
       "output_tokens": 9109.0
      }
     },
     "named_minus_blind": 0.047493,
     "open_weights": true,
     "provider": "Meta",
     "slug": "llama3.2",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": -0.063129,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.039477,
         "group": "Technology",
         "runs": 2
        },
        {
         "contribution": 0.012813,
         "group": "Consumer Discretionary",
         "runs": 3
        },
        {
         "contribution": 0.001582,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.00107,
         "group": "Consumer Staples",
         "runs": 3
        },
        {
         "contribution": -0.005379,
         "group": "Financials",
         "runs": 2
        },
        {
         "contribution": -0.006081,
         "group": "Industrials",
         "runs": 3
        },
        {
         "contribution": -0.012886,
         "group": "Utilities",
         "runs": 1
        },
        {
         "contribution": -0.016085,
         "group": "Materials",
         "runs": 1
        },
        {
         "contribution": -0.019604,
         "group": "Health Care",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.021229,
         "group": "news",
         "runs": 3
        },
        {
         "contribution": -0.026947,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.100699,
        "alpha_t": -1.016226,
        "best_trade_share": 0.316723,
        "beta_growth": 0.184646,
        "beta_market": 0.309182,
        "beta_momentum": -0.008142,
        "beta_size": -0.102294,
        "buy_excess_5d": 4.7e-05,
        "buy_excess_5d_t": 0.061623,
        "capm_alpha_annual": -0.063129,
        "capm_alpha_t": -0.650148,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.002236,
        "decision_excess_5d_t": -0.388334,
        "decision_hit_rate_5d": 0.513643,
        "decision_ic": 0.00531,
        "decision_ic_t": 0.168763,
        "decisions": 121.666667,
        "exposure_return_annual": 0.100468,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.008728,
        "holdings_ic_t": -0.396199,
        "long_contribution": -0.005719,
        "news_decision_share": 0.182389,
        "news_entry_pnl": 2122.850872,
        "r2": 0.587869,
        "return_without_best_trade": -0.025079,
        "sell_avoided_5d": -0.003434,
        "sell_avoided_5d_t": -0.499337,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": -0.004827
       }
      },
      "avg_exposure": 0.398104,
      "avg_holding_days": 28.145642,
      "beta": 0.297123,
      "excess_vs_equal_weight": -0.405529,
      "excess_vs_spy": -0.177179,
      "files": [
       "gpt-5.6-luna-2020-blind-s0.json",
       "gpt-5.6-luna-2020-blind-s1.json",
       "gpt-5.6-luna-2020-blind-s2.json"
      ],
      "max_drawdown": -0.153662,
      "n": 3,
      "round_trips": 82.333333,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.090087,
      "sharpe_range": [
       -0.361806,
       0.597034
      ],
      "steps": 51,
      "total_return": -0.004827,
      "total_return_range": [
       -0.076126,
       0.061234
      ],
      "turnover": 3.329345,
      "usage": {
       "calls": 153.0,
       "input_tokens": 1694465.0,
       "list_price_usd": 0.3649,
       "output_tokens": 21751.0
      }
     },
     "cutoff": "2026-02-16",
     "memory": {
      "beyond_control": -0.06380984393757505,
      "beyond_control_ci95": [
       -0.20238300571495493,
       0.06719636480966
      ],
      "ci95": [
       -0.1189769059065934,
       0.06516242205168742
      ],
      "measured_on": null,
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "score": -0.024609843937575038,
      "verdict": "inconclusive",
      "why": "too few pairs to tell: AUC gap -0.025 before the cutoff and +0.039 after it (the control), difference -0.064, 95% CI [-0.202, +0.067]"
     },
     "model": "gpt-5.6-luna",
     "named": {
      "after_cutoff": null,
      "alpha_annual": -0.008384,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.052981,
         "group": "Consumer Discretionary",
         "runs": 3
        },
        {
         "contribution": 0.03551,
         "group": "Technology",
         "runs": 3
        },
        {
         "contribution": 0.02398,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": 0.021133,
         "group": "Utilities",
         "runs": 2
        },
        {
         "contribution": 0.021027,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": -0.005202,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": -0.045631,
         "group": "Industrials",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.117201,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": 0.001348,
         "group": "news",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.051255,
        "alpha_t": -0.652499,
        "best_trade_share": 0.578391,
        "beta_growth": 0.201291,
        "beta_market": 0.712402,
        "beta_momentum": 0.008511,
        "beta_size": -0.172554,
        "buy_excess_5d": 0.005756,
        "buy_excess_5d_t": 1.705652,
        "capm_alpha_annual": -0.008384,
        "capm_alpha_t": -0.056022,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.000432,
        "decision_excess_5d_t": 0.119296,
        "decision_hit_rate_5d": 0.589447,
        "decision_ic": 0.007854,
        "decision_ic_t": 0.146981,
        "decisions": 56.666667,
        "exposure_return_annual": 0.189805,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.0054,
        "holdings_ic_t": 0.246991,
        "long_contribution": 0.118549,
        "news_decision_share": 0.094247,
        "news_entry_pnl": 134.83192,
        "r2": 0.927529,
        "return_without_best_trade": 0.066113,
        "sell_avoided_5d": -0.003477,
        "sell_avoided_5d_t": -0.285715,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.172352,
        "total_return": 0.118726
       }
      },
      "avg_exposure": 0.65876,
      "avg_holding_days": 87.64972,
      "beta": 0.694105,
      "excess_vs_equal_weight": -0.281976,
      "excess_vs_spy": -0.053626,
      "files": [
       "gpt-5.6-luna-2020-named-s0.json",
       "gpt-5.6-luna-2020-named-s1.json",
       "gpt-5.6-luna-2020-named-s2.json"
      ],
      "max_drawdown": -0.245474,
      "n": 3,
      "round_trips": 33.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.577819,
      "sharpe_range": [
       0.322094,
       0.720604
      ],
      "steps": 51,
      "total_return": 0.118726,
      "total_return_range": [
       0.0554,
       0.155297
      ],
      "turnover": 1.008265,
      "usage": {
       "calls": 153.0,
       "input_tokens": 1691347.0,
       "list_price_usd": 0.3533,
       "output_tokens": 12521.0
      }
     },
     "named_minus_blind": 0.123553,
     "open_weights": false,
     "provider": "OpenAI",
     "slug": "gpt-5.6-luna",
     "status": "may_remember"
    }
   ],
   "title": "2020: the COVID crash and rebound",
   "window": {
    "end": "2020-12-31",
    "start": "2020-01-02"
   }
  },
  "2022": {
   "anchors": [
    {
     "avg_exposure": 0.729439,
     "avg_holding_days": 24.891321,
     "excess_vs_equal_weight": 0.064376,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.177636,
     "name": "swing_trend",
     "period": "2022",
     "round_trips": 56.0,
     "sharpe": -0.474017,
     "total_return": -0.059125,
     "turnover": 5.852223,
     "volatility": 0.139019
    },
    {
     "avg_exposure": 0.320629,
     "avg_holding_days": 4.226861,
     "excess_vs_equal_weight": 0.037708,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.165751,
     "name": "swing_rsi2",
     "period": "2022",
     "round_trips": 192.0,
     "sharpe": -0.975663,
     "total_return": -0.085793,
     "turnover": 19.47609,
     "volatility": 0.101873
    },
    {
     "avg_exposure": 0.687894,
     "avg_holding_days": 19.193698,
     "excess_vs_equal_weight": -0.02719,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.22038,
     "name": "swing_breakout",
     "period": "2022",
     "round_trips": 86.0,
     "sharpe": -1.351775,
     "total_return": -0.150691,
     "turnover": 8.600809,
     "volatility": 0.126306
    },
    {
     "avg_exposure": 0.188515,
     "avg_holding_days": 9.229792,
     "excess_vs_equal_weight": 0.081268,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.062646,
     "name": "swing_pullback",
     "period": "2022",
     "round_trips": 47.0,
     "sharpe": -1.034249,
     "total_return": -0.042232,
     "turnover": 4.921742,
     "volatility": 0.054324
    },
    {
     "avg_exposure": 0.560332,
     "avg_holding_days": 9.155957,
     "excess_vs_equal_weight": -0.039013,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.209793,
     "name": "swing_news",
     "period": "2022",
     "round_trips": 152.0,
     "sharpe": -1.370111,
     "total_return": -0.162513,
     "turnover": 15.572197,
     "volatility": 0.134188
    },
    {
     "avg_exposure": null,
     "avg_holding_days": null,
     "kind": "buy and hold",
     "leak_check": null,
     "max_drawdown": -0.244964,
     "name": "SPY",
     "period": "2022",
     "round_trips": null,
     "sharpe": -0.79525,
     "total_return": -0.186464,
     "turnover": null,
     "volatility": 0.242342
    },
    {
     "avg_exposure": null,
     "avg_holding_days": null,
     "kind": "buy and hold",
     "leak_check": null,
     "max_drawdown": -0.230743,
     "name": "Equal weight",
     "period": "2022",
     "round_trips": null,
     "sharpe": -0.528791,
     "total_return": -0.123501,
     "turnover": null,
     "volatility": 0.228571
    }
   ],
   "clean": [],
   "may_remember": [
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.062863,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.075234,
         "group": "Energy",
         "runs": 1
        },
        {
         "contribution": 0.047731,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": 0.000445,
         "group": "Real Estate",
         "runs": 1
        },
        {
         "contribution": -0.019578,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": -0.031621,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.03335,
         "group": "Technology",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.042026,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": -0.043375,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.33% on average (66 buys, 50% of them ahead of SPY; t = 0.8, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.38%, so selling gave that up (90 sells; t = -1.1, within noise).",
        "Decision IC: on the 49 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.013 with the next five days' returns (IC IR -0.10, t = -0.7, within noise).",
        "Holdings IC: the weights it held after each of 50 decision days had a mean rank IC of 0.049 with the next five days' returns (t = 1.5, within noise).",
        "Factor exposures: market 0.55 (t 17.1), size -0.06 (t -1.1), growth -0.56 (t -6.7), momentum 0.09 (t 2.7); together they explain 68% of the daily variation (R²).",
        "Of the -0.3% a year it earned over T-bills (arithmetic mean): market -10.5%, growth +9.9%, momentum +0.6%, size +0.1%; the alpha left is -0.5% a year (t = -0.1, within noise).",
        "Verdict: the exposures account for +0.2% a year of it, and the -0.5% a year left over is not significant: one period of daily returns cannot tell it from luck.",
        "P&L: +$355 in all, -$135 from 55 positions and +$490 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$11,789, 10 positions); 6-10 days the least (-$5,822, 11 positions).",
        "By sector: Energy made the most (+$7,523, 2 positions); Technology the least (-$3,335, 5 positions).",
        "By stock: XOM made the most (+$4,024, 1 position); DE the least (-$2,033, 3 positions).",
        "By market regime of the previous close: risk-on 11 days -2.3% (SPY -5.1%); neutral 6 days -0.7% (SPY -3.3%); uncertain 162 days -7.2% (SPY -19.0%); risk-off 72 days +11.4% (SPY +9.5%).",
        "News: 15 positions opened on news made -$4,337, the other 40 +$4,203; 8 positions closed on news made -$2,157; over the five days from the fill, news-triggered buys trailed SPY by 0.04% (t -0.1).",
        "Concentration: the positions lost -$135 in all; the best was XOM bought 2022-01-11 and still open at the end, +$4,024. Had the best position made nothing, the run would have returned -3.7% instead of +0.4%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.004983,
        "alpha_t": -0.081379,
        "best_trade_share": null,
        "beta_growth": -0.56319,
        "beta_market": 0.545618,
        "beta_momentum": 0.085772,
        "beta_size": -0.055884,
        "buy_excess_5d": 0.003313,
        "buy_excess_5d_t": 0.790061,
        "capm_alpha_annual": 0.062863,
        "capm_alpha_t": 0.760007,
        "concentrated": false,
        "decision_excess_5d": -0.000782,
        "decision_excess_5d_t": -0.272504,
        "decision_hit_rate_5d": 0.461538,
        "decision_ic": -0.012965,
        "decision_ic_t": -0.68472,
        "decisions": 156.0,
        "exposure_return_annual": 0.001802,
        "holdings_ic": 0.048817,
        "holdings_ic_t": 1.495186,
        "news_decision_share": 0.211538,
        "news_entry_pnl": -4337.450349,
        "r2": 0.678519,
        "return_without_best_trade": -0.036688,
        "sell_avoided_5d": -0.003785,
        "sell_avoided_5d_t": -1.136415,
        "spy_return": -0.186464,
        "total_return": 0.003664
       }
      },
      "avg_exposure": 0.697733,
      "avg_holding_days": 35.912692,
      "beta": 0.342692,
      "excess_vs_equal_weight": 0.127165,
      "excess_vs_spy": 0.190128,
      "files": [
       "claude-sonnet-4.6-2022-blind-s0.json"
      ],
      "max_drawdown": -0.13514,
      "n": 1,
      "round_trips": 90.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": -0.026332,
      "sharpe_range": null,
      "steps": 50,
      "total_return": 0.003664,
      "total_return_range": null,
      "turnover": 4.897863,
      "usage": {
       "calls": 50.0,
       "input_tokens": 676717.0,
       "list_price_usd": 2.5493,
       "output_tokens": 34613.0
      }
     },
     "cutoff": "2026-01",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": null,
      "control_period": "2026",
      "missing_answers": {
       "blind": 200,
       "named": 200,
       "recall": 0
      },
      "p_value": null,
      "paired": "not run (Claude row cap)",
      "probe": "riskaware.research.memory: direct recall only (50 windows per period, temperature 0), with the model's cutoff; the paired named/blind probe was not run (Claude row cap); recall_score = rank correlation of the guessed and actual moves, each scaled by the stock's usual 20-day move",
      "recall_ci95": [
       0.25737000177481123,
       0.7248425981412457
      ],
      "recall_direction_accuracy": 0.66,
      "recall_majority_baseline": 0.54,
      "recall_score": 0.5227851140456182,
      "recall_verdict": "recalls",
      "recall_windows": 50,
      "score": null,
      "scored_points": "all",
      "verdict": null,
      "why": "paired probe not run (Claude row cap); direct recall only"
     },
     "model": "claude-sonnet-4.6",
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-sonnet-4.6",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.000906,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.002022,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.001418,
         "group": "Industrials",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.004746,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": -0.004142,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.27% on average (3 buys, 67% of them ahead of SPY; t = 0.4, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold lagged SPY by 1.82%, so selling avoided that (1 sells; t = n/a, ).",
        "Decision IC: on the 3 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of 0.052 with the next five days' returns (IC IR 0.32, t = 0.5, within noise).",
        "Holdings IC: the weights it held after each of 5 decision days had a mean rank IC of 0.018 with the next five days' returns (t = 0.2, within noise).",
        "Factor exposures: market 0.01 (t 1.9), size 0.00 (t 1.0), growth -0.01 (t -1.6), momentum 0.00 (t 1.3); together they explain 3% of the daily variation (R²).",
        "Of its -0.0% a year over T-bills (arithmetic mean): market -0.2%, growth +0.2%, momentum +0.0%, size -0.0%; the alpha left is -0.0% a year (t = -0.0, within noise).",
        "Verdict: most of the loss is factor exposure (-0.0% a year, market above all); the alpha left is not significant.",
        "P&L: +$1,365 in all, +$60 from 3 positions and +$1,304 of interest on idle cash.",
        "By holding period: 21-60 days made the most (+$333, 2 positions); 11-20 days lost the most (-$272, 1 position).",
        "By sector: Health Care made the most (+$202, 2 positions); Industrials lost the most (-$142, 1 position).",
        "By stock: MRK made the most (+$475, 1 position); ABBV lost the most (-$272, 1 position).",
        "By market regime of the previous close: risk-on 11 days -0.0% (SPY -5.1%); neutral 6 days -0.1% (SPY -3.3%); uncertain 162 days +1.2% (SPY -19.0%); risk-off 72 days +0.3% (SPY +9.5%).",
        "News: 2 positions opened on news made -$414, the other 1 +$475; over the five days from the fill, news-triggered buys trailed SPY by 0.42% (t -1.0).",
        "Concentration: the profit rests on the best two positions, which made 786% of the positions' net P&L and 100% of all their gains; the best was MRK bought 2022-11-25 and still open at the end, +$475. Had the best position made nothing, the run would have returned +0.9% instead of +1.4%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.000123,
        "alpha_t": -0.017709,
        "best_trade_share": 7.85576,
        "beta_growth": -0.009202,
        "beta_market": 0.010239,
        "beta_momentum": 0.003186,
        "beta_size": 0.003684,
        "buy_excess_5d": 0.002713,
        "buy_excess_5d_t": 0.418988,
        "capm_alpha_annual": 0.000906,
        "capm_alpha_t": 0.129895,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.006589,
        "decision_excess_5d_t": 1.178733,
        "decision_hit_rate_5d": 0.75,
        "decision_ic": 0.051621,
        "decision_ic_t": 0.546589,
        "decisions": 4.0,
        "exposure_return_annual": -0.000218,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.017575,
        "holdings_ic_t": 0.170136,
        "long_contribution": 0.000604,
        "news_decision_share": 0.5,
        "news_entry_pnl": -414.225439,
        "r2": 0.033313,
        "return_without_best_trade": 0.008901,
        "sell_avoided_5d": 0.018217,
        "sell_avoided_5d_t": null,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": 0.013758
       }
      },
      "avg_exposure": 0.024867,
      "avg_holding_days": 10.0,
      "beta": 0.00647,
      "excess_vs_equal_weight": 0.137259,
      "excess_vs_spy": 0.200222,
      "files": [
       "claude-haiku-5.5-2022-blind-s0.json"
      ],
      "max_drawdown": -0.006987,
      "n": 1,
      "round_trips": 1.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": -0.03157,
      "sharpe_range": null,
      "steps": 50,
      "total_return": 0.013758,
      "total_return_range": null,
      "turnover": 0.177028,
      "usage": {
       "calls": 50.0,
       "input_tokens": 874228.0,
       "list_price_usd": 0.0908,
       "output_tokens": 6759.0
      }
     },
     "cutoff": "2026-06",
     "memory": null,
     "model": "claude-haiku-5.5",
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-haiku-5.5",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.02924,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.063169,
         "group": "Energy",
         "runs": 1
        },
        {
         "contribution": 0.030206,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": 0.020041,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.028534,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.047184,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.069594,
         "group": "Technology",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": -0.009984,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": -0.046672,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.15% on average (108 buys, 56% of them ahead of SPY; t = 0.4, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.14%, so selling gave that up (132 sells; t = -0.5, within noise).",
        "Decision IC: on the 47 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.006 with the next five days' returns (IC IR -0.04, t = -0.3, within noise).",
        "Holdings IC: the weights it held after each of 50 decision days had a mean rank IC of 0.032 with the next five days' returns (t = 1.2, within noise).",
        "Factor exposures: market 0.58 (t 18.4), size -0.05 (t -0.9), growth -0.33 (t -3.2), momentum 0.05 (t 1.1); together they explain 74% of the daily variation (R²).",
        "Of its -6.0% a year over T-bills (arithmetic mean): market -11.3%, growth +5.8%, momentum +0.4%, size +0.1%; the alpha left is -1.0% a year (t = -0.2, within noise).",
        "Verdict: most of the loss is factor exposure (-5.0% a year, market above all); the alpha left is not significant.",
        "P&L: -$5,319 in all, -$5,666 from 70 positions and +$346 of interest on idle cash.",
        "By holding period: 21-60 days made the most (+$6,452, 18 positions); 3-5 days lost the most (-$7,413, 19 positions).",
        "By sector: Energy made the most (+$6,317, 9 positions); Technology lost the most (-$6,959, 9 positions).",
        "By stock: CVX made the most (+$3,436, 6 positions); AMD lost the most (-$2,299, 2 positions).",
        "By market regime of the previous close: risk-on 11 days -3.7% (SPY -5.1%); neutral 6 days -1.5% (SPY -3.3%); uncertain 162 days -8.0% (SPY -19.0%); risk-off 72 days +8.4% (SPY +9.5%).",
        "News: 32 positions opened on news made -$4,667, the other 38 -$998; 19 positions closed on news made -$6,853; over the five days from the fill, news-triggered buys trailed SPY by 0.53% (t -0.8).",
        "Concentration: the positions lost $5,666 in all; the best was CVX bought 2022-01-11 and sold 2022-03-10, +$4,005. Had the best position made nothing, the run would have returned -9.3% instead of -5.3%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.010378,
        "alpha_t": -0.152792,
        "best_trade_share": null,
        "beta_growth": -0.32817,
        "beta_market": 0.583983,
        "beta_momentum": 0.054402,
        "beta_size": -0.048018,
        "buy_excess_5d": 0.001525,
        "buy_excess_5d_t": 0.360637,
        "capm_alpha_annual": 0.02924,
        "capm_alpha_t": 0.374767,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -8.2e-05,
        "decision_excess_5d_t": -0.036616,
        "decision_hit_rate_5d": 0.504167,
        "decision_ic": -0.005842,
        "decision_ic_t": -0.285309,
        "decisions": 240.0,
        "exposure_return_annual": -0.049508,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.032177,
        "holdings_ic_t": 1.171045,
        "long_contribution": -0.056655,
        "news_decision_share": 0.3875,
        "news_entry_pnl": -4667.163822,
        "r2": 0.739891,
        "return_without_best_trade": -0.093244,
        "sell_avoided_5d": -0.001398,
        "sell_avoided_5d_t": -0.506709,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.053088
       }
      },
      "avg_exposure": 0.717214,
      "avg_holding_days": 27.189908,
      "beta": 0.462461,
      "excess_vs_equal_weight": 0.070413,
      "excess_vs_spy": 0.133376,
      "files": [
       "claude-haiku-4.5-2022-blind-s0.json"
      ],
      "max_drawdown": -0.149295,
      "n": 1,
      "round_trips": 132.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": -0.440788,
      "sharpe_range": null,
      "steps": 50,
      "total_return": -0.053088,
      "total_return_range": null,
      "turnover": 6.360059,
      "usage": {
       "calls": 50.0,
       "input_tokens": 677720.0,
       "list_price_usd": 0.8674,
       "output_tokens": 37945.0
      }
     },
     "cutoff": "2025-07",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": null,
      "control_period": "2026",
      "missing_answers": {
       "blind": 200,
       "named": 200,
       "recall": 0
      },
      "p_value": null,
      "paired": "not run (Claude row cap)",
      "probe": "riskaware.research.memory: direct recall only (50 windows per period, temperature 0), with the model's cutoff; the paired named/blind probe was not run (Claude row cap); recall_score = rank correlation of the guessed and actual moves, each scaled by the stock's usual 20-day move",
      "recall_ci95": [
       -0.08508802945648607,
       0.5407086179596146
      ],
      "recall_direction_accuracy": 0.6,
      "recall_majority_baseline": 0.54,
      "recall_score": 0.24177671068427373,
      "recall_verdict": "no sign",
      "recall_windows": 50,
      "score": null,
      "scored_points": "all",
      "verdict": null,
      "why": "paired probe not run (Claude row cap); direct recall only"
     },
     "model": "claude-haiku-4.5",
     "named": {
      "after_cutoff": null,
      "alpha_annual": -0.038387,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.038699,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": 0.016754,
         "group": "Energy",
         "runs": 1
        },
        {
         "contribution": 0.0128,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.030821,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.046007,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.047108,
         "group": "Technology",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": -0.029843,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": -0.068285,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought trailed SPY by 0.05% on average (142 buys, 52% of them ahead of SPY; t = -0.1, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.58%, so selling gave that up (136 sells; t = -1.4, within noise).",
        "Decision IC: on the 50 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.022 with the next five days' returns (IC IR -0.16, t = -1.1, within noise).",
        "Holdings IC: the weights it held after each of 50 decision days had a mean rank IC of 0.014 with the next five days' returns (t = 0.5, within noise).",
        "Factor exposures: market 0.48 (t 16.9), size -0.11 (t -1.9), growth -0.31 (t -3.4), momentum 0.06 (t 1.5); together they explain 62% of the daily variation (R²).",
        "Of its -10.7% a year over T-bills (arithmetic mean): market -9.3%, growth +5.5%, momentum +0.4%, size +0.3%; the alpha left is -7.6% a year (t = -1.0, within noise).",
        "Verdict: the exposures account for -3.1% a year of it, and the -7.6% a year left over is not significant: one period of daily returns cannot tell it from luck.",
        "P&L: -$9,487 in all, -$9,813 from 85 positions and +$326 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$3,517, 10 positions); 3-5 days lost the most (-$7,259, 37 positions).",
        "By sector: Health Care made the most (+$3,870, 20 positions); Technology lost the most (-$4,711, 9 positions).",
        "By stock: CVX made the most (+$1,677, 4 positions); TSLA lost the most (-$3,236, 4 positions).",
        "By market regime of the previous close: risk-on 11 days -2.7% (SPY -5.1%); neutral 6 days -1.8% (SPY -3.3%); uncertain 162 days -11.6% (SPY -19.0%); risk-off 72 days +7.1% (SPY +9.5%).",
        "News: 45 positions opened on news made -$6,828, the other 40 -$2,984; 17 positions closed on news made -$5,521; over the five days from the fill, news-triggered buys beat SPY by 0.17% (t 0.4).",
        "Concentration: the positions lost $9,813 in all; the best was CVX bought 2022-01-11 and sold 2022-03-10, +$2,591. Had the best position made nothing, the run would have returned -12.1% instead of -9.5%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.076172,
        "alpha_t": -0.987738,
        "best_trade_share": null,
        "beta_growth": -0.309157,
        "beta_market": 0.482774,
        "beta_momentum": 0.06198,
        "beta_size": -0.107307,
        "buy_excess_5d": -0.000503,
        "buy_excess_5d_t": -0.139004,
        "capm_alpha_annual": -0.038387,
        "capm_alpha_t": -0.427844,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.003099,
        "decision_excess_5d_t": -1.208969,
        "decision_hit_rate_5d": 0.464029,
        "decision_ic": -0.022363,
        "decision_ic_t": -1.097698,
        "decisions": 278.0,
        "exposure_return_annual": -0.031281,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.013944,
        "holdings_ic_t": 0.451933,
        "long_contribution": -0.098128,
        "news_decision_share": 0.323741,
        "news_entry_pnl": -6828.466641,
        "r2": 0.620813,
        "return_without_best_trade": -0.12078,
        "sell_avoided_5d": -0.00581,
        "sell_avoided_5d_t": -1.440309,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.094767
       }
      },
      "avg_exposure": 0.662429,
      "avg_holding_days": 21.401295,
      "beta": 0.35837,
      "excess_vs_equal_weight": 0.028734,
      "excess_vs_spy": 0.091697,
      "files": [
       "claude-haiku-4.5-2022-named-s0.json"
      ],
      "max_drawdown": -0.185292,
      "n": 1,
      "round_trips": 136.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": -0.904849,
      "sharpe_range": null,
      "steps": 50,
      "total_return": -0.094767,
      "total_return_range": null,
      "turnover": 7.772601,
      "usage": {
       "calls": 50.0,
       "input_tokens": 677988.0,
       "list_price_usd": 0.8684,
       "output_tokens": 38090.0
      }
     },
     "named_minus_blind": -0.041679,
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-haiku-4.5",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": 0.028732,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.013213,
         "group": "Industrials",
         "runs": 1
        },
        {
         "contribution": 0.006053,
         "group": "Consumer Discretionary",
         "runs": 2
        },
        {
         "contribution": 0.002087,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.004273,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": -0.043589,
         "group": "Technology",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.048944,
         "group": "no reason",
         "runs": 1
        },
        {
         "contribution": -0.011154,
         "group": "news",
         "runs": 1
        },
        {
         "contribution": -0.036794,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": 0.027089,
        "alpha_t": -0.050425,
        "best_trade_share": null,
        "beta_growth": -0.008731,
        "beta_market": 0.252236,
        "beta_momentum": -0.040955,
        "beta_size": 0.013178,
        "buy_excess_5d": -0.006626,
        "buy_excess_5d_t": -0.203234,
        "capm_alpha_annual": 0.028732,
        "capm_alpha_t": -0.034975,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.002272,
        "decision_excess_5d_t": 0.36771,
        "decision_hit_rate_5d": 0.366667,
        "decision_ic": -0.008203,
        "decision_ic_t": 0.109088,
        "decisions": 4.666667,
        "exposure_return_annual": -0.050335,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.006797,
        "holdings_ic_t": -0.38996,
        "long_contribution": -0.024197,
        "news_decision_share": 0.133333,
        "news_entry_pnl": -371.79743,
        "r2": 0.573685,
        "return_without_best_trade": -0.023385,
        "sell_avoided_5d": 0.049652,
        "sell_avoided_5d_t": 4.137159,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.015511
       }
      },
      "avg_exposure": 0.25823,
      "avg_holding_days": 37.541652,
      "beta": 0.269701,
      "excess_vs_equal_weight": 0.10799,
      "excess_vs_spy": 0.170953,
      "files": [
       "llama3.2-2022-blind-s0.json",
       "llama3.2-2022-blind-s1.json",
       "llama3.2-2022-blind-s2.json"
      ],
      "max_drawdown": -0.085675,
      "n": 3,
      "round_trips": 0.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.615363,
      "sharpe_range": [
       -1.191246,
       -0.129505
      ],
      "steps": 50,
      "total_return": -0.015511,
      "total_return_range": [
       -0.030259,
       -0.00237
      ],
      "turnover": 0.275148,
      "usage": {
       "calls": 150.0,
       "input_tokens": 1740207.0,
       "list_price_usd": 0.0,
       "output_tokens": 13583.0
      }
     },
     "cutoff": "2023-12",
     "memory": {
      "beyond_control": 0.12406250000000008,
      "beyond_control_ci95": [
       -0.09981181168302933,
       0.31991059966273083
      ],
      "ci95": [
       -0.083958877845794,
       0.21685592336407544
      ],
      "control_period": "2026",
      "missing_answers": {
       "blind": 0,
       "named": 0,
       "recall": 0
      },
      "p_value": 0.18190904547726136,
      "paired": "run",
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "recall_ci95": [
       -0.21643455879237317,
       0.3287651931288638
      ],
      "recall_direction_accuracy": 0.46,
      "recall_majority_baseline": 0.54,
      "recall_score": 0.06122743378756368,
      "recall_verdict": "no sign",
      "recall_windows": 50,
      "score": 0.07458333333333333,
      "scored_points": "before",
      "verdict": "inconclusive",
      "why": "too few pairs to tell: AUC gap +0.075 before the cutoff and -0.049 after it (the control), difference +0.124, 95% CI [-0.100, +0.320]"
     },
     "model": "llama3.2",
     "named": {
      "after_cutoff": null,
      "alpha_annual": -0.027517,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.003356,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.008227,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.022693,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.088187,
         "group": "Technology",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": -0.057683,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": -0.059538,
         "group": "no reason",
         "runs": 2
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.003759,
        "alpha_t": 0.047565,
        "best_trade_share": null,
        "beta_growth": 0.203154,
        "beta_market": 0.330833,
        "beta_momentum": -0.012193,
        "beta_size": -0.079615,
        "buy_excess_5d": -0.003647,
        "buy_excess_5d_t": -0.527211,
        "capm_alpha_annual": -0.027517,
        "capm_alpha_t": -0.57915,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.002609,
        "decision_excess_5d_t": -0.47491,
        "decision_hit_rate_5d": 0.428205,
        "decision_ic": -0.031527,
        "decision_ic_t": -0.972528,
        "decisions": 14.0,
        "exposure_return_annual": -0.098416,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.021799,
        "holdings_ic_t": -1.322065,
        "long_contribution": -0.097375,
        "news_decision_share": 0.359951,
        "news_entry_pnl": 0.0,
        "r2": 0.856543,
        "return_without_best_trade": -0.089411,
        "sell_avoided_5d": 0.001367,
        "sell_avoided_5d_t": 0.167432,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.088192
       }
      },
      "avg_exposure": 0.294751,
      "avg_holding_days": 119.905395,
      "beta": 0.38739,
      "excess_vs_equal_weight": 0.035309,
      "excess_vs_spy": 0.098272,
      "files": [
       "llama3.2-2022-named-s0.json",
       "llama3.2-2022-named-s1.json",
       "llama3.2-2022-named-s2.json"
      ],
      "max_drawdown": -0.1087,
      "n": 3,
      "round_trips": 2.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.968585,
      "sharpe_range": [
       -1.098714,
       -0.797703
      ],
      "steps": 50,
      "total_return": -0.088192,
      "total_return_range": [
       -0.144194,
       -0.043892
      ],
      "turnover": 0.258319,
      "usage": {
       "calls": 150.0,
       "input_tokens": 1733462.0,
       "list_price_usd": 0.0,
       "output_tokens": 10738.0
      }
     },
     "named_minus_blind": -0.072681,
     "open_weights": true,
     "provider": "Meta",
     "slug": "llama3.2",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": -0.025727,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.024486,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.009015,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": 0.000899,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.010675,
         "group": "Consumer Staples",
         "runs": 2
        },
        {
         "contribution": -0.010977,
         "group": "Industrials",
         "runs": 3
        },
        {
         "contribution": -0.016622,
         "group": "Consumer Discretionary",
         "runs": 3
        },
        {
         "contribution": -0.029023,
         "group": "Technology",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.002761,
         "group": "news",
         "runs": 3
        },
        {
         "contribution": -0.061429,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.042145,
        "alpha_t": -1.11445,
        "best_trade_share": null,
        "beta_growth": -0.14154,
        "beta_market": 0.268907,
        "beta_momentum": 0.066045,
        "beta_size": -0.027761,
        "buy_excess_5d": 0.004674,
        "buy_excess_5d_t": 1.085243,
        "capm_alpha_annual": -0.025727,
        "capm_alpha_t": -0.614716,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.001723,
        "decision_excess_5d_t": -0.558028,
        "decision_hit_rate_5d": 0.491737,
        "decision_ic": -0.015515,
        "decision_ic_t": -0.595651,
        "decisions": 164.0,
        "exposure_return_annual": -0.021415,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.027423,
        "holdings_ic_t": 0.965511,
        "long_contribution": -0.058668,
        "news_decision_share": 0.174341,
        "news_entry_pnl": 276.073993,
        "r2": 0.620816,
        "return_without_best_trade": -0.061534,
        "sell_avoided_5d": -0.005018,
        "sell_avoided_5d_t": -1.244007,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.049695
       }
      },
      "avg_exposure": 0.370506,
      "avg_holding_days": 25.783974,
      "beta": 0.196308,
      "excess_vs_equal_weight": 0.073806,
      "excess_vs_spy": 0.136769,
      "files": [
       "gpt-5.6-luna-2022-blind-s0.json",
       "gpt-5.6-luna-2022-blind-s1.json",
       "gpt-5.6-luna-2022-blind-s2.json"
      ],
      "max_drawdown": -0.077288,
      "n": 3,
      "round_trips": 108.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.959283,
      "sharpe_range": [
       -1.346211,
       -0.56567
      ],
      "steps": 50,
      "total_return": -0.049695,
      "total_return_range": [
       -0.070379,
       -0.023285
      ],
      "turnover": 3.84358,
      "usage": {
       "calls": 150.0,
       "input_tokens": 1785053.0,
       "list_price_usd": 0.3873,
       "output_tokens": 25182.0
      }
     },
     "cutoff": "2026-02-16",
     "memory": {
      "beyond_control": -0.05253333333333343,
      "beyond_control_ci95": [
       -0.22930225587023276,
       0.12641406209681835
      ],
      "ci95": [
       -0.15411434262961507,
       0.1311767792882845
      ],
      "measured_on": null,
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "score": -0.01333333333333342,
      "verdict": "inconclusive",
      "why": "too few pairs to tell: AUC gap -0.013 before the cutoff and +0.039 after it (the control), difference -0.053, 95% CI [-0.229, +0.126]"
     },
     "model": "gpt-5.6-luna",
     "named": {
      "after_cutoff": null,
      "alpha_annual": -0.010612,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.016561,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": 0.003979,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": 0.001057,
         "group": "Utilities",
         "runs": 1
        },
        {
         "contribution": -0.004118,
         "group": "Health Care",
         "runs": 2
        },
        {
         "contribution": -0.011841,
         "group": "Industrials",
         "runs": 1
        },
        {
         "contribution": -0.017988,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": -0.027172,
         "group": "Communication Services",
         "runs": 3
        },
        {
         "contribution": -0.03798,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.044782,
         "group": "Technology",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": -0.004887,
         "group": "news",
         "runs": 3
        },
        {
         "contribution": -0.101316,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.001575,
        "alpha_t": 0.028276,
        "best_trade_share": null,
        "beta_growth": 0.065727,
        "beta_market": 0.572627,
        "beta_momentum": 0.126724,
        "beta_size": -0.114614,
        "buy_excess_5d": 0.002184,
        "buy_excess_5d_t": 0.768957,
        "capm_alpha_annual": -0.010612,
        "capm_alpha_t": -0.134515,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.000298,
        "decision_excess_5d_t": -0.028952,
        "decision_hit_rate_5d": 0.461303,
        "decision_ic": -0.006886,
        "decision_ic_t": -0.106783,
        "decisions": 69.0,
        "exposure_return_annual": -0.109945,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.013672,
        "holdings_ic_t": -0.79278,
        "long_contribution": -0.106203,
        "news_decision_share": 0.208298,
        "news_entry_pnl": -488.675265,
        "r2": 0.877282,
        "return_without_best_trade": -0.119207,
        "sell_avoided_5d": -0.00236,
        "sell_avoided_5d_t": -0.403203,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.100315
       }
      },
      "avg_exposure": 0.63409,
      "avg_holding_days": 95.534754,
      "beta": 0.523588,
      "excess_vs_equal_weight": 0.023186,
      "excess_vs_spy": 0.086149,
      "files": [
       "gpt-5.6-luna-2022-named-s0.json",
       "gpt-5.6-luna-2022-named-s1.json",
       "gpt-5.6-luna-2022-named-s2.json"
      ],
      "max_drawdown": -0.163449,
      "n": 3,
      "round_trips": 41.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.795087,
      "sharpe_range": [
       -1.036546,
       -0.617438
      ],
      "steps": 50,
      "total_return": -0.100315,
      "total_return_range": [
       -0.140737,
       -0.077766
      ],
      "turnover": 1.124191,
      "usage": {
       "calls": 150.0,
       "input_tokens": 1784768.0,
       "list_price_usd": 0.3742,
       "output_tokens": 14349.0
      }
     },
     "named_minus_blind": -0.05062,
     "open_weights": false,
     "provider": "OpenAI",
     "slug": "gpt-5.6-luna",
     "status": "may_remember"
    },
    {
     "blind": {
      "after_cutoff": null,
      "alpha_annual": -0.05571,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.049705,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.035309,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": -0.006524,
         "group": "Communication Services",
         "runs": 2
        },
        {
         "contribution": -0.026619,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": -0.031899,
         "group": "Consumer Staples",
         "runs": 2
        },
        {
         "contribution": -0.043213,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.043816,
         "group": "Technology",
         "runs": 2
        },
        {
         "contribution": -0.053353,
         "group": "Industrials",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": -0.053864,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": -0.057057,
         "group": "news",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.11097,
        "alpha_t": -1.50129,
        "best_trade_share": null,
        "beta_growth": -0.453485,
        "beta_market": 0.503988,
        "beta_momentum": 0.062031,
        "beta_size": -0.093588,
        "buy_excess_5d": 0.006735,
        "buy_excess_5d_t": 1.735393,
        "capm_alpha_annual": -0.05571,
        "capm_alpha_t": -0.668793,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.004763,
        "decision_excess_5d_t": 1.378194,
        "decision_hit_rate_5d": 0.551022,
        "decision_ic": 0.022687,
        "decision_ic_t": 1.039809,
        "decisions": 134.333333,
        "exposure_return_annual": -0.010252,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.042422,
        "holdings_ic_t": 1.522314,
        "long_contribution": -0.110921,
        "news_decision_share": 0.357181,
        "news_entry_pnl": -5705.692581,
        "r2": 0.575144,
        "return_without_best_trade": -0.13699,
        "sell_avoided_5d": 0.002712,
        "sell_avoided_5d_t": 0.486661,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.107477
       }
      },
      "avg_exposure": 0.691637,
      "avg_holding_days": 22.586625,
      "beta": 0.339934,
      "excess_vs_equal_weight": 0.016024,
      "excess_vs_spy": 0.078987,
      "files": [
       "gemini-3.5-flash-2022-blind-s0.json",
       "gemini-3.5-flash-2022-blind-s1.json",
       "gemini-3.5-flash-2022-blind-s2.json"
      ],
      "max_drawdown": -0.158627,
      "n": 3,
      "round_trips": 66.333333,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.972961,
      "sharpe_range": [
       -1.034873,
       -0.850557
      ],
      "steps": 50,
      "total_return": -0.107477,
      "total_return_range": [
       -0.12531,
       -0.08294
      ],
      "turnover": 6.072651,
      "usage": {
       "calls": 150.0,
       "input_tokens": 2218170.0,
       "list_price_usd": 3.6581,
       "output_tokens": 36762.0
      }
     },
     "cutoff": "2025-01",
     "memory": {
      "beyond_control": 0.26217147435897437,
      "beyond_control_ci95": [
       0.10692519251739968,
       0.41460789037310525
      ],
      "ci95": [
       0.10234197443181825,
       0.31672936965397164
      ],
      "measured_on": null,
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "score": 0.21229166666666666,
      "verdict": "contaminated",
      "why": "named records help more before the cutoff than after it: AUC gap +0.212 before the cutoff and -0.050 after it (the control), difference +0.262, 95% CI [+0.107, +0.415]"
     },
     "model": "gemini-3.5-flash",
     "named": {
      "after_cutoff": null,
      "alpha_annual": 0.034468,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.06734,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.054457,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": 0.011427,
         "group": "Communication Services",
         "runs": 3
        },
        {
         "contribution": -0.034156,
         "group": "Technology",
         "runs": 2
        },
        {
         "contribution": -0.036638,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": -0.039452,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.065466,
         "group": "Consumer Staples",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.008913,
         "group": "news",
         "runs": 3
        },
        {
         "contribution": -0.067107,
         "group": "other",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.026046,
        "alpha_t": -0.340059,
        "best_trade_share": null,
        "beta_growth": -0.502537,
        "beta_market": 0.726389,
        "beta_momentum": 0.162586,
        "beta_size": -0.19097,
        "buy_excess_5d": 0.001345,
        "buy_excess_5d_t": 0.321745,
        "capm_alpha_annual": 0.034468,
        "capm_alpha_t": 0.346684,
        "concentrated": false,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.001015,
        "decision_excess_5d_t": -0.186471,
        "decision_hit_rate_5d": 0.488783,
        "decision_ic": -0.000682,
        "decision_ic_t": 0.00244,
        "decisions": 92.0,
        "exposure_return_annual": -0.034759,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.032893,
        "holdings_ic_t": 0.965934,
        "long_contribution": -0.058193,
        "news_decision_share": 0.3013,
        "news_entry_pnl": 891.312479,
        "r2": 0.742064,
        "return_without_best_trade": -0.088156,
        "sell_avoided_5d": -0.003661,
        "sell_avoided_5d_t": -0.50406,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": -0.186464,
        "total_return": -0.05701
       }
      },
      "avg_exposure": 0.905814,
      "avg_holding_days": 37.572545,
      "beta": 0.494348,
      "excess_vs_equal_weight": 0.066491,
      "excess_vs_spy": 0.129454,
      "files": [
       "gemini-3.5-flash-2022-named-s0.json",
       "gemini-3.5-flash-2022-named-s1.json",
       "gemini-3.5-flash-2022-named-s2.json"
      ],
      "max_drawdown": -0.157997,
      "n": 3,
      "round_trips": 43.333333,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.383553,
      "sharpe_range": [
       -0.446177,
       -0.346037
      ],
      "steps": 50,
      "total_return": -0.05701,
      "total_return_range": [
       -0.068302,
       -0.050836
      ],
      "turnover": 4.294541,
      "usage": {
       "calls": 150.0,
       "input_tokens": 2197363.0,
       "list_price_usd": 3.5426,
       "output_tokens": 27399.0
      }
     },
     "named_minus_blind": 0.050467,
     "open_weights": false,
     "provider": "Google",
     "slug": "gemini-3.5-flash",
     "status": "may_remember"
    }
   ],
   "title": "2022: the rate-hike bear market",
   "window": {
    "end": "2022-12-30",
    "start": "2022-01-03"
   }
  },
  "2026": {
   "anchors": [
    {
     "avg_exposure": 0.853892,
     "avg_holding_days": 36.548022,
     "excess_vs_equal_weight": 0.0754,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.049534,
     "name": "swing_trend",
     "period": "2026",
     "round_trips": 38.0,
     "sharpe": 1.270018,
     "total_return": 0.189646,
     "turnover": 4.525364,
     "volatility": 0.139155
    },
    {
     "avg_exposure": 0.507315,
     "avg_holding_days": 3.715188,
     "excess_vs_equal_weight": -0.064751,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.077081,
     "name": "swing_rsi2",
     "period": "2026",
     "round_trips": 293.0,
     "sharpe": 0.231632,
     "total_return": 0.049495,
     "turnover": 33.967142,
     "volatility": 0.121751
    },
    {
     "avg_exposure": 0.897368,
     "avg_holding_days": 18.646184,
     "excess_vs_equal_weight": -0.179699,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.168003,
     "name": "swing_breakout",
     "period": "2026",
     "round_trips": 97.0,
     "sharpe": -0.604915,
     "total_return": -0.065453,
     "turnover": 11.161807,
     "volatility": 0.166392
    },
    {
     "avg_exposure": 0.243079,
     "avg_holding_days": 10.884779,
     "excess_vs_equal_weight": -0.103709,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.045152,
     "name": "swing_pullback",
     "period": "2026",
     "round_trips": 49.0,
     "sharpe": -0.388048,
     "total_return": 0.010536,
     "turnover": 5.749205,
     "volatility": 0.056162
    },
    {
     "avg_exposure": 0.606111,
     "avg_holding_days": 9.42834,
     "excess_vs_equal_weight": -0.094541,
     "kind": "rule",
     "leak_check": "pass",
     "max_drawdown": -0.067143,
     "name": "swing_news",
     "period": "2026",
     "round_trips": 140.0,
     "sharpe": -0.051136,
     "total_return": 0.019704,
     "turnover": 16.246393,
     "volatility": 0.11709
    },
    {
     "avg_exposure": null,
     "avg_holding_days": null,
     "kind": "buy and hold",
     "leak_check": null,
     "max_drawdown": -0.08885,
     "name": "SPY",
     "period": "2026",
     "round_trips": null,
     "sharpe": 0.76515,
     "total_return": 0.12087,
     "turnover": null,
     "volatility": 0.140422
    },
    {
     "avg_exposure": null,
     "avg_holding_days": null,
     "kind": "buy and hold",
     "leak_check": null,
     "max_drawdown": -0.071956,
     "name": "Equal weight",
     "period": "2026",
     "round_trips": null,
     "sharpe": 0.848303,
     "total_return": 0.114246,
     "turnover": null,
     "volatility": 0.114603
    }
   ],
   "clean": [
    {
     "blind": {
      "after_cutoff": {
       "days": 216,
       "equal_weight_sharpe": 0.848303,
       "equal_weight_total_return": 0.114246,
       "excess_vs_equal_weight": -0.042593,
       "excess_vs_spy": -0.049217,
       "from": "2026-01-02",
       "max_drawdown": -0.074214,
       "sharpe": 0.416132,
       "sharpe_range": null,
       "spy_sharpe": 0.76515,
       "spy_total_return": 0.12087,
       "to": "2026-11-11",
       "total_return": 0.071653,
       "total_return_range": null,
       "volatility": 0.128224
      },
      "alpha_annual": -0.005151,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.043143,
         "group": "Energy",
         "runs": 1
        },
        {
         "contribution": 0.038572,
         "group": "Industrials",
         "runs": 1
        },
        {
         "contribution": 0.018063,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.003036,
         "group": "Real Estate",
         "runs": 1
        },
        {
         "contribution": -0.017267,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.022707,
         "group": "Technology",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.073687,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": -0.010504,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought trailed SPY by 0.73% on average (106 buys, 44% of them ahead of SPY; t = -1.3, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.67%, so selling gave that up (112 sells; t = -1.1, within noise).",
        "Decision IC: on the 42 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.027 with the next five days' returns (IC IR -0.16, t = -1.1, within noise).",
        "Holdings IC: the weights it held after each of 43 decision days had a mean rank IC of -0.018 with the next five days' returns (t = -1.0, within noise).",
        "Factor exposures: market 0.59 (t 8.5), size 0.20 (t 2.7), growth -0.15 (t -1.4), momentum 0.01 (t 0.1); together they explain 39% of the daily variation (R²).",
        "Of its +5.3% a year over T-bills (arithmetic mean): market +6.4%, size +0.7%, growth -0.4%, momentum -0.1%; the alpha left is -1.2% a year (t = -0.1, within noise).",
        "Verdict: most of the return is factor exposure (+6.5% a year, market above all); the alpha left is not significant.",
        "P&L: +$7,212 in all, +$6,318 from 77 positions and +$894 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$19,047, 11 positions); 3-5 days lost the most (-$12,279, 31 positions).",
        "By sector: Energy made the most (+$4,314, 3 positions); Technology lost the most (-$2,271, 27 positions).",
        "By stock: CAT made the most (+$3,457, 1 position); ORCL lost the most (-$2,550, 3 positions).",
        "By market regime of the previous close: risk-on 96 days +1.1% (SPY +2.0%); neutral 18 days +0.2% (SPY +4.5%); uncertain 97 days +5.7% (SPY +4.8%); risk-off 6 days +0.1% (SPY +0.3%).",
        "News: 41 positions opened on news made -$1,050, the other 36 +$7,369; 19 positions closed on news made -$921; over the five days from the fill, news-triggered buys trailed SPY by 0.81% (t -1.2).",
        "Concentration: the gains are spread out (the best two positions made 37% of them) but winners and losers nearly cancel, so the best two made 164% of the net P&L; the best was AMD bought 2026-04-09 and sold 2026-07-28, +$6,894. Had the best position made nothing, the run would have returned +0.3% instead of +7.2%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.011681,
        "alpha_t": -0.125095,
        "best_trade_share": 1.091151,
        "beta_growth": -0.150741,
        "beta_market": 0.591836,
        "beta_momentum": 0.005958,
        "beta_size": 0.195565,
        "buy_excess_5d": -0.007254,
        "buy_excess_5d_t": -1.329226,
        "capm_alpha_annual": -0.005151,
        "capm_alpha_t": -0.054525,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.006979,
        "decision_excess_5d_t": -1.434463,
        "decision_hit_rate_5d": 0.472477,
        "decision_ic": -0.027452,
        "decision_ic_t": -1.05061,
        "decisions": 218.0,
        "exposure_return_annual": 0.065039,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.0177,
        "holdings_ic_t": -0.972096,
        "long_contribution": 0.063183,
        "news_decision_share": 0.346667,
        "news_entry_pnl": -1050.402644,
        "r2": 0.392107,
        "return_without_best_trade": 0.00318,
        "sell_avoided_5d": -0.00672,
        "sell_avoided_5d_t": -1.091354,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.071653
       }
      },
      "avg_exposure": 0.737002,
      "avg_holding_days": 21.38943,
      "beta": 0.54456,
      "excess_vs_equal_weight": -0.042593,
      "excess_vs_spy": -0.049217,
      "files": [
       "claude-haiku-4.5-2026-blind-s0.json"
      ],
      "max_drawdown": -0.074214,
      "n": 1,
      "round_trips": 116.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.416132,
      "sharpe_range": null,
      "steps": 44,
      "total_return": 0.071653,
      "total_return_range": null,
      "turnover": 7.856045,
      "usage": {
       "calls": 44.0,
       "input_tokens": 539675.0,
       "list_price_usd": 0.7011,
       "output_tokens": 32278.0
      }
     },
     "cutoff": "2025-07",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": null,
      "control_period": null,
      "missing_answers": {
       "blind": 100,
       "named": 100,
       "recall": 0
      },
      "p_value": null,
      "paired": "not run (Claude row cap)",
      "probe": "riskaware.research.memory: direct recall only (50 windows per period, temperature 0), with the model's cutoff; the paired named/blind probe was not run (Claude row cap); recall_score = rank correlation of the guessed and actual moves, each scaled by the stock's usual 20-day move",
      "recall_ci95": [
       -0.09538192223476778,
       0.46016522783197206
      ],
      "recall_direction_accuracy": 0.44,
      "recall_majority_baseline": 0.56,
      "recall_score": 0.19462184873949578,
      "recall_verdict": "no sign",
      "recall_windows": 50,
      "score": null,
      "scored_points": "all",
      "verdict": null,
      "why": "paired probe not run (Claude row cap); direct recall only"
     },
     "model": "claude-haiku-4.5",
     "named": {
      "after_cutoff": {
       "days": 216,
       "equal_weight_sharpe": 0.848303,
       "equal_weight_total_return": 0.114246,
       "excess_vs_equal_weight": -0.025972,
       "excess_vs_spy": -0.032596,
       "from": "2026-01-02",
       "max_drawdown": -0.088627,
       "sharpe": 0.519476,
       "sharpe_range": null,
       "spy_sharpe": 0.76515,
       "spy_total_return": 0.12087,
       "to": "2026-11-11",
       "total_return": 0.088274,
       "total_return_range": null,
       "volatility": 0.1405
      },
      "alpha_annual": 0.004006,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.022906,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.022683,
         "group": "Energy",
         "runs": 1
        },
        {
         "contribution": 0.02235,
         "group": "Industrials",
         "runs": 1
        },
        {
         "contribution": -0.004003,
         "group": "Materials",
         "runs": 1
        },
        {
         "contribution": -0.004412,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": -0.012799,
         "group": "Communication Services",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.044824,
         "group": "news",
         "runs": 1
        },
        {
         "contribution": 0.033402,
         "group": "other",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought trailed SPY by 0.81% on average (121 buys, 40% of them ahead of SPY; t = -1.6, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.41%, so selling gave that up (140 sells; t = -0.8, within noise).",
        "Decision IC: on the 42 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.025 with the next five days' returns (IC IR -0.15, t = -1.0, within noise).",
        "Holdings IC: the weights it held after each of 43 decision days had a mean rank IC of -0.009 with the next five days' returns (t = -0.3, within noise).",
        "Factor exposures: market 0.57 (t 8.8), size 0.21 (t 3.1), growth 0.16 (t 1.0), momentum -0.07 (t -1.6); together they explain 44% of the daily variation (R²).",
        "Of its +7.3% a year over T-bills (arithmetic mean): market +6.1%, momentum +1.6%, size +0.7%, growth +0.4%; the alpha left is -1.5% a year (t = -0.1, within noise).",
        "Verdict: most of the return is factor exposure (+8.8% a year, market above all); the alpha left is not significant.",
        "P&L: +$8,875 in all, +$7,823 from 85 positions and +$1,052 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$13,548, 13 positions); 3-5 days lost the most (-$10,691, 34 positions).",
        "By sector: Technology made the most (+$2,291, 33 positions); Communication Services lost the most (-$1,280, 10 positions).",
        "By stock: AMD made the most (+$7,116, 5 positions); ORCL lost the most (-$3,568, 5 positions).",
        "By market regime of the previous close: risk-on 96 days +4.2% (SPY +2.0%); neutral 18 days +2.9% (SPY +4.5%); uncertain 97 days +2.0% (SPY +4.8%); risk-off 6 days -0.4% (SPY +0.3%).",
        "News: 42 positions opened on news made +$4,482, the other 43 +$3,340; 22 positions closed on news made +$5,862; over the five days from the fill, news-triggered buys trailed SPY by 1.46% (t -2.2).",
        "Concentration: the profit rests on the best two positions, which made 173% of the positions' net P&L and 43% of all their gains; the best was AMD bought 2026-04-09 and sold 2026-06-22, +$9,462. Had the best position made nothing, the run would have returned -0.6% instead of +8.9%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.015113,
        "alpha_t": -0.138149,
        "best_trade_share": 1.209517,
        "beta_growth": 0.155078,
        "beta_market": 0.567272,
        "beta_momentum": -0.070839,
        "beta_size": 0.207047,
        "buy_excess_5d": -0.008055,
        "buy_excess_5d_t": -1.605659,
        "capm_alpha_annual": 0.004006,
        "capm_alpha_t": 0.035747,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.005952,
        "decision_excess_5d_t": -1.494801,
        "decision_hit_rate_5d": 0.482759,
        "decision_ic": -0.024516,
        "decision_ic_t": -0.9708,
        "decisions": 261.0,
        "exposure_return_annual": 0.088099,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.008622,
        "holdings_ic_t": -0.347963,
        "long_contribution": 0.078226,
        "news_decision_share": 0.335878,
        "news_entry_pnl": 4482.356775,
        "r2": 0.444719,
        "return_without_best_trade": -0.005865,
        "sell_avoided_5d": -0.004135,
        "sell_avoided_5d_t": -0.792523,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.088274
       }
      },
      "avg_exposure": 0.684796,
      "avg_holding_days": 20.591824,
      "beta": 0.642014,
      "excess_vs_equal_weight": -0.025972,
      "excess_vs_spy": -0.032596,
      "files": [
       "claude-haiku-4.5-2026-named-s0.json"
      ],
      "max_drawdown": -0.088627,
      "n": 1,
      "round_trips": 141.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.519476,
      "sharpe_range": null,
      "steps": 44,
      "total_return": 0.088274,
      "total_return_range": null,
      "turnover": 8.294019,
      "usage": {
       "calls": 44.0,
       "input_tokens": 539325.0,
       "list_price_usd": 0.7255,
       "output_tokens": 37239.0
      }
     },
     "named_minus_blind": 0.016621,
     "named_minus_blind_after_cutoff": 0.016621,
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-haiku-4.5",
     "status": "clean"
    },
    {
     "blind": {
      "after_cutoff": {
       "days": 197,
       "equal_weight_sharpe": 0.862105,
       "equal_weight_total_return": 0.106305,
       "excess_vs_equal_weight": -0.0447,
       "excess_vs_spy": -0.04501,
       "from": "2026-01-30",
       "max_drawdown": -0.090248,
       "sharpe": 0.343889,
       "sharpe_range": null,
       "spy_sharpe": 0.725438,
       "spy_total_return": 0.106615,
       "to": "2026-11-11",
       "total_return": 0.061605,
       "total_return_range": null,
       "volatility": 0.151784
      },
      "alpha_annual": -0.004197,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.047322,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": 0.03487,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.016797,
         "group": "Industrials",
         "runs": 1
        },
        {
         "contribution": -0.001772,
         "group": "Real Estate",
         "runs": 1
        },
        {
         "contribution": -0.018701,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.020545,
         "group": "Communication Services",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.13883,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": -0.062307,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought beat SPY by 0.25% on average (72 buys, 58% of them ahead of SPY; t = 0.5, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 0.06%, so selling gave that up (98 sells; t = -0.1, within noise).",
        "Decision IC: on the 43 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of 0.023 with the next five days' returns (IC IR 0.18, t = 1.2, within noise).",
        "Holdings IC: the weights it held after each of 43 decision days had a mean rank IC of -0.023 with the next five days' returns (t = -0.8, within noise).",
        "Factor exposures: market 0.59 (t 8.4), size 0.34 (t 4.7), growth -0.02 (t -0.1), momentum 0.11 (t 2.7); together they explain 47% of the daily variation (R²).",
        "Of the +6.7% a year it earned over T-bills (arithmetic mean): market +6.4%, momentum -2.6%, size +1.1%, growth -0.0%; the alpha left is +1.8% a year (t = 0.2, within noise).",
        "Verdict: most of the return is factor exposure (+4.8% a year, market above all); the alpha left is not significant.",
        "P&L: +$8,145 in all, +$7,652 from 67 positions and +$493 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$16,519, 11 positions); 3-5 days the least (-$6,474, 12 positions).",
        "By sector: Health Care made the most (+$4,732, 10 positions); Communication Services the least (-$2,054, 5 positions).",
        "By stock: CAT made the most (+$4,994, 1 position); ORCL the least (-$3,072, 2 positions).",
        "By market regime of the previous close: risk-on 96 days +4.0% (SPY +2.0%); neutral 18 days -3.5% (SPY +4.5%); uncertain 97 days +7.6% (SPY +4.8%); risk-off 6 days +0.2% (SPY +0.3%).",
        "News: 26 positions opened on news made -$6,231, the other 41 +$13,883; 13 positions closed on news made -$4,777; over the five days from the fill, news-triggered buys trailed SPY by 0.95% (t -1.0).",
        "Concentration: the profit rests on the best two positions, which made 152% of the positions' net P&L and 42% of all their gains; the best was AMD bought 2026-04-09 and sold 2026-08-25, +$6,628. Had the best position made nothing, the run would have returned +1.5% instead of +8.1%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": 0.018403,
        "alpha_t": 0.155763,
        "best_trade_share": 0.866167,
        "beta_growth": -0.017005,
        "beta_market": 0.593185,
        "beta_momentum": 0.113267,
        "beta_size": 0.337245,
        "buy_excess_5d": 0.002484,
        "buy_excess_5d_t": 0.526614,
        "capm_alpha_annual": -0.004197,
        "capm_alpha_t": -0.032286,
        "concentrated": true,
        "decision_excess_5d": 0.000714,
        "decision_excess_5d_t": 0.224041,
        "decision_hit_rate_5d": 0.558824,
        "decision_ic": 0.02252,
        "decision_ic_t": 1.167828,
        "decisions": 170.0,
        "exposure_return_annual": 0.048151,
        "holdings_ic": -0.022828,
        "holdings_ic_t": -0.832104,
        "news_decision_share": 0.290698,
        "news_entry_pnl": -6230.674462,
        "r2": 0.473616,
        "return_without_best_trade": 0.01517,
        "sell_avoided_5d": -0.000586,
        "sell_avoided_5d_t": -0.134679,
        "spy_return": 0.12087,
        "total_return": 0.080978
       }
      },
      "avg_exposure": 0.858106,
      "avg_holding_days": 28.776131,
      "beta": 0.658498,
      "excess_vs_equal_weight": -0.033268,
      "excess_vs_spy": -0.039892,
      "files": [
       "claude-sonnet-4.6-2026-blind-s0.json"
      ],
      "max_drawdown": -0.090248,
      "n": 1,
      "round_trips": 100.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.443112,
      "sharpe_range": null,
      "steps": 44,
      "total_return": 0.080978,
      "total_return_range": null,
      "turnover": 7.123251,
      "usage": {
       "calls": 44.0,
       "input_tokens": 538998.0,
       "list_price_usd": 2.1823,
       "output_tokens": 37690.0
      }
     },
     "cutoff": "2026-01",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": null,
      "control_period": null,
      "missing_answers": {
       "blind": 100,
       "named": 100,
       "recall": 0
      },
      "p_value": null,
      "paired": "not run (Claude row cap)",
      "probe": "riskaware.research.memory: direct recall only (50 windows per period, temperature 0), with the model's cutoff; the paired named/blind probe was not run (Claude row cap); recall_score = rank correlation of the guessed and actual moves, each scaled by the stock's usual 20-day move",
      "recall_ci95": [
       -0.37569943068195544,
       0.222223318922643
      ],
      "recall_direction_accuracy": 0.42,
      "recall_majority_baseline": 0.56,
      "recall_score": -0.06746698679471788,
      "recall_verdict": "no sign",
      "recall_windows": 50,
      "score": null,
      "scored_points": "all",
      "verdict": null,
      "why": "paired probe not run (Claude row cap); direct recall only"
     },
     "model": "claude-sonnet-4.6",
     "named": {
      "after_cutoff": {
       "days": 197,
       "equal_weight_sharpe": 0.862105,
       "equal_weight_total_return": 0.106305,
       "excess_vs_equal_weight": -0.031026,
       "excess_vs_spy": -0.031336,
       "from": "2026-01-30",
       "max_drawdown": -0.072699,
       "sharpe": 0.513104,
       "sharpe_range": null,
       "spy_sharpe": 0.725438,
       "spy_total_return": 0.106615,
       "to": "2026-11-11",
       "total_return": 0.075279,
       "total_return_range": null,
       "volatility": 0.126829
      },
      "alpha_annual": -0.005549,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.044222,
         "group": "Technology",
         "runs": 1
        },
        {
         "contribution": 0.020711,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": 0.015746,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": 0.004236,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": -0.002626,
         "group": "Consumer Discretionary",
         "runs": 1
        },
        {
         "contribution": -0.023954,
         "group": "Communication Services",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.055618,
         "group": "other",
         "runs": 1
        },
        {
         "contribution": 0.021839,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought trailed SPY by 0.48% on average (68 buys, 46% of them ahead of SPY; t = -0.8, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold lagged SPY by 0.11%, so selling avoided that (97 sells; t = 0.3, within noise).",
        "Decision IC: on the 43 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of 0.007 with the next five days' returns (IC IR 0.05, t = 0.3, within noise).",
        "Holdings IC: the weights it held after each of 43 decision days had a mean rank IC of -0.018 with the next five days' returns (t = -0.7, within noise).",
        "Factor exposures: market 0.70 (t 10.9), size 0.04 (t 0.7), growth -0.11 (t -1.3), momentum 0.09 (t 3.4); together they explain 62% of the daily variation (R²).",
        "Of the +6.8% a year it earned over T-bills (arithmetic mean): market +7.5%, momentum -2.1%, growth -0.3%, size +0.1%; the alpha left is +1.5% a year (t = 0.2, within noise).",
        "Verdict: most of the return is factor exposure (+5.3% a year, market above all); the alpha left is not significant.",
        "P&L: +$8,579 in all, +$7,746 from 39 positions and +$834 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$17,424, 15 positions); 21-60 days the least (-$3,574, 10 positions).",
        "By sector: Technology made the most (+$4,422, 10 positions); Communication Services the least (-$2,395, 4 positions).",
        "By stock: CSCO made the most (+$4,163, 1 position); NVDA the least (-$1,672, 2 positions).",
        "By market regime of the previous close: risk-on 96 days -1.0% (SPY +2.0%); neutral 18 days +1.9% (SPY +4.5%); uncertain 97 days +7.3% (SPY +4.8%); risk-off 6 days +0.3% (SPY +0.3%).",
        "News: 13 positions opened on news made +$2,184, the other 26 +$5,562; 1 positions closed on news made -$1,077; over the five days from the fill, news-triggered buys trailed SPY by 0.53% (t -0.4).",
        "Concentration: the gains are spread out (the best two positions made 32% of them) but winners and losers nearly cancel, so the best two made 91% of the net P&L; the best was CSCO bought 2026-01-27 and sold 2026-07-21, +$4,163. Had the best position made nothing, the run would have returned +4.4% instead of +8.6%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": 0.014971,
        "alpha_t": 0.172936,
        "best_trade_share": 0.537513,
        "beta_growth": -0.10798,
        "beta_market": 0.700496,
        "beta_momentum": 0.090757,
        "beta_size": 0.037292,
        "buy_excess_5d": -0.004805,
        "buy_excess_5d_t": -0.80491,
        "capm_alpha_annual": -0.005549,
        "capm_alpha_t": -0.062013,
        "concentrated": true,
        "decision_excess_5d": -0.001321,
        "decision_excess_5d_t": -0.37099,
        "decision_hit_rate_5d": 0.50303,
        "decision_ic": 0.006649,
        "decision_ic_t": 0.31338,
        "decisions": 165.0,
        "exposure_return_annual": 0.052742,
        "holdings_ic": -0.018027,
        "holdings_ic_t": -0.692922,
        "news_decision_share": 0.220238,
        "news_entry_pnl": 2183.903714,
        "r2": 0.619227,
        "return_without_best_trade": 0.044161,
        "sell_avoided_5d": 0.001121,
        "sell_avoided_5d_t": 0.273711,
        "spy_return": 0.12087,
        "total_return": 0.08532
       }
      },
      "avg_exposure": 0.750009,
      "avg_holding_days": 42.719808,
      "beta": 0.681861,
      "excess_vs_equal_weight": -0.028926,
      "excess_vs_spy": -0.03555,
      "files": [
       "claude-sonnet-4.6-2026-named-s0.json"
      ],
      "max_drawdown": -0.072699,
      "n": 1,
      "round_trips": 100.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": 0.542748,
      "sharpe_range": null,
      "steps": 44,
      "total_return": 0.08532,
      "total_return_range": null,
      "turnover": 4.311977,
      "usage": {
       "calls": 44.0,
       "input_tokens": 539491.0,
       "list_price_usd": 2.1861,
       "output_tokens": 37839.0
      }
     },
     "named_minus_blind": 0.004342,
     "named_minus_blind_after_cutoff": 0.013674,
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-sonnet-4.6",
     "status": "partly"
    },
    {
     "blind": {
      "after_cutoff": {
       "days": 187,
       "equal_weight_sharpe": 0.935723,
       "equal_weight_total_return": 0.107209,
       "excess_vs_equal_weight": -0.061779,
       "excess_vs_spy": -0.077775,
       "from": "2026-02-13",
       "max_drawdown": -0.036582,
       "sharpe": 0.335632,
       "sharpe_range": [
        -0.379239,
        1.729767
       ],
       "spy_sharpe": 0.916899,
       "spy_total_return": 0.123205,
       "to": "2026-11-11",
       "total_return": 0.04543,
       "total_return_range": [
        0.008466,
        0.117679
       ],
       "volatility": 0.06211
      },
      "alpha_annual": 0.057998,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.0311,
         "group": "Health Care",
         "runs": 2
        },
        {
         "contribution": 0.031027,
         "group": "Industrials",
         "runs": 3
        },
        {
         "contribution": 0.029025,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": 0.015524,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": 0.0086,
         "group": "Real Estate",
         "runs": 1
        },
        {
         "contribution": -0.003547,
         "group": "Consumer Discretionary",
         "runs": 2
        },
        {
         "contribution": -0.006686,
         "group": "Utilities",
         "runs": 2
        },
        {
         "contribution": -0.008942,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.00965,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.019932,
         "group": "Technology",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.052144,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": 0.033266,
         "group": "news",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": 0.058696,
        "alpha_t": 0.917292,
        "best_trade_share": 0.334317,
        "beta_growth": -0.355781,
        "beta_market": 0.347626,
        "beta_momentum": 0.046387,
        "beta_size": 0.105722,
        "buy_excess_5d": -0.000717,
        "buy_excess_5d_t": -0.199453,
        "capm_alpha_annual": 0.057998,
        "capm_alpha_t": 0.802843,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.002786,
        "decision_excess_5d_t": -0.904485,
        "decision_hit_rate_5d": 0.482998,
        "decision_ic": -0.014671,
        "decision_ic_t": -0.613145,
        "decisions": 177.666667,
        "exposure_return_annual": 0.021415,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.003888,
        "holdings_ic_t": 0.171815,
        "long_contribution": 0.085409,
        "news_decision_share": 0.174377,
        "news_entry_pnl": 3326.568745,
        "r2": 0.392262,
        "return_without_best_trade": 0.081107,
        "sell_avoided_5d": -0.003789,
        "sell_avoided_5d_t": -0.857939,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.10261
       }
      },
      "avg_exposure": 0.470381,
      "avg_holding_days": 25.53365,
      "beta": 0.20581,
      "excess_vs_equal_weight": -0.011636,
      "excess_vs_spy": -0.01826,
      "files": [
       "gpt-5.6-luna-2026-blind-s0.json",
       "gpt-5.6-luna-2026-blind-s1.json",
       "gpt-5.6-luna-2026-blind-s2.json"
      ],
      "max_drawdown": -0.036582,
      "n": 3,
      "round_trips": 126.333333,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 1.099159,
      "sharpe_range": [
       0.723859,
       1.845646
      ],
      "steps": 44,
      "total_return": 0.10261,
      "total_return_range": [
       0.073108,
       0.160954
      ],
      "turnover": 5.022479,
      "usage": {
       "calls": 132.0,
       "input_tokens": 1439207.0,
       "list_price_usd": 0.3235,
       "output_tokens": 29708.0
      }
     },
     "cutoff": "2026-02-16",
     "memory": {
      "beyond_control": -0.4726608187134502,
      "beyond_control_ci95": [
       -0.9402735226034858,
       -0.08676659891598945
      ],
      "ci95": [
       -0.8571428571428572,
       -0.0714285714285714
      ],
      "measured_on": null,
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "score": -0.42499999999999993,
      "verdict": "inconclusive",
      "why": "only 9 pairs; 30 or more are needed for a verdict (no control window after the cutoff to compare with)"
     },
     "model": "gpt-5.6-luna",
     "named": {
      "after_cutoff": {
       "days": 187,
       "equal_weight_sharpe": 0.935723,
       "equal_weight_total_return": 0.107209,
       "excess_vs_equal_weight": 0.022626,
       "excess_vs_spy": 0.00663,
       "from": "2026-02-13",
       "max_drawdown": -0.079036,
       "sharpe": 1.334337,
       "sharpe_range": [
        0.905854,
        1.76578
       ],
       "spy_sharpe": 0.916899,
       "spy_total_return": 0.123205,
       "to": "2026-11-11",
       "total_return": 0.129835,
       "total_return_range": [
        0.083022,
        0.180588
       ],
       "volatility": 0.096544
      },
      "alpha_annual": 0.022904,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.023353,
         "group": "Financials",
         "runs": 2
        },
        {
         "contribution": 0.022087,
         "group": "Industrials",
         "runs": 2
        },
        {
         "contribution": 0.019686,
         "group": "Technology",
         "runs": 3
        },
        {
         "contribution": 0.016658,
         "group": "Consumer Discretionary",
         "runs": 2
        },
        {
         "contribution": 0.015575,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.003918,
         "group": "Real Estate",
         "runs": 3
        },
        {
         "contribution": 0.003072,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": 0.002569,
         "group": "Communication Services",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.091156,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": 0.002021,
         "group": "news",
         "runs": 1
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": 0.010204,
        "alpha_t": 0.153699,
        "best_trade_share": 0.299585,
        "beta_growth": -0.516443,
        "beta_market": 0.779636,
        "beta_momentum": 0.001264,
        "beta_size": -0.030606,
        "buy_excess_5d": 0.000126,
        "buy_excess_5d_t": 0.044549,
        "capm_alpha_annual": 0.022904,
        "capm_alpha_t": 0.293271,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.001351,
        "decision_excess_5d_t": -0.289787,
        "decision_hit_rate_5d": 0.510329,
        "decision_ic": -0.019801,
        "decision_ic_t": -0.537039,
        "decisions": 70.666667,
        "exposure_return_annual": 0.069905,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.005783,
        "holdings_ic_t": 0.346796,
        "long_contribution": 0.091829,
        "news_decision_share": 0.11549,
        "news_entry_pnl": 67.353652,
        "r2": 0.750927,
        "return_without_best_trade": 0.074364,
        "sell_avoided_5d": -0.002741,
        "sell_avoided_5d_t": -0.172794,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.099913
       }
      },
      "avg_exposure": 0.748447,
      "avg_holding_days": 104.449676,
      "beta": 0.532423,
      "excess_vs_equal_weight": -0.014333,
      "excess_vs_spy": -0.020957,
      "files": [
       "gpt-5.6-luna-2026-named-s0.json",
       "gpt-5.6-luna-2026-named-s1.json",
       "gpt-5.6-luna-2026-named-s2.json"
      ],
      "max_drawdown": -0.09676,
      "n": 3,
      "round_trips": 43.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.786383,
      "sharpe_range": [
       0.533455,
       1.128592
      ],
      "steps": 44,
      "total_return": 0.099913,
      "total_return_range": [
       0.074604,
       0.142568
      ],
      "turnover": 1.170806,
      "usage": {
       "calls": 132.0,
       "input_tokens": 1431790.0,
       "list_price_usd": 0.3044,
       "output_tokens": 15014.0
      }
     },
     "named_minus_blind": -0.002697,
     "named_minus_blind_after_cutoff": 0.084405,
     "open_weights": false,
     "provider": "OpenAI",
     "slug": "gpt-5.6-luna",
     "status": "partly"
    },
    {
     "blind": {
      "after_cutoff": {
       "days": 216,
       "equal_weight_sharpe": 0.848303,
       "equal_weight_total_return": 0.114246,
       "excess_vs_equal_weight": -0.048863,
       "excess_vs_spy": -0.055487,
       "from": "2026-01-02",
       "max_drawdown": -0.100508,
       "sharpe": 0.325717,
       "sharpe_range": [
        0.149895,
        0.543446
       ],
       "spy_sharpe": 0.76515,
       "spy_total_return": 0.12087,
       "to": "2026-11-11",
       "total_return": 0.065383,
       "total_return_range": [
        0.040861,
        0.095147
       ],
       "volatility": 0.157953
      },
      "alpha_annual": -0.029174,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.088283,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.020642,
         "group": "Technology",
         "runs": 3
        },
        {
         "contribution": 0.015697,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": 0.005,
         "group": "Industrials",
         "runs": 2
        },
        {
         "contribution": -0.017121,
         "group": "Consumer Staples",
         "runs": 1
        },
        {
         "contribution": -0.024098,
         "group": "Consumer Discretionary",
         "runs": 3
        },
        {
         "contribution": -0.024648,
         "group": "Communication Services",
         "runs": 2
        },
        {
         "contribution": -0.028545,
         "group": "Financials",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.052767,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": 0.011894,
         "group": "news",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.013333,
        "alpha_t": -0.093869,
        "best_trade_share": 1.125042,
        "beta_growth": -0.040903,
        "beta_market": 0.703753,
        "beta_momentum": 0.085224,
        "beta_size": 0.27359,
        "buy_excess_5d": -0.005308,
        "buy_excess_5d_t": -1.016205,
        "capm_alpha_annual": -0.029174,
        "capm_alpha_t": -0.213733,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.002736,
        "decision_excess_5d_t": -0.662786,
        "decision_hit_rate_5d": 0.530457,
        "decision_ic": -0.002676,
        "decision_ic_t": -0.107227,
        "decisions": 139.0,
        "exposure_return_annual": 0.063866,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.022328,
        "holdings_ic_t": -0.986034,
        "long_contribution": 0.064661,
        "news_decision_share": 0.385081,
        "news_entry_pnl": 1189.426262,
        "r2": 0.491357,
        "return_without_best_trade": 0.000315,
        "sell_avoided_5d": 0.000194,
        "sell_avoided_5d_t": 0.050604,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.065383
       }
      },
      "avg_exposure": 0.972167,
      "avg_holding_days": 30.795886,
      "beta": 0.741852,
      "excess_vs_equal_weight": -0.048863,
      "excess_vs_spy": -0.055487,
      "files": [
       "gemini-3.5-flash-2026-blind-s0.json",
       "gemini-3.5-flash-2026-blind-s1.json",
       "gemini-3.5-flash-2026-blind-s2.json"
      ],
      "max_drawdown": -0.100508,
      "n": 3,
      "round_trips": 66.666667,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.325717,
      "sharpe_range": [
       0.149895,
       0.543446
      ],
      "steps": 44,
      "total_return": 0.065383,
      "total_return_range": [
       0.040861,
       0.095147
      ],
      "turnover": 7.183559,
      "usage": {
       "calls": 132.0,
       "input_tokens": 1811529.0,
       "list_price_usd": 3.0528,
       "output_tokens": 37284.0
      }
     },
     "cutoff": "2025-01",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": [
       -0.15927828394953178,
       0.05865783004899907
      ],
      "measured_on": null,
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "score": -0.04987980769230771,
      "verdict": "clean",
      "why": "every point starts after the training cutoff, so the model cannot have read how it ended"
     },
     "model": "gemini-3.5-flash",
     "named": {
      "after_cutoff": {
       "days": 216,
       "equal_weight_sharpe": 0.848303,
       "equal_weight_total_return": 0.114246,
       "excess_vs_equal_weight": -0.107915,
       "excess_vs_spy": -0.114539,
       "from": "2026-01-02",
       "max_drawdown": -0.10973,
       "sharpe": -0.111383,
       "sharpe_range": [
        -0.199219,
        -0.031619
       ],
       "spy_sharpe": 0.76515,
       "spy_total_return": 0.12087,
       "to": "2026-11-11",
       "total_return": 0.006331,
       "total_return_range": [
        -0.006049,
        0.01677
       ],
       "volatility": 0.150747
      },
      "alpha_annual": -0.100986,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.067868,
         "group": "Health Care",
         "runs": 3
        },
        {
         "contribution": 0.024899,
         "group": "Energy",
         "runs": 3
        },
        {
         "contribution": 0.015036,
         "group": "Industrials",
         "runs": 3
        },
        {
         "contribution": -0.028273,
         "group": "Financials",
         "runs": 3
        },
        {
         "contribution": -0.031242,
         "group": "Communication Services",
         "runs": 3
        },
        {
         "contribution": -0.042161,
         "group": "Consumer Discretionary",
         "runs": 3
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.02671,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": -0.021012,
         "group": "news",
         "runs": 3
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.070074,
        "alpha_t": -0.701455,
        "best_trade_share": 5.633532,
        "beta_growth": -0.148573,
        "beta_market": 0.78502,
        "beta_momentum": 0.14651,
        "beta_size": 0.197526,
        "buy_excess_5d": -0.004686,
        "buy_excess_5d_t": -0.920089,
        "capm_alpha_annual": -0.100986,
        "capm_alpha_t": -0.916185,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.000983,
        "decision_excess_5d_t": 0.255378,
        "decision_hit_rate_5d": 0.510432,
        "decision_ic": 0.001661,
        "decision_ic_t": 0.080118,
        "decisions": 113.666667,
        "exposure_return_annual": 0.053179,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.033531,
        "holdings_ic_t": -1.30612,
        "long_contribution": 0.005698,
        "news_decision_share": 0.354201,
        "news_entry_pnl": -2101.226807,
        "r2": 0.611315,
        "return_without_best_trade": -0.048811,
        "sell_avoided_5d": 0.008036,
        "sell_avoided_5d_t": 1.434698,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.006331
       }
      },
      "avg_exposure": 0.97502,
      "avg_holding_days": 37.087564,
      "beta": 0.782647,
      "excess_vs_equal_weight": -0.107915,
      "excess_vs_spy": -0.114539,
      "files": [
       "gemini-3.5-flash-2026-named-s0.json",
       "gemini-3.5-flash-2026-named-s1.json",
       "gemini-3.5-flash-2026-named-s2.json"
      ],
      "max_drawdown": -0.10973,
      "n": 3,
      "round_trips": 52.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.111383,
      "sharpe_range": [
       -0.199219,
       -0.031619
      ],
      "steps": 44,
      "total_return": 0.006331,
      "total_return_range": [
       -0.006049,
       0.01677
      ],
      "turnover": 5.683501,
      "usage": {
       "calls": 132.0,
       "input_tokens": 1785598.0,
       "list_price_usd": 2.9497,
       "output_tokens": 30149.0
      }
     },
     "named_minus_blind": -0.059052,
     "named_minus_blind_after_cutoff": -0.059052,
     "open_weights": false,
     "provider": "Google",
     "slug": "gemini-3.5-flash",
     "status": "clean"
    },
    {
     "blind": {
      "after_cutoff": {
       "days": 216,
       "equal_weight_sharpe": 0.848303,
       "equal_weight_total_return": 0.114246,
       "excess_vs_equal_weight": -0.122158,
       "excess_vs_spy": -0.128782,
       "from": "2026-01-02",
       "max_drawdown": -0.086142,
       "sharpe": -0.315606,
       "sharpe_range": [
        -0.802985,
        0.011518
       ],
       "spy_sharpe": 0.76515,
       "spy_total_return": 0.12087,
       "to": "2026-11-11",
       "total_return": -0.007912,
       "total_return_range": [
        -0.080364,
        0.029882
       ],
       "volatility": 0.080908
      },
      "alpha_annual": -0.070344,
      "analysis": {
       "by_sector": [
        {
         "contribution": -0.001251,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": -0.050165,
         "group": "Technology",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.002013,
         "group": "no reason",
         "runs": 1
        },
        {
         "contribution": -0.051797,
         "group": "other",
         "runs": 2
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": -0.088933,
        "alpha_t": -0.964939,
        "best_trade_share": 1.0,
        "beta_growth": 0.206957,
        "beta_market": 0.190979,
        "beta_momentum": -0.087766,
        "beta_size": 0.033299,
        "buy_excess_5d": 0.005147,
        "buy_excess_5d_t": null,
        "capm_alpha_annual": -0.070344,
        "capm_alpha_t": -0.598168,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": 0.005147,
        "decision_excess_5d_t": null,
        "decision_hit_rate_5d": 0.666667,
        "decision_ic": 0.015294,
        "decision_ic_t": null,
        "decisions": 1.0,
        "exposure_return_annual": 0.047096,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": -0.014737,
        "holdings_ic_t": -0.479348,
        "long_contribution": -0.03386,
        "news_decision_share": 0.0,
        "news_entry_pnl": 0.0,
        "r2": 0.340202,
        "return_without_best_trade": -0.008148,
        "sell_avoided_5d": null,
        "sell_avoided_5d_t": null,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": -0.007912
       }
      },
      "avg_exposure": 0.13998,
      "avg_holding_days": null,
      "beta": 0.265323,
      "excess_vs_equal_weight": -0.122158,
      "excess_vs_spy": -0.128782,
      "files": [
       "llama3.2-2026-blind-s0.json",
       "llama3.2-2026-blind-s1.json",
       "llama3.2-2026-blind-s2.json"
      ],
      "max_drawdown": -0.086142,
      "n": 3,
      "round_trips": 0.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": -0.315606,
      "sharpe_range": [
       -0.802985,
       0.011518
      ],
      "steps": 44,
      "total_return": -0.007912,
      "total_return_range": [
       -0.080364,
       0.029882
      ],
      "turnover": 0.098804,
      "usage": {
       "calls": 132.0,
       "input_tokens": 1390800.0,
       "list_price_usd": 0.0,
       "output_tokens": 7436.0
      }
     },
     "cutoff": "2023-12",
     "memory": {
      "beyond_control": null,
      "beyond_control_ci95": null,
      "ci95": [
       -0.17036720399366648,
       0.08513631714574144
      ],
      "control_period": null,
      "missing_answers": {
       "blind": 0,
       "named": 0,
       "recall": 0
      },
      "p_value": 0.7461269365317341,
      "paired": "run",
      "probe": "riskaware.research.memory.memory_probe: 100 named/blind pairs and 50 recall questions per period, seed 0, temperature 0, with the model's cutoff; score = AUC gap named minus blind on the points before the cutoff",
      "recall_ci95": [
       -0.30084930201742666,
       0.27386066618393234
      ],
      "recall_direction_accuracy": 0.46,
      "recall_majority_baseline": 0.56,
      "recall_score": 0.005496005867545086,
      "recall_verdict": "no sign",
      "recall_windows": 50,
      "score": -0.04947916666666674,
      "scored_points": "after",
      "verdict": "clean",
      "why": "every point starts after the training cutoff, so the model cannot have read how it ended"
     },
     "model": "llama3.2",
     "named": {
      "after_cutoff": {
       "days": 216,
       "equal_weight_sharpe": 0.848303,
       "equal_weight_total_return": 0.114246,
       "excess_vs_equal_weight": -0.041527,
       "excess_vs_spy": -0.048151,
       "from": "2026-01-02",
       "max_drawdown": -0.062236,
       "sharpe": 0.560731,
       "sharpe_range": [
        0.284338,
        1.069882
       ],
       "spy_sharpe": 0.76515,
       "spy_total_return": 0.12087,
       "to": "2026-11-11",
       "total_return": 0.072719,
       "total_return_range": [
        0.049143,
        0.105992
       ],
       "volatility": 0.100575
      },
      "alpha_annual": 0.019453,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.067106,
         "group": "Technology",
         "runs": 3
        },
        {
         "contribution": -0.010441,
         "group": "Financials",
         "runs": 2
        },
        {
         "contribution": -0.011226,
         "group": "Consumer Discretionary",
         "runs": 2
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.070026,
         "group": "other",
         "runs": 3
        },
        {
         "contribution": -0.026047,
         "group": "no reason",
         "runs": 2
        }
       ],
       "findings": null,
       "runs": 3,
       "summary": {
        "alpha_annual": 0.015481,
        "alpha_t": 0.189495,
        "best_trade_share": 1.54129,
        "beta_growth": -0.192278,
        "beta_market": 0.394895,
        "beta_momentum": -0.000147,
        "beta_size": -0.055073,
        "buy_excess_5d": -0.025023,
        "buy_excess_5d_t": -1.084856,
        "capm_alpha_annual": 0.019453,
        "capm_alpha_t": 0.25041,
        "concentrated": true,
        "cover_excess_5d": null,
        "cover_excess_5d_t": null,
        "decision_excess_5d": -0.011496,
        "decision_excess_5d_t": -0.65487,
        "decision_hit_rate_5d": 0.443723,
        "decision_ic": -0.065946,
        "decision_ic_t": -0.816845,
        "decisions": 6.666667,
        "exposure_return_annual": 0.03596,
        "fees_contribution": 0.0,
        "forced_fills": 0.0,
        "holdings_ic": 0.006944,
        "holdings_ic_t": 0.386163,
        "long_contribution": 0.052661,
        "news_decision_share": 0.214286,
        "news_entry_pnl": 0.0,
        "r2": 0.225861,
        "return_without_best_trade": 0.003162,
        "sell_avoided_5d": -0.000377,
        "sell_avoided_5d_t": 3.712462,
        "short_avoided_5d": null,
        "short_avoided_5d_t": null,
        "short_contribution": 0.0,
        "spy_return": 0.12087,
        "total_return": 0.072719
       }
      },
      "avg_exposure": 0.356629,
      "avg_holding_days": 137.139895,
      "beta": 0.297719,
      "excess_vs_equal_weight": -0.041527,
      "excess_vs_spy": -0.048151,
      "files": [
       "llama3.2-2026-named-s0.json",
       "llama3.2-2026-named-s1.json",
       "llama3.2-2026-named-s2.json"
      ],
      "max_drawdown": -0.062236,
      "n": 3,
      "round_trips": 2.333333,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0,
       1,
       2
      ],
      "sharpe": 0.560731,
      "sharpe_range": [
       0.284338,
       1.069882
      ],
      "steps": 44,
      "total_return": 0.072719,
      "total_return_range": [
       0.049143,
       0.105992
      ],
      "turnover": 0.592731,
      "usage": {
       "calls": 132.0,
       "input_tokens": 1385878.0,
       "list_price_usd": 0.0,
       "output_tokens": 11692.0
      }
     },
     "named_minus_blind": 0.080631,
     "named_minus_blind_after_cutoff": 0.080631,
     "open_weights": true,
     "provider": "Meta",
     "slug": "llama3.2",
     "status": "clean"
    },
    {
     "blind": {
      "after_cutoff": {
       "days": 94,
       "equal_weight_sharpe": 1.014392,
       "equal_weight_total_return": 0.057091,
       "excess_vs_equal_weight": -0.063181,
       "excess_vs_spy": -0.026078,
       "from": "2026-06-30",
       "max_drawdown": -0.030665,
       "sharpe": -0.994655,
       "sharpe_range": null,
       "spy_sharpe": 0.188135,
       "spy_total_return": 0.019988,
       "to": "2026-11-11",
       "total_return": -0.00609,
       "total_return_range": null,
       "volatility": 0.051981
      },
      "alpha_annual": -0.033815,
      "analysis": {
       "by_sector": [
        {
         "contribution": 0.031674,
         "group": "Financials",
         "runs": 1
        },
        {
         "contribution": 0.021134,
         "group": "Industrials",
         "runs": 1
        },
        {
         "contribution": -0.00456,
         "group": "Health Care",
         "runs": 1
        },
        {
         "contribution": -0.006292,
         "group": "Communication Services",
         "runs": 1
        },
        {
         "contribution": -0.039111,
         "group": "Technology",
         "runs": 1
        }
       ],
       "by_trigger": [
        {
         "contribution": 0.020345,
         "group": "news",
         "runs": 1
        },
        {
         "contribution": -0.017502,
         "group": "other",
         "runs": 1
        }
       ],
       "findings": [
        "Buys: over the five trading days from the fill, the stocks it bought trailed SPY by 0.30% on average (33 buys, 52% of them ahead of SPY; t = -0.2, within noise).",
        "Sells: over the five trading days from the fill, the stocks it sold beat SPY by 1.96%, so selling gave that up (33 sells; t = -1.8, within noise).",
        "Decision IC: on the 30 days it traded, what it bought ranked against what it sold and left alone by a mean rank IC of -0.036 with the next five days' returns (IC IR -0.20, t = -1.1, within noise).",
        "Holdings IC: the weights it held after each of 39 decision days had a mean rank IC of -0.007 with the next five days' returns (t = -0.4, within noise).",
        "Factor exposures: market 0.23 (t 5.3), size 0.14 (t 3.5), growth 0.04 (t 0.5), momentum 0.01 (t 0.6); together they explain 29% of the daily variation (R²).",
        "Of the -0.5% a year it earned over T-bills (arithmetic mean): market +2.5%, size +0.5%, momentum -0.3%, growth +0.1%; the alpha left is -3.2% a year (t = -0.5, within noise).",
        "Verdict: the exposures account for +2.7% a year of it, and the -3.2% a year left over is not significant: one period of daily returns cannot tell it from luck.",
        "P&L: +$2,482 in all, +$284 from 23 positions and +$2,197 of interest on idle cash.",
        "By holding period: 61+ days made the most (+$6,879, 4 positions); 6-10 days the least (-$5,914, 5 positions).",
        "By sector: Financials made the most (+$3,167, 1 position); Technology the least (-$3,911, 13 positions).",
        "By stock: AMD made the most (+$3,839, 2 positions); QCOM the least (-$3,413, 2 positions).",
        "By market regime of the previous close: risk-on 96 days +1.8% (SPY +2.0%); neutral 18 days -1.5% (SPY +4.5%); uncertain 97 days +1.7% (SPY +4.8%); risk-off 6 days +0.4% (SPY +0.3%).",
        "News: 15 positions opened on news made +$2,035, the other 8 -$1,750; 6 positions closed on news made -$2,429; over the five days from the fill, news-triggered buys trailed SPY by 0.99% (t -0.7).",
        "Concentration: the profit rests on the best two positions, which made 2721% of the positions' net P&L and 66% of all their gains; the best was AMD bought 2026-04-23 and sold 2026-05-29, +$4,572. Had the best position made nothing, the run would have returned -2.1% instead of +2.5%."
       ],
       "runs": 1,
       "summary": {
        "alpha_annual": -0.03171,
        "alpha_t": -0.492925,
        "best_trade_share": 16.075251,
        "beta_growth": 0.040444,
        "beta_market": 0.232713,
        "beta_momentum": 0.014859,
        "beta_size": 0.138652,
        "buy_excess_5d": -0.002977,
        "buy_excess_5d_t": -0.249545,
        "capm_alpha_annual": -0.033815,
        "capm_alpha_t": -0.519571,
        "concentrated": true,
        "decision_excess_5d": -0.011278,
        "decision_excess_5d_t": -1.394412,
        "decision_hit_rate_5d": 0.424242,
        "decision_ic": -0.03604,
        "decision_ic_t": -1.092237,
        "decisions": 66.0,
        "exposure_return_annual": 0.027135,
        "holdings_ic": -0.007222,
        "holdings_ic_t": -0.384303,
        "news_decision_share": 0.432836,
        "news_entry_pnl": 2034.538739,
        "r2": 0.289337,
        "return_without_best_trade": -0.020897,
        "sell_avoided_5d": -0.019579,
        "sell_avoided_5d_t": -1.844518,
        "spy_return": 0.12087,
        "total_return": 0.02437
       }
      },
      "avg_exposure": 0.306503,
      "avg_holding_days": 22.552645,
      "beta": 0.27214,
      "excess_vs_equal_weight": -0.089876,
      "excess_vs_spy": -0.0965,
      "files": [
       "claude-haiku-5.5-2026-blind-s0.json"
      ],
      "max_drawdown": -0.056366,
      "n": 1,
      "round_trips": 34.0,
      "run_dates": [
       "2026-11-14"
      ],
      "seeds": [
       0
      ],
      "sharpe": -0.059767,
      "sharpe_range": null,
      "steps": 44,
      "total_return": 0.02437,
      "total_return_range": null,
      "turnover": 2.409155,
      "usage": {
       "calls": 44.0,
       "input_tokens": 694182.0,
       "list_price_usd": 0.0754,
       "output_tokens": 12036.0
      }
     },
     "cutoff": "2026-06",
     "memory": null,
     "model": "claude-haiku-5.5",
     "open_weights": false,
     "provider": "Anthropic",
     "slug": "claude-haiku-5.5",
     "status": "partly"
    }
   ],
   "may_remember": [],
   "title": "2026 to date: a rising market with a spring sell-off",
   "window": {
    "end": "2026-11-11",
    "start": "2026-01-02"
   }
  }
 },
 "seeds": [
  0,
  1,
  2
 ],
 "settings": {
  "cash": 100000.0,
  "commission_per_share": 0.0,
  "costs": "realistic",
  "decide_every": 5,
  "execution": "plain",
  "max_news": 3,
  "max_positions": 10,
  "mode": "long_only",
  "news": true,
  "position_size": null,
  "slippage_bps": 5.0,
  "universe": "megacap"
 }
}
