1\section{The Multi-Resolution Patch Transformer}2\label{sec:model}34\subsection{Inputs and tokenisation}5Branch~A reads the last 390 one-minute bars ending at the origin (crossing session boundaries, with boundary and gap6flags), tokenised in patches of five bars (78 tokens). Branch~B reads the last 390 completed 5-minute buckets (about7five trading days; bucket $j$ of the current session is complete only if slot $5j+4\le m$), in patches of three8(130 tokens). Branch~C reads the last 260 completed 30-minute buckets (twenty days), in patches of two (130 tokens).9No unfinished aggregate ever enters a window. Each patch is flattened, concatenated with its fraction of present10bars and its maximal log gap, and projected through a gated linear unit \citep{dauphin2017glu} to11$d_{\text{model}}$; a learned resolution embedding, a sinusoidal position measured as the distance to the origin in12patch units, and a sinusoidal temporal-gap embedding are added. A global token projects the nine history-only13statistics. Patches without any present bar remain tokens but are masked in attention.1415\subsection{Backbone, fusion and regime conditioning}16The default backbone is a shared pre-norm Transformer encoder \citep{vaswani2017attention, ba2016layernorm} over17the concatenated token sequence (339 tokens with the global token), with GELU activations18\citep{hendrycks2016gelu} and key-padding masks. The alternative fusion keeps a small encoder per resolution and19lets the one-minute stream cross-attend to the two coarser streams before a final encoder. A regime embedding maps20the global statistics through a two-layer MLP (``stats''), through a soft codebook of eight learned regimes21(``learned''), or is disabled (``none''); it is added to the decoder queries. The core model carries no ticker22identity; a ticker embedding exists only as an ablation.2324\subsection{Direct decoder and Student-$t$ head (Stage A)}25Sixty learned future-position queries, each augmented with the known future calendar position (minute fraction,26time to close, weekday, early-close flag) and the regime embedding, pass through a two-layer Transformer decoder27that cross-attends to the encoder memory. A linear head yields three numbers per future minute, parametrised in a28scale-equivariant way:29\begin{equation}30\mu_h=\sigma_t\,a_h/10,\qquad s_h=\sigma_t\,\mathrm{softplus}(b_h+0.5413)+10^{-7},\qquad31\nu_h=2.05+\mathrm{softplus}(c_h+1.5),32\end{equation}33so that the scale starts at $\sigma_t$ and the degrees of freedom start near $3.75$ with finite variance. The loss is34the masked Student-$t$ negative log-likelihood averaged over present target minutes, computed in single precision35regardless of the device. Gaussian and quantile (pinball) heads are ablations. These are marginal predictions per36minute; the cumulative-return distribution at $H$ is obtained by Monte Carlo (256 draws) with independent minutes.3738\subsection{Dependence-aware paths (Stage B)}39With the marginals frozen, a copula head produces, from the same decoder states, factor loadings40$\Lambda\in\mathbb{R}^{H\times k}$ ($k=4$) and a positive diagonal $\psi$, defining a correlation matrix41$R=D^{-1/2}(\Lambda\Lambda\tr+\mathrm{diag}\,\psi)D^{-1/2}$ over the $H$ future minutes. Training maximises the42Gaussian-copula log-likelihood of $z_h=\Phi^{-1}(F_{t_{\nu_h}}((y_h-\mu_h)/s_h))$, with missing minutes marginalised43exactly by replacing their rows and columns of $R$ by the identity. Sampling draws $z=\Lambda\varepsilon+\psi^{1/2}\eta$,44standardises, maps through $\Phi$ and the Student-$t$ quantile function, and never needs a Cholesky factor. Joint45samples give cumulative paths, maximum drawdown, realised volatility and interval coverage, scored against46independent sampling of the same marginals.4748\subsection{Sizes and training}49Three presets are measured, not assumed: Small ($d=192$, 4 layers, 6 heads, FFN 768), the brief's specification50($d=256$, 6 layers, 8 heads, FFN 1024) and Base ($d=384$, 8 layers, 8 heads, FFN 1536), each with a two-layer decoder.51Trainable parameter counts appear in Table~\ref{tab:benchmark}. Optimisation uses AdamW52\citep{loshchilov2019adamw} with $\beta=(0.9,0.98)$, linear warm-up and cosine decay to 10\,\% of the peak rate,53gradient clipping at~1, early stopping on the validation likelihood, fixed seeds and crash-safe checkpoints with54resume. Mixed precision is not used in this version.5556\input{tables/benchmark}57