Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Так тоже правильно считает если "cnt" обнулить, но потом опять не понятное значение как на скрине №3 было (должно быть значение профита 4,27)
int cnt=0;
double LastProfit=0;
for(i=0;i<OrdersHistoryTotal();i++)
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY) && (OrderType()==OP_BUY || OrderType()==OP_SELL) && OrderSymbol()==Symbol() && OrderMagicNumber()==magic) {
if (OrderSymbol()!=Symbol() || OrderMagicNumber()!=magic) continue;
if ((op<0 || OrderType()==op) && cnt==0) {LastProfit+=OrderProfit()+OrderCommission()+OrderSwap(); cnt++;} else {cnt=0;}
}
return(LastProfit);
}
Плохо конечно, когда нет логического мышления(
Понимаете, в реальном рынке депозит растает через 3 дня с такой логикой работы.
Плохо конечно, когда нет логического мышления(
Эт точно.
delete это удалился отложенный ордер
Эт точно.
delete это удалился отложенный ордер
Ладно, как тогда вернуть тикет закрытых ордеров которые равны OrderCloseTime() и посчитать их профит?
Типа такого:
Ладно, как тогда вернуть тикет закрытых ордеров которые равны OrderCloseTime() и посчитать их профит?
Типа такого:
А если закроется по стопу?
ticket=OrderClose(......);
if(ticket>0){//увеличить размер массива на один и записать тикет закрытого ордера}
А если закроется по стопу?
ticket=OrderClose(......);
if(ticket>0){//увеличить размер массива на один и записать тикет закрытого ордера}
Ну какие массивы, какие тикеты, какие ордера???
После первой перезагрузки терминала, или выключения на выходные вы просто потеряете все данные, на этом вся писанина и расчёты окончатся.
писал для себя систему учёта накопленной просадки или профита - выглядела она примерно так: к каждому рыночному ордеру во время открытия в пару создаётся глоб переменная с именем тикета этого ордера и когда нам нужно пересчитать накопленный профит/просадку, то мы просто сверяем текущий список ордеров со списком глобальных переменных и производим учёт путём удаления лишних переменных с зачислением профита напрямую по тикету из имени, всё, на каждом тике лучше не пересчитывать ибо тяжеловата система, пересчёт производить только по необходимости
Это сильно грузит систему, в индикаторе работает нормально, а вот в советнике перебор десятка глобальных переменных может окончится зависанием терминала.
Есть время открытия и закрытия, от него и нужно работать, и получить его нет никаких трудностей, при этом с одной записи времени можно получить всю информацию о состоянии счёта, и велосипед не нужен.
Ну какие массивы, какие тикеты, какие ордера???
После первой перезагрузки терминала, или выключения на выходные вы просто потеряете все данные, на этом вся писанина и расчёты окончатся.
это решаемо
не Вам мне объяснять
Это сильно грузит систему, в индикаторе работает нормально, а вот в советнике перебор десятка глобальных переменных может окончится зависанием терминала.
Есть время открытия и закрытия, от него и нужно работать, и получить его нет никаких трудностей, при этом с одной записи времени можно получить всю информацию о состоянии счёта, и велосипед не нужен.