Я не пробовал, но может сработает вместо комментариев вставить строку:
if(OrderType() > 5) { ..... }проверил для баланса работает...
в альпарях вот так работает:
void start() { double depo=0, widt=0; int i, k=OrdersHistoryTotal(); for (i=0; i<k; i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) { if (OrderType()==6) { if (OrderProfit()>0) depo+=OrderProfit(); if (OrderProfit()<0) widt+=OrderProfit(); } } } Print("s: ",depo," w: ",widt," итого: ",depo+widt); }
Пробовал, правда ставил 6
выдаёт общий результат, а надо раздельный по операциям ввода\вывода!
Как-то непотно реализовано OrderType(), в справке только торг.типы перечислены,
а писать туда могут и другое, balance например (больше других вроде не встречал)
-
if (OrderType() == 6 && OrderProfit() >=0) depo += OrderProfit();ковыряю пока в этом направлении...
Игорь, спасибо!
тоже вариант... к нему и склоняюсь...
Первоначально предполагал что Deposit и Withdrawal будет достаточно.
Однако вот про макроподстановку "*" чёт забыл что не прокатит... ;)))
Однако вот про макроподстановку "*" чёт забыл что не прокатит... ;)))
о чём это Вы?
С учётом коррекции. Это когда впадаем в "технический минус баланса".
//+------------------------------------------------------------------+ int start() { double depo, widt, korr; int cnt = OrdersHistoryTotal(); for (int i=0; i < cnt; i++) { OrderSelect(i, SELECT_BY_POS, MODE_HISTORY); if (OrderType() == 6 && OrderProfit() > 0) depo += OrderProfit(); if (OrderType() == 6 && OrderProfit() < 0) widt += OrderProfit(); if (OrderComment() == "коррекция") korr += OrderProfit(); } Alert("s: ",depo-korr," w: ",widt," итого: ",depo-korr+widt," корр: ",korr," i: ",i); return(0); } //+------------------------------------------------------------------+
правда не знаю как выглядит коррекция при разного рода "форс-мажоров",
но думаю при тех же комметариях можно просто реализовать так-же ориентируясь на знак суммы.
Однако вот про макроподстановку "*" чёт забыл что не прокатит... ;)))
о чём это Вы?
Ну Вы наверняка знаете когда например в поиске вводим: прото* или прото??
и получаем результат слов протоплазма, протокол
тоже самое и с ?? где не любое количество а два символа после...
В общем что-бы не смущать народ замнём эту тему подстановок.
Хотя в мкл4 очень бы пригодился этот механизм...
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Скрипт.
Отлично считает раздельно сколько введено на счёт (Deposit) и сколько выведено (Withdrawal)
Но как всегда без НО не обошлось... :(((
Выборка основана на сравнении записи в комментарии, но там каждый ДЦ пишет по разному.
Как в скрипте выше например "поступило на счет (WMZ)" имеет другие варианты:
- просто "поступило на счет"
- или "поступило на счет (WMR)"
- и т.д...
Таже ситуация и с формулировкой вывода...
Можно конечно "подстроиться" под все возможные варианты, однако это не выход.
*
Есть мыслЯ производить выборку по balance, с ориентированием на знак суммы,
т.е. положительная это был ввод, отрицательная вывод, но решения пока нет...
*
Попутно вспомнил математику :))) когда получил результат depo-widt отличный от ожидаемого.
Что минус на минус дают плюс... и правильно надо писать так: depo+widt
*
Разработчикам!!!
- если возможно ввести подсветку кода для устаревших функций красным цветом.
- им же раскрасить вэб-ссылки и ! как отрицание
Мне кажется так будет информативней и читабельней...