Проверка временной сетки CSV
Локальная проверка пропусков, повторов, конфликтов OHLC и ошибочных строк в заданной сетке. Учебные CSV, ручной разбор, JSON и TXT.
Проверьте, какие моменты открытия свечей представлены в CSV относительно заданной вами сетки. Расчет выполняется в этом браузере: инструмент не отправляет содержимое файла и не сохраняет его между посещениями. Он не восстанавливает цены, не измеряет простой сервера и не удостоверяет качество данных. Перед передачей отчета проверьте, нет ли в нем чувствительных сведений.
Подготовьте формат и границы
Первая строка — timestamp,open,high,low,close. Далее нужны ровно пять полей с запятыми; цены записываются с десятичной точкой, без разделителей тысяч и экспоненциальной записи. OHLC означает цены открытия, максимума, минимума и закрытия. Поля в кавычках, разделитель «;» и дополнительные столбцы здесь не поддерживаются. Сохраните оригинал и отдельно опишите преобразование.
Нужны полная дата, секунды и Z либо явное смещение UTC, например 2026-10-12T08:00:00Z и 2026-10-12T10:00:00+02:00 обозначают один момент. Поддерживаются до трех цифр долей секунды. Приписать Z местному времени — не значит перевести его в UTC. Установите исходную зону и смещение на дату события.
Задайте первый и последний ожидаемые моменты открытия свечей. Обе границы включены. Шаг — целое число от 1 до 1440 минут; сетка начинается в первой границе, а последняя должна точно попадать на нее. Это равные интервалы прошедшего времени. Календарный месяц и местные сутки при переходе на сезонное время не всегда соответствуют фиксированному числу минут.
Пределы: 2 MiB (2097152 байта), 100000 строк данных и 100000 ожидаемых мест. Поле цены ограничено 48 символами и поддерживаемой точностью до 15 значащих цифр. Разрешены окончания строк LF и CRLF, начальная метка UTF-8 BOM; одна завершающая новая строка не создает запись, а внутренняя пустая строка считается ошибочной. Инструмент отвергает неподдерживаемый формат, а не угадывает его.
Проверьте CSV
Для проверки файла и подготовки отчета нужен JavaScript. Примеры CSV и ручной разбор доступны ниже.
Скачать полный учебный CSV · Скачать диагностический учебный CSV
Оба файла содержат вымышленные данные от 12 октября 2026 года, а не котировки брокера. Дата примера не означает дату проверки рынка.
Двенадцать строк — восемь занятых мест
Для диагностического файла оставьте M1, начало 08:00 и конец 08:11 UTC. Получаются 12 ожидаемых моментов: (11 − 0) / 1 + 1. В полном файле заняты все 12 мест, отсутствующих записей и конфликтов нет. В диагностическом — 12 строк данных, но только 8 различных правильных моментов на сетке; пусты 12 − 8 = 4 места.
| Показатель | Результат и причина |
|---|---|
| 4 пустых места | 08:03, 08:04, 08:10 и 08:11. Строка 08:04 не проходит проверку OHLC и не заполняет место. |
| 2 повторные строки | Моменты 08:02 и 08:06 встречаются повторно; повтор может иметь те же или другие цены. |
| 1 группа с конфликтом цен | Две правильные записи для 08:06 имеют разные максимумы: 1.1010 и 1.1020. Вместе они занимают одно место; инструмент не выбирает верную цену. |
| 1 ошибочная строка | В 08:04 максимум 1.0000 ниже открытия 1.1000. |
| 1 строка вне сетки | 08:07:30 находится между минутными открытиями и не добавляет покрытия. |
| 1 возврат времени | 08:08 записано после 08:09. Сравниваются последовательные правильные строки в порядке файла. |
| 2 промежутка пропусков | 08:03–08:04 и 08:10–08:11. В каждом по два ожидаемых открытия; при равенстве длины выбирается первый промежуток. |
| 11 правильных строк, 0 вне диапазона | Правильные строки включают повторы и строку 08:07:30. Поэтому 11 — не число занятых мест. |
Измените вопрос, сохранив тот же файл
Сначала сохраните отчет с исходными настройками. Затем проверьте тот же диагностический файл на M1 от 08:02 до 08:08 UTC. Ожидаются 7 моментов; заняты 08:02, 08:05, 08:06, 08:07 и 08:08, то есть 5. Пусты 08:03 и 08:04: 7 − 5 = 2. Три правильные строки — 08:00, 08:01 и 08:09 — находятся вне диапазона. Конфликт 08:06 и строка вне сетки 08:07:30 остаются. Сам файл не стал качественнее: вы задали другой диапазон.
Упражнение: что получится при шаге 2 минуты от 08:00 до 08:10?
Ожидаются 6 мест: 00, 02, 04, 06, 08 и 10 минут. Заняты 00, 02, 06 и 08: четыре места, поэтому пусты два. Строки для 01, 05, 07, 07:30 и 09 минут вне этой сетки: всего пять. Это не преобразование минутных свечей в двухминутные: инструмент не объединяет OHLC.
Исходное упражнение: 12 строк и 8 различных правильных моментов на сетке из 12 мест. Сколько мест пусты?
4. Вычитаем занятые места из ожидаемых: 12 − 8. Ответ 0 ошибочно приравнивает число строк к покрытию. Ответ 8 называет занятую, а не отсутствующую часть.
Что именно означает отчет
Правильная запись имеет допустимые дату и цены: максимум не ниже открытия, закрытия и минимума, а минимум не выше остальных цен. Только различные правильные моменты внутри диапазона и на сетке заполняют места. Повторы и конфликты считаются по всем правильным строкам, в том числе вне диапазона; одна строка может одновременно быть вне сетки и вне диапазона. Ошибочные строки не участвуют в сравнении порядка правильных моментов.
Считаются все обнаруженные случаи, но в каждой категории выводится не больше 20 примеров. При трех или более разных наборах OHLC для одного времени группа конфликта остается одной, а каждый повтор после первой строки увеличивает счетчик повторов. Текстовые варианты одной числовой цены, например 1.1000 и 1.1, не создают конфликт сами по себе.
Результат «проверка завершена» означает, что анализ удалось выполнить. Пустые места могут совпадать с закрытой сессией, ошибкой выгрузки или отсутствующими наблюдениями; этот инструмент не различает причины. Сопоставьте их с расписанием конкретного продукта, правилами свечей и журналом получения данных. Не заполняйте пропуски последней ценой без обоснования и отдельной записи о создании синтетических свечей.
У OANDA начало свечи и ценовая основа Bid, Ask или средняя цена задаются документацией. Флаг complete относится к завершению периода одной свечи, а не к полноте выгрузки. У MT5 при наличии минутной свечи без ее тиков тестер может генерировать тики. Поэтому нулевые пропуски OHLC не подтверждают полную историю исходных тиков и не удостоверяют тест стратегии.
Сохраните настройки и объяснения
JSON сохраняет исходные названия полей программы и подробный результат; TXT содержит русские подписи и те же счетчики с примерами. Скачивается результат проверки, а не исходный CSV. Любое изменение файла или настроек убирает прежний результат до повторной проверки; сброс возвращает исходные границы. Сохраните оригинальный файл отдельно и запишите инструмент, поставщика, Bid/Ask либо другую основу цены, часовой пояс и подтвержденную причину каждого исправления.
Подробнее о подготовке данных — в исходном англоязычном руководстве. Проверка файла остается одним ограниченным шагом и не прогнозирует прибыльность.