Скачать MetaTrader 5

Изменение типа ордера.

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

Здравствуйте прошу помощи.

Никак не могу разобраться меняется ли тип ордера:

т.е. к примеру стоит ордер OP_BUYLIMIT, он сработал и стал рыночным, но при запросе через OrderType(), он всё равно остаётся OP_BUYLIMIT, а по идее должен быть OP_BUY

Вопрос как решить данную проблему. Необходимо знать стал ордер рыночным или до сих пор отложенный.

С уважением.

Александр.

techno
1226
techno  
значит вы не правильно определяете тип ордера.
Andrey F. Zelinsky
32494
Andrey F. Zelinsky  
Alex2112:

Здравствуйте прошу помощи.

Никак не могу разобраться меняется ли тип ордера:

т.е. к примеру стоит ордер OP_BUYLIMIT, он сработал и стал рыночным, но при запросе через OrderType(), он всё равно остаётся OP_BUYLIMIT, а по идее должен быть OP_BUY

Вопрос как решить данную проблему. Необходимо знать стал ордер рыночным или до сих пор отложенный.

С уважением.

Александр.


это не возможно. приведите свой код
o_o
Модератор
24080
o_o  
потомучто вы не делаете OrderSelect повторно
Alexander
300
Alexander  

}
//********************************************************************
//--------------------------------------------------------------------
// Нормализация цены с учетом шага изменения котировок:
//--------------------------------------------------------------------
double NormalisePrice( string _symbol, double _org_price )
{
double norm_price = _org_price;
double point = MarketInfo( _symbol, MODE_POINT );
int digits = MarketInfo( _symbol, MODE_DIGITS );
double min_price_step = NormalizeDouble( MarketInfo( _symbol, MODE_TICKSIZE ) / point, 0 ); // минимальный размер шага изменения котировок, пунктов
norm_price = NormalizeDouble( NormalizeDouble(( NormalizeDouble( _org_price / point, 0 )) / min_price_step, 0 ) * min_price_step * point, digits );
return( norm_price );
}

Alexander
300
Alexander  
sergeev:
потомучто вы не делаете OrderSelect повторно

Выполняю как видите.
Alexander
300
Alexander  

Я даже спрошу иначе:

Если я выставил ордер OP_BUYLIMIT, он сработал и стал рыночным, то при запросе через OrderType(), он должен быть OP_BUY ??

techno
1226
techno  
Alex2112:

Я даже спрошу иначе:

Если я выставил ордер OP_BUYLIMIT, он сработал и стал рыночным, то при запросе через OrderType(), он должен быть OP_BUY ??

да, он таким и является.
Alexander
300
Alexander  

Посмотрите я не использую MagicNumber может проблема в этом?

o_o
Модератор
24080
o_o  
посмотрите сами в принте какой тикет ордера и магик.
Alexander
300
Alexander  
sergeev:
посмотрите сами в принте какой тикет ордера и магик.


Понимаете я обрыл уже весь интернет но никак не могу найти ответ на очень простую вещь.

Если я поставил отложенный ордер например OP_BUYLIMIT и запомнил тикет этого ордера.

Ордер сработал и стал рыночным.

Используя OrderSelect через тикер который я запомнил и далее OrderType(), я всё равно получаю значение OP_BUYLIMIT ...

Что я делаю неправильно ... мне нужно получить значение OP_BUY

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