Индикатор SOMFX1Predictor

Купить индикатор SOMFX1Predictor в магазине систем алготрейдинга

Если вы торгуете с использованием свечных фигур и хотите усовершенствовать свои методы современными технологиями, этот индикатор для вас. Фактически он является частью набора инструментов, который основывается на нейросетевом движке самоорганизующихся карт (Self-Organizing Map, SOM) для распознавания и предсказания свечных фигур, а также для исследования входных данных и результатов работы сети. Набор содержит:

  • SOMFX1Builder – скрипт для обучения нейронных сетей; он создает файл с обобщенными данными о наиболее характерных ценовых фигурах, который может использоваться для предсказания баров в фигурах либо в отдельном окне (с помощью индикатора SOMFX1), либо непосредственно на основном графике (SOMFX1Predictor);
  • SOMFX1 – индикатор для предсказания и визуального анализа ценовых фигур, входных и выходных данных обученной нейронной сети (в отдельном окне);
  • SOMFX1Predictor – данный индикатор для предсказания ценовых фигур непосредственно в основном окне;
Инструменты реализованы отдельно друг от друга в связи с тем, что MetaTrader 4 имеет некоторые ограничения, например, в данный момент невозможно запустить длительные вычисления в индикаторе, поскольку индикаторы исполняются в главном потоке.

Если кратко, то весь процесс анализа цен, обучения сети, распознавания фигур и их предсказания заключается в следующих шагах:

  1. Создание нейронной сети с помощью SOMFX1Builder;
  2. Анализ качества полученной сети с помощью SOMFX1; если неудовлетворительно, возврат на шаг 1 с новыми настройками; вы можете пропустить шаг 2 по желанию;
  3. Использование окончательной версии сети для предсказания фигур при помощи SOMFX1Predictor.

Подробности о шагах 1 и 2 – обучении нейросети и визуальном анализе данных – рассматриваются на страницах соответствующих инструментов – SOMFX1Builder and SOMFX1. В этом документе описывается использование SOMFX1Predictor.

Внимание: индикатор требует для работы файл, созданный скриптом SOMFX1Builder. Таким образом, необходимо либо скачать SOMFX1Builder и сгенерировать файл в соответствии с вашими требованиями, либо попросить друга (имеющего скрипт) создать файл для вас.

Принципы работы

Этот индикатор – наиболее простая часть данного нейросетевого инструментария. Он берет имя файла с обученной нейронной сетью и показывает прогноз на основном ценовом графике. Прогноз изображается красной линией, которая может быть частично толстой, а частично тонкой. Толстые фрагменты означают места, где сеть более уверена в прогнозе. Предсказание начинается от вертикальной пунктирной линии желтого цвета под названием “FromPastToFuture”.  Вы можете двигать линию на произвольную позицию, и индикатор будет считывать образец цены возле этого места, подавать его на вход SOM, и отображать предсказание следующего движения цены. Текущий образец цены – это фрагмент приращений цен, взятый с PatternSize баров слева от  линии “FromPastToFuture”. Когда вы открываете индикатор в первый раз, линия помещается на бар LearnStop. Если вы передвинете линию на 0-ой бар, индикатор будет автоматически смещать её на каждый новый 0-ой бар по мере их появления, то есть линия “приклеивается” к последнему бару.

Заметьте, что предсказание начинается с текущего бара, то есть текущий бар тоже предсказывается. Это сделано, потому что текущий бар обычно не закончен и требует предсказания сам по себе. Более того, если принять еще назаконченный бар во внимание, предсказание станет противоречивым (нестабильным во время формирования бара). Из-за того, что текущий бар тоже предсказывается, красная линия начинается на 1 бар левее вертикальной линии “FromPastToFuture” – она показывает, как цена должна меняться на текущем баре.

Индикатор может опционально выводить саму нейронную сеть (карту), если ShowMap равно true. В этом случае на графике появляются две квадратных карты.

Левый квадрат показывает текущую активность нейронов: нейроны с более высоким возбуждением выводятся красным, а с меньшим – синим. Другими словами, чем краснее ячейка на карте, тем лучше нейрон соответствует текущей ценовой фигуре.

Второй – правый – квадрат отображает карту “плотности заселения” ячеек, то есть цвет сигнализирует о количестве образцов в исходных данных, которые попали в соответствующую ячейку и сформировали её ценовую фигуру. Красный цвет означает высокую плотность, а синий – низкую. Серые ячейки не имеют соответствующих им образцов во входных данных.

Параметры

  • LearnStart – номер бара в истории, где начинаются обучающие данные, или точные дата и время этого бара (в формате “YYYY.MM.DD HH:MM”); данный параметр – строка, что позволяет вводить и числа, и даты; данный параметр используется здесь не для обучения, а для воссоздания обучающего набора данных (соответствующих нейросети), что важно если параметр UseAverage равен true (см. далее), а также для визуализации “плотности заселения”; по-умолчанию – 5001; если ввести автоматически сгенерированное имя в параметр NetFileName (см. далее), индикатор разделяет имя на составляющие и использует их вместо других параметров, включая и LearnStart; другими словами, данный параметр не влияет на работу, если в параметр  NetFileName введено автоматически сгенерированное имя файла нейросети;
  • LearnStop – номер бара в истории, где заканчиваются обучающие данные, или точные дата и время этого бара (в формате “YYYY.MM.DD HH:MM”); данный параметр – строка; по-умолчанию – 1; данный параметр используется здесь не для обучения, а для воссоздания обучающего набора данных (соответствующих нейросети), что важно если параметр UseAverage равен true (см. далее), а также для визуализации “плотности заселения”; данный параметр не влияет на работу, если в параметр  NetFileName введено автоматически сгенерированное имя файла нейросети;
  • PatternSize – количество баров в одной фигуре; по-умолчанию – 5; данный параметр не влияет на работу, если в параметр  NetFileName введено автоматически сгенерированное имя файла нейросети;
  • GridSize –  размер карты; это количество ячеек/нейронов по вертикали и горизонтали; допустимые значения: 3 – 50; по-умолчанию – 7; данный параметр не влияет на работу, если в параметр  NetFileName введено автоматически сгенерированное имя файла нейросети;
  • PredictionBars – количество баров предсказания; по-умолчанию – 10; обратите внимание, что каждый следующий бар предсказывается с меньшей точностью, чем предыдущий, поскольку ошибки предсказания накапливаются;
  • UseAverage – это переключатель специального режима; когда он отключен (false, по-умолчанию) предсказания делаются на основе весов выигравшего нейрона, то есть они определяются исключительно картой; когда режим включен (true), предсказания делаются на основе средней цены всех образцов, отобразившихся на выигравший нейрон; это означает, что в предсказании участвует не только карта, но и данные обучающей выборки, именно поэтому важно указание точных дат и времени для отрезка обучения; с этим параметром можно “поиграть” для получения лучших результатов: использование весов нейронов – это классических подход, но использование средних цен привносит дополнительную привязку к исходным данным – в частности, в этом случае можно принимать во внимание дисперсию и тем самым оценивать точность предсказания;
  • PriceType – тип цены; по-умолчанию – close; данный параметр не влияет на работу, если в параметр  NetFileName введено автоматически сгенерированное имя файла нейросети;
  • AddInvertedPrice –  включение/отключение режима, когда в набор образцов добавляются инвертированные ценовые движения; по-умолчанию – true; это означает, что количество образцов увеличится вдвое;
  • NetFileName – имя файла обученной нейронной сети, сгенерированного скриптом SOMFX1Builder; если имя формировалось автоматически, оно включает несколько необходимых компонентов, чтобы восстановить вышеперечисленные параметры; таким образом, пользователь может заполнить только один этот параметр; структура имени файла следующая: SOM-V-D-SYMBOL-TF-YYYYMMDDHHMM-YYYYMMDDHHMM-P.candlemap, где V – PatternSize, D – GridSize, SYMBOL – текущий символ, TF – текущий таймфрейм, YYYYMMDDHHMM – LearnStart и LearnStop соответственно; P – PriceType;
  • CellSize – размер ячейки при визуализации карты на графике (если ShowMap равно true); по-умолчанию – 20, что подходит для карт размером до 10; для больших карт нужно выбрать размер ячеек поменьше, иначе два представления карты будут перекрываться;
  • PrintData – включение/отключение вывода отладочных сообщений в журнал; по-умолчанию – false;
  • ShowMap – опция показа карты на графике аналогично тому, как это делается в индикаторе SOMFX1; по-умолчанию – false;

Если какие-то параметры неверны, индикатор выводит сообщение об ошибке в лог. Например, карту можно загружать только на тот же самый символ и тот же самый таймфрейм, на которых она обучалась.

Добавить комментарий

Войти с помощью: 

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Time limit is exhausted. Please reload the CAPTCHA.