Скачать MetaTrader 5

Вопрос по результатам оптимизации

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Написал робота? Опубликуй его в Маркете и получай доход!
Nikolay Khrushchev
19184
Nikolay Khrushchev 2011.01.02 19:14 

Оптимизацию своего советника проводил по ценам открытия. Результаты по этому методу и по методу "Все тики" несколько различаются. Совтеник использует индикаторы с уже с закрытых баров (1) а именно MA и Stochastic, но у него есть трейлинг, думаю из-за него и есть отклонения.

метод доход просадка

ЦО 4000 950

ВТ 3000 1113

Период оптимизации 1.01.2010 - 31.09.2010, тестирования 1.10.2010 - 2.01.2011

Внимание вопрос: стоит ли добавить в советник модуль чтобы он обрабатывал только первый тик в новом баре? если можно приведите пример такого модуля.

заранее спасибо уважаемые программисты и с новым годом!

Andrey F. Zelinsky
31364
Andrey F. Zelinsky 2011.01.02 19:54  
Sys15975382:

Оптимизацию своего советника проводил по ценам открытия. Результаты по этому методу и по методу "Все тики" несколько различаются. Совтеник использует индикаторы с уже с закрытых баров (1) а именно MA и Stochastic, но у него есть трейлинг, думаю из-за него и есть отклонения.

метод доход просадка

ЦО 4000 950

ВТ 3000 1113

Период оптимизации 1.01.2010 - 31.09.2010, тестирования 1.10.2010 - 2.01.2011

Внимание вопрос: стоит ли добавить в советник модуль чтобы он обрабатывал только первый тик в новом баре? если можно приведите пример такого модуля.

заранее спасибо уважаемые программисты и с новым годом!


void start()
  {
//---- go trading only for first tiks of new bar
   if(Volume[0]>1) return;
  }
пример из файла "Moving Average.mq4"
Yuri
634
Yuri 2011.01.02 20:22  
Лучше иначе, первый тик может быть и не обработан. Поищите функцию isNewBar поиском.
Nikolay Khrushchev
19184
Nikolay Khrushchev 2011.01.02 20:56  
Спасибо ребят
Nikolay Khrushchev
19184
Nikolay Khrushchev 2011.01.31 21:28  

abolk спасибо из-за тебя я потерял 6000 рублей =) ну сам виноват, не учил мат часть ^^

При переходящем тике, который приходит в момент перехода с 1 ТФ на другой, новый бар не будет обработан при твоем методе, я замутил вот такую конструкцию:

extern bool EveryTick = false;

int TimeN;

в старте:

if (EveryTick==false)

{

if(TimeN == Time[0]) return;

TimeN = Time[0];

}

Andrey F. Zelinsky
31364
Andrey F. Zelinsky 2011.01.31 21:49  
Sys15975382:

Вы ещё счёт выставите MetaQuotes.

Вам же yuripk ответил, что первый тик может быть не обработан.

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