Скачать MetaTrader 5

Советники: Martin

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Automated-Trading
Админ
100918
Automated-Trading 2014.12.01 14:54 

Martin:

Эксперт работает без индикаторов, за основу был взят советник Ilan 2.1 by Tarasov.

Автор: Aleksey Altukhov

roller
77
roller 2014.12.02 19:15  
Такого советника как Илан от Тарасов нет и не было - это переименованый  Илан Динамик
Сергей Криушин
2791
Сергей Криушин 2014.12.03 09:14  

Выставляет слишком много ордеров - как бы их уменьшить до 4 -5, а так  нормально тянет

Aleksey Altukhov
947
Aleksey Altukhov 2014.12.04 16:53  
chipo:

Выставляет слишком много ордеров - как бы их уменьшить до 4 -5, а так  нормально тянет

Уменьшить можно параметром MaxTrades.
Сергей Криушин
2791
Сергей Криушин 2014.12.04 17:57  
le107_:
Уменьшить можно параметром MaxTrades.

Да спасибо, я и раньше уменьшал, но из за быстрого мелькания на тестере не понял что уменьшается теперь врубился, но тест стал значительно хуже хотя на реале все равно все время перезапускаю так что он не успевает разогнаться и много накрутить, попробую увеличить Exp ))


Aleksey Altukhov
947
Aleksey Altukhov 2014.12.04 18:21  
chipo:

Да спасибо, я и раньше уменьшал, но из за быстрого мелькания на тестере не понял что уменьшается теперь врубился, но тест стал значительно хуже хотя на реале все равно все время перезапускаю так что он не успевает разогнаться и много накрутить, попробую увеличить Exp ))


После уменьшения количества сделок (MaxTrades) нужно заново оптимизировать по картинкам в шапке, и оптимизировать хотя бы раз в неделю до текущей(сегодняшней - не той, что на рисунке, а у тебя в трее) даты(рис. 4). И еще: На первом рисунке депозит нужно указывать не тот что на рисунке, а от своего текущего баланса реального или демо счета. Единственное, что можно списать с рисунков, это рисунок второй, где стоят значения: Старт, шаг, Стоп (..и галочки те же проставить).

Aleksey Altukhov
947
Aleksey Altukhov 2014.12.04 20:05  

Новая функция, которая по возможности закрывает сделки прошлых оптимизаций в плюс, по "Interval" = "MagicNumber".

(В комментариях сделок: Martin (X), где X - Interval = (он же) MagicNumber).

Заменить:

   if (Tp < MarketInfo(Symbol(), 14)) Tp = MarketInfo(Symbol(), 14);
   for (int cnt = 0; cnt<OrdersTotal(); cnt++) {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if (TimeCurrent() > OrderOpenTime() + 31557600) {
         if (OrderSymbol() == Symbol()) { 
            if (OrderType() == OP_BUY) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Bid, In, White);
            }
            if (OrderType() == OP_SELL) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Ask, In, White);
            }
         }
      }
   }

 На:

   if (Tp < MarketInfo(Symbol(), 14)) Tp = MarketInfo(Symbol(), 14);
   for (int cnt = 0; cnt<OrdersTotal(); cnt++) {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if (TimeCurrent() > OrderOpenTime() + 31557600) {
         if (OrderSymbol() == Symbol()) { 
            if (OrderType() == OP_BUY) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Bid, In, White);
            }
            if (OrderType() == OP_SELL) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Ask, In, White);
            }
         }
      }
      ordprof = 0;
      ordprof = OrderProfit() + OrderSwap() + OrderCommission();
      if (OrderMagicNumber() != In && ordprof > 0) {
         if (OrderSymbol() == Symbol()) { 
            if (OrderType() == OP_BUY) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Bid, In, White);
            }
            if (OrderType() == OP_SELL) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Ask, In, White);
            }
         }
      }
   }
Сергей Криушин
2791
Сергей Криушин 2014.12.05 00:09  
le107_:

Новая функция, которая по возможности закрывает сделки прошлых оптимизаций в плюс, по "Interval" = "MagicNumber".

(В комментариях сделок: Martin (X), где X - Interval = (он же) MagicNumber).

Заменить:

 На:

Спасибо исправил, стал как-то гладко работать - вот на метквотдемо как будто и не мартин, оптимизировать по картинкам не получается - цифирки что-то не исправляются в оптимизации, на Робореале в центовом как первый раз установилось так и работает - любое исправление - сразу слив, даже копию кода на другом диске этого же счета в тестере терминала сливает почему-то


Aleksey Altukhov
947
Aleksey Altukhov 2014.12.05 09:30  
chipo:

Спасибо исправил, стал как-то гладко работать - вот на метквотдемо как будто и не мартин, оптимизировать по картинкам не получается - цифирки что-то не исправляются в оптимизации, на Робореале в центовом как первый раз установилось так и работает - любое исправление - сразу слив, даже копию кода на другом диске этого же счета в тестере терминала сливает почему-то


После того, как оптимизация закончиться, нужно будет заходить в "Результаты оптимизации":

Результаты оптимизации 

Потом в "Свойства эксперта" в Тестере эти результаты входных параметров сохранить(Желательно в "Папка терминала\MQL4\Presets", чтоб потом не искать). А потом уже на графике в Свойствах советника "F7" загрузить эти входные параметры. Можно перед или после сохранения эти результаты протестить с визуализацией (убрать галочку на "Оптимизация" перед стартом).

Сергей Криушин
2791
Сергей Криушин 2014.12.06 17:01  
нельзя ли как-то менять лот, чтоб не  только по серверному - с 0,1 хорошо берет, а с 0.01 не успевает много  набрать на 5 знаке, так как добавил отсечку по проценту
Aleksey Altukhov
947
Aleksey Altukhov 2014.12.07 04:42  
chipo:
нельзя ли как-то менять лот, чтоб не  только по серверному - с 0,1 хорошо берет, а с 0.01 не успевает много  набрать на 5 знаке, так как добавил отсечку по проценту
К примеру, если в значение “Equity_per_lot” стоит – 10000, а шаг изменения лота(по серверу) – 0.01, то лот будет проходить по отметкам:
 
Средства Лот
0 – 19999 0.01
20000 – 29999 0.02
30000 – 39999 0.03

и т.д. через каждые 10000 у.е. средств.

К примеру, если в значение “Equity_per_lot” стоит – 5000, а шаг изменения лота(по серверу) – 0.01, то лот будет проходить по отметкам:
 
Средства Лот
0 – 9999 0.01
10000 – 14999 0.02
15000 – 19999 0.03

и т.д. через каждые 5000 у.е. средств.

К примеру, если в значение “Equity_per_lot” стоит – 1000, а шаг изменения лота(по серверу) – 0.01, то лот будет проходить по отметкам:
 
Средства Лот
0 – 1999 0.01
2000 – 2999 0.02
3000 – 3999 0.03

и т.д. через каждые 1000 у.е. средств.

Equity_per_lot  – 10000, минимальный лот - 0.1, шаг изменения - 0.01:

Средства Лот
0 – 109999 0.10
110000 – 119999 0.11
120000 – 129999 0.12

и т.д. 

Считай по средствам 

12345678...11
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий