Микаелян Саро
Микаелян Саро личный блог
05 октября 2020, 10:01

Простой метод учесть неисполнение сигналов в работе робота

Приветствую всех!

Настолько давно не писал — что забыл свой пароль от смартлаба… каюсь виновен!

По существу. Часто в тестировании используют методы бек/форвард тест, иногда устраивают стресс тест, на хаотичных котировках, но в данном примере хотелось показать как смоделировать ситуацию, когда в алгоритме все хорошо, но по той или иной причине нашу заявку не исполнили. Причин реально много может быть, опоздали с выставлением, проблемы с интернетом, проскальзование, сбой в работе биржи/брокера/софта и тд
Чтобы получить на истории такие сбои, достаточно к условиям торговли — добавить случайное событие, и в зависимости от логики алгоритма, задавать эту случайность. Например если вы торгуете по рынку то случайность событий возможна на максимум в 10% случаев. Если торгуете по уровням, с условными заявками — то в принципе в зависимости от проскальзования, так же будет 10-20% случайностей, но важно учитывать что уровни обычно сохраняются и если мы не открылись сейчас то можем по той же цене открыться позже, и на тесте ситуации не сильно исказятся. Торгуя против рынка лимитками некий скальпинг — можно смело ставить случайность в 80% случаев так как там сюрпризов намного больше и они чаще.
То есть нельзя унифицированно использовать одну какую то случайность под все алгоритмы, это важно понимать. Так же, кстати, случайное число генерируется тоже не так и случайно. потому при использовании рандома, обычно пользуются дополнительной настройкой генерации чисел, с помощью которой можно посмотреть немного разные случайности.
Если есть вопросы пожелания пишите)) 
П.С. канал в телеграмме если нужно онлайн общение https://t.me/msvTslab

37 Комментариев
  • ves2010
    05 октября 2020, 10:15
    в тслабе есть старый баг
    выставление лимитки и сделка на одной свече идет не по цене лимитки, а по хаю(для продажи) или лою(для покупки)… что крайне завышает профит...

    его легко можно увидеть просто сделав настройки алгоритма на как можно более частые сделки
  • SergeyJu
    05 октября 2020, 10:47
    какие-то чудовищно большие вероятности сбоев
  • Eugene Bright
    05 октября 2020, 11:48
    Все перечисленные «проблемы» решаются очень просто и успешно, если немного расширить само понятие «робот».
    Добавьте надстройку, следящую за состоянием робота, за состоянием сети, инета, которая автоматически блокирует ненужные явления (задваивание ордеров на одном баре, например, или обрыв связи с сервером), и проблем не будет. Да, это выходит за рамки ЛУА (или того, на чем реализован робот). У меня такие сервисы реализованы на C#, опять же например. Итог: сам включается/выключается, «фильтрует базар» и поддерживает постоянное подключение, «постукивая» мне логами на почту или джаббер…
  • Eugene Bright
    05 октября 2020, 12:04
    ОК, расширю ответ: все неисполненные по каким-либо причинам ордера мой робот запоминает и при первой же возможности реализует. Сам! Я не влезаю в его работу, он сам решает проблему. Сам снимает, сам восстанавливает.
    Главный закон моего робота: сигналы должны быть корректны и всегда исполнены на 100%.
      • Eugene Bright
        05 октября 2020, 12:15
        Микаелян Саро, у меня робот ВСЕГДА  исполняет сигнал. Для того, чтобы ордер был реализован, в моем роботе предусмотрен алгоритм сопровождения ордера в торговой системе. Он перемещает ордер, изменяет цену, объем — всё, что нужно, лишь бы выполнить главное — реализовать сигнал на 100%.
        Ну, а то, что цена на рынке не совпадает с какой-то «расчетной», — это просто может стать результатом, что расчет, выполненный до сего момента, оказался неверным в настоящий момент, и его нужно скорректировать с учетом «момента».
  • VladMih
    05 октября 2020, 12:54
    Саро, что можешь сказать о версии 2.1?
    Есть ли смысл на неё переходить?
    В чем разница кроме наличия циклов и развития коннекторов?
    Да и циклы эти — сильно ли они нужны?

    Извини, что не по теме, собирался спросить в скайпе, но думаю это интересно не только мне. На сайте и форуме пытался разобраться — там бардак неимоверный. Версию 2.0 уже даже скачивать не дают...
    Можно ли установить/использовать одновременно 2.0 и 2.1?
      • ch5oh
        05 октября 2020, 13:55
        Микаелян Саро, люди пишут, что наоборот. Что 2.1 сильно тормознутей… Кому верить?
          • ch5oh
            05 октября 2020, 14:45
            Микаелян Саро, не сложно, но очень страшно. Как откатить с 2.0.40 на 2.0.39 понятно. Как откатывать с 2.1 обратно на 2.0 и что при этом потеряется мне неочевидно. =/
      • VladMih
        05 октября 2020, 13:57
        Микаелян Саро, спасибо!
        Совместимость по скриптам и индикаторам полная?
  • Носорог
    05 октября 2020, 13:15
    В связи с затянувшимися глюками мультичартс, решил попробовать тслаб. Хорошо, что есть кому мне помочь. Скачал самую свежую версию, и тут же столкнулись с двумя, на мой взгляд, детскими ошибками:
    1. В списке агентов бегунок не позволяет докрутить список до конца списка. Вплоть до невозможности запустить и настроить агента.
    2. Менеджер заявок (или как он там называется) открылся с 5 или 6 раза.

    Явно чисто интерфейсные моменты, которые имхо в принципе не должны встречаться в торговом софте. Я несколько озадачен.

    Однако, на настройку и запуск реальной торговли с нуля на тслабе потрачено меньше часа. И кстати без квика! :) Для сравнения — мультичартс на новом компе я настраиваю полдня. А после перехода на 19 значные заявки пошла уже третья неделя :( И тут я не то что озадачен, я в полном шоке 

    • vito333
      05 октября 2020, 13:57
      Носорог, это только начало
      приготовь денежку на оплату глюков
      • ch5oh
        05 октября 2020, 14:02
        vito333, глюки есть даже в экселе, Visual Studio и Windows. Даже не побоюсь этого слова в Linux попадаются… =(
        • vito333
          05 октября 2020, 14:06
          ch5oh, только там за них не платишь
          • ch5oh
            05 октября 2020, 14:09
            vito333, купил ноут — заплатил за Виндоуз. Или у Вас вообще весь софт пиратский?
      • Носорог
        06 октября 2020, 03:54
        vito333, я лет 20 как уж работаю it-директором. Поэтому прекрасно понимаю, что любая система требует сопровождения. Ибо чудес не бывает. Если найдете автомобиль, который — купил один раз и затрат больше не требуется — поделитесь, пожалуйста — давно такой ищу. Но жизнь всегда вносит коррективы :).

        Ну и коль заговорили о деньгах. За 2 лицензии мультичарст я СРАЗУ отвалил больше 200 т.р. Это с максимальными скидками. Пишу не в критику, а для сравнения. Более того — мне это даже нравилось — заплатил и забыл. Лишь бы работало :(. Цену платежей за тслаб, надеюсь, вы знаете. И я в любой момент могу прекратить пользоваться продуктом и нести эти затраты. Здесь нет правильно или неправильно — каждый выбирает под свою ситуацию. Кстати, никакие доп.оплаты за устранение глюков в ТСЛабе мне лично не известны.
        • vito333
          06 октября 2020, 03:59
          Носорог, просто я довольно долго сидел на ТСЛаб и за все его глюки там расплачиваешься своими деньгами, а глюков было — мама не горюй,  ситуация была одно время просто кошмар

          возможно сейчас всё намного лучше, возможно это был период основного роста программы, но подход и отношение, я думаю, не сильно изменились

          перейдя на МТ5 был поражён разницей в надёжности и безглючности
          • Носорог
            06 октября 2020, 04:23

            vito333, не сыпьте соль на сахар. :) Именно осознание суммы колоссальных для меня потерь от аналогичной ситуации, но уже с мультичарст и вынудило меня пойти на «революцию» — вывести 60% депо из связки  Открытие-Квик-Мультичарст и фактически не зная ТСлаб с помощью очень хорошего человека (торгующего на ТСЛабе уже несколько лет и не испытавшего ни одного значимого глюка, приведшего к финансовым потерям, тьфу-тьфу-тьфу) фактически за 4 дня от точки принятия решения запустить торговлю на связке Финам-Транзак-ТСлаб. Если Мультичартс еще неделю будет пилить «внезапное» (для них) изменение номера длины заявок, боюсь придется подумать и перевести и оставшиеся 40% депо. К этому моменту как раз изучу ТСЛаб хотя бы поверхностно, а то сейчас чувствую себя чукчей из анекдота («следи чтобы горел зеленый огонек и ничего не трогай» :))

            Ладно, приятно было пообщаться. Пошел я искать причину, почему очередная торговая система не дает молока :)

            Удачной Вам торговли и отсутствие глюков софта!

            • vito333
              06 октября 2020, 07:47
              Носорог, Удачи! Кто предупрежден, тот вооружен
    • ch5oh
      05 октября 2020, 13:58

      Носорог, у меня в 2.0 список агентов докручивает до конца.

       

      В качестве пожарного варианта можно на столбец "Имя агента" накладывать фильтры и уменьшать таким образом количество отображаемой информации.

      • Носорог
        05 октября 2020, 15:09
        ch5oh, спасибо!

        Пока вычислил, что это связано с настройками рабочего стола винды (масштабирование шрифтов 125%), но складывается ощущение что переключение на 100% проблему полностью не решает. Думаю, все же есть какой то багчик.
          • Носорог
            05 октября 2020, 17:10
            Микаелян Саро, да я и не пользовался никогда в жизни. Но когда глюк с агентами всплыл полез искать везде, даже где ни разу не был :). Не знаю откуда на ноуте была это установка, причем я 2 дня назад снес и с нуля устанавливал винду.
  • Носорог
    05 октября 2020, 13:18
     Саро, пользуясь случаем, хочу сказать ОГРОМНОЕ СПАСИБО за выложенные Вами обучающие ролики по тслаб. ОЧЕНЬ сильно помогают мне в вопросе пожарного перехода на тслаб. Жалею, что не изучил его раньше. 
  • NikGood
    05 октября 2020, 14:50
    «не исполнение сигналов» ПИШЕТСЯ слитно «неисполнение сигналов», уже от заголовка блевать хочется
    • Носорог
      05 октября 2020, 15:16
      NikGood, батенька, при текущем уровне контента в сети Интернет (включая специфику мобильных устройств) Вам перед посещением сети Интернет лучше не кушать часов 200 :).

      P. S. Не напомните правила, по которым слово «пишется» пишется полностью заглавными буквами? :) 

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн