Energy markets · Working paper 01
Zimmer TradingBuilding a Research Process for Energy Markets
An independent effort to understand energy markets, test systematic trading ideas, and establish what the evidence actually supports.
Abstract
Zimmer Trading is an independent research and software project investigating whether energy-market information can support repeatable trading decisions after costs. The initial prototype combines market prices, energy fundamentals, weather observations, historical simulations, and an Alpaca paper-trading connection. The current priority is to strengthen the reliability of that research process while developing a focused ERCOT forecasting study. This paper specifies the economic questions, observation schema, accounting conventions, evaluation metrics, proposed experiment protocols, and operational acceptance criteria guiding the project. It distinguishes implemented components from proposed work and explains the failure cases that could invalidate an apparent result. A profitable trading edge has not yet been demonstrated.
1. The question behind Zimmer
I started Zimmer Trading to bring together software engineering, financial research, and a growing interest in energy markets. My long-term aim is to develop systems that can identify and act on a durable trading advantage. Getting there requires learning how the underlying markets work and building a process capable of rejecting my own ideas.
The central question is specific: can information about energy supply, demand, weather, and market expectations improve a decision made before the outcome is known? A pattern found afterward is a starting point for investigation. To become a trading strategy, it must survive realistic timing, transaction costs, alternative explanations, and new observations.
Zimmer is being built around explicit rules. A strategy should state what information it uses, when it decides, how much exposure it takes, and when it exits. This makes the decision reproducible and gives each result a traceable explanation. Automation is useful because it can apply those rules consistently; profitability remains something the research must establish.
What this paper does and does not establish
This is a technical design paper and research agenda, not a new empirical study. It synthesizes the initial project review and specifies how subsequent experiments should be conducted. It does not present independently reproduced performance estimates, a completed forecasting model, or an audited live trading record. That boundary matters because evidence that software can ingest data or submit an order supports a narrower claim than evidence that a strategy can earn a positive expected return.
Three categories of evidence will be kept distinct. Engineering evidence concerns deterministic calculations, correct timestamps, and reliable operations. Forecasting evidence concerns performance on observations that were unavailable during development. Trading evidence concerns the return generated by a feasible decision after costs and risk. A project can make substantial progress in the first category while remaining unproven in the other two.
The intended contribution is a transparent path through those categories. An unsuccessful forecast or rejected strategy can still improve the project if its assumptions, limitations, and failure are recorded accurately. This makes the work useful for developing market expertise as well as for deciding whether any particular algorithm deserves further capital or development time.
2. From energy conditions to returns
Energy is a useful place to develop this discipline because it connects financial prices to measurable physical conditions. Electricity demand, available generation, fuel inventories, and weather provide concrete subjects for research. Public sources make part of that work accessible: EIA distributes energy time series through its API, and ERCOT publishes day-ahead and real-time prices, including historical hub and load-zone series. [1] [2]
However, three separate questions sit between an observation and a profitable equity trade. Can we forecast an energy condition? Does that condition change a particular company's expected cash flows? Has the stock price already incorporated the information? A correct answer to the first question does not settle the other two.
For example, a tighter electricity market might appear to favor a power producer. The research still needs to examine its hedges, retail obligations, generation availability, geographic exposure, and the horizon over which earnings could change. Buying an energy stock on a grid-stress signal without investigating those connections would leave the core thesis untested.
This distinction defines the project's initial scope. Retail equities and ETFs provide a practical environment for studying execution. ERCOT data supports a separate investigation of electricity-market behavior. Success in the forecasting study would be evidence of modeling skill; translating it into an accessible, profitable trade would require another test.
An economic mechanism must precede a trading claim
A useful hypothesis describes why a relationship could persist despite competition. Possible explanations to investigate include forecast revisions, constraints on how participants respond, or compensation for bearing an unwanted risk. These are candidate mechanisms, not established advantages available to Zimmer. Public data alone does not create exclusivity, and a simple relationship may already be incorporated into prices before our system receives the observation.
For each hypothesis, the research record will specify the affected market, the relevant participants, the predicted direction, the expected response horizon, and the conditions under which the relationship should weaken. This is a stronger starting point than scanning every variable against every future return and constructing an explanation for the most attractive result afterward.
A load surprise offers a concrete example. Higher demand than forecast might be associated with higher real-time prices under some supply conditions. The same demand error can have a different price effect when more flexible supply is available or constraints differ. The hypothesis is therefore conditional. The research must also distinguish a surprise relative to our forecast from a surprise relative to the information already reflected in the market.
Market design is part of the model
ERCOT announced the launch of Real-Time Co-optimization Plus Batteries on December 5, 2025, changing how energy and ancillary services are coordinated in real time. A model spanning that change should not assume the mapping between an old scarcity indicator and prices remained constant. [3] The proposed response is to label observations by market-design regime, examine performance separately, and decide before evaluation whether older data are suitable for estimating the current relationship.
Regime analysis is not permission to discard inconvenient history after seeing a loss. Any exclusion needs an economic and data-definition justification. Similarly, a changing generation fleet, fuel environment, or demand profile may reduce the relevance of older observations without making newer observations automatically representative. The evidence must show how conclusions depend on the chosen period.
3. A record of what was knowable
The prototype organizes data from Alpaca, EIA, ERCOT, and NOAA around a common research layer. Python handles ingestion and analysis, DuckDB stores observations, and exports make the assembled data available for inspection. NOAA's heating and cooling degree days summarize temperature conditions relative to a base temperature and provide one way to study weather-related demand. [4]
The most important design requirement is time. An observation has a period it describes, a time the source released it, and a time our system received it. These can differ materially. A weekly storage figure cannot enter an earlier trading decision merely because its measurement period ended before its publication.
Revisions require the same care. The intended store preserves successive versions so a simulation can reconstruct what was available at a particular decision time. For a replay of our actual system, the ingestion timestamp also matters: information we had not yet received could not have driven our order. Retrospectively downloaded history must be marked separately wherever original publication or revision history is unavailable.
The initial review found that having a versioned store did not guarantee that every downstream calculation used it correctly. A panel or backtest that reads the latest value and assigns it to the measurement date can reintroduce future information. Correctness must hold through the full path from source observation to feature to signal.
Coverage must also be described honestly. Thousands of rows spread across unrelated feeds do not establish years of usable history for a specific energy hypothesis. Each experiment needs its own coverage report: dates, missing values, available versions, and the number of independent decision periods. Missing load observations must remain missing rather than silently becoming zero demand.
The proposed observation contract
Each stored observation should carry enough information to recover its meaning without depending on a spreadsheet's column position. At minimum, that means a source, series identifier, location or instrument, value, unit, interval start and end, publication time when known, ingestion time, revision identifier, and quality flags. An immutable copy or hash of the raw response should connect the normalized record to the source material used to construct it.
| Distinction | Why it changes the experiment |
|---|---|
| MW and MWh | MW measures power; MWh measures energy over an interval. A constant 100 MW for one quarter-hour corresponds to 25 MWh. |
| $/MWh and dollars | A price spread becomes a dollar payoff only after applying an energy quantity and the applicable settlement rules. |
| Observation and forecast | Realized weather or load cannot stand in for a forecast that was available before delivery. |
| Publication and retrieval | A report may have been public before our collector received it. Market-information research and replay of our actual system use different cutoffs. |
| Missing and zero | A missing observation conveys lack of knowledge; zero is a substantive measured value. |
Consider an illustrative report describing a Friday measurement, released the following Thursday at 10:30, revised at 11:15, and received by our collector two minutes after each release. A replay of our system at 10:31 cannot use either received value. At 10:45 it can use the first version. At 11:20 it can use the revision. Assigning both versions to Friday or overwriting the first version would produce a materially different information set. These times are illustrative, not a claim about a particular archived release.
Time zones, intervals, and missing history
Storage will use timezone-aware timestamps, with UTC as a common representation and the original local-market convention preserved. A delivery date and hour label alone may be ambiguous around daylight-saving transitions. Repeated hours must remain distinct, absent hours must not be invented, and hour-ending labels must be interpreted according to their source. The daily equity calendar and the electricity delivery calendar also differ; merging them by an unqualified date string is insufficient.
A research join must request the latest eligible observation at the decision cutoff and enforce a freshness limit appropriate to that series. A weekly storage report can remain the latest release for several days. A grid measurement intended to describe present conditions cannot be carried forward indefinitely. An ordinary forward-fill operation must therefore never silently replace an explicit freshness policy.
Historical downloads have a separate limitation: knowing today's final value does not establish its original publication timestamp or earlier versions. Where original releases can be recovered, they can support a historical information set. Otherwise the experiment must disclose approximations, test sensitivity to conservative delays, or exclude the feature from claims requiring exact historical availability. This is also why archiving current releases is useful even when historical final observations exist elsewhere.
Reproducibility and quality checks
A run should record the code version, source snapshot identifiers, transformation settings, decision calendar, and data-quality summary. Checks should reject duplicate keys, contradictory units, impossible time ordering, and unexpectedly incomplete series. Domain checks should be specific: an apparent extreme price may be real, so a statistical outlier rule must not automatically delete the very events an energy model is intended to study.
Features that use normalization, imputation, or estimated seasonal relationships must fit those transformations on training data only. The fitted parameters then travel with the model into evaluation. Filling a missing historical feature using a whole-sample average would make the transformation depend on future observations even if the trading signal itself never directly accessed them.
4. Testing without fooling ourselves
The first job of a backtest is to represent a decision faithfully. A signal computed from a completed closing price needs an executable later fill. Strategy and benchmark results need the same evaluation dates, consistent treatment of idle capital, and explicit assumptions for dividends, spreads, slippage, and other relevant costs.
Early review of Zimmer exposed why these details matter. One comparison gave buy-and-hold a different invested window from the strategy. Another research scan admitted raw price levels and produced apparently significant relationships that did not survive a more appropriate specification. These are lessons about measurement, not evidence of a discovered edge. Preliminary performance figures are therefore not presented here as an investment track record.
Research begins with a written hypothesis, an economic explanation, a benchmark, and a limited set of planned variations. The benchmark follows the objective. A strategy intended to improve return should be judged accordingly; one intended to reduce drawdown must define that goal before its results are known. Moving the objective after a disappointing result makes the experiment difficult to falsify.
Training and evaluation proceed in time order. Where training labels extend into a test period, overlapping observations must be removed. Any purge or embargo should follow the actual information and label intervals, rather than being a decorative fixed setting. A genuinely untouched final period is valuable only if repeated redesigns have not indirectly used its results.
Trying many variants makes an impressive historical winner easier to find by chance. Zimmer's experiment registry is intended to preserve unsuccessful trials as well as successful ones. The Deflated Sharpe Ratio provides one framework for accounting for selection and non-normal returns, although it cannot repair invalid data or a poorly defined experiment. [5]
Calibration tests are part of this process. Synthetic data and deliberately leaked signals can expose failures in timing and cost accounting. Random-signal tests must specify their expected exposure: random long-only positions in a rising market can earn positive returns without any predictive skill. Passing such checks increases confidence in particular behaviors; it does not certify the entire research system.
Define the return before calculating performance
The primary accounting record should be cash, holdings, fills, and corporate actions. At a valuation time, account equity is cash plus the marked value of positions. Deposits and withdrawals must be distinguished from investment gains. For a period with no external cash flow, the net account return is the ending equity divided by starting equity, less one. With external flows, subperiod accounting is required so contributed capital is not reported as trading performance.
For intuition, a simplified one-period model is:
Net return = beginning risky-asset weight × asset total return + beginning cash weight × cash return − transaction cost.
This expression assumes the weights are fixed over the measurement interval apart from return-driven drift and that trade timing is represented consistently. It is not sufficient for an intraperiod strategy without finer accounting. In particular, shifting a close-based signal by one row does not justify giving a newly opened position the overnight return that occurred before its fill.
The cost convention will be stated in traded notional terms. If a portfolio buys securities worth 30% of equity and the assumed one-way all-in cost is 5 basis points, the modeled portfolio cost is 0.30 × 0.0005 = 0.00015, or 1.5 basis points of equity. Selling that exposure later incurs another charge under the same assumption. These are illustrative inputs, not measured execution costs. Reports must not mix one-way traded-notional turnover with a definition that halves purchases plus sales.
When modeled fill prices already include spread and slippage, those components must not also be subtracted as a separate fee. The same care applies to distributions: a total-return series already incorporates them, so a separate dividend credit would double count. Signal construction, execution prices, and accounting returns may require different price fields, but their adjustment conventions must agree.
A matched benchmark and an honest calendar
The benchmark must enter on the same eligible start date and use the same valuation calendar. Warm-up data used to compute a moving average are not automatically part of the evaluated investment period. Conversely, days on which a funded strategy intentionally holds cash belong in its performance record. Dropping losing or inactive periods, or concatenating separated test windows as if capital moved between them without elapsed time or trading, can distort the result.
For walk-forward reports, each fold should identify its training end, available labels, first possible decision, and evaluation end. A combined account curve must explain how holdings cross fold boundaries and how any gaps are handled. Independent fold statistics can also be shown, but they should not be mistaken for the history of one continuously managed account.
Metrics answer different questions
Zimmer's reporting will include compounded net return, volatility, drawdown, time in market, trading frequency, and results relative to the benchmark. The conventional excess-return Sharpe ratio divides mean return above a specified reference cash rate by the standard deviation of those excess returns. Multiplying a daily estimate by the square root of 252 is a common approximation; serial dependence and compounding complicate interpretation across horizons. [6] No universal Sharpe cutoff establishes either validity or fraud.
Maximum drawdown is defined here as the largest value of 1 − Vt/Ht, where Vt is account value and Ht is its highest prior or current value, after appropriate cash-flow adjustment. It describes a realized historical loss from a peak, not a bound on future losses. Drawdown duration matters too: a strategy can have a moderate decline and still leave capital below its prior peak for a long time.
Hit rate will be accompanied by average win, average loss, and the definition of a trade. A strategy with frequent small wins can be undone by a few large losses. Performance above a benchmark is not automatically alpha either: different market exposure, concentration, and risk-taking can explain a return difference. Any later factor analysis will be reported with its assumptions and uncertainty.
Walk-forward validation and statistical uncertainty
Forecast evaluation will use successive origins with training observations preceding each forecast, consistent with standard time-series cross-validation. [7] The feature window, label interval, and publication delay must be considered separately. A historical lookback that reaches into the training period is not itself leakage; using labels or preprocessing estimates unavailable at the decision time is.
For example, a training label defined by the next five trading sessions cannot be used before those sessions finish. Removing overlapping training labels may require a gap at a fold boundary, but the correct number of excluded rows depends on timestamp conventions and label endpoints. An embargo after a test block matters in designs that later admit observations beyond that block into training. It is not an automatic cure, and a strictly forward-only design does not use future training observations for that earlier test in the first place.
Uncertainty estimates should respect dependence. Twenty-four hourly forecast errors from the same weather episode are not twenty-four fully independent experiments. Where resampling is used, grouping by delivery day or a justified longer block is preferable to blindly shuffling individual hours. The block choice and sensitivity should be reported. Statistical significance must accompany an economically meaningful effect size, rather than substitute for one.
A predeclared trial budget limits discretionary search, but counting trials does not erase the effect of choosing features, instruments, or dates after inspecting results. The record must include those decisions. If development resumes after examining a holdout, that period becomes part of development history and a new untouched evaluation period is needed for the revised claim.
5. Two connected research tracks
A simple paper-trading baseline
The proposed execution baseline is a slow, understandable rule using a fixed allocation across SPY, XLE, and XLU. At month-end, each sleeve would hold its ETF if the completed monthly close exceeded its trailing ten-month moving average, and otherwise hold cash. Any resulting order would be modeled in the following session.
This is an experiment proposed for implementation and evaluation, not a validated recommendation. Its role is to exercise the entire workflow with few discretionary choices. The comparison would use the same allocation held passively, matching dates, costs, distributions, and cash treatment. The rule, sizing, and evaluation criteria would be frozen before the forward observation period begins.
A focused ERCOT forecast
The energy study will begin with one decision time and one forecast horizon. The initial question is whether information available at that cutoff can improve tomorrow's load forecast relative to a simple seasonal baseline and the relevant published forecast. Subsequent work can ask whether those improvements help predict the difference between real-time and day-ahead prices at one specified hub.
For this study, price spread = real-time settlement price − day-ahead settlement price, matched to the same hub and delivery period.
The sign convention and time alignment must be explicit, including how shorter real-time intervals are aggregated. Tomorrow's realized load error is an outcome to predict, not an input available today. Historical final settlement prices may be appropriate evaluation targets while still being inappropriate as contemporaneous trading inputs.
Forecast quality will be assessed before trading economics. Mean absolute error can describe typical misses, while separate analysis of large errors can reveal failures during stressed conditions. Lower average forecast error does not by itself establish a profitable trading rule. That further claim requires a feasible instrument, decision timing, costs, and position sizing.
Make the baseline fully specified before testing
For the first proposed baseline, the three sleeves would each receive one-third of starting capital. At each monthly decision, the target for a sleeve would be one-third of current portfolio equity when its condition is true and zero otherwise. Inactive capital would remain cash and would not be redistributed to the active ETFs. This caps the intended risky-asset allocation at the full portfolio at each rebalance and avoids quietly increasing concentration when fewer signals are active.
The ten-month average would include the completed current month and the preceding nine completed months. The current monthly close must be strictly above that average to activate a sleeve; equality leaves it in cash. These conventions remove ambiguity, but they are proposed specifications, not parameters selected because they performed best. Fractional-share support, rounding, cash reserves for costs, and eligible order types must be checked before the rule is implemented.
The first scheduled execution would occur in the next regular session under a recorded fill convention. A daily opening price can be a historical approximation only if the operational order could reasonably participate near that time; it is not a guaranteed future fill. A forward log should retain the decision time, submission time, observed quote, actual simulated or live fill, and the reason for any delay.
The passive comparison requires equal care. The primary buy-and-hold comparator would begin with the same one-third allocations and then allow weights to drift, using a defined distribution-reinvestment convention. A monthly rebalanced always-invested basket would be reported separately to help distinguish signal effects from rebalancing effects. Neither comparator may receive a longer warm-up investment period than the strategy.
A concrete protocol for the load study
The initial proposed load experiment issues a next-day hourly forecast at 08:00 America/Chicago each day. This is a research cutoff, not a claim that any wholesale order can be submitted or filled at that time. Inputs must have been received by the cutoff for a replay of our collector. The first outcome is ERCOT system load by delivery hour; location-specific forecasts would be a later, separately registered extension.
Two baselines are proposed: the latest eligible ERCOT forecast for those delivery hours and a same-hour, prior-week seasonal forecast using an explicit local-calendar mapping. Holidays and daylight-saving transitions need documented handling. The research record must retain the exact published forecast version used. If it was not captured or cannot be recovered historically, the system must report that comparison as unavailable rather than reconstruct a favorable substitute from a later forecast.
A first candidate could estimate a correction to the published forecast using calendar variables, eligible lagged load errors, and archived weather forecasts. A modest linear or regularized model is a reasonable initial specification because its inputs and failures are inspectable. This is a methodological choice, not a claim that simple models always outperform more complex ones. More flexible models would need their own trial records and sufficient data.
The current NOAA degree-day observations do not, by themselves, provide a complete history of local weather forecasts available at each cutoff. Those are different data products and must not be substituted. If forecast vintages are unavailable, the first experiment should use only the inputs whose historical availability can be defended, while the archive accumulates the missing forecast versions for future work.
Scoring the forecast before simulating a trade
Let eh = Lh − L̂h, where L is realized load and L̂ is the forecast issued at the fixed cutoff. Mean absolute error is the average of |eh|, and root mean squared error is the square root of the average of eh2. Both remain in MW; RMSE places more weight on large misses. Percentage errors become unstable around zero, making them particularly unsuitable as a default for signed price spreads. [8]
All candidate-versus-baseline comparisons must use the same eligible delivery hours. The report should show how many hours were excluded and why, along with error by month, hour, and predeclared stress category. A model that improves mild days but deteriorates on critical days may be inappropriate for the intended decision. Subgroup analysis remains diagnostic unless specified in advance; selecting a favorable subgroup afterward creates another hypothesis.
Uncertainty around the predicted outcome also deserves evaluation. If an 80% prediction interval is reported, coverage measures how often realized outcomes fall inside it, while interval width measures how informative it is. An interval can achieve high coverage simply by being excessively wide. [9] The initial project should earn the right to make probabilistic claims by checking those properties on later observations.
Extend to a price spread only after defining the decision
The first proposed spread location is ERCOT's North Hub. This is a scope choice for a reproducible study, not a selection based on superior historical profitability. The target would match day-ahead hourly settlement prices to duration-weighted real-time settlement prices over the same delivery hour. Every interval must map to the correct hub, delivery date, and repeated-hour convention.
At an early cutoff, the next day's cleared day-ahead price may not yet be available. A model predicting the eventual real-time-minus-day-ahead spread at that cutoff cannot use that future cleared price as a feature. A later experiment that conditions on a published day-ahead price would have a different information set and potentially a different feasible transaction. Its results must not be blended into the earlier decision as if they were equivalent.
As an illustrative accounting identity, a positive one-MW exposure to a spread over one hour corresponds to one MWh, so a $10/MWh realized spread would produce $10 before costs under that hypothetical payoff definition. This arithmetic is not an assertion that Zimmer can obtain the position, nor does it describe all fees, collateral, clearing, or settlement obligations of an actual market transaction. Forecasting a price series and accessing its payoff are separate research problems.
Only after the forecast is evaluated should the project specify a feasible trading instrument and decision rule. If the eventual instrument is an equity proxy, the forecast-to-equity relationship needs a new study with its own benchmark and timing. A good North Hub forecast cannot simply be relabeled a stock-selection signal.
6. Execution and risk controls
The Alpaca paper connection gives the project a way to exercise order submission and reconciliation. It remains a simulation. Alpaca documents omissions including latency slippage, queue position, and dividends, so paper results need to be interpreted alongside a separate accounting and execution model. [10]
The next operational requirement is a worker that runs independently of a webpage or chat session. A monitoring screen should expose the strategy version, signal inputs, data freshness, holdings, pending orders, fills, and risk state. If the dashboard closes, order management must continue.
Controls must govern total exposure. Checking each new order against a dollar ceiling is insufficient if repeated orders can accumulate a larger position. Existing holdings and pending orders must be reconciled before new exposure is permitted. Unreadable risk state, stale inputs, or uncertain order status should stop new entries, while preserving a controlled route to cancel orders and reduce exposure.
The initial review identified gaps in these areas. They remain engineering acceptance criteria, rather than protections this paper assumes are already complete. Any eventual move to small live trades depends on demonstrating those controls and understanding how simulated fills differ from actual execution.
An order is a process, not a single API response
An acknowledged submission does not establish a completed trade. Orders can remain open, partially fill, be rejected, or be waiting for cancellation; Alpaca documents these distinct lifecycle states. [11] The worker must reconcile filled quantity and outstanding quantity against the intended position before deciding what to do next.
A particularly important failure is a timeout after submission. The broker may have accepted the order even if the client did not receive the response. Retrying blindly could duplicate exposure. The design therefore needs a persistent, unique identifier for each intended order and a reconciliation step before any retry. On restart, the worker should recover outstanding intentions, query broker state, and resolve discrepancies before accepting new signals.
Risk reservations also need to survive concurrent activity. If two workers each inspect the same available budget before either records a new order, both can pass a check that the combined exposure violates. A single execution owner or a transactional reservation mechanism is needed. A cancellation request must not immediately release the reservation while the order can still fill.
Define the loss budget rather than merely naming it
A position-size limit, a daily loss halt, and a cumulative loss budget answer different questions. Position limits constrain current exposure. A daily halt requires a defined opening reference value and a policy for realized and unrealized changes. A cumulative budget must state whether profits replenish it, how deposits and withdrawals are treated, and whether losses are measured from inception or a high-water mark. A file called a risk ledger does not resolve those definitions.
Persistent state needs transaction history, backups, and reconciliation against broker records. Committing occasional snapshots to source control may preserve a checkpoint, but it does not guarantee that a stale checkout or an interrupted process contains the latest loss history. A trustworthy control must recover all relevant activity, including periods when the local worker was offline, or refuse to add exposure until the gap is resolved.
The controls cannot promise a maximum realized loss under every market condition. A stop price is not a guaranteed fill price, and a halt cannot undo losses that have already occurred. Alpaca's order documentation explicitly distinguishes trigger conditions from execution outcomes. [11] The purpose of sizing and halts is to constrain decisions and reduce exposure, while acknowledging gaps, liquidity, and connectivity risks.
What a useful monitoring screen should reveal
The account view should separate cash, marked holdings, realized results, unrealized results, and external flows. The strategy view should display the exact version and the data snapshot behind its last decision. The order view should show intended, filled, and outstanding quantities. The data view should display last successful ingestion and missing-series alerts. Controls should pause entries, request cancellations, and support verified reductions in exposure.
Operational alerts need explicit ownership and a recovery procedure. A red warning that nobody receives is not a control. Before unattended operation, the project should demonstrate recovery from a feed outage, rejected order, partial fill, duplicate signal, stale risk state, and worker restart. These are acceptance exercises for the proposed system, not claims that all have already passed.
7. The next milestone
Zimmer has an initial foundation: ingestion adapters, a versioned observation store, research exports, a backtest harness, an experiment registry, and a paper-broker integration. The remaining work is to make those parts reliable as one system and use them to answer a narrow economic question.
| Deliverable | Evidence required |
|---|---|
| Reliable research data | Decision-time availability enforced through every join; revisions and backfills identified; coverage and missingness reported. |
| One measured strategy | Matching benchmark windows, executable fill assumptions, explicit costs, and a complete experiment record. |
| Independent operations | Reconciled orders and positions, persistent risk state, observable failures, and tested controls for stopping entries. |
| One energy forecast | A fixed cutoff and horizon, comparison with meaningful baselines, and results evaluated on later observations. |
A fixed paper-trading window can establish operational reliability, but a monthly strategy may generate too few independent decisions in that window to support a strong profitability claim. The amount of evidence must match the claim being made. More code, more indicators, and more trades do not automatically resolve that problem.
Release gates and reasons to stop
The first release gate is reproducibility: another run from the recorded inputs should recover the same features, signals, and account calculations within specified numerical tolerances. The second is research validity: later observations must be evaluated against the frozen baselines with costs and uncertainty disclosed. The third is operational readiness: the system must reconcile state and reduce risk when expected dependencies fail.
A strategy can fail any gate without the entire project failing. If a forecasting model does not improve its baseline, the result should be recorded and the economic question reconsidered. If the forecast improves but no feasible trade survives costs, the appropriate output may remain a forecasting tool. If a paper strategy looks attractive but order reconciliation is unreliable, deployment should wait for the engineering defect to be resolved.
Changes should be classified before interpreting new results. Repairing an implementation error requires rerunning affected calculations and superseding invalid reports. Altering a signal, holding period, or instrument creates a new strategy version and consumes additional research discretion. Routine retraining can remain part of one strategy only when its schedule, window, features, and model-selection rules were defined in advance.
The eventual case for allocating capital must consider the magnitude and stability of net returns, the size of drawdowns, sensitivity to costs, and whether results depend on a few exceptional observations. A small number of favorable trades cannot establish a robust expectation. Larger account size cannot compensate for a weak signal; it simply increases the dollars attached to the same uncertain process.
The immediate deliverable is therefore a defensible chain of evidence: a reproducible data snapshot, one correctly measured strategy, an independently operating execution process, and one energy forecast evaluated on later observations. Each claim should be supported by a report that states what was known, what was assumed, what happened, and what would change the conclusion.
My objective is to build a research practice that compounds in quality: better records, clearer hypotheses, deeper knowledge of energy markets, and decisions that can be reviewed against the information available at the time. If a strategy eventually earns capital, it should do so because the evidence survives scrutiny. That is the standard Zimmer Trading is being built to meet.
References and scope
This working paper records the project's direction as of September 21, 2026. Project-status statements summarize the prototype and its initial review; planned work is identified as such. The initial review discussed the repository at commit 199fe34; this paper does not certify subsequent repository state. The external sources below support the data and methodological discussion. Numerical examples are illustrative. No backtest or trading performance is claimed as a new result of this paper.
- U.S. Energy Information Administration. Open Data. Energy time series and API access.
- Electric Reliability Council of Texas. Market Prices. Day-ahead, real-time, historical settlement prices, and price-correction information.
- ERCOT. December 5, 2025. ERCOT Goes Live with Real-Time Co-optimization Plus Batteries (RTC+B).
- NOAA Climate Prediction Center. Weekly and Monthly Degree Day Summaries: Explanation.
- Bailey, David H., and Marcos López de Prado. 2014. The Deflated Sharpe Ratio: Correcting for Selection Bias, Backtest Overfitting, and Non-Normality. The Journal of Portfolio Management 40 (5): 94–107.
- Sharpe, William F. 1994. The Sharpe Ratio. The Journal of Portfolio Management, Fall 1994. Author-hosted reprint at Stanford University.
- Hyndman, Rob J., and George Athanasopoulos. Forecasting: Principles and Practice, 3rd ed. Section 5.10: Time Series Cross-validation.
- Hyndman, Rob J., and George Athanasopoulos. Forecasting: Principles and Practice, 3rd ed. Section 5.8: Evaluating Point Forecast Accuracy.
- Hyndman, Rob J., and George Athanasopoulos. Forecasting: Principles and Practice, 3rd ed. Section 5.5: Distributional Forecasts and Prediction Intervals.
- Alpaca. Paper Trading. Simulation assumptions and differences from live execution.
- Alpaca. Placing Orders. Order types, execution conditions, and lifecycle states.