Для торговой стратегии требуется узнать сумму убытков последних ордеров подряд
То есть, если в убытке только последний, то только его. Если два последних убыточны, то сумму за два и т.д. Если ордер закрыт в минус, то ничего не нужно.
Пытался написать, но чего-то не получается:
Во-первых, значение OrderProfit() - вещественное, а не целое. Вы же его прибавляете к целочисленному count.
Во-вторых, в выражении:
count+=count+OrderProfit();
не нужно указывать справа от арифметической операции переменную count. Таким образом, Вы к значению профита добавляете значение предыдущего общего убытка. Нужно сделать либо так:
count += OrderProfit();
либо так:
count = count + OrderProfit();
В-третьих, функция OrderProfit() не учитывает сумму комиссии и свопов. Поэтому их тоже лучше бы учитывать (функции OrderCommission() и OrderSwap()).
В-четвертых, Вы выбираете ордера из истории ордеров, а нумерацию ведете по рабочим ордерам (OrdersTotal() - это количество рабочих ордеров; для истории следует использовать OrdersHistoryTotal()).
В-пятых, список ордеров истории вовсе не обязательно содержит ордера в порядке очередности их закрытия. Поэтому при поиске соседних закрытых ордеров лучше проверять время их закрытия и на этом основании строить собственную последовательность закрытия ордеров.
Во-первых, значение OrderProfit() - вещественное, а не целое. Вы же его прибавляете к целочисленному count.
Во-вторых, в выражении:
не нужно указывать справа от арифметической операции переменную count. Таким образом, Вы к значению профита добавляете значение предыдущего общего убытка. Нужно сделать либо так:
либо так:
В-третьих, функция OrderProfit() не учитывает сумму комиссии и свопов. Поэтому их тоже лучше бы учитывать (функции OrderCommission() и OrderSwap()).
В-четвертых, Вы выбираете ордера из истории ордеров, а нумерацию ведете по рабочим ордерам (OrdersTotal() - это количество рабочих ордеров; для истории следует использовать OrdersHistoryTotal()).
В-пятых, список ордеров истории вовсе не обязательно содержит ордера в порядке очередности их закрытия. Поэтому при поиске соседних закрытых ордеров лучше проверять время их закрытия и на этом основании строить собственную последовательность закрытия ордеров.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Для торговой стратегии требуется узнать сумму убытков последних ордеров подряд
То есть, если в убытке только последний, то только его. Если два последних убыточны, то сумму за два и т.д. Если ордер закрыт в минус, то ничего не нужно.
Пытался написать, но чего-то не получается: