Commit graph mql5-execution-microstructu.../RequestLatencyLab.mq5
Author SHA1 Message Date
DNG
8e05db580b Вынесение методов за пределы определения классов 2026-09-16 15:37:55 +03:00
dng
82c121b62c 2026-09-12 22:14:24 +03:00
DNG
d0b6643b05 fix(audit14): R15-B1..B2 и R15-S1; инвалидация marker в ExportRun проверяется (отказ до переписи пары), NewSessionId по любому известному файлу отчёта (SessionDirUsed — частичный остаток не маскируется), чужой объект графика без принудительной перерисовки в окне; регрессия SESS-03 2026-09-12 16:38:37 +03:00
DNG
9349164b5e fix(audit13): R14-B1..B2 и R14-S1; уникальный session_id (монотонный курсор + проверка занятости каталога, новое имя после переустановки и повтора отказа), marker публикуется один раз после полной проверенной записи (инвалидация до перезаписи пары в ExportRun), InMeasurementWindow учитывает cleanup, отклонённый клик без ChartRedraw в окне; регрессии SESS-01/SESS-02/WIN-02 2026-09-12 12:06:55 +03:00
DNG
148e7a7d9c fix(audit12): R13-B1..B3 и R13-S1..S2; сохранность прерванной синтетической сессии (FINISHED+INCOMPLETE вместо стирания, ReleaseReservation до T0, FolderCreate каталога), единый gate финализации FinalizeRun (checkpoint с read-back + экспорт, повтор неуспешной стадии), сброс окон E3 при ResetForRestart/StartRun, панель из контроллера (RestoreStartedState, BLOCKED сразу), SyncPanelPhase без ChartRedraw внутри окна; регрессии START-03/START-04/RESTART-01/CHECK-01 2026-09-12 11:19:45 +03:00
DNG
37b3090e35 fix(audit11): R11-B1..B3 и R11-S1; независимые счётчики и полный экспорт повторной сессии, один StartRun на физический клик, экспорт-gated FINISHED, финальный checkpoint(force), фазы панели, тесты RUNN-01/START-02 2026-09-12 06:20:31 +03:00
DNG
9465fe6fa5 fix(audit10): блокеры R10-B1..B4 и существенные R10-S1; Start-latch, повторный INTENT, cleanup ждёт DEAL-callback, формат market_ticks.csv, пилот LOCAL_ONLY 2026-09-12 02:21:14 +03:00
DNG
a281c07008 fix(audit9): блокеры R9-B1..B4 и существенные R9-S1..S4; NULL-сессия в InitRun 2026-09-11 21:20:36 +03:00
DNG
4b16006569 fix(audit8): блокеры R8-B1..B4 и существенные R8-S1..S3 2026-09-11 18:16:32 +03:00
DNG
22ce0ffc45 fix(audit7): блокеры R7-B1..B6 и существенные R7-S1..S4 2026-09-11 15:17:38 +03:00
DNG
3467874468 fix(audit6): блокеры R6-B1..B7 и существенные R6-S1..S4 2026-09-11 09:06:39 +03:00
DNG
3d1c7517e9 fix(audit5): блокеры R5-B1..B8 и существенные R5-S1..S6 2026-09-11 04:09:32 +03:00
DNG
2d15ffe04d fix(audit4): блокеры R4-B1..B8 и существенные R4-S1..S5 2026-09-10 22:54:26 +03:00
DNG
c81e51801e fix(audit3): блокеры B1-B10 и существенные S1-S6 этапа 3 аудита
Блокеры:
- B1: cleanup как полная запись tracker (role=CLEANUP, lifecycle, DriveCleanup,
      нулевая экспозиция, однократный dispatch, отказ -> BLOCKED)
- B2: отложенная корреляция ранних ORDER_ADD/DEAL_ADD (PushDeferred/ReconcileDeferred)
- B3: collection не закрывается до ожидаемого REQUEST (T2) для market
- B4: 4754 = not found; 4756/FAILED не = absence; no_active без FAILED
- B5: событийная сверка light (без полного HistorySelect в callback)
- B6: проверка bool HistorySelect; history_scan_budget вместо 100000
- B7: финальный reject подключён к T6 (IsFinalRejection); неоднозначные — нет
- B8: E4 — reuse-анализ без торгового runtime; reuse=1
- B9: PLANNED->INTENT_SAVED->DISPATCHED; счётчик после OrderSend*; один PrecheckRejected
- B10: write/timer/journal errors блокирующие (export check, integrity), timer check

Существенные:
- S1: фактические deviation/comment из настроек в RequestPlan/запросе
- S2: bid/ask/spread/tick_time_msc + actual fields в samples.csv
- S3: пустые статистики summary при n<2
- S4: histogram_rebuilt.csv в LatencyReport; experiment/series из выборки
- S5: калибровка E3: символ + >=5 торговых сессий (trading_session_count)
- S6: market cleanup: type_filling/deviation + PreCheck

Тесты: DEFER-01, NACT-01, REJ-01, AMB-01.
Компиляция 4 exe: 0 errors / 0 warnings. EOL CRLF.
2026-09-10 21:54:49 +03:00
DNG
9b1f6692c9 fix(audit2): блокеры B1-B4 и существенные S5-S9 повторного аудита
B1: детерминированный HistorySelect(0,TimeCurrent) перед CollectDealsByOrder
B2: ResolveEventSequence без fallback; неизвестный REQUEST -> 0 + unresolved
B3: T6 и закрытие коллекции разделены; cleanup только после collection_closed
    (grace-период, COLLECTION_CLOSE события в journal)
B4: CheckTriggered в OnTransaction после REQUEST/ORDER_ADD/DEAL_ADD/
    HISTORY_ADD/ORDER_DELETE; таймер - watchdog
S5: E3 завершается INSUFFICIENT_DATA (InpE3CampaignLimitMin)
S6: Preflight проверяет чистоту символа (позиции/ордера)
S7: position_ticket из trans.position + DEAL_POSITION_ID вместо PositionGetTicket(0)
S8: RUN-T6-01: completed=>T6
S9: CORR-07 обновлён, добавлены CORR-09, COLL-01/02, POS-01, UNRES-01

Сборка MetaEditor 6182 avx2: 0 errors / 0 warnings (все 4 exe)
2026-09-10 19:04:10 +03:00
DNG
434ccac894 fix(audit): устранены пункты 1-13 аудита RequestLatencyLab; сборка 0/0 2026-09-10 16:43:28 +03:00
DNG
1b76ae3ff2 RequestLatencyLab 1.00 (draft): implementation per TZ, LOCAL_ONLY safety default 2026-09-09 01:19:31 +03:00