Free Data Quality API
Check a dataset before you trust it. The quality endpoint returns an A-F score, coverage, critical issues, warnings and a link to the full HTML report.
Updated 2026-11-02 ? Data refreshed from the AlgoSpecial catalog.
What the quality API checks
Every report audits the dataset for structural and market-data problems:
Structure
Duplicate timestamps, out-of-order rows, missing required columns and invalid calendar coverage.
Price integrity
OHLC violations, non-positive prices, flat bars and extreme returns.
Market realism
Unexpected gaps, weekend bars, zero or negative volume and spread anomalies.
The score starts at 100 and deducts points for critical errors and warnings. A critical issue can cap the grade at F. The report exposes the issue list rather than hiding it behind a single number.
Quality API response
Pass symbol and tf to the quality endpoint. The response includes:
| Field | Meaning |
|---|---|
score | Numeric quality score from 0 to 100 |
grade | A, B, C, D or F |
rows, start, end | Dataset coverage |
checks | Counts for duplicates, gaps, OHLC violations, volume, spread and more |
issues | Severity, check name, count and explanation |
report_url | Canonical HTML report |
Use the HTML report for a human-readable breakdown: all 617 quality reports.
How to read the A-F grades
- A: structurally clean with no material issues; minor warnings may still exist.
- B: good overall, with a small number of warnings worth reviewing.
- C: inspect gaps, volume or spread issues before production use.
- D: significant issues; use only after targeted cleaning.
- F: critical issues present; do not use blindly.
The exact grade uses the weighted score plus issue severity, so two datasets with a similar score can receive different grades. A high score does not guarantee profitable backtests; it means the file is structurally cleaner, not that the strategy or broker execution is good.
When to call the quality API
Before a backtest
Reject or clean datasets with critical duplicates, OHLC errors or unusable gaps.
Before ML training
Check coverage and outlier counts so labels are not built on broken candles.
Before a data purchase
Compare the quality of two feeds before committing to either one.
Quality API limits
The quality endpoint shares the public rate limit: 60 requests per minute and 1,000 requests per day per IP. It returns JSON only. The full report download is available from each HTML report page.
Request examples
cURL - XAUUSD M15 quality report
curl "https://www.algospecial.com/api/data-quality.php?symbol=XAUUSD&tf=M15"
Python - gate a backtest on quality
import requests
r = requests.get(
"https://www.algospecial.com/api/data-quality.php",
params={"symbol": "XAUUSD", "tf": "M15"},
timeout=30,
)
r.raise_for_status()
report = r.json()
if report["grade"] in ("D", "F") or report["critical_count"] > 0:
raise SystemExit("Dataset needs cleaning before backtesting")
print(report["score"], report["grade"], report["report_url"])
All timestamps are broker server time. Some legacy forex exports return 0 for TickVolume and Spread because those fields were not present in the source feed.
Data Quality API FAQ
Is the data quality API free?
Yes. It uses the same public limits as the OHLC API: 60 requests per minute and 1,000 per day.
What does the score measure?
It measures structural data quality: duplicates, OHLC validity, gaps, outliers, volume, spread and related checks. It does not measure profitability.
Why is a dataset grade F?
A critical issue is present, such as duplicate timestamps, invalid OHLC, non-positive prices or a severe structural problem. Open the report for details.
Can I download the full report?
Yes. Each HTML quality report has a JSON download link, and the report API returns the canonical report URL.
Does a high grade guarantee good backtest results?
No. It only means the dataset is structurally cleaner. Strategy logic, spread, execution and market regime still determine results.
Choose the next useful step
Most visitors arrive with one question: build, test, price, or trust. These shortcuts keep the path practical.
Go deeper before you build, download or automate
Hand-picked engineering articles, indicator breakdowns and trading-system tools so visitors keep exploring instead of leaving after one page.
Pine Script to MT4/MT5 Conversion Planner
Analyze Pine strategies, repainting risk, TradingView alert bridges, MTF synchronization and the correct MQL4/MQL5 build path before paying for conversion.
Open planner
3-in-1 MT5 Indicator Bundle
12H Bias Engine, Smart Money Institutional Flow Dashboard and D1/H1 pending-signal logic with MQ5 + EX5 source included via Etsy.
MT5 Bank Orders Institutional Flow Dashboard
Supply/demand zones, BOS/CHoCH, liquidity levels, FVG, equal highs/lows and confirmed trade-plan logic explained with EX5 download.
MT5 Asia London NY Liquidity Engine
Asia range, London raid and New York continuation/reversal planning with internal session backtest stats and entry/SL/TP dashboard.
Interactive Brokers RSI Pair Trader
Tkinter desktop trading workflow, TWS API connection handling, RSI pair logic, risk controls and custom IBKR development positioning.
XAUUSD M30 CSV Data For Backtesting
Use clean MT5 historical data for Python backtests, strategy validation, spread checks and realistic gold EA research workflows.