Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 955

 
User_mt5:

Гы)) Вот я тоже так думал.

А оказывается это - Состояние окружения.

Покажи пальцем, где это в состоянии окружения? Я вижу только в операциях с графиками




 

MQLInfoString() Вот:

https://www.mql5.com/ru/docs/constants/environment_state/mql5_programm_info

И да, в графиках, тоже есть. Недосмотрел. Видать, пребывал в задумчивости:)

Документация по MQL5: Константы, перечисления и структуры / Состояние окружения
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения
  • www.mql5.com
Константы, перечисления и структуры / Состояние окружения - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
User_mt5:

MQLInfoString() Вот:

https://www.mql5.com/ru/docs/constants/environment_state/mql5_programm_info

И да, в графиках, тоже есть. Недосмотрел. Видать, пребывал в задумчивости:)

Это исключительно своё собственное имя. Это совсем не то.

 
Други, пособите кому не в лом... Мозг уже сломал, не могу распознать ошибку.
Суть: 
Выставляю Стоп-ордера и в последующем модифицирую их.
Когда выставляю по одному ордеру, всё в порядке, при тестировании всё модифицирует как задумано. 

ошибок в журнале нет. 

2018.12.06 21:02:19.226 Core 1  2018.12.04 17:59:40   order modified [#495 buy stop 0.10 EURUSD at 1.13901]
2018.12.06 21:02:19.226 Core 1  2018.12.04 17:59:40   CTrade::OrderSend: modify #495 at 1.13901 (sl: 0.00000 tp: 0.00000) [done]
2018.12.06 21:02:19.226 Core 1  2018.12.04 19:03:40   order modified [#495 buy stop 0.10 EURUSD at 1.13763]

При попытке выставить два противоположных ордера получается бяка... вот такая:

2018.12.06 21:09:06.985 2018.01.02 11:59:00   failed modify order #2 buy stop 0.10  at 1.20687 sl: 0.00000 tp: 0.00000 -> 1.20270, sl: 0.00000 tp: 0.00000 [Invalid price]
2018.12.06 21:09:06.985 2018.01.02 11:59:00   CTrade::OrderSend: modify #2 at 1.20270 (sl: 0.00000 tp: 0.00000) [invalid price]
2018.12.06 21:09:06.986 2018.01.02 11:59:20   failed modify order #2 buy stop 0.10  at 1.20687 sl: 0.00000 tp: 0.00000 -> 1.20264, sl: 0.00000 tp: 0.00000 [Invalid price]

Я догадываюсь что означает [Invalid price].   Но не понимаю, почему оно самое... не возникает при выставлении одного ордера.  Это наводит на мысли, что дело не в цене... 

Может это из-за того что я в модификации SL и ТР указал 0,0,  так при установке ордера компилятор с меня этого не требовал и позволял без них выставляться. 

Может дело в slippage, но при установке Позиций аналогичным образом, я вроде такой проблемы не видел,  или в том, что я не правильно открываю ордера или неправильно пытаюсь их определить по тикету... и/или магику.

Тестирую на демо, котировки Альпарёнышей, счёт с поддержкой хедж. 

Ошибка возникает ещё до срабатывания ордеров, при первой модификации, (лакировки Поз. ещё нет) и когда один из ордеров срабатывает в позицию, ошибка уходит оставшийся ордер модифицируется как миленький.  

Может я где то в коде матерное слово вставил...

Не ругайте сильно, у меня алиби... несколько дней всего разбираюсь с mql5... Что..б! Его... разработчики... были здоровы)))

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

Слава богу, в судовом инопланетном журнале, нашёл два знакомых слова  Commtnt и Print... 

Файлы:
 

Всем привет!

Кто-нибудь когда-нибудь пробовал выбрать/скрыть кастомный символ через CustomSymbolSetInteger?

Этот метод требует 3 входных параметра: имя символа, идентификатор свойства и значение типа long.



При этом в документации указано, что для свойства SYMBOL_VISIBLE необходим тип свойства bool


Как установить верное значение этого идентификатора свойства???

Пробовал поставить в значении "true", при этом вылазит ошибка 5307 - Неправильное свойство пользовательского символа

 
Rustam Esedulaev:

Всем привет!

Кто-нибудь когда-нибудь пробовал выбрать/скрыть кастомный символ через CustomSymbolSetInteger?

Этот метод требует 3 входных параметра: имя символа, идентификатор свойства и значение типа long.



При этом в документации указано, что для свойства SYMBOL_VISIBLE необходим тип свойства bool


Как установить верное значение этого идентификатора свойства???

Пробовал поставить в значении "true", при этом вылазит ошибка 5307 - Неправильное свойство пользовательского символа

Я не проверял на кастомных, но по аналогии с нормальными, для скрытия символа не должно быть открытых графиков и позиций\ордеров.

 
vladzeit:
***

*** счёт с поддержкой хедж. 

***

Вы нигде в коде не учитываете, что счёт хедж (то есть не производите подсчёт отложенных ордеров и не производите подсчёт позиций).

Второе: чтобы с чем-то работать (отложенный ордер, например) его сначала нужно ВЫБРАТЬ и только после этого обращаться к его свойствам.

Вам нужно: начать проектировать свой советник ЗАНОВО, по-шагам. Допустим шаг 1: сначала определится, в каких величинах выставляются SL и TP (points или pips). Шаг два: подсчёт отложенных ордеров. Шаг три: если нет отложенных ордеров - выставление отложенного ордера. Шаг четыре: подумать, а что будет, когда отложенный ордер срабатывает? Шаг ...

 
Vladimir Karputov:

Пожалуйста, начните ВНИМАТЕЛЬНО читать: 1. Данный индикатор - для терминала MetaTrader 5.


Дальнейшие вопросы будут переносится в ветку для начинающих

так я и работаю в МТ5 и приложенный код тоже для МТ5

 
Boris Egorov:

так я и работаю в МТ5 и приложенный код тоже для МТ5

Ознакомьтесь с разделом справки о том, как правильно создавать хендлы индикаторов

Пример кода есть в справке для любого встроенного индикатора. 

 
Vladimir Karputov:

Вы нигде в коде не учитываете, что счёт хедж (то есть не производите подсчёт отложенных ордеров и не производите подсчёт позиций).

Второе: чтобы с чем-то работать (отложенный ордер, например) его сначала нужно ВЫБРАТЬ и только после этого обращаться к его свойствам.

Вам нужно: начать проектировать свой советник ЗАНОВО, по-шагам. Допустим шаг 1: сначала определится, в каких величинах выставляются SL и TP (points или pips). Шаг два: подсчёт отложенных ордеров. Шаг три: если нет отложенных ордеров - выставление отложенного ордера. Шаг четыре: подумать, а что будет, когда отложенный ордер срабатывает? Шаг ...V

Vladimir, спасибо за указание. Переделаю, следуя изложенной Вами логике. Я уже посмотрел в Вашем примере советника (Hoop master 2) как и когда Вы используете учёт ордеров и позиций и обращаетесь к их свойствам. 

Попробую по аналогу.  

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