Торг от уровня. Не отменяет симметричный ордер. Помогите, плиз

 

Всем, добрый день!

Пробую себя в алготрейдинге, поэтому прошу сильно не ругать.

Тип эксперта - Торговля от уровня.

Помогите, пожалуйста, разобраться в коде.

Суть работы показал в алгоритмической схеме.

Не получается сделать рабочим модуль 3.1.1 и 3.2.1. то есть при входе на ветку 3.1 (движение вверх), не закрыл ордер с предыдущей ветки 2 (ордер 2 движение вниз).

Всем заранее спасибо!

Файлы:
 
igor_spb:

Всем, добрый день!

Пробую себя в алготрейдинге, поэтому прошу сильно не ругать.

Тип эксперта - Торговля от уровня.

Помогите, пожалуйста, разобраться в коде.

Суть работы показал в алгоритмической схеме.

Не получается сделать рабочим модуль 3.1.1 и 3.2.1. то есть при входе на ветку 3.1 (движение вверх), не закрыл ордер с предыдущей ветки 2 (ордер 2 движение вниз).

Всем заранее спасибо!

Дальше вот этих строк:

   if (ptime == time[0])
      return;
   ptime = time[0];

советник проходит только на открытии свечи.

Ваш советник может удалять ордера только на открытии бара, но никак не в середине .

Поэтому закрыть ордер после того как открылась позиция он не может. Имхо.


Я чтобы найти в отладчике такие моменты использую такой код

if(TimeCurrent() >= D'2021.11.15 00:00:00')
  Sleep(1);

Выставляю время проблемного места, в вашем случае время, когда должен был закрыться ордер.

ставлю точку останова на Sleep() и запускаю отладку, а потом шаг за шагом находим в чём там дело)


ЗЫ. На вашей картинке ничегошеньки не видно если её не скачивать, а скачивать я не пробовал.

 
Вроде сделал правки как просили, если правильно понял.
Файлы:
 
Aleksandr Slavskii #:


ЗЫ. На вашей картинке ничегошеньки не видно если её не скачивать, а скачивать я не пробовал.

Её скачивать не надо. Достаточно нажать вот тут

И получится вот так


 
Alexey Viktorov #:

Её скачивать не надо. Достаточно нажать вот тут

И получится вот так

Точно. Спасибо)