Смотри, как бесплатно скачать роботов
Ищи нас в Telegram!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Советники

Future___ - эксперт для MetaTrader 4

Просмотров:
4049
Рейтинг:
(11)
Опубликован:
2009.01.08 06:55
Обновлен:
2016.07.01 09:39
MQL5 Фриланс Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Попытка создать сеть подтолкнула меня на это дело.

На участке истории мы берем N+M баров. Среди N баров мы записываем сигналы с индикаторов, а среди M - результат.

В результате получаем файл, который называется [последовательность сигналов индикатора с N баров].csv.

В файле результаты дальнейшей истории.

В небольшой блок мы записываем, например:

      int history [1000];
      for (int i=analiz_bars+poisk_fractals;i>poisk_fractals;i--)
         {
         history [i] = NormalizeDouble((tocnost*iMACD(NULL,0,Per_MACD/4,Per_MACD,9,PRICE_CLOSE,MODE_MAIN, i)/(100*Point)),0);
         }
На выходе получаем массив, который в дальнейшем используем здесь:
      string posledovatelnost = shethik +"_";
      for (i=analiz_bars+poisk_fractals;i>poisk_fractals;i--)
         {
         posledovatelnost =posledovatelnost+history [i]+"_";
         }
      posledovatelnost = posledovatelnost +".csv";

Затем сохраняем файл с именем [posledovatelnost].

В сам файл записываем кол-во обращений (для определения стат-веса) и результаты данного блока:

      double MaxHighPik = High [poisk_fractals]; //Начинаем сравнивать бары
      double MaxLowPik = Low [poisk_fractals];  
      for (i=poisk_fractals; i>=1; i--)
         {
         if (MaxHighPik < High [i])
            {
            MaxHighPik = High [i];     
            }
         if (MaxLowPik > Low [i])
            {
            MaxLowPik = Low [i];       
            }
         }
         
      double Fractal_Up = (MaxHighPik - Open [poisk_fractals])/Point;
      double Fractal_Down = (Open [poisk_fractals]-MaxLowPik)/Point;
здесь мы определяем направление движения следующих M баров и достигутые максимумы. Результаты записываются усредненные с возможностью придавать более поздним данным увеличенный ил уменьшенный стат-вес при помощи переменной zabyvaemost. Также усредняются и показания индюков переменной tocnost. При минимальном усреднении выдается только направление +1 или -1.

Но. Как бы все замечательно не было результаты не впечатляющие. Для примера даю два советника. Прибыльность редко поднимается выше 1.1

Пример использования МА:

Если у кого получится сделать нормального эксперта, пожалуйста - отпишитесь.

Doubler Doubler

Простейший советник, который открывает одновременно две позиции в разные стороны, при условии что стоп-лосс убыточной срабатывает на 5 пунктов раньше, чем тейк-профит прибыльной.

StohColored, StohDivergence StohColored, StohDivergence

Дивергенции Стохастика, продолжение темы дивергенций.

BO BO

Осциллятор

Открытие позиций Открытие позиций

Попытка более-менее полной автоматизации открытия Buy и Sell