Не надо "биться головой" - она Вам еще пригодиться, ну хотя бы, для составления алгоритма :)
действуйте проще - разбейте задачу на множество мелких.
Вам нужно выяснить был ли последний закрытый ордерприбыльным, или убыточным.
Итак для этого вам нужно найти последний закрытый ордер, раз ордер последний, то время закрытия его OrderCloseTime() должно быть наибольшим .
а так как вам нужен закрытый ордер то искать мы его будем в истории ордеровMODE_HISTORY
и при этом нам нужно определить был ли этот ордер закрыт в прибыли, или убытке. За это отвечает характеристика ордера OrderProfit()
int time = 0;double profit = 0;//обьявляем необходимые нам переменные куда мы положим интересующие нас характеристики ордераfor(int i = OrdersHistoryTotal();i>=0;i--){// Перебираем все закрытые ордераif(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)){//если ордер с таким номером (i) в списке закрытых ордеров есть ( не путать с тикетом)if(OrderSymbol() == Symbol()){//если выбранный ордер был открыт по нашей валютной пареif(time<OrderCloseTime()){//(сравниваем его с хранящимся в пероеменной time)
time=OrderCloseTime();//если время закрытия ордера больше - ложим его в переменную
profit=Orderprofit();//и заодно запоминаем прибыль ордера
}
}
}
}
//по окончании этой процедуры в наших переменных будут сидет наибольшее время закрытия, и его профит. Или по нулям если история чистая.//теперь мы можем выставлять условия в зависимости от результата процедурыif(profit == 0 &&time == 0){//действия если история чистая}if(profit >= 0){//действия если последний ордер был прибыльным, или нулевым}if(profit < 0){//действия если последний ордер был убыточным}
Не надо "биться головой" - она Вам еще пригодиться, ну хотя бы, для составления алгоритма :)
действуйте проще - разбейте задачу на множество мелких.
Вам нужно выяснить был ли последний закрытый ордер прибыльным, или убыточным.
Итак для этого вам нужно найти последний закрытый ордер, раз ордер последний, то время закрытия его OrderCloseTime() должно быть наибольшим .
а так как вам нужен закрытый ордер то искать мы его будем в истории ордеров MODE_HISTORY
и при этом нам нужно определить был ли этот ордер закрыт в прибыли, или убытке. За это отвечает характеристика ордера OrderProfit()
Не надо "биться головой" - она Вам еще пригодиться, ну хотя бы, для составления алгоритма :)
действуйте проще - разбейте задачу на множество мелких.
Вам нужно выяснить был ли последний закрытый ордер прибыльным, или убыточным.
Итак для этого вам нужно найти последний закрытый ордер, раз ордер последний, то время закрытия его OrderCloseTime() должно быть наибольшим .
а так как вам нужен закрытый ордер то искать мы его будем в истории ордеров MODE_HISTORY
и при этом нам нужно определить был ли этот ордер закрыт в прибыли, или убытке. За это отвечает характеристика ордера OrderProfit()
ОГРОМНОЕ спасибо,доходчивей не бывает :)
Не надо "биться головой" - она Вам еще пригодиться, ну хотя бы, для составления алгоритма :)
действуйте проще - разбейте задачу на множество мелких.
Вам нужно выяснить был ли последний закрытый ордер прибыльным, или убыточным.
Итак для этого вам нужно найти последний закрытый ордер, раз ордер последний, то время закрытия его OrderCloseTime() должно быть наибольшим .
а так как вам нужен закрытый ордер то искать мы его будем в истории ордеров MODE_HISTORY
и при этом нам нужно определить был ли этот ордер закрыт в прибыли, или убытке. За это отвечает характеристика ордера OrderProfit()
спс! полдня мне сэкономил, все думал как ММ прикрутить к советнику.