Pages:
Actions
  • #1 by Elena Glebova on 14 Jan 2017
  • Описание логики работы с блоками триггеров
  • #2 by Олег on 15 Jan 2017
  • ?
  • #3 by MishaKo on 15 Jan 2017
  • Описание логики работы с блоками триггеров
    это вопрос или скоро здесь появится внушительная статья?
  • #4 by Elena Glebova on 15 Jan 2017
  • Это будет тема для изучения.
  • #5 by Elena Glebova on 15 Jan 2017
  • Вопрос: алгоритм состоит из минимум трех блоков (триггеры [1-2-3]-[4-5-6]-[7-8-9]). Как организовать структуру аналогичную командам IF-ELSE.
    Например при значении переменной VAR > 0 работает блок [4-5-6] триггеров. При значении переменной VAR < 0 работает блок [7-8-9] триггеров.
  • #6 by Elena Glebova on 15 Jan 2017
  • Вопрос 2: Как переменную из предыдущего поста VAR проверить в условиях всех триггеров. В каждом есть проверка VAR > или < 0.
    Триггер срабатывает или не срабатывает в зависимости от текущего значения VAR.
  • #7 by Elena Glebova on 15 Jan 2017
  • Вопрос 3: Правильно ли я понимаю логику работы программы?
    Происходит обновление рынка. Формируется массив значений всех внутренних переменных.
    Весь набор триггеров выбирает для проверки необходимые и выполняются либо нет.
    Если в этом наборе например есть триггер 1 Ставим ЗА, в следующем триггере 2 проверяется Есть ли несматченные ЗА. Можно предположить, что триггер 1 выполниться в данном цикле, а триггер 2 может выполниться только после того как БФ примет заявку ЗА и найдет ему пару. На это нужно время. Поэтому полагаю. что триггер 2 не может быть выполнен в этом цикле обновления. Так ли это?
  • #8 by Tim (WellDoneSoft) on 16 Jan 2017
  • Вопрос: алгоритм состоит из минимум трех блоков (триггеры [1-2-3]-[4-5-6]-[7-8-9]). Как организовать структуру аналогичную командам IF-ELSE.
    Например при значении переменной VAR > 0 работает блок [4-5-6] триггеров. При значении переменной VAR < 0 работает блок [7-8-9] триггеров.
    Проверять значение переменной в каждом триггере блока.
  • #9 by Tim (WellDoneSoft) on 16 Jan 2017
  • Вопрос 2: Как переменную из предыдущего поста VAR проверить в условиях всех триггеров. В каждом есть проверка VAR > или < 0.
    Триггер срабатывает или не срабатывает в зависимости от текущего значения VAR.
    Добавить условие в каждый триггер блока.
  • #10 by Tim (WellDoneSoft) on 16 Jan 2017
  • Вопрос 3: Правильно ли я понимаю логику работы программы?
    Происходит обновление рынка. Формируется массив значений всех внутренних переменных.
    Весь набор триггеров выбирает для проверки необходимые и выполняются либо нет.
    Если в этом наборе например есть триггер 1 Ставим ЗА, в следующем триггере 2 проверяется Есть ли несматченные ЗА. Можно предположить, что триггер 1 выполниться в данном цикле, а триггер 2 может выполниться только после того как БФ примет заявку ЗА и найдет ему пару. На это нужно время. Поэтому полагаю. что триггер 2 не может быть выполнен в этом цикле обновления. Так ли это?
    Все верно. Более того, не гарантировано, что в следующее обновление будут ставки - зависит от настроек программы. Если нужно реагировать в том же цикле, устанавливайте переменную или используйте условие "Количество срабатываний триггера равно 0" - эти значения устанавливаются мгновенно.
  • #11 by Elena Glebova on 16 Jan 2017
  • TIM, благодарю за быстрый ответ.
    Я не смогла найти команду которой можно было бы проверить пользовательскую переменную VAR в условиях триггеров. (Я поместила проверку в каждом триггере:
    См. вложение. Но не уверена, что это правильный ход. Подскажите, как же сделать правильно. Переменная market_up - по сути переключатель триггеров и зависит от направления движения рынка и равен -1, 0, +1.
    Заранее благодарна.
  • #12 by Tim (WellDoneSoft) on 16 Jan 2017
  • У исхода выражение триггера...
    Вы вложить забыли.
  • #13 by Elena Glebova on 16 Jan 2017
  • Да забыла
  • #14 by Tim (WellDoneSoft) on 17 Jan 2017
  • Все верно.
  • #15 by Elena Glebova on 17 Jan 2017
  • Господа и уважаемая OXA!
    Помогите понять суть и назначение "блока". Если он один в программе (кажется так точнее называть стратегию, обличенную в триггеры) понятна его назначение - контейнер.

    Если в программе 2 блока. Как организуется взаимодействие между ними. Ранее выяснили - программа проверяет все условия всех триггеров между обновлениями рынка/рынков.
    Предположим 1-ый блок выбирает рынок для торговли из списка "Мои рынки", а второй блок выполняет торговлю, например делает 10 условных циклов, получаем результат.
    Затем необходимо выбрать новый рынок и опять 10 циклов на нем.

    Итак, логика работы:

    цикл 1 "выбрать новый рынок из списка (скажем, №5 из 7 выбранных рынков).
                цикл 2 "торгуем на выбранном";
                цикл 2 "торгуем на выбранном";
                ..........  10 раз ........
                цикл 2 "торгуем на выбранном";

    цикл 1 "выбрать новый рынок из списка (№4).
                цикл 2 "торгуем на выбранном";
                цикл 2 "торгуем на выбранном";
                ..........  10 раз ........
                цикл 2 "торгуем на выбранном";

    цикл 1 "выбрать новый рынок из списка (№6).
                цикл 2 "торгуем на выбранном";
                цикл 2 "торгуем на выбранном";
                ..........  10 раз ........
                цикл 2 "торгуем на выбранном";

    Все рынки обошли. Уравняли П/У.
    Закончили работу программы.

    В обычном процедурном программировании это 2 вложенных цикла for - next.

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



               
     
Pages:
Actions