Перейти к содержанию

Prefetch

CLI-скрипт для загрузки тиков Dukascopy и конвертации в M1 Parquet.

python prefetch.py --symbol EURUSD --months 3
python prefetch.py --symbol EURUSD --years 2

Идемпотентность

Скрипт определяет какие торговые часы уже есть в Parquet и скачивает только недостающие. Raw .bi5 файлы кэшируются локально — сетевой запрос к Dukascopy делается только один раз на каждый час.

При мерже с существующим Parquet дубликаты удаляются, приоритет у новых данных (keep="last").

После запуска

Изменился mtime Parquet-файла → следующий запрос к API автоматически перечитает кэш в памяти.

Торговые часы

Рынок закрыт: суббота, воскресенье до 21:00 UTC, пятница с 21:00 UTC. Эти часы пропускаются без попыток скачать.

Параллельность

Загрузка идёт в ThreadPoolExecutor с --workers потоками (по умолчанию 6). При сетевой ошибке — 3 попытки с паузой 1.5с.