Invest777 писал(а) >>
тоесть 0..1...2...3 и т.д, без учета типа ордера, тикета,меджик номера,просто на скоко я понемаю по позиции ордера в списке вычесляется?
тоесть 0..1...2...3 и т.д, без учета типа ордера, тикета,меджик номера,просто на скоко я понемаю по позиции ордера в списке вычесляется?
да. (конечно не именно так по порядку как в окне, по разному может быть)Различия в ордерах только активные и исторические, а так все в одной куче
Techno >>:
да. (конечно не именно так по порядку как в окне, по разному может быть)Различия в ордерах только активные и исторические, а так все в одной куче
Invest777 писал(а) >>
вот и проблема.....мне надо чтоб так как в окне, потомучто я допустим до етого уже смоделировал ситуацию, какую позицию будет занемать выбранный ордер, и мне нужен именно он, а получается нестыковка моего учета...и программы...
на самом деле это не проблема. Если ты хочешь выделить именно определенный ордер, то его нужно просто пометить, например магиком и все.вот и проблема.....мне надо чтоб так как в окне, потомучто я допустим до етого уже смоделировал ситуацию, какую позицию будет занемать выбранный ордер, и мне нужен именно он, а получается нестыковка моего учета...и программы...
А в окне ордера уже рассортированы по типу или тикету или прибыли, это никак не связано с их позицией(реальной).
а магик здесь прописывать?
OrderSelect(OrderMagicNumber(), SELECT_BY_POS, MODE_TRADES))
или (OrderSelect( SELECT_BY_POS, MODE_TRADES)) if (OrderMagicNumber()==magic)
магик устанавливается при открытии ордера в функции OrderSend, а уже когда идет перебор всех ордеров эксперт этими функциями понимает, что это нужный ордер для последующей обработки.
for (int i=0; i<OrdersTotal(); i++)
{
OrderSelect( i, SELECT_BY_POS, MODE_TRADES))
if (OrderMagicNumber()==magic)
//
}
да,спасиб, а можно еще както пометить ордер кроме магика?
по коменту,тоесть(например) :
for (int i=0; i<OrdersTotal(); i++) if (OrderSelect(i , SELECT_BY_POS, MODE_TRADES)) { if (OrderComment()=="+Order_0") OrderModify(OrderTicket(),0,0,OrderOpenPrice() - 20*Point,0); }так?
if (OrdersTotal()==4){ for (int i=0; i<OrdersTotal(); i++) if (OrderSelect(i , SELECT_BY_POS, MODE_TRADES)) { if (OrderComment()=="+Order_0") OrderModify(OrderTicket(),0,0,OrderOpenPrice() - 20*Point,0); }
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Обьясните пожалуйсто, (OrderSelect(0, SELECT_BY_POS, MODE_TRADES)), как ведется учет ордеров,позиций, на данном примере ? тоесть 0..1...2...3 и т.д, без учета типа ордера, тикета,меджик номера,просто на скоко я понемаю по позиции ордера в списке вычесляется?