Target reached: 561 completed trades.
The target was at least 465 executions combined. This run processed 30,873 chronological signals across nine independent accounts and executed 561 trades. Skipped signals are excluded. The gates remain 55% / 60% / 70% for 1× / 2× / 3×.
First: how confidence is measured now
Confidence now estimates the probability that the model gets the next price direction right. Timestral’s median chooses long or short. Its 21 quantiles give a raw probability of price moving in that direction, using the CDF at the current close. The CDF is linearly interpolated between quantiles, with endpoint values of 1% and 99% outside their range. Profit after fees is measured separately and is not promised by a high directional confidence.
For each decision, take the preceding 300 forecast origins whose outcomes exit strictly before the current entry. Put their raw direction probabilities into ten fixed bins: 0–10%, 10–20%, and so on. Count prior correct directions W and observations N in the current raw-score bin. The smoothed estimate is (W + 1) / (N + 2), a Beta(1,1) posterior mean.
A bin needs at least 20 observations. Otherwise it uses the whole past window; if that also has fewer than 20, confidence is 50% and the trade skips. Flat realized price changes count as incorrect. Leverage does not change the price-direction event, so all levels use this same directional probability. Select the highest level meeting its own fixed gate.
This replaces the old frozen, input-range-clamped pooled sigmoid. The new counts update using completed past observations. Estimates come from that changing past window, and no future price or current test outcome enters calibration. The original one-trade run is preserved. The event definition changed from positive net profit to correct forecast direction. This is a distinct strategy, not a reproduction of the original profit-gated experiment. Each row also retains a separate estimated net-profit probability at 1×, 2× and 3×.
This is a newly specified custom estimator, not an official Mistral confidence function. A 60% estimate is an estimated direction probability, not 60% statistical certainty or a promise of profit. Its observed calibration is measured below.
Actual simulated account results
Each account starts with 100,000: INR for Reliance and USD for SPY and EUR/USD. 1 accounts gain, 5 lose and 3 stay unchanged. The results below include costs; different currencies are not added together.
A case with zero executions stays in cash. Its 0% account return does not demonstrate a profitable forecasting strategy; forecast errors are still assessed for its skipped signals below.
Assessment: 6 cases execute trades. Confidence-based leverage improves the return versus the same executions at 1× in 1 cases and worsens it in 2. The model beats a no-change forecast on return MAE in 1 of nine cases. Directional confidence alone therefore needs to be judged alongside move size, costs and the actual net account results.
| Instrument | Bars | Trades | Skips | 1× / 2× / 3× | Net return | Ending balance | Max drawdown |
|---|---|---|---|---|---|---|---|
| Reliance | Minute | 8 | 3576 | 8 / 0 / 0 | -1.52% | 98,484.70 INR | -1.52% |
| Reliance | Hourly | 0 | 2866 | 0 / 0 / 0 | 0.00% | 100,000.00 INR | 0.00% |
| Reliance | Daily | 9 | 3575 | 8 / 1 / 0 | -21.85% | 78,149.73 INR | -21.85% |
| SPY | Minute | 256 | 3328 | 251 / 5 / 0 | -22.14% | 77,858.92 USD | -22.14% |
| SPY | Hourly | 107 | 2812 | 107 / 0 / 0 | -11.52% | 88,477.65 USD | -11.77% |
| SPY | Daily | 11 | 3573 | 11 / 0 / 0 | -2.18% | 97,820.08 USD | -2.97% |
| EUR/USD | Minute | 0 | 3584 | 0 / 0 / 0 | 0.00% | 100,000.00 USD | 0.00% |
| EUR/USD | Hourly | 0 | 3584 | 0 / 0 / 0 | 0.00% | 100,000.00 USD | 0.00% |
| EUR/USD | Daily | 170 | 3414 | 152 / 18 / 0 | 7.08% | 107,077.69 USD | -7.72% |
Leverage, cost effects and a passive reference
| Instrument | Bars | Same executions at 1× | Confidence-sized, net | Same leverage, no costs | Buy-and-hold, net | Fees paid | Financing + borrow |
|---|---|---|---|---|---|---|---|
| Reliance | Minute | -1.52% | -1.52% | 0.07% | -5.98% | 1,587.71 INR | 0.03 INR |
| Reliance | Hourly | 0.00% | 0.00% | 0.00% | -1.89% | 0.00 INR | 0.00 INR |
| Reliance | Daily | -17.95% | -21.85% | -20.16% | 1853.12% | 1,828.38 INR | 82.27 INR |
| SPY | Minute | -21.69% | -22.14% | 1.08% | 1.29% | 23,106.35 USD | 0.71 USD |
| SPY | Hourly | -11.52% | -11.52% | -1.51% | 26.00% | 10,132.71 USD | 14.59 USD |
| SPY | Daily | -2.18% | -2.18% | -1.07% | 133.00% | 1,086.40 USD | 24.46 USD |
| EUR/USD | Minute | 0.00% | 0.00% | 0.00% | -0.92% | 0.00 USD | 0.00 USD |
| EUR/USD | Hourly | 0.00% | 0.00% | 0.00% | 10.48% | 0.00 USD | 0.00 USD |
| EUR/USD | Daily | 3.38% | 7.08% | 16.72% | -9.31% | 8,209.86 USD | 1,202.97 USD |
The 1× and cost-free counterfactuals execute exactly the same selected signals. They compound independently. Removing costs is a diagnostic, not an alternative net result. The separate buy-and-hold reference stays long at 1× from the first evaluated entry to the last exit, charging one entry and exit, with the same adjusted prices and fee assumption.
Data quality and dependence on individual winners
Post hoc quote review flags daily FX moves above 5% and daily equity moves above 50% in absolute value. This flags 12 intervals, including Reliance's quoted +337% jump and subsequent −77% reversal in July 2005. These rules are diagnostic review flags, not trading filters. The primary 561-trade run retains every original input. Untraded anomalous bars can still affect later model contexts and calibration windows.
| Instrument | Entry | Exit | Entry quote | Exit quote | Quoted move | Executed | Review threshold |
|---|---|---|---|---|---|---|---|
| Reliance | 2005-07-27 00:00:00+00:00 | 2005-07-28 00:00:00+00:00 | 42.766254 | 187.092712 | 337.48% | False | 50.00% |
| Reliance | 2005-07-28 00:00:00+00:00 | 2005-07-29 00:00:00+00:00 | 187.092712 | 43.041630 | -76.99% | False | 50.00% |
| EUR/USD | 2008-01-07 00:00:00+00:00 | 2008-01-08 00:00:00+00:00 | 1.468299 | 1.557099 | 6.05% | False | 5.00% |
| EUR/USD | 2008-01-08 00:00:00+00:00 | 2008-01-09 00:00:00+00:00 | 1.557099 | 1.466405 | -5.82% | False | 5.00% |
| EUR/USD | 2008-02-07 00:00:00+00:00 | 2008-02-08 00:00:00+00:00 | 1.447890 | 1.557099 | 7.54% | False | 5.00% |
| EUR/USD | 2008-02-08 00:00:00+00:00 | 2008-02-11 00:00:00+00:00 | 1.557099 | 1.450200 | -6.87% | False | 5.00% |
| EUR/USD | 2008-09-05 00:00:00+00:00 | 2008-09-08 00:00:00+00:00 | 1.427491 | 1.505004 | 5.43% | False | 5.00% |
| EUR/USD | 2008-09-08 00:00:00+00:00 | 2008-09-09 00:00:00+00:00 | 1.505004 | 1.414847 | -5.99% | True | 5.00% |
| EUR/USD | 2008-10-07 00:00:00+00:00 | 2008-10-08 00:00:00+00:00 | 1.358806 | 1.495707 | 10.08% | False | 5.00% |
| EUR/USD | 2008-10-08 00:00:00+00:00 | 2008-10-09 00:00:00+00:00 | 1.495707 | 1.359804 | -9.09% | False | 5.00% |
| EUR/USD | 2008-12-05 00:00:00+00:00 | 2008-12-08 00:00:00+00:00 | 1.271698 | 1.491803 | 17.31% | False | 5.00% |
| EUR/USD | 2008-12-08 00:00:00+00:00 | 2008-12-09 00:00:00+00:00 | 1.491803 | 1.292608 | -13.35% | False | 5.00% |
Independent reference check
| Date | ECB USD per EUR | Yahoo daily close | Relative difference |
|---|---|---|---|
| 2008-09-05 | 1.4247 | 1.427491 | 0.20% |
| 2008-09-08 | 1.4214 | 1.505004 | 5.88% |
| 2008-09-09 | 1.4144 | 1.414847 | 0.03% |
| 2008-09-10 | 1.4094 | 1.398406 | -0.78% |
ECB reference fixings and Yahoo daily closes have different observation times, so exact agreement is not expected. The 2008-09-08 discrepancy is approximately 5.9%: Yahoo reports 1.5050 while the ECB reference rate is 1.4214 USD per EUR. That Yahoo entry quote drives the largest winning trade, a 2× short exiting at 1.41485 on 2008-09-09. This is an unresolved source-data concern, not a validated trading gain. The original Yahoo inputs remain unchanged.
ECB primary data · saved reference response · comparison provenance
| Instrument | Bars | Trades | Net return | Largest winning trade | Winner entry | Winner exit | Return excluding that winner |
|---|---|---|---|---|---|---|---|
| Reliance | Minute | 8 | -1.52% | — | NaN | NaN | — |
| Reliance | Hourly | 0 | 0.00% | — | NaN | NaN | — |
| Reliance | Daily | 9 | -21.85% | 3.08% | 1999-10-28 00:00:00+00:00 | 1999-10-29 00:00:00+00:00 | -24.18% |
| SPY | Minute | 256 | -22.14% | 0.04% | 2026-09-25 16:33:00+00:00 | 2026-09-25 16:34:00+00:00 | -22.17% |
| SPY | Hourly | 107 | -11.52% | 1.82% | 2026-03-20 19:30:00+00:00 | 2026-03-23 13:30:00+00:00 | -13.11% |
| SPY | Daily | 11 | -2.18% | 1.32% | 1996-09-05 00:00:00+00:00 | 1996-09-06 00:00:00+00:00 | -3.45% |
| EUR/USD | Minute | 0 | 0.00% | — | NaN | NaN | — |
| EUR/USD | Hourly | 0 | 0.00% | — | NaN | NaN | — |
| EUR/USD | Daily | 170 | 7.08% | 11.86% | 2008-09-08 00:00:00+00:00 | 2008-09-09 00:00:00+00:00 | -4.28% |
The winner-exclusion calculation is a post hoc fragility diagnostic. It removes one executed round trip and compounds the other recorded returns with their original signals and exposures. It is neither an executable selection rule nor a backtest on repaired data. Proper repair would require validating the quotes and rerunning all affected model contexts and causal calibration.
Does directional confidence match later outcomes?
| Instrument | Bars | Trades | Mean estimated direction probability | Observed direction accuracy | Observed net win rate | Raw direction Brier | Calibrated direction Brier |
|---|---|---|---|---|---|---|---|
| Reliance | Minute | 8 | 56.43% | 50.00% | 0.00% | 0.254364 | 0.248106 |
| Reliance | Hourly | 0 | — | — | — | 0.251472 | 0.251194 |
| Reliance | Daily | 9 | 57.17% | 22.22% | 22.22% | 0.252817 | 0.250877 |
| SPY | Minute | 256 | 56.61% | 51.17% | 1.17% | 0.251660 | 0.250381 |
| SPY | Hourly | 107 | 56.19% | 48.60% | 30.84% | 0.252418 | 0.251362 |
| SPY | Daily | 11 | 55.19% | 45.45% | 36.36% | 0.252279 | 0.250825 |
| EUR/USD | Minute | 0 | — | — | — | 0.305962 | 0.193812 |
| EUR/USD | Hourly | 0 | — | — | — | 0.252706 | 0.250346 |
| EUR/USD | Daily | 170 | 57.08% | 55.88% | 47.06% | 0.250722 | 0.250743 |
Brier scores use every model forecast in each evaluated span, including skipped trades. Lower Brier is better. Always estimating a 50% probability gives a Brier score of 0.25. Directional accuracy and after-cost win rate answer different questions; the latter can be much lower when fees exceed a small correct move.
Calibration can still be inaccurate on later data. Neither a high recent win frequency nor a high trade count establishes profitable forecasting. The observed net win rates, losses and drawdowns above are the assessment.
Forecast error against a no-change prediction
| Instrument | Bars | Return MAE | Return RMSE | No-change return MAE | MAE improvement over no-change |
|---|---|---|---|---|---|
| Reliance | Minute | 0.04% | 0.06% | 0.04% | -0.91% |
| Reliance | Hourly | 0.30% | 0.48% | 0.30% | -0.27% |
| Reliance | Daily | 1.88% | 6.30% | 1.87% | -0.69% |
| SPY | Minute | 0.02% | 0.03% | 0.02% | -0.62% |
| SPY | Hourly | 0.23% | 0.39% | 0.22% | -0.72% |
| SPY | Daily | 0.91% | 1.34% | 0.90% | -0.45% |
| EUR/USD | Minute | 0.01% | 0.01% | 0.01% | -3.85% |
| EUR/USD | Hourly | 0.08% | 0.12% | 0.08% | -0.42% |
| EUR/USD | Daily | 0.46% | 0.75% | 0.47% | 0.58% |
| Instrument | Bars | Mean quantile loss | Quantile loss improvement over no-change | 80% interval coverage | Unchanged realized prices | Direction accuracy on price changes |
|---|---|---|---|---|---|---|
| Reliance | Minute | 0.01% | 27.86% | 80.80% | 10.27% | 49.35% |
| Reliance | Hourly | 0.11% | 26.10% | 81.40% | 1.26% | 51.63% |
| Reliance | Daily | 0.67% | 28.15% | 80.80% | 2.40% | 49.37% |
| SPY | Minute | 0.01% | 28.40% | 82.59% | 1.84% | 49.97% |
| SPY | Hourly | 0.08% | 26.19% | 80.37% | 0.27% | 48.78% |
| SPY | Daily | 0.31% | 30.92% | 79.83% | 0.64% | 48.81% |
| EUR/USD | Minute | 0.00% | 21.75% | 79.21% | 54.66% | 57.72% |
| EUR/USD | Hourly | 0.03% | 27.31% | 80.89% | 6.00% | 50.43% |
| EUR/USD | Daily | 0.16% | 30.41% | 81.89% | 0.50% | 50.73% |
Errors are measured on next-bar fractional returns, avoiding deceptively high price-level R² from persistent price levels. Positive MAE improvement means lower error than predicting the next close equals the current close; a negative value means worse. The model’s 10th–90th percentile interval should cover approximately 80% of outcomes if its marginal intervals are calibrated. Mean quantile loss averages pinball loss over the 21 forecast quantiles in return units. Lower is better; its improvement compares against putting every quantile at the current close. These metrics include skipped signals. The conditional direction-accuracy column excludes unchanged realized prices only for that diagnostic; the trading policy and its calibration still count unchanged prices as directional misses.
Separate profit-gated diagnostic on the same data
| Instrument | Bars | Direction-gated trades | Profit-gated trades | Profit-gated net return |
|---|---|---|---|---|
| Reliance | Minute | 8 | 0 | 0.00% |
| Reliance | Hourly | 0 | 0 | 0.00% |
| Reliance | Daily | 9 | 33 | -12.06% |
| SPY | Minute | 256 | 0 | 0.00% |
| SPY | Hourly | 107 | 0 | 0.00% |
| SPY | Daily | 11 | 15 | -0.16% |
| EUR/USD | Minute | 0 | 0 | 0.00% |
| EUR/USD | Hourly | 0 | 0 | 0.00% |
| EUR/USD | Daily | 170 | 82 | -8.37% |
The diagnostic applies 55% / 60% / 70% to estimated positive net-profit probability instead. It has a separate account; its executions are not added to the primary 465-trade target.
Sampling and dates
| Instrument | Bars | First entry (UTC) | Last exit (UTC) |
|---|---|---|---|
| Reliance | Minute | 2026-09-23 06:54:00+00:00 | 2026-10-08 06:29:00+00:00 |
| Reliance | Hourly | 2025-02-13 06:45:00+00:00 | 2026-10-19 09:45:00+00:00 |
| Reliance | Daily | 1998-02-09 00:00:00+00:00 | 2012-03-26 00:00:00+00:00 |
| SPY | Minute | 2026-09-23 15:09:00+00:00 | 2026-10-06 16:23:00+00:00 |
| SPY | Hourly | 2025-02-18 17:30:00+00:00 | 2026-10-20 17:30:00+00:00 |
| SPY | Daily | 1995-04-04 00:00:00+00:00 | 2009-06-29 00:00:00+00:00 |
| EUR/USD | Minute | 2026-09-22 04:10:00+00:00 | 2026-09-24 15:57:00+00:00 |
| EUR/USD | Hourly | 2024-11-21 21:00:00+00:00 | 2025-06-23 21:00:00+00:00 |
| EUR/USD | Daily | 2006-01-11 00:00:00+00:00 | 2019-11-14 00:00:00+00:00 |
The cases are independent chronological backtests. Each round advances 128 candidate bars per active case. The run stops after the first complete round with at least 465 executions, so the total may exceed 465. This predetermined allocation gives every case a chance to trade; it is not a single synchronized portfolio or the first 465 trades in global calendar time.
Windows, bins, prior, minimum sample size, case order, gates and stopping rule were fixed before evaluating this run’s P&L. They were not selected by return optimization. This methodology redesign follows the already-reviewed earlier results, so it is a new retrospective sensitivity study, not a clean untouched validation set.
Model, data and assumptions
- Actual pinned official Timestral-209M checkpoint, FP32, symmetric averaging; 250 closing prices predict the next close.
- Yahoo’s expanded daily, hourly and minute snapshots. Old quote values were retained where changes were only tiny rounding differences. Forecast caches are reused only after the complete 250-value float32 context matches exactly.
- Ideal current-close to next-observed-close fills, including calendar gaps. Holding durations used for cost calculations are realized historical intervals. Same-close fills omit inference and execution latency.
- Each selected signal opens and fully closes a one-bar position. Adjacent selected signals reopen and pay another entry fee, including when the model keeps the same direction. Positions are not netted across signals.
- Per entry and exit: Reliance 10 basis points, SPY 5, FX 2. Annual financing: 8% on actual exposure above 1×; short borrow: 3%. Entry fees reduce investable exposure. Cash interest, taxes, FX carry and intrabar margin liquidation are omitted.
- Retrospective adjusted prices and possible model-pretraining overlap limit prospective conclusions. There are no live orders, duplicated trades, forced threshold passes or bootstrap copies.
For calibration background, see Guo et al., On Calibration of Modern Neural Networks. The particular rolling histogram and smoothing rules used here are specified in the protocol.
Download every result
- Every executed trade · account summary · every signal, including skips
- confidence reliability bins · configuration · data hashes
- Forecast errors and interval coverage
- Quote review flags · largest-winner sensitivity
- protocol · audit · research bundle ZIP
- Original one-trade report · Frozen-calibration assessment · Yahoo data download
Arithmetic and chronology audit passed: unique completed trades, causal calibration, unchanged gates, sample support, independently rebuilt prior calibration windows, fees, funding and account balances. Source-quote quality remains unresolved as documented above.
The ZIP includes exact input CSVs, all forecasts used for testing and calibration, research scripts and the result tables. Model weights are cached separately in the workspace.