Transparency

Data Sources

Where every number on this site comes from, what it powers, and how often it updates.

Every dashboard is built from pre-computed data so pages load fast. The table below lists each underlying source, how current it is, and any limitations to keep in mind. Sources marked Planned are not live yet.

COT — Commitment of Traders

Live
Source
U.S. Commodity Futures Trading Commission (CFTC) — official Legacy, Disaggregated, and Traders-in-Financial-Futures reports.
Access
Public, free, no account required.
Powers
The Market Dashboard, COT Shortcut, Market Detail, and the GOLD card's COT sub-tab — every COT positioning indicator (COT Index, OI Stochastic, WILLCO, COT Movement, Composite COT, Spec/Comm ratios).
Update cadence
The CFTC publishes once a week (Friday, covering the prior Tuesday's positions). We refresh from the CFTC archive and rebuild the dashboards on that schedule.
Notes & limitations
A ~3-day reporting lag between the position date and publication is inherent to the CFTC report itself — it is not a delay in this app.

Gold Fear & Greed (Sentiment)

Live
Source
OnOff.Markets public Gold Fear & Greed Index (the 0–100 score plus its component sub-signals).
Access
Public, free, no account required.
Powers
The GOLD card's Sentiment sub-tab — the gauge, the full history chart, and the component breakdown.
Update cadence
Snapshotted automatically every day and archived. OnOff only publishes a rolling 1-year window; because we keep each daily value, our history keeps growing past that one year over time.
Notes & limitations
Covers gold only. The value reflects OnOff's own methodology; we redraw and archive it, we do not recompute it.

Options flow (GLD Put/Call)

Planned
Source
To be selected — the GLD volume Put/Call ratio and Put/Call open-interest ratio (e.g. Barchart's GLD Put/Call Ratio, OptionCharts, or Interactive Brokers).
Access
Pending — most options-data providers require a paid subscription or a brokerage account.
Powers
Will power the GOLD card's Options-flow sub-tab, ideally with OptionCharts-style gauges.
Update cadence
To be defined once a source is chosen.
Notes & limitations
Not yet live. Waiting on a decision about which data provider to use (see the provider comparison below) and on the corresponding access/terms. The sub-tab currently shows a placeholder.

Gold price history (cycle analysis)

Live
Source
Yahoo Finance — continuous front-month COMEX gold futures (GC=F), full available daily close history (from 2000).
Access
Public, free, no account required.
Powers
The GOLD card's Cycle sub-tab — the FFT periodogram, the MESA (maximum-entropy) spectrum, and the Bartels significance test on the daily, weekly and monthly series.
Update cadence
Rebuilt automatically whenever the frontend data is rebuilt, i.e. on the weekly COT refresh.
Notes & limitations
The same instrument as the GOLD COT market (CFTC 088691), so the two sub-tabs describe one market. Weekly and monthly series are resampled from these daily closes rather than fetched separately, so the three timeframes cannot disagree — but they are also not three independent samples. Being a continuous front-month series spliced with no roll adjustment (see the Strategy price history row), it carries contract-roll discontinuities.

Strategy price history

Live
Source
Yahoo Finance (daily/monthly price series for the futures and ETFs used in the strategy back-tests, e.g. Corn, Gold ETF, Silver ETF, S&P 500).
Access
Public, free, no account required.
Powers
The dedicated strategy cards (Corn Donchian, Corn MA, Corn Kama, Monthly MA Crossover, GLD/SLV strategies, 0DTE Moves, etc.) and the twenty-six per-market trend cards — Crude Oil CL=F, Palladium PA=F, Live Cattle LE=F, Cocoa CC=F, Coffee KC=F, Bitcoin BTC-USD, US Dollar Index DX-Y.NYB, 2-Year T-Note ZT=F, Aluminium ALI=F, Lithium & Battery ETF LIT, Brazilian Real 6L=F, Japanese Yen 6J=F, Silver SI=F, Gold GC=F, 10-Year T-Note ZN=F, 30-Year T-Bond ZB=F, Wheat ZW=F, Soybeans ZS=F, Natural Gas NG=F, Lean Hogs HE=F, High Grade Copper HG=F, Sugar SB=F, Orange Juice OJ=F, Cotton CT=F, British Pound 6B=F, Mexican Peso 6M=F — their optimization grids and performance metrics, including the Reset / No Reset re-entry comparison (section 13) and, on Corn only, the dated trade log behind every volatility setting (section 14).
Update cadence
Refreshed when a strategy's back-test is rebuilt; results are pre-computed and cached. These payloads are NOT on the weekly refresh — the Corn set is rebuilt with `python -m strategies.corn_ma_optimization.build_frontend_data --as-of <date>` and the market set with `python -m strategies.multi_market_ma.build_frontend_data`, both by hand.
Notes & limitations
The continuous futures tickers (=F) are Yahoo's front-month chain, spliced with no roll adjustment — not back-adjusted (Panama) and not ratio-adjusted (verified empirically 2026-08-13 by matching the chain against individual contracts). The series therefore prints a phantom jump at every contract switch: on Corn the five largest one-day 'moves' in the whole series (−13% to −24% in mid-July of 2013, 2021, 2022 and 2023 — old-crop/new-crop transitions — and +14% in September 2009) are roll seams printing on the first session after the old contract's expiry, not market moves, and they feed the ATR, the trailing stops and the compounding equity curves. Absolute performance numbers on the futures cards carry this roll noise; comparative readings (rule vs rule, period vs period) run on the same seams on all sides. Rebuilding on adjustment-correct series is the planned fix. Separately, Yahoo Finance is a free, unofficial feed and can occasionally have gaps or revisions; back-test outputs are recomputed on each rebuild. Because a rebuild re-downloads, a section added later sits on a later snapshot than the sections beside it: section 13 (Reset / No Reset, added 2026-08-04) was built for the market cards without rebuilding sections 1–12, and each card reports how far the two snapshots have drifted by comparing its own Immediate column against section 7's shipped table. On Corn all sections were rebuilt together over the same window, so no such gap exists there. Five cases are handled explicitly and flagged on the affected market pages. Crude oil's continuous series contains the negative April 2020 settlement (2020-04-20 close -37.63) plus the following day's negative open and low, which a compounding percentage equity curve cannot represent, so those bars are excluded. Palladium's history has six whole calendar months with no bars at all (Live Cattle one), so its date span is not an unbroken run of trading days. COMEX aluminium is largely stale before 2020 — 95.6% of 2018's closes are unchanged — so that card starts in 2020. Lithium has no price series on this feed, so its card tracks the LIT equity ETF and is labelled as not being the lithium price. And several contracts report settlement-only bars with no intraday range — the Mexican peso most of all at ~57% — which makes the intraday stop and target sections behave as close-only on those cards. Currency cards use CME futures rather than spot pairs so that a long position is long the named currency rather than the dollar.

Strategy price history — CTA Trend Following (in-sample, to 2015-12-31)

Live
Source
The same Yahoo Finance daily series as the row above, from the same tickers, truncated at 31 December 2015. No separate feed, no second download: one fetch per market, cut at that date before any indicator or back-test reads it.
Access
Public, free, no account required.
Powers
The CTA Trend Following tab — the concentration analysis, the funded ensembles, the cross-market book, and the same twelve sections as the market cards rebuilt over the shorter window. Twenty-five markets; COMEX aluminium is absent because its usable history begins in 2020 and the cut leaves it with no bars.
Update cadence
Static. This is deliberately NOT on the weekly refresh — the as-of date is the point of the tab, so its payloads are rebuilt only when the method or the market list changes, never on a schedule. Rebuild with `python -m strategies.cta_trend_following.build_frontend_data`.
Notes & limitations
Every data caveat from the row above still applies to these cards, and two are specific to the window. Bitcoin has roughly fifteen months of history by the cut-off (its feed starts September 2014), which is below the 750-bar floor this tab uses, so it gets a page but is never funded. The US Dollar Index is the opposite case at 11,452 bars back to 1971, so its in-sample window is far longer than everything else and its drawdowns are not comparable to theirs. The data after 2015-12-31 exists and is untouched — it is the out-of-sample test for whatever comes out of this work, and no calculation on this tab reads it.

Orange Juice futures

Live
Source
Yahoo Finance, with Nasdaq Data Link (ICE Orange Juice futures) as a cross-check/fallback.
Access
Public. The Nasdaq Data Link cross-check can use an optional free API key for higher rate limits.
Powers
The Orange Juice seasonality strategy card.
Update cadence
Refreshed when the back-test is rebuilt.
Notes & limitations
Two independent sources are used so the price history can be validated.

Saxo OTC FX options

Live
Source
Saxo Bank's public FX Options web tool (at-the-money volatility, risk reversals, pin risk).
Access
Public web data, no account required.
Powers
The Saxo OTC dashboard.
Update cadence
Snapshotted on demand; the live Saxo figures move intraday.
Notes & limitations
Coverage is the major currency pairs across standard tenors (1W–1Y).

Options flow — choosing a data provider

Decision needed

The Options-flow sub-tab (GLD volume Put/Call ratio, Put/Call open-interest ratio, and OptionCharts-style gauges) needs a paid options-data source — there is no free or public feed for it. There are three realistic options, trading off cost, how closely they match the requested gauges, and how cleanly we can automate the daily update.

ProviderWhat you getNeedsMonthly≈ Weekly≈ DailyAutomation
Interactive Brokers (IBKR)SuggestedThe full GLD option chain (volume + open interest per strike). We compute the Put/Call volume and open-interest ratios ourselves.An IBKR account + the OPRA US-options market-data subscription, accessed via IBKR's API.≈ $0–10≈ $0–2.50≈ $0–0.35Full API — clean automated daily collection.
OptionCharts.ioThe same GLD option-overview gauges the client referenced, plus Put/Call ratios. Premium is 15-minute delayed with CSV export; Ultimate adds real-time data.A paid OptionCharts subscription (Premium or Ultimate).≈ $20–30 (Premium)≈ $5–7≈ $0.70–1.00No official API — CSV export (semi-manual) or scraping (against their terms).
Barchart OnDemandThe exact 'GLD Put/Call Ratio' the client cited, including historical Put/Call ratios via a proper REST API (back-history available).A paid Barchart OnDemand API plan (usage-based / custom).from ≈ $500≈ $115≈ $16Proper REST API — cleanest automation, plus historical back-fill.

Prices are approximate, as of June 2026 — confirm with each provider. Every provider bills monthly; the weekly/daily figures are just the monthly cost spread out for comparison. Sources: IBKR market data, OptionCharts, Barchart OnDemand.

Why each one

Interactive Brokers (IBKR). Cheapest and most legitimate if you already trade at IBKR: the OPRA fee is small and is often fully waived once monthly trading commissions pass a low threshold. We own the calculation, and — like the sentiment archive — history accumulates from the day we start collecting. Trade-off: it's the most build effort (an IBKR data connection), and you don't get back-history, only forward.
OptionCharts.io. Cheapest way to match the exact gauges in the client's screenshot, with low cost and a 15-minute-delayed feed that's fine for a daily ratio. The catch is there's no clean API: automated ingestion means a CSV-export routine rather than a real feed, so it's more manual to keep fresh.
Barchart OnDemand. The most 'correct' source for the precise metric the client named, and the only one that hands us historical Put/Call ratios out of the box (no waiting to accumulate). But at roughly $500/month it's overkill unless options flow becomes a core, paid part of the product.
Suggestion: if you already trade at Interactive Brokers, start there — it's the cheapest and most legitimate, and we build the ratios ourselves (history accrues from when we start). If not, and you mainly want those gauges at low cost, OptionCharts Premium is the pragmatic choice. Reserve Barchart for when options flow needs to be a core, historical data product.

Data is refreshed by re-running the build pipelines and publishing the updated site. Pricing and positioning figures are for research and information only and are not investment advice.