Я как раз сейчас проектирую свой шаблон советника.
Написал переносимый класс позиции, я вижу позицию, как набор компонент. Каждая компонента - имеет свой объем, свое направление, свой символ, свой магик, свои ТП_СЛ. Фактически, это ордер в МТ4, и позиция в МТ5.
И вот теперь - я остановился на основном цикле (аналог - CExpert::Processing()).
Если у нас позиция из разнонаправленных компонент - какой здесь должен быть генератор входов (модуль торговых сигналов) ? А изменение объема позиции ? Доливки новых компонент, или частичные закрытия старых ? Да и с трейлингом все непросто - позиция, состоящая из компонент, по идее, должна позволять трейлингу менять ТП-СЛ компонент по отдельности.
Как я чувствую, создание шаблона эксперта для МТ5-Хеджа - весьма нетривиальная задача. Хотелось бы послушать народ, что кто думает по этому поводу ?
Если возражений нет, значит будет так:
Хедж | Новый сигнал в | Что делать |
---|---|---|
Открыта позиция Buy | Buy | Открыть Buy |
Открыто две позиции Buy | Sell |
|
Думаю это логично, если получен противоположный сигнал, значит нужно удалить противоположные позиции.
Если возражений нет, значит будет так:
Хедж | Новый сигнал в | Что делать |
---|---|---|
Открыта позиция Buy | Buy | Открыть Buy |
Открыто две позиции Buy | Sell |
|
Думаю это логично, если получен противоположный сигнал, значит нужно удалить противоположные позиции.
Нет, не логично.
Логично оставить пользователю принимать решение в зависимости от торговой стратегии, а не навязывать ему не нужные действия.
Т.е., действие должно быть на выбор пользователя.
А если открыто 3 позиции Buy?
Если возражений нет, значит будет так:
Хедж | Новый сигнал в | Что делать |
---|---|---|
Открыта позиция Buy | Buy | Открыть Buy |
Открыто две позиции Buy | Sell |
|
Думаю это логично, если получен противоположный сигнал, значит нужно удалить противоположные позиции. -- нет, не логично
Вы так публично нарочито-принципиально "закрыли свои глаза на МТ4" и "открыли их на МТ5", что не обратили внимание на простой и очевидный вопрос: "а почему, собственно, так долго цепляются за этот МТ4".
Даже МК "сдались" и ввели хеджинг, чем практически окончательно отправили в историю МТ4.
Так что ответ на ваш вывод такой: "не логично".
Пожалуйста все рассуждения - только на базе класса CExpert - ибо каким мы его представим, такой он и впоследствии будет в стандартной библиотеке.
А я и не против, специально же указал функцию внутри этого класса. Она сейчас, со вводом хеджирования несколько изменилась, но при этом позиция все равно предполагается одна, в то время, как может быть открыто больше позиций, да еще и разнонаправленных.
По сути, класс позиции в хеджевом варианте - это аналог класса ордера в МТ4. Соответственно, получается, что класс CExpert в Стандартной Библиотеке - предназначен для работы с "одним ордером".
Нет, не логично.
Логично оставить пользователю принимать решение в зависимости от торговой стратегии, а не навязывать ему не нужные действия.
Т.е., действие должно быть на выбор пользователя.
А если открыто 3 позиции Buy?
То есть нужен метод, который должен переводить CExpert или в режим "закрыть ВСЕ противоположные позиции" или в режим "Не закрыть противоположные позиции"?
Нет, не логично.
Логично оставить пользователю принимать решение в зависимости от торговой стратегии, а не навязывать ему не нужные действия.
Т.е., действие должно быть на выбор пользователя.
А если открыто 3 позиции Buy?
Нет, Артём -- почитал ещё раз пост Карпутова:
На данный момент советник на базе класса CExpert позволяет держать ОДНУ позицию. То есть, если открыта позиция и поступает сигнал в том-же направлении, что и позиция, то такой сигнал игнорируется.
...
А вот тут начинаются вопросы и не выяснив, для начала что делать: ЗАКРЫВАТЬ ВСЁ или оставлять всё - дальше двигаться не выйдет.
Он вообще не рассматривает в своей логике хеджинг -- поэтому он и вычеркнул вариант "оставить ВСЕ позиции Buy и открыть позицию Sell"
Он просто решает вопрос с доливкой: "по сигналу в ту же сторону -- доливать или нет"
Нет, Артём -- почитал ещё раз пост Карпутова:
Он вообще не рассматривает в своей логике хеджинг -- поэтому он и вычеркнул вариант "оставить ВСЕ позиции Buy и открыть позицию Sell"
Он просто решает вопрос с доливкой: "по сигналу в ту же сторону -- доливать или нет"
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
На данный момент советник на базе класса CExpert позволяет держать ОДНУ позицию. То есть, если открыта позиция и поступает сигнал в том-же направлении, что и позиция, то такой сигнал игнорируется. Напомню (Мастер MQL5: Новая версия), что советник работает с такими модулями как
Так и просится ещё один модуль - модуль открытия позиция. Такой модуль должен управлять возможностями открывать дополнительные позиции в туже сторону, что и первая/последующая позиция. А вот здесь возникает масса нюансов - становится очень много вариантов поведения:
А вот тут начинаются вопросы и не выяснив, для начала что делать: ЗАКРЫВАТЬ ВСЁ или оставлять всё - дальше двигаться не выйдет.