Frequently Asked Questions

All Adjustments & Taxes Data & Methodology Performance & Statistics Practical Use Strategy Concepts Strategy Mechanics

Data & Methodology

Where does DMS get its data?

Every number on this site traces back to a small set of outside sources. There is no proprietary data feed and nothing is hand-entered. Knowing what feeds what makes it easier to judge how much weight any given figure deserves.

Monthly returns: Tiingo

The monthly return series behind every strategy comes from Tiingo's end-of-day data. This is the authoritative source. When a strategy's performance is computed, recomputed, or published, it is Tiingo's month-end closing prices doing the work.

Returns are total return, adjusted for dividends and distributions. This matters more than it sounds. For bond and commodity positions the income component is most of the return, and a price-only series would understate those assets badly rather than slightly.

Inflation: the Bureau of Labor Statistics, via FRED

The CPI series used by the Inflation Adjusted toggle is CPI-U, All Urban Consumers, not seasonally adjusted. It is pulled from the St. Louis Fed's FRED service, which redistributes the BLS figures. FRED also supplies several market indicators shown elsewhere on the site, including the high-yield credit spread.

The CPI is published with about a one-month lag, so the newest month usually has no official print yet. See the Inflation Adjusted FAQ for how that gap is handled.

Live quotes: Twelve Data and Yahoo Finance

Intraday numbers come from a different place than the historical record. The market strip above the navigation and the month-to-date figures during an open month are built from live quotes, refreshed through the trading day. Historical performance never depends on them.

This is a deliberate separation. Live quote feeds are fast and occasionally wrong. End-of-day data is slower and much more reliable. The site uses each for what it is good at, and nothing in a strategy's published track record is ever sourced from an intraday quote.

History before an ETF existed

Where a fund is younger than the track record shown, the earlier history is reconstructed from other sources. That reconstruction has its own rules and its own limitations, covered in full in the extended-returns FAQ.

What this means for the numbers you see

A few consequences worth carrying around:

  • Monthly is the unit of account. Strategies are evaluated on month-end closes. Daily data exists for specific purposes, but a strategy's return, drawdown, and every statistic derived from them are monthly measurements.
  • Dividends are already in there. You do not need to add a yield estimate on top of a published return. It is already counted.
  • Nothing here is survivorship-screened after the fact. The ETF universe a strategy trades is fixed by its rules, not chosen in hindsight from funds that happened to do well.
  • The data can be revised. Providers correct their own history occasionally. When they do, the corrected figures flow through on the next recompute, which can move an old number very slightly.

Where errors would come from

Being honest about the failure modes: the most likely source of a wrong number on this site is not the price data itself, which is well-tested and widely used. It is the reconstruction layer for pre-ETF history, and it is the transformation code that turns raw prices into strategy results. Both get audited, and both have had real defects found and fixed. The price feeds themselves have not been a meaningful source of trouble.

Permalink to this answer → Last updated July 30, 2026
Where does return history from before an ETF existed come from?

Most of the ETFs a DMS strategy trades are younger than the track record shown for that strategy. A broad commodity ETF may have launched in 2014, an international equity ETF in 2011, a Nasdaq-100 fund in 1999. If a backtest could only use the period where every holding actually existed, the entire test would be truncated to the youngest fund in the lineup - and a strategy tested only on the post-2014 era has never been shown a rate-shock, a commodity boom, or a 1970s-style inflation regime.

To avoid that, DMS uses extended return series: each asset class is reconstructed backwards to January 1979 from the best available source for each stretch of history. The strategy is then tested against that longer record.

The waterfall

Every asset class is built from a prioritized chain of sources. The engine walks the chain from best to worst and takes each date's return from the highest-ranked source that actually has data for that date. In order of preference:

  1. The real ETF itself. Wherever the fund exists and has traded, its own total-return history is used. No modeling, no substitution.
  2. An older share class of the same fund. Many ETFs are the newer wrapper on a mutual fund that has been running for decades. When that's the case, the older share class is a near-exact extension of the same portfolio, differing only in fee structure.
  3. A comparable fund tracking the same universe. Where no earlier share class exists, an older mutual fund with the same mandate and credit/duration/geographic profile fills the gap.
  4. A total return index. When no traded fund reaches far enough back, an index is used. It must be a total return index, not a price or excess-return index - otherwise the yield or dividend component is silently dropped and the whole series understates the asset.
  5. A modeled reconstruction. Bond-pricing math from published yield curves, or a regression-based estimate. Last resort, used only where nothing above is available.

The chain is a splice, not a blend. Two adjacent tiers are never averaged together; each date is sourced from exactly one place.

Substitutions are held to a standard

A fund only earns a place in a chain if it is genuinely tracking the same thing. This is where most of the judgment sits, and it cuts both ways: a corporate-bond fund is not a proxy for a broad aggregate bond index even though both are "bonds," and a high-yield fund is a different asset class entirely rather than a longer-history version of investment grade. Tiers get removed when they fail that test, even when removing them shortens the history.

Everything is total return

Price history alone is not usable. Every source in every chain is dividend- and distribution-adjusted, so the series represents what an investor would actually have earned holding the position. For bond and commodity series in particular, the income component is most of the return, and a price-only source would be badly wrong rather than slightly wrong.

Expenses are handled tier by tier

Each source in a chain carries its own expense ratio, and the reconstruction accounts for that source's actual fee for the dates it supplies - not a single blanket fee applied across the whole history. A 1990s mutual fund charging 0.90% and a modern ETF charging 0.05% are not interchangeable on cost, and using one fee across both eras would leave a small permanent drag or boost baked into the older half of the record.

Leveraged series are rebuilt, not borrowed

For 2x and 3x series, no leveraged fund existed before roughly 2006-2010, so those histories are constructed rather than sourced. Each day's unlevered return is multiplied by the leverage factor, then charged a financing cost derived from the prevailing overnight rate plus a spread, then charged the real leveraged fund's own published expense ratio. This is daily-reset leverage, matching how the actual products work - which means the reconstruction reproduces volatility decay in choppy markets rather than papering over it.

Monthly history often reaches further back than daily history

Daily price history and monthly return history come from different places and stop at different points. A fund may have thirty years of published monthly returns but only twenty years of usable daily prices. Where that's true, the monthly series is extended using the monthly data while the daily series stops at the last date with trustworthy daily prices.

The practical consequence: for some asset classes, monthly-resolution results start earlier than daily-resolution results. A strategy rebalancing monthly may therefore show a longer track record than the same strategy tested at daily granularity.

Regression-based tiers

Where an asset class has no fund and no clean index reaching far enough back, one remaining option is to estimate its returns from the assets it is statistically related to - regressing the target series on factors or on other markets with longer histories, then using that relationship to project the missing period.

This produces a plausible series, not a real one, and it is treated with more suspicion than every tier above it. A regression fit on one era's correlations can behave badly in an era where those correlations broke down, which is precisely the period a long backtest is meant to stress. Regression tiers are used sparingly, sit at the bottom of the chain, and are retired when a better source appears or when the reconstruction fails review.

Real data always wins

Where the actual ETF has traded, its own returns are used - always. Synthetic history exists only to fill the space before that, and the moment real data begins it takes over completely. The two are stitched at the fund's inception, not blended across it.

What synthetic history is and isn't

It is a careful reconstruction of what an asset class returned. It is not a record of what an investor experienced.

Specifically, it excludes: bid-ask spreads and market impact, tracking error against the index, securities-lending revenue, borrow availability, and the practical reality that many of these strategies would have been difficult or impossible to run in 1979. Reconstructed leveraged series in particular assume idealized daily rebalancing at zero cost, which real leveraged funds do not achieve.

It is also worth remembering that the deepest tiers of any chain are the least reliable, and they sit in the oldest and most unusual part of the record - the stretch doing the most work in a long backtest. Treat the earliest years as directionally informative about how a strategy behaves in an unfamiliar regime, not as a precise measurement.

How to read results that use it

Results built on extended history are best used to answer "does this approach survive conditions the last fifteen years never produced?" rather than "what exactly would I have made?" Where a strategy's edge depends heavily on the pre-ETF era, that is worth knowing and worth discounting.

Permalink to this answer → Last updated July 30, 2026
When does the site update, and what does FINAL mean?

DMS recomputes every strategy once a day, in the evening, after the US market has closed and the day's closing prices have settled. Nothing changes during the trading day except live quotes.

The daily cycle

All times below are US Eastern. Phoenix runs three hours behind Eastern in summer.

Closing price data is fetched in several passes through the evening, starting shortly before 6 PM and continuing into the late evening. Multiple passes exist because data providers do not publish everything at once, and a ticker that is not ready on the first attempt gets picked up on a later one.

Strategy results are then computed twice:

  1. Around 8:15 PM, a first pass runs against whatever data has arrived by then.
  2. Around 12:15 AM, a second pass runs after every fetch attempt has had its chance.

The after-midnight pass is the authoritative one. The 8:15 PM run is a useful early look, but it can be working from an incomplete picture.

The practical consequence: a figure you check at 9 PM Eastern can differ from the same figure the next morning. That is not an error being corrected. It is the early pass being superseded by the complete one. If a number matters, read it after midnight Eastern, or simply read it the following day.

FINAL versus "through" on the allocation table

The most recent row of a strategy's allocation table carries a small tag telling you how settled it is:

  • A green FINAL tag means every input for that month has been confirmed complete. The row will not change again.
  • An amber "through" tag with a date means the figures reflect closing prices only up to that date. The month is not finished, or the data for it is not fully confirmed. It can still move.

The tag reports the actual state of the underlying data rather than the calendar. A month that has ended on the calendar is not automatically final; it becomes final when the data confirming it has arrived and been verified.

The current month

While a month is in progress, two different things are shown, and they behave differently.

The allocation is published daily. You can see what a strategy is holding right now. This updates as the month goes on.

The return is not published until the month closes. Instead, during the month you see a month-to-date figure, labeled MTD rather than Month Return. MTD is built from live quotes and moves during the trading day. It is a running estimate of an unfinished month, not a result.

When the month closes, the MTD figure is replaced by a settled monthly return computed from month-end closing prices, and it becomes a permanent part of the record.

"Provisional" means something different

There is also a row labeled Provisional, and it is easy to confuse with the freshness tag above. They are unrelated.

The Provisional row is a projection of next month's allocation, showing what the strategy would hold if the current month ended today. It is a forward look, not a status label, and it is a Premium feature.

It also moves. A projection made on the 8th of the month is built on eight days of incomplete data, and the signals driving it can reverse before month-end. Treat it as a preview of where things are heading, not as an instruction.

A note for free accounts

Current-month allocations for Premium strategies unlock for free users on the 11th of each month. Everything else on the daily cycle above applies the same way regardless of account type.

What to do with all this

  • For anything that matters, read the figure the day after, not the same evening.
  • Trust the FINAL tag rather than the calendar.
  • Do not act on a Provisional projection before the month has closed.
  • If a number changed overnight, that is the system working as designed.
Permalink to this answer → Last updated July 30, 2026