Skip to main content
GioModel
Launch Portfolio
ASTSStep 3
MODEL 1 · STEP 3

Build
the features.

Turn each completed ASTS session into a 23-feature snapshot using only stock and market history available at the end of session t.

MARKET CONTEXT · OUTSIDE MODEL FREEZEASTS

These readings update independently. They are not model inputs, deployment evidence, or a trading recommendation.

Latest price
$62.31
· fallback
20D momentum
-13.4%
Close-to-close · 20 completed sessions
RSI 14
47.2
neutral · Wilder method
Relative volume
1.0×
Versus the prior 20 completed sessions

TECHNICALS THROUGH · TIMESTAMPED FALLBACK

THE QUESTION

What could we measure at close t?

Features are facts available when the prediction is formed. For five development runs, we measure ASTS behavior, trailing empirical probabilities, and synchronized market context—without letting the future label leak backward.

INPUTmarket_v2
TRANSFORM23 trailing transforms
OUTPUTasts_features_v2
THREE FEATURE FAMILIES

Expand the hypothesis without changing the clock.

The seven-feature core remains intact. Probability-state and market-context families expand the comparison while every run keeps a common eligible sample.

01

Core · 7

Returns, volatility, volume, range, and close location preserve the original transparent baseline.

02

Probability · 7

Trailing up rates, smoothed five-session outcomes, percentiles, and tail frequencies describe recent state.

03

Market · 9

SPY trend and volatility, QQQ/IWM excess returns, breadth, and risk-on share add synchronized context.

FEATURE CONTRACTasts_features_v2
FROZEN / V2
Features23 · 3 families
Warmup80 sessions maximum
Model rows1,249 common rows
Labeled through22 Jul 2026
FEATUREWINDOWFORMULA
return_1d1 prior session

close[t] / close[t−1] − 1

return_5d5 prior sessions

close[t] / close[t−5] − 1

return_20d20 prior sessions

close[t] / close[t−20] − 1

volatility_20d20 sessions

population stdev of returns through t

volume_ratio_20d20 sessions

volume[t] / mean(volume[t−19:t])

intraday_range_pctSession t

(high[t] − low[t]) / close[t]

close_locationSession t

(close − low) / (high − low); 0.5 if zero range

up_day_share_20d20 sessions

share of positive one-session returns

up_day_share_60d60 sessions

share of positive one-session returns

p_up5_stride_60d60 sessions

Beta(2,2)-smoothed non-overlap up share

return_1d_ecdf_60d61 sessions

smoothed percentile of today’s return

abs_return_tail_60d61 sessions

smoothed absolute-return tail frequency

volatility_20d_ecdf_60d80 sessions

volatility percentile versus prior values

volume_ratio_ecdf_60d80 sessions

volume-ratio percentile versus prior values

spy_return_5d5 sessions

raw SPY close return

spy_return_20d20 sessions

raw SPY close return

qqq_excess_5d5 sessions

QQQ return minus SPY return

qqq_excess_20d20 sessions

QQQ return minus SPY return

iwm_excess_5d5 sessions

IWM return minus SPY return

iwm_excess_20d20 sessions

IWM return minus SPY return

spy_volatility_ecdf_60d80 sessions

SPY volatility percentile

market_breadth_up_20d20 sessions

mean up-day share of SPY, QQQ, IWM

risk_on_share_20d20 sessions

share QQQ and IWM both beat SPY

POST-FREEZE TECHNICAL CHALLENGER

Probability error fell, but uncertainty still crosses zero.

RESEARCH ONLY

A fixed benchmark adds 20-session momentum, Wilder RSI 14 with overbought and oversold flags, prior-20 relative volume, and price-volume confirmation. It is scored on the last 252 eligible labels without changing this model's frozen nine-gate decision.

Brier error
0.258945 → 0.256266
Lower is better
Brier gain
+0.002678
95% paired interval −0.001732 to +0.006812
0.5 hit rate
45.6% → 48.8%
Threshold accuracy alone cannot approve a model
Challenger AUC
0.451
Below the 0.50 no-skill line

Promotion rule: not passed. The Brier confidence interval includes zero and discrimination remains below 0.50, so the readings stay a live context layer while genuinely new sessions accumulate.

Open formulas and audit files
SEAL THE FUTURE

Past builds X. Future builds y.

Session t may use its completed bar. Sessions t + 1 through t + 5 stay outside the feature matrix.

t − 80Longest lookback
t − 60State history
t − 20Core history
tFeatures
t + 1…4Sealed
t + 5Label
FEATURE BLOCK / X

Only trailing information.

Returns, volatility, volume ratio, range, and close location are joined by trailing probability-state and ETF context features; all are finalized by the decision boundary at session t.

LABEL BLOCK / Y

Kept physically separate.

Forward return and direction_5d are diagnostics for supervised learning. They are never passed to the classifier as features.

STEP 3 LEAKAGE GATE

Ten checks before training.

A high score cannot rescue a feature matrix that already knows the answer.

  1. 01

    Every one of the 23 feature windows ends by the completed close at session t.

  2. 02

    All five runs use the same 1,254-row common eligibility intersection.

  3. 03

    The longest probability and market transforms receive an 80-session warmup.

  4. 04

    The final five sessions stay feature-ready but unlabeled.

  5. 05

    Trailing five-session outcome frequencies only use outcomes already realized by t.

  6. 06

    SPY, QQQ, and IWM inputs join on the same ASTS session date.

  7. 07

    Forward return and direction_5d remain in the label block, never the feature block.

  8. 08

    Missing inputs make a row ineligible; they are not silently forward-filled.

  9. 09

    Scaling, calibration, and model selection are deferred to Step 4 folds.

  10. 10

    Trading-session offsets follow the exchange calendar, not calendar days.

FIELD NOTE

Do not standardize or choose among feature families on the full dataset. Step 4 fits preprocessing, tuning, calibration, and selection inside the training chronology.

STEP 3 OUTPUTasts_features_v2

Twenty-three features, a common 1,254-row eligibility window, five unlabeled tail rows, and 1,249 model-ready examples.

SOURCE NOTES

The feature workbook inherits the four-asset frozen Step 2 market dataset. Raw daily bars and their source fingerprints remain documented there.

NEXTStep 4 · Train through time

Walk-forward validation comes next.