Albus
Albus личный блог
18 января 2019, 01:09

Робот Богатырь 2.0

Доработал робота Богатыря, описанного в этом посте: https://smart-lab.ru/blog/458269.php
Описание.
Робот анализирует ленту всех сделок, ищет в ней крупные сделки и накладывает их на график. Он рисует метки двух видов.
1. Обычные одинарные крупные сделки.
Зелёные метки — покупки, красные — продажи. Если навести на птичку курсор, то всплывёт надпись как на скриншоте с указанием цены и объёма, в данном случае по 202 рубля было куплено 8000 лотов Сбера.
Робот Богатырь 2.0
Метка рисуется СПРАВА от свечи, на которой была обнаружена большая сделка. Я выбрал в качестве метки знак <. Он похож на указатель направления куда смотреть.
2. Горсти. Горсть — это когда крупный игрок ударяет большим объёмом по стакану. В результате одна его заявка исполняется через множество мелких сделок. Признак горсти — у всех маленьких сделок будет одинаковое время в микросекундах как на скриншоте. По этому критерию робот определяет «горсть».
Робот Богатырь 2.0
Горсти отмечаются крестиками. Робот показывает, сколько лотов было в горсти, сколькими сделками она исполнилась и на сколько пипсов горсть сдвинула рынок.
Пример бычьей горсти: по СБЕРУ куплено 55 000 лотов, крупная заявка исполнена 40 мелкими сделками, от этого рынок сдвинулся на 4 копейки вверх.
Робот Богатырь 2.0
Сегодняшние горсти по Сберу говорят, что его остервенело покупают крупные игроки: в плюсиках слева 55 000 и 59 797 лотов (исполнены одним ударом, то есть горстью), а в плюсике на постмаркете кто-то одним махом заграбастал 174 788 лота.
Робот Богатырь 2.0
Пример медвежьей горсти. Одним махом проданы 4000 лотов Алросы. Исполнилось 13-ю сделками, рынок сдвинулся на 6 пипсов вниз.
Робот Богатырь 2.0
В роботе можно легко выключить горсти, если они вам не нужны. Вверху файла Bogatyr 2.0.lua есть строчка:
gorst=false --если горсти не нужны, поставьте false
Но мне кажется, что именно горсти самая перспективная часть скрипта. Они показывают активность кукла против мелких трейдеров. А одинарные бегемоты — это кукл купил у кукла, а кукл продал куклу. Анализировать их бессмысленно (ИМХО).
Непоправимый недостаток робота — он работает только со сделками текущего дня. Бегемотов за прошлые дни он не показывает.
Как пользоваться скриптом.
1. Скачиваете скрипт по ссылке https://yadi.sk/d/oimgbkDjMVwtcQ
2. Сохраняете в любую папку.
3. В шапке выставляете нужные параметры.
Робот Богатырь 2.0
Что считать бегемотом? Это можно задать напрямую в переменной big_deal. Например 1000 лотов. А можно через долю от среднего оборота за день big_porog. Например средний оборот по акции за день 1 000 000 лотов. big_porog ставлю 0.005. Значит робот будет считать бегемотом 5000 лотов.
4. ВАЖНО! На графике нужно выставить идентификатор Big. Без этого робот не найдёт куда ему ставить метки.
Робот Богатырь 2.0
4. Запускаете скрипт через Сервисы=>Lua-скрипты.
Робот Богатырь 2.0
5. Получаете результат. На график наносятся метки по уже полученным сделкам. По мере дальнейших торгов робот ловит новые сделки и добавляет их на график. Напомню: крестики — это горсти большого объёма, птички — одинарные бегемоты.
Робот Богатырь 2.0
Открывать таблицу обезличенных сделок (то есть «таблицу всех сделок») не нужно, робот сам заказывает сделки с сервера. НО! Всё равно надо убедиться, что вы подписаны на эту услугу. У моего брокера Открытие трансляция ленты всех сделок по умолчанию выключена. Включить её можно в личном кабинете:
Робот Богатырь 2.0
Чтобы проверить, работает трансляция всех сделок или не работает, попытайтесь открыть тиковый график:
Робот Богатырь 2.0
Или откройте в КВИКе меню Создать окно => Таблица обезличенных сделок 
Важно! После запуска скрипта может пройти несколько десятков секунд прежде чем робот закажет все сделки с сервера и начнёт рисовать. Особенно это актуально в конце дня, когда надо стянуть все сделки за день.
Если вы запустили робота и ничего не происходит, то возможны следующие варианты:
1. Сейчас утро. Старые сделки брокер уже стёр, а новые ещё не приходят. Подождите начала торгов. (Ночью всё должно работать, потому что сделки за истекший день ещё доступны в терминале).
2. Вы не поставили идентификатор на графике или поставили его криво. 
3. У вас слабый интернет и КВИК по приказу робота ещё не стянул сделки с сервера. Особенно это актуально для супер-ликвидов типа Si.
4. Вам брокер не транслирует ленту всех сделок. Значит надо подключить эту услугу.  
5. Вы выставили слишком большой порог. Ну например вы поставили признак бегемота 5000 лотов, но на рынке ещё не было такой сделки/горсти, поэтому скрипт ничего не рисует.

Весь код робота я снабдил комментариями, чтобы желающим было легче разобраться что происходит в каждой строчке. Приветствуются советы по улучшению кода.
Робот Богатырь 2.0
П.С. В конце отмечу, что пост является теоретическим. Ни одного рубля с помощью этого анализа я ещё не заработал (и пока не пытался). Поэтому буду рад любым подсказкам, как на основе этого торговать. Находить телодвижения кукла и покупать если кукл покупает, продавать если продаёт? Неужели всё так просто? Напишите пожалуйста в комментариях.
52 Комментария
  • gib
    18 января 2019, 01:57
    Не знаю есть ли уже обменный курс тимофейчиков к рублю. 
    Если уже есть и он не нулевой. то твое отступление о том, что с помощью этого робота ничего не заработал — не верно.
    Как минимум 5 тимофейчиков ты честно заработал.
  • Megasum
    18 января 2019, 02:44

    Офигенно! Увы, кроме Тимофейкоинов отблагодарить по другому не могу.

    Буду тестить.

  • Тихий омут
    18 января 2019, 07:04

    Albus (Игорь Китаев) молодец аккуратно пишешь, возми на заметку:

    function get_data_time(mydata)
     
    return os.date("%Y%m%d",os.time(mydata)) ,
              os.date("%H%M%S",os.time(mydata))  

    end

  • OnlyHuman
    18 января 2019, 07:31
    Отличная работа! С меня 50SL рублей :)

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

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