Как усреднить позицию в Эксперте MQL5?

 

Привет!

Хочу с помощью Эсперта MQL5 докупать уже открытую позицию. Перерыл весь сайт и ничего не нашел не эту тему.

Подскажите, пожалуйста, если кто сталкивался с такой задачей, как это сделать?

Спасибо!

 
Евгений Панин:

Привет!

Хочу с помощью Эсперта MQL5 докупать уже открытую позицию. Перерыл весь сайт и ничего не нашел не эту тему.

Подскажите, пожалуйста, если кто сталкивался с такой задачей, как это сделать?

Спасибо!

А какие проблемы?

Например у Вас позиция BUY. Вы просто открываете ещё Buy.

 
А вообще не понятно - в названии темы "Как усреднять", а сам вопрос "Как докупать". Опишите, пожалуйста, подробнее, что именно нужно и на каком типе MetaTrader 5 счёте: на неттинге или на хеджевом счёте (В MetaTrader 5 добавлена хеджинговая система учета позиций).
 
Vladimir Karputov:
А вообще не понятно - в названии темы "Как усреднять", а сам вопрос "Как докупать". Опишите, пожалуйста, подробнее, что именно нужно и на каком типе MetaTrader 5 счёте: на неттинге или на хеджевом счёте (В MetaTrader 5 добавлена хеджинговая система учета позиций).

Владимир, да, вопрос как раз по хеджинговой системе.

Смысл действия в том, чтобы увеличивать позицию при движении инструмента в ненужную сторону и таким образом усреднять позицию и уменьшать убыток по ней.

Алгоритм такой: если цена откатывается на 1% в ненужную сторону, покупать еще лот к уже имеющемуся в позиции.

Проблема состоит в том, что Эксперт MQL5 (из стандартной библиотеки) при открытой ранее позиции должен каким-то образом определить, что цена идёт не в ту сторону и сделать докупку позиции.

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

Логически получается, что это нужно делать в классе Упраления Деньгами, но там таких методов не предусмотрено. Посмотрел все другие классы и тоже не нашел подходящего места.

Вот и мучаюсь от этого.

 
Евгений Панин:

Владимир, да, вопрос как раз по хеджинговой системе.

Смысл действия в том, чтобы увеличивать позицию при движении инструмента в ненужную сторону и таким образом усреднять позицию и уменьшать убыток по ней.

Алгоритм такой: если цена откатывается на 1% в ненужную сторону, покупать еще лот к уже имеющемуся в позиции.

Проблема состоит в том, что Эксперт MQL5 (из стандартной библиотеки) при открытой ранее позиции должен каким-то образом определить, что цена идёт не в ту сторону и сделать докупку позиции.

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

Логически получается, что это нужно делать в классе Упраления Деньгами, но там таких методов не предусмотрено. Посмотрел все другие классы и тоже не нашел подходящего места.

Вот и мучаюсь от этого.

Вы эксперт взяли из стандартной поставки (например этот \MQL5\Experts\Examples\MACD\MACD Sample.mq5) или сгенерировали при помощи Мастера MQL5?
 
Vladimir Karputov:   А вообще не понятно - в названии темы "Как усреднять", а сам вопрос "Как докупать". Опишите, пожалуйста, подробнее, что именно нужно и на каком типе MetaTrader 5 счёте: на неттинге или на хеджевом счёте (В MetaTrader 5 добавлена хеджинговая система учета позиций).
Разница на неттинге или на хеджевом счёте отсутствует. В одном случае будет получено несколько позиций, в другом - полностью эквивалентная одна позиция
 
Евгений Панин:

... увеличивать позицию при движении инструмента в ненужную сторону и таким образом усреднять позицию и уменьшать убыток по ней.
Алгоритм такой: если цена откатывается на 1% в ненужную сторону, покупать еще лот к уже имеющемуся в позиции.
Проблема состоит в том, что Эксперт MQL5 (из стандартной библиотеки) при открытой ранее позиции должен каким-то образом определить, что цена идёт не в ту сторону и сделать докупку позиции.
Пока у меня не получается понять куда именно нужно встроиться в Эксперт, чтобы определить момент отправки сигнала на докупку.  ...

Евгений, Вы пытаетесь решить частные задачи, в то время как давно уже решены общие.
при движении инструмента в ненужную сторону - для этого есть индикаторы и математика
на 1% - на 1 или 10%, на 100 или 200 пунктов - разница лишь количественная, в отличие от качественной - задайте входным параметром
усреднять позицию - усреднение и мартингейл - эти вопросы давно решены
Проблема состоит в том, что Эксперт MQL5 - в MQL4 и MQL5 и вообще на бирже принципы торговли одинаковы
чтобы определить момент отправки сигнала на докупку -    связь между количеством уже открытых позиций и открытием следующей отсутствует.
   Определяйте момент отправки сигнала для следующих позиций так же, как для первой.

 
Евгений Панин:

Привет!

Хочу с помощью Эсперта MQL5 докупать уже открытую позицию. Перерыл весь сайт и ничего не нашел не эту тему.

Подскажите, пожалуйста, если кто сталкивался с такой задачей, как это сделать?

Спасибо!

Поиск по сайту УСРЕДНЕНИЕ или МАРТИНГЕЙЛ
 
Vladimir Karputov:
Вы эксперт взяли из стандартной поставки (например этот \MQL5\Experts\Examples\MACD\MACD Sample.mq5) или сгенерировали при помощи Мастера MQL5?
При помощи Мастера.  Есть какая-то разница между ними?
 
STARIJ:
Поиск по сайту УСРЕДНЕНИЕ или МАРТИНГЕЙЛ
Спасибо за подсказку. Я посмотрел всё по эти материалы ранее. Мартингейл это вообще не то, а усреднение, к сожалению, имеет в статьях немного другой смысл по сравнению с моим случаем
 
Евгений Панин:
При помощи Мастера.  Есть какая-то разница между ними?

Мастер MQL5 создаёт эксперта на базе класса "CExpert" и за открытие/закрытие/реверс отвечает главная функция "bool CExpert::Processing(void)".

При работе на хедж счёте нужно полностью переписать эту функцию и зависимые от неё в новом классе - наследнике от  CExpert.

Причина обращения: