Обсуждение статьи "От матриц к модели: Как запустить ML-пайплайн в MQL5 и довести его до ONNX"

 

Опубликована статья От матриц к модели: Как запустить ML-пайплайн в MQL5 и довести его до ONNX:

Показано, как организовать согласованный ML-конвейер в MetaTrader 5 с разделением ролей: Python обучает и экспортирует модель в ONNX, MQL5 воспроизводит нормализацию и PCA через matrix/vector и выполняет инференс. Такой подход делает входы модели стабильными и проверяемыми, а тестер стратегий MetaTrader 5 даёт метрики для анализа поведения системы.

Машинное обучение (ML, Machine Learning) в терминале пугает не столько модель, сколько всем, что её окружает. Кажется, что без отдельного стека, Python-скриптов и сложной интеграции здесь не обойтись. В итоге возникает ощущение: ML — это что-то внешнее по отношению к MetaTrader 5.

Но стоит убрать лишние слои, и картина упрощается. Любой ML-пайплайн — это последовательность базовых операций: сформировать признаки, привести их к масштабу, убрать избыточность и передать результат в модель. Это не магия нейросетей, а обычная линейная алгебра.

В этой статье мы пройдём этот путь последовательно. Без лишней теории. С опорой на матрицы и векторы как основной инструмент. И с фокусом на главном: как получить результат, который воспроизводится и в обучении, и в реальной торговой среде.

ML-конвейер


Автор: MetaQuotes

 
ИМХО, нормализация и вычисление PCA на всем наборе данных и только потом разделение его на обучающую и валидационную выборки означает заглядывание в будущее. При работе онлайн вы не имеете возможность изменить нормализацию или адаптировать PCA с учетом последних данных. Честным экспериментом было бы начальное разделение данных на два набора и потом нормализация+PCA только на in-sample части, а затем применение найденных метапараметров преобразования входных данных на out-of-sample.