Пользовательские символы. Ошибки, баги, вопросы, предложения. - страница 16

 
Roman:

Но имеем ввиду, что нарушен признак явности.

Внимательно читайте документацию. Там всё явно написано.

И статьи про автоматическую торговлю.

 
Roman:

А вот так вот

Устанавливает All, что соответствует всем разрешённым.

А в документации в колонке "Значение", не чего нет, пусто!
И в колонке "Идентификатор" для строки "Вернуть", всё же предлагаю указать правильную комбинацию для флагов!
Почему бы просто не добавить SYMBOL_FILLING_RETURN с значением 3, явно и понятно всем.

Почему 3 ? Вы явно не понимаете разницу между константами перечисления и флагами. Почитайте значения других флагов, например - флаги разрешённых типов ордера:

Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Для получения текущей рыночной информации служат функции SymbolInfoInteger(), SymbolInfoDouble() и SymbolInfoString(). В качестве второго параметра этих функций допустимо передавать один из идентификаторов из перечислений ENUM_SYMBOL_INFO_INTEGER, ENUM_SYMBOL_INFO_DOUBLE и ENUM_SYMBOL_INFO_STRING соответственно. Некоторые символы (как...
 
Artyom Trishkin:

Почему 3 ? Вы явно не понимаете разницу между константами перечисления и флагами. Почитайте значения других флагов, например - флаги разрешённых типов ордера:

Артём, его непонимание было заметно в первом сообщении на предыдущей странице, №141. И столько времени вы говорили на разных языках.
 
Artyom Trishkin:

Почему 3 ? Вы явно не понимаете разницу между константами перечисления и флагами. Почитайте значения других флагов, например - флаги разрешённых типов ордера:

Артем, мы говорим за установку свойств кастомных символов, флаги для типа ордеров тут не причём.
3 потому что комбинация SYMBOL_FILLING_FOK | SYMBOL_FILLING_IOC возвращает значение 3
и если добавлять новый идентификатор SYMBOL_FILLING_RETURN то значение его будет 3

И ваше пояснение которое вы приводил выше, тоже об этом говорит, только видимо вы ошиблись, вместо "или" написал "и"
Цитирую вас же:

  • Если есть флаг SYMBOL_FILLING_FOK, и есть флаг SYMBOL_FILLING_IOC, то SYMBOL_FILLING_MODE вернёт 3. При этом "Вернуть" есть.

 
Roman:

Артем, мы говорим за установку свойств кастомных символов, флаги для типа ордеров тут не причём.
3 потому что комбинация SYMBOL_FILLING_FOK | SYMBOL_FILLING_IOC возвращает значение 3
и если добавлять новый идентификатор SYMBOL_FILLING_RETURN то значение его будет 3

И ваше пояснение которое вы приводил выше, тоже об этом говорит, только видимо вы ошиблись, вместо "или" написал "и"
Цитирую вас же:

  • Если есть флаг SYMBOL_FILLING_FOK, и есть флаг SYMBOL_FILLING_IOC, то SYMBOL_FILLING_MODE вернёт 3. При этом "Вернуть" есть.

Роман, вы действительно не понимаете что такое набор флагов. Сколько будет в сумме 1 и 2? Наверное это вы без ошибок сможете решить. Поэтому именно И

 
Alexey Viktorov:

Роман, вы действительно не понимаете что такое набор флагов. Сколько будет в сумме 1 и 2? Наверное это вы без ошибок сможете решить. Поэтому именно И

Проверьте что вернёт И

CustomSymbolSetInteger(SName, SYMBOL_FILLING_MODE, SYMBOL_FILLING_FOK & SYMBOL_FILLING_IOC);

А потом вот это

CustomSymbolSetInteger(SName, SYMBOL_FILLING_MODE, SYMBOL_FILLING_FOK | SYMBOL_FILLING_IOC);
A потом вот это
CustomSymbolSetInteger(SName, SYMBOL_FILLING_MODE, 3);
 
Roman:

Проверьте что вернёт И

А потом вот это

Распечатайте такой код

Print("summ_flags = ", SYMBOL_FILLING_FOK | SYMBOL_FILLING_IOC);

Таким образом вы устанавливаете разрешение для флагов SYMBOL_FILLING_FOK И SYMBOL_FILLING_IOC

Повторите эксперимент с такими значениями

Print("summa_flag = ", 1 | 2);

Затем с такими

Print("summa_flag = ", 1 | 2 | 3);

И с такими

Print("summa_flag = ", 1 | 2 | 4);
 
Alexey Viktorov:

Распечатайте такой код

Таким образом вы устанавливаете разрешение для флагов SYMBOL_FILLING_FOK И SYMBOL_FILLING_IOC

Жесть ребята.

SYMBOL_FILLING_FOK | SYMBOL_FILLING_IOC

Это | по вашему какой оператор   ???  Оператор И  ?

 
Roman:

Жесть ребята.

Это | по вашему какой оператор   ???  Оператор И  ?

Нет! Это оператор ИЛИ!!! Но это устанавливает разрешённость на выбор, или SYMBOL_FILLING_FOK, или SYMBOL_FILLING_IOC поэтому должна быть СУММА значений этих флагов. А сумма это именно И. 1 и 2 в сумме будет 3.

зы. Именно непонимание этого говорит о непонимании флагов вообще.
 
Alexey Viktorov:

Нет! Это оператор ИЛИ!!! Но это устанавливает разрешённость или SYMBOL_FILLING_FOK, или SYMBOL_FILLING_IOC поэтому должна быть СУММА значений этих флагов.


Вы сами себе противоречите. В одном сообщении пишите И. Теперь пишите ИЛИ.
У вас явно не всё в порядке с определением. Мы пишем высокоуровневым языком mql, а не битами.
То что в результате сложения биты будут иметь И, это понятно, но мы этого не видим, но об этом знаем.
Логичнее выражаться, чтобы вас понимали другие, то Побитовое ИЛИ возвращает сумму значений флагов!
Но не как не И !
Давайте закроем эту тему.

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