Повторное:
count--;
это скорее всего ошибка.
Так в ТСЛабовском файле было. В вашем примере вы тоже два раза упоминаете почему-то.
Я просто не стал удалять непонятные строчки.
Если "IsLastBarUsed == false" то скрипт будет выставлять последнюю заявку на ПОСЛЕДНИЙ бар, а не на следующий за ним, что не правильно (в реале сделок не будет вообще, насколько я понимаю).
Тоже делал по аналогии. Ставил на демо=счет, сделки корректно открываются.
Если IsLastBarUsed == true, то все правильно, а вот если == false, тогда последний бар из переданных скрипту обработан не будет. Думаю, не будет и сделок в реальности.
параллельно ведутся ДВЕ позиции
Так и задумано, скрипт переворотный
Я ничего против и не имею, лишь обратил Ваше внимание на потенциальную проблему.
Сейчас сижу и не могу понять, почему при пуске/остановке скрипта выдается сообщение о том что пересчет прошел с разницей. Если поставить 5-и минутный интервал (тот в который сжимается), то ошибок нет, если поставить минутки, то лезут ошибки. Пробовал ставить начальный бар, с которого начинается торговля больше, чем период индикатора, не помогло.
Тут я затрудняюсь, что-то сказать, мало информации.
Мне очень не нравятся манипуляции с "count" и "barsCount". Я бы от них отказался.