Скачать MetaTrader 5

MQL4. Уровень и МА

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

Подскажите пожалуйста. Какое условие прописать, чтобы было пересечение двух МА и они пересекали уровень, открывалась сделка на куплю?

 

Ivan Vagin
8888
Ivan Vagin  
Anna_89:

Подскажите пожалуйста. Какое условие прописать, чтобы было пересечение двух МА и они пересекали уровень, открывалась сделка на куплю?

 

КроссМА
Anna_89
521
Anna_89  
Ivan Vagin:
КроссМА
То есть. И как его использовать?
Vasyl Nosal
18960
Vasyl Nosal  
Anna_89:

Подскажите пожалуйста. Какое условие прописать, чтобы было пересечение двух МА и они пересекали уровень, открывалась сделка на куплю?

 

Надо сравнивать позапрошлый бар с данными МА и прошлый.

MA_fast[2]>=MA_slow[2] && MA_fast[1]<MA_slow[1] 

Victor Nikolaev
Модератор
15088
Victor Nikolaev  
Vasyl Nosal:

Надо сравнивать позапрошлый бар с данными МА и прошлый.

MA_fast[2]>=MA_slow[2] && MA_fast[1]<MA_slow[1] 

А как же уровни?

Да и пересечение проще по другому находить. Зачем же так топорно 

Renat Akhtyamov
6202
Renat Akhtyamov  
Victor Nikolaev:

А как же уровни?

Да и пересечение проще по другому находить. Зачем же так топорно 

Покажите пожалуйста вариант, очень интересно. То что топорно будет работать - это сто процентов, ибо опробовал уже такое в торговле.
Victor Nikolaev
Модератор
15088
Victor Nikolaev  
new-rena:
Покажите пожалуйста вариант, очень интересно. То что топорно будет работать - это сто процентов, ибо опробовал уже такое в торговле.

Пересечения бывают довольно редко.

MA1=iMA(....);
MA2=iMA(....);
MA3=iMA(....);
if ((MA1-MA2)*(MA2-MA3)<0) // Пересечение
{
// Ваш код
}

 Скорость работы выше. Хотя не всегда можно использовать.

Умножение быстрее выполняется чем сложное логическое выражение.

Для работы в режиме оптимизации  актуально

Renat Akhtyamov
6202
Renat Akhtyamov  
Victor Nikolaev:

Пересечения бывают довольно редко.

 Скорость работы выше. Хотя не всегда можно использовать.

Умножение быстрее выполняется чем сложное логическое выражение.

Для работы в режиме оптимизации  актуально

Понятненько. Спасибо!
George Merts
4097
George Merts  
Victor Nikolaev:

Пересечения бывают довольно редко.

 Скорость работы выше. Хотя не всегда можно использовать.

Умножение быстрее выполняется чем сложное логическое выражение.

Для работы в режиме оптимизации  актуально

На мой взгляд, к подобным случаям следует подходить очень аккуратно.

Действительно, умножение зачастую быстрее работает, чем сложная логика. Но, зато логика - гораздо более понятна человеку, чем умножение.

Поддержку кода, на мой взгляд, гораздо проще и надежнее осуществлять с логическими выражениями.

Поэтому подобные замены - по мне, оправданы в ограниченном количестве случаев, и при этом обязательно требуется хорошее комментирование кода.

Renat Akhtyamov
6202
Renat Akhtyamov  
George Merts:

На мой взгляд, к подобным случаям следует подходить очень аккуратно.

Действительно, умножение зачастую быстрее работает, чем сложная логика. Но, зато логика - гораздо более понятна человеку, чем умножение.

Поддержку кода, на мой взгляд, гораздо проще и надежнее осуществлять с логическими выражениями.

Поэтому подобные замены - по мне, оправданы в ограниченном количестве случаев, и при этом обязательно требуется хорошее комментирование кода.

А мне показалось что там не только умножение показано, но и логика чуток другая по сравнению с первым постом ветки...
Dmitry Fedoseev
45393
Dmitry Fedoseev  
Anna_89:

Подскажите пожалуйста. Какое условие прописать, чтобы было пересечение двух МА и они пересекали уровень, открывалась сделка на куплю?

 

Если прям точно так, как написано, вряд ли будет хорошо, редко такие условия выполнятся. Одновременное пересечение двух ма и сразу пересечение с уровнем.  

Отделите пересечение двух линий от положения одной линии относительно другой и уточните условия. После этого, скорее всего, и вопроса не возникнет.   

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