What to check first in J-Quants price data
Inspect existing local price data for dates, price conventions, duplicates, trading halts and freeze records.
Choose the file and research scope
This workflow is for people who already hold lawfully acquired local J-Quants history that they are permitted to use. It begins by explicitly choosing files, securities and periods, without assuming a new download. It does not discuss current APIs, pricing or licence terms.
Selecting a file does not establish that it is adequate research input. Separate the requested date range from the observed range, and inspect per-security counts and common observation dates. Start with research preparation. Setting scope first helps prevent selecting rows afterward to improve results.
Align dates, securities and price conventions
Beyond readable columns, check date and security-code meanings, price units and the correspondence of open, high, low and close fields. Record any conversions of quantities or code formatting. A seemingly regular series of dates does not establish a complete trading calendar.
Mixing adjusted and unadjusted prices prevents consistent price comparisons. The public course uses unadjusted prices and no dividend cash model. Comparison with a price index is also different from a dividend-inclusive return comparison. Check point-in-time consistency separately from price conventions.
Distinguish identical duplicates from conflicts
When several rows share a date and security, do not immediately collapse them. Fully identical duplicates differ from conflicts in prices or other content. Keeping the last conflicting row would select a value without an evidential basis.
The public course consolidates fully identical duplicates under an explicit policy and stops for conflicts or other missing data. Record initial counts, duplicate counts, processing policy and retained counts. Equal price fields alone do not make rows with other meaningful differences fully identical.
Empty halt rows need specific evidence
Do not remove every row with missing or zero prices as a trading halt. Acquisition failures, incorrect field mappings and ordinary missingness are other possibilities. Filling gaps with prior values or zeros connects a chart without establishing an actual observation.
The public reference excludes only three placeholders for the verified full-day trading halt on October 1, 2020. Do not generalize that specific decision to other dates or files. Retain identities and reasons for unexplained rows and investigate them. Do not fabricate observations simply to continue processing.
Match counts and freeze records to the same input
The public cache record starts with 8,172 selected rows, removes 3,777 fully identical duplicates and three verified halt placeholders, and retains 4,392 rows: 8,172 − 3,777 − 3 = 4,392. The retained range contains 1,464 common observation dates from January 4, 2017 to December 30, 2022. These counts belong to that reference input; they are not expected counts for other data.
After validation, freeze, revalidate and save the input identity. Different operations may create byte-distinct manifests even when selecting the same rows, so do not reuse another run's identity. Match execution records rather than relying on screenshots. Continue with the first-research workflow.
Public sources and research limitations
The workflow and display sources are the public GUI research course and public evidence summary. Reviewed October 6, 2026. The images record a GUI run from public-candidate source; they do not establish installed-distribution acceptance.
Reference results are research-only, with historical information availability unverified. Do not infer future profits from teaching examples or reference results; check their assumptions and limitations. Read the disclaimer.
Continue this topic
Applies to: main source candidate (unpublished) · Public source docs/en_US/GUI_RESEARCH_COURSES.md
Reviewed · KabuForge