Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2746

Alexey Belyakov #:
Господи!!! Как много всего! 

ИИ без должной настройки пишет так, как будто ей за каждую строку кода деньги платят. Местами ей и этого мало, и тогда она пишет вообще не нужный код.

Типа этого:

Comment("\n\n\n\n"); // Clear previous comments
Коллеги День Добрый! Допустим есть треугольник из 3-х валютных пар, его по истории можно прогнать на МТ5 какой ни будь приблудой, в которой указаны такие показатели как лотность, направление ордеров, закрытие по указанному профиту и максимальная просадка?
Alexey Belyakov #:
 Добрый день!
Помогите пожалуйста решить одну задачу. Хочу посчитать - cколько закрытий цен после послдеднего пересечения ценой Машки. К примеру взял 9-периодную машку. 
...То есть сколько баров закрылось выше MA после последнего пересечения цены 9 -периодной MA ? 


 Мне удалось вытащить последние 100 цен Close, дальше упёрся. Не могу сообразить, как теперь посчитать количество после пересечения.


Лучше считайте сколько close выше МА9 от текущего бара до пересечения. Это и есть количество закрытых баров после пересечения… Просто это одно и то же…

Всем доброго времени суток! Вопрос по тестеру  mql5.

int Tik;
void OnTick()
{
Tik++;
if(если последний тик, или если сразу после последнего тика )Print("---------------- ",Tik);
}
//void OnDeinit()
//{
//Print ("--------------",Tik);
//}

В этом коде программа считает каждый тик. Считает в течении 1 недели.
ВОПРОС. При помощи какой функции или языковой конструкции  можно сделать так что бы Print() напечатала количество тиков 1 раз или на последнем тике, или сразу после последнего тика.
Разумеется я могу заранее посмотреть сколько тиков в недельной свече и написать в условии if( Tik== х) напечатать Print(). Но мне нужно что бы именно программа нашла нужный мне момент и напечатала Print().

Я пробовал добавлять функцию OnDeinit() и в ней печатать Print(). Но Print() не печатался.

Всем спасибо за помощь.

Андрей Кондрашов #:

Всем доброго времени суток! Вопрос по тестеру  mql5.

В этом коде программа считает каждый тик. Считает в течении 1 недели.
ВОПРОС. При помощи какой функции или языковой конструкции  можно сделать так что бы Print() напечатала количество тиков 1 раз или на последнем тике, или сразу после последнего тика.
Разумеется я могу заранее посмотреть сколько тиков в недельной свече и написать в условии if( Tik== х) напечатать Print(). Но мне нужно что бы именно программа нашла нужный мне момент и напечатала Print().

Я пробовал добавлять функцию OnDeinit() и в ней печатать Print(). Но Print() не печатался.

Всем спасибо за помощь.

int Tik = 0;

void OnTick()
{
   Tik++;
}

// Вызывается один раз, когда тестирование закончилось (только в тестере)
double OnTester()
{
   Print("---------------- OnTester: ", Tik);
   return(Tik); 
}

// Вызывается при выгрузке эксперта: конец теста, удаление с графика, перекомпиляция и т.д.
void OnDeinit(const int reason)
{
   Print("---------------- OnDeinit: ", Tik, "  reason=", reason);
}
Vladimir Deryagin #:

Спасибо.