Ошибки, баги, вопросы - страница 3527

Ivan Butko #:
Подскажите, пожалууйста, почему здешний МТ5 от метаквотов (демо-счёт) не принимает во внимание спред и комиссию? 

Все результаты тестера всегда положительные, грубо говоря. 

Можно ли как-то добавить спред и комиссию, чтобы тестировать в тяжёлых условиях, не прибегая к брокерскому МТ

Подключитесь в терминале от MQ к брокерскому счёту и тестируйте наздоровие.

Можно же подключаться к разным счетам:


Artyom Trishkin #:

Подключитесь в терминале от MQ к брокерскому счёту и тестируйте наздоровие.

Можно же подключаться к разным счетам:


Принял, благодарю

В справке есть описание оператора-переключателя switch, там такой пример приведён

//--- первый пример
switch(x)
  {
   case 'A':
      Print("CASE A");
      break;
   case 'B':
   case 'C':
      Print("CASE B or C");
      break;
   default:
      Print("NOT A, B or C");
      break;
  }

Какой тип у переменной x?

Ставишь string и получаешь ошибку

'x' - illegal switch expression type

Предлагаю делать воспроизводимые примеры в документации.

Мне собственно нужен переключатель по значению строковой переменной.

Документация по MQL5: Основы языка / Операторы / Оператор-переключатель switch
Документация по MQL5: Основы языка / Операторы / Оператор-переключатель switch
  • www.mql5.com
Сравнивает значение выражения с константами во всех вариантах case и передает управление оператору, который соответствует значению выражения...
Aleksey Vyazmikin #:

В справке есть описание оператора-переключателя switch, там такой пример приведён

Какой тип у переменной x?

Ставишь string и получаешь ошибку

Предлагаю делать воспроизводимые примеры в документации.

Мне собственно нужен переключатель по значению строковой переменной.

полная цитата ПЕРВОГО АБЗАЦА справки :

Сравнивает значение выражения с константами во всех вариантах case и передает управление оператору, который соответствует значению выражения. Каждый вариант case может быть помечен целой константой, символьной константой или константным выражением. Константное выражение не может включать переменные или вызовы функций. Выражение оператора switch должно быть целого типа int или uint.

ЧТО ТУТ НЕПОНЯТНОГО ???

прямым же текстом написано какие типы и как работает

Документация по MQL5: Основы языка / Типы данных / Целые типы / Типы char, short, int и long
Документация по MQL5: Основы языка / Типы данных / Целые типы / Типы char, short, int и long
  • www.mql5.com
Целый тип char занимает в памяти 1 байт (8 бит) и позволяет выразить в двоичной системе счисления 2^8 значений=256. Тип char может содержать как...
Maxim Kuznetsov #:

полная цитата ПЕРВОГО АБЗАЦА справки :

ЧТО ТУТ НЕПОНЯТНОГО ???

прямым же текстом написано какие типы и как работает

Пример непонятен. Если x типа int, то как попасть в символьную метку?

Aleksey Vyazmikin #:

Пример непонятен. Если x типа int, то как попасть в символьную метку?

Там же в примере написано:
case 'A':
Aleksey Vyazmikin #:
Мне собственно нужен переключатель по значению строковой переменной.

Это невозможно.

Только если вместо switch использовать конструкцию if... - else if... - else if... ... else

Artyom Trishkin #:
Там же в примере написано:

Когда int x будет равен 'A' - это не понятно из примера.

Artyom Trishkin #:
Там же в примере написано:

Там используется код символа. Поэтому 2 и более символа работать не будут. Что Artyom что Alexey будет воспринято одинаково, только код первого символа.

Slava #:

Это невозможно.

Только если вместо switch использовать конструкцию if... - else if... - else if... ... else

Понятно, спасибо за ответ.