Как сделать проверку на magic?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Ivan Ovchinnikov
1829
Ivan Ovchinnikov  
  if(OrderSelect(OrdersTotal()-1,SELECT_BY_POS,MODE_TRADES)) {операторы...}

Всем привет! Помогите пожалуйста, мне нужно сделать проверку на меджик у такого условия. Переменная из настороек обозначена так:

input int magic_number = 123;


Чтобы условие было такое. То что выше и меджик совпадает с меджиком ордера.

Evgeniy Zhdan
16901
Evgeniy Zhdan  
if(OrderSelect(OrdersTotal()-1,SELECT_BY_POS,MODE_TRADES)) 
        {
                if(OrderMagicNumber() == magic_number)
                {
                        операторы...
                } 
        }

Ivan Ovchinnikov
1829
Ivan Ovchinnikov  
Evgeniy Zhdan:

а в одну строку нельзя это затолкать?

Evgeniy Zhdan
16901
Evgeniy Zhdan  
Ivan Ovchinnikov:

а в одну строку нельзя это затолкать?

на сначала надо выбрать ордер, а потом уже сравнивать. Так что нельзя

Evgeniy Zhdan
16901
Evgeniy Zhdan  
Ivan Ovchinnikov:

а в одну строку нельзя это затолкать?

Только если так, то можно:

if(OrderSelect(OrdersTotal()-1,SELECT_BY_POS,MODE_TRADES)) { if(OrderMagicNumber() == magic_number) { операторы... }}
Alexey Viktorov
27997
Alexey Viktorov  
Evgeniy Zhdan:

на сначала надо выбрать ордер, а потом уже сравнивать. Так что нельзя

Не вводите людей в заблуждение


   if(OrderSelect(i, SELECT_BY_POS) && OrderSymbol() == _Symbol && OrderMagicNumber() == magick)

Условия проверяются слева направо. И если первое условие не выполнено, то следующие проверяться не будут.

Evgeniy Zhdan
16901
Evgeniy Zhdan  
Alexey Viktorov:

Не вводите людей в заблуждение


Условия проверяются слева направо. И если первое условие не выполнено, то следующие проверяться не будут.

Ну пусть попробует, если получится, то хорошо.

У меня был затык с этим, вот как ты написал слева направо. Ордер просто не выбирался. А сделал if ниже, все ок, заработало с выбранным ордером.

Evgeniy Zhdan
16901
Evgeniy Zhdan  
Alexey Viktorov:

Не вводите людей в заблуждение


Условия проверяются слева направо. И если первое условие не выполнено, то следующие проверяться не будут.

@Ivan Ovchinnikov не слушайте его.

Так ордер не выберется и будете опять на форуме искать причину. Делайте как я написал и все ок будет

Alexey Viktorov
27997
Alexey Viktorov  
Evgeniy Zhdan:

@Ivan Ovchinnikov не слушайте его.

Так ордер не выберется и будете опять на форуме искать причину. Делайте как я написал и все ок будет

Это вы про себя?

Aleksandr Martynov
1058
Aleksandr Martynov  
Evgeniy Zhdan:

@Ivan Ovchinnikov не слушайте его.

Так ордер не выберется и будете опять на форуме искать причину. Делайте как я написал и все ок будет

Вы глубоко неправы, все будет работать, это СИ, а не математика во 2 классе...

Можете написать всю программу в одном операторе, вот только разбираться будет сложновато...

Evgeniy Zhdan
16901
Evgeniy Zhdan  
Aleksandr Martynov:

Вы глубоко неправы, все будет работать, это СИ, а не математика во 2 классе...

Можете написать всю программу в одном операторе, вот только разбираться будет сложновато...

Дело в том, что я пробовал. И не заработало. Почему, я не знаю. Теоретически должно было работать. Заработал только мой вариант.

12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий