
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да в кодобазе таких примеров - каждый второй, не считая первого, за редкими исключениями. Вот, среди самых свежих поступлений - News Trading. Переменная Magic и дальше поиск по коду, куда её применили.
Если на одном символе несколько советников - то и магик учитывать надо, помимо символа. Если руками торговать - тоже магик нужен, чтобы советник мог отличить свои ордера от ручных.
А возможно ли сделать так, чтобы советник поступал с открытыми вручную также как и с теми, которые он открыл?
Если да, то как это сделать?
А возможно ли сделать так, чтобы советник поступал с открытыми вручную также как и с теми, которые он открыл?
Если да, то как это сделать?
Считать что если ордер с пустым магиком, то он открыт вручную. Для ручных ордеров обычно Magic=EMPTY.
Боюсь показаться тупым (новичку, я надеюсь, простительно :-) ), но я не понял :-(
Наверное потому, что с магиками не работал и этот момент не изучал.
Если не сложно, можно поподробней как это сделать?
Боюсь показаться тупым (новичку, я надеюсь, простительно :-) ), но я не понял :-(
Наверное потому, что с магиками не работал и этот момент не изучал.
Если не сложно, можно поподробней как это сделать?
Виноват, магик ручного ордера нулевой (0 или NULL), а не пустой (EMPTY).
выбираем ордера в цикле и для каждого смотрим магик:
If(OrderMagicNumber()==Magic || OrderMagicNumber==0)
{тут действия с ордером, у которого магик номер пустой или равен номеру, который присваивает данный советник}
Ещё ручные ордера можно снабдить комментарием, естественно всегда одним и тем же, тем и отличать их от выставленных автоматом.
Но тут есть МАЛЕНЬКАЯ закавыка... Советников-то несколько, насколько я понял, одинаковых, просто на разных графиках, а они все разом захотят поступить с ручным ордером так, как со своим собственным ;)
То есть ещё проверки нужны, не грызёт ли уже этот кусок другой лев...
Может придётся тикет ордера, который уже в работе, в глобальные переменные выводить, чтобы другие копии советника его не трогали.
Виноват, магик ручного ордера нулевой (0 или NULL), а не пустой (EMPTY).
выбираем ордера в цикле и для каждого смотрим магик:
If(OrderMagicNumber()==Magic || OrderMagicNumber==0)
{тут действия с ордером, у которого магик номер пустой или равен номеру, который присваивает данный советник}
Ещё ручные ордера можно снабдить комментарием, естественно всегда одним и тем же, тем и отличать их от выставленных автоматом.
Но тут есть МАЛЕНЬКАЯ закавыка... Советников-то несколько, насколько я понял, одинаковых, просто на разных графиках, а они все разом захотят поступить с ручным ордером так, как со своим собственным ;)
То есть ещё проверки нужны, не грызёт ли уже этот кусок другой лев...
Может придётся тикет ордера, который уже в работе, в глобальные переменные выводить, чтобы другие копии советника его не трогали.
Как и положено новичку - возникли вопросы.
1. Приведённый if, насколько я врубаюсь, берёт в обработку все открытые ордера и делает всё то, что после этой проверки идёт в программе. Так?
2. Как снабдить комментарием ручной ордер?
3. Как может советник установленный, скажем, на EURUSD с М5 пытаться зацепит ордер, открытый, скажем, на GBPJPY с М30?
4. Если всё таки п.3 возможен, то зачем п.1?
Хочется (по изначальной задумке) выравнять в правах все ордера на одном графике перед "своим" советником и сделать их недоступными для советника сидящего на другом.
1. Будет исполнено всё, что будет заключено в фигурные скобки.
2. В форме есть строка комментария, туда надо писать всегда одно и то же. Но это только если с магиком не прокатит, так вроде работать должно и в комментариях нужды нет.
3. Не может, если есть и проверка на символ. ТФ не влияет, терминал и автомат не видит, с какого ТФ был открыт ордер, важны только символ и магик.
4. Но представим ситуацию, когда на одном счёте сидят три советника и все три на EURUSD, но с разными стратегиями, или же просто советники одинаковые, но с разными входными параметрами.
Да ещё и трейдер мешает своими ручными ордерами, как будто делать ему больше нечего. Советники каждый со своим магиком, отличным от другого. Но все на одном символе. И что тогда будет, когда все три ещё и с ручным ордером взаимодействовать пробуют?
Вот про такую ситуацию я и писал, когда упоминал закавыку.
1. Будет исполнено всё, что будет заключено в фигурные скобки.
2. В форме есть строка комментария, туда надо писать всегда одно и то же. Но это только если с магиком не прокатит, так вроде работать должно и в комментариях нужды нет.
3. Не может, если есть и проверка на символ. ТФ не влияет, терминал и автомат не видит, с какого ТФ был открыт ордер, важны только символ и магик.
4. Но представим ситуацию, когда на одном счёте сидят три советника и все три на EURUSD, но с разными стратегиями, или же просто советники одинаковые, но с разными входными параметрами.
Да ещё и трейдер мешает своими ручными ордерами, как будто делать ему больше нечего. Советники каждый со своим магиком, отличным от другого. Но все на одном символе. И что тогда будет, когда все три ещё и с ручным ордером взаимодействовать пробуют?
Вот про такую ситуацию я и писал, когда упоминал закавыку.
По-моему, садить три (более одного) разных советника на одну пару, по крайней мере для моего уровня, - это чрезвычайно сложно. Дай Бог разобраться с работой одного советника с несколькими ордерами. Вообще-то я стремился к ситуации, чтобы советник сам открывал/закрывал один свой ордер, но валютных пар было несколько, на которых установлен один и тот же советник, но параметры для каждой пары подбирались бы в Тестере стратегий, и каждая копия советника работала бы только на своей паре и не лезла на другие. Пробуя работать увидел, что иногда хочется открыть ещё один ордер на паре где советник уже это сделал. Поэтому мне всё что написано выше очень интересно. Можно конечно и не влазить на пару самому, чтобы проще было.
По п.2 Нашёл "Строку комментария" в форме открытия Нового ордера. И как проявит себя то что там будет написано? И что туда рекомендуется писать?
Tomich7L:
По п.2 Нашёл "Строку комментария" в форме открытия Нового ордера. И как проявит себя то что там будет написано? И что туда рекомендуется писать?
Писать то же самое, что в советнике потом ожидаете считать. То есть если в код советника записать что комментарий нужного ордера должен быть "ХХХ", то и при открытии ордера вручную логично будет комментарий "ХХХ" записать, не так ли?
Писать то же самое, что в советнике потом ожидаете считать. То есть если в код советника записать что комментарий нужного ордера должен быть "ХХХ", то и при открытии ордера вручную логично будет комментарий "ХХХ" записать, не так ли?