Скачать MetaTrader 5

Как проверить, выбран ли ордер

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

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

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

Если сделать так:

void SomeFunс()

{

int tick=OrderTicket();

// ..... 

if(tick>0) OrderSelect(tick,SELECT_BY_TICKET); 

То на первой строчке будет генерироваться ошибка 4105, если текущий ордер не выбран, что разумеется нежелательно. Если перед этим сбрасывать last error и проверять после этого наличие ошибки, то у нас сбросится информация о последней ошибке, что также нежелательно, если последняя ошибка должна анализироваться позже в каком-то определенном месте кода.

Как решить эту задачу без генерирования ошибки 4105 если текущий ордер не выбран?

Рустам
3623
Рустам  
О конструкции if(OrderSelect(ticket,SELECT_BY_TICKET)){} не слыхали , не ?
Ilya Malev
9094
Ilya Malev  
FAQ:
О конструкции if(OrderSelect(ticket,SELECT_BY_TICKET)){} не слыхали , не ?

 ticket то неизвестен, вы хоть вникли в вопрос?

Рустам
3623
Рустам  

тогда что это ???

int tick=OrderTicket();

Рустам
3623
Рустам  
вот она и вернет вам фолс
Ilya Malev
9094
Ilya Malev  
FAQ:

тогда что это ???

 

Это то, что генерирует ошибку 4105 если ордер не выбран, задача избежать генерации этой ошибки, но при этом узнать тикет ордера, если он выбран ранее

Рустам
3623
Рустам  
ответ: сначала выберите ордер.
Ilya Malev
9094
Ilya Malev  
FAQ:
ответ: сначала выберите ордер.

 Как я могу выбрать ордер, если я не знаю его тикет?

Ilya Malev
9094
Ilya Malev  

Короче уважаемый FAQ, либо попытайтесь понять вопрос либо не пишите попусту

Рустам
3623
Рустам  
по номеру в цикле.
Рустам
3623
Рустам  
Ant_TL:

Короче уважаемый FAQ, либо попытайтесь понять вопрос либо не пишите попусту


  Уважаемый, если бы у вас в голове, было бы хоть капля разума, то вы бы поняли что :

  1) ваш вопрос по сути бессмысленен. 

  2) не стоит хамить, тем более когда вам пытаются помочь. 

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