Albus
Albus личный блог
07 апреля 2017, 14:20

Робот ContanGO! 2.0

Робот ContanGO! 2.0
Месяц назад я написал пост Робот ContanGO! smart-lab.ru/blog/385513.php
В нём был изложен черновик торговой идеи. Между фьючерсом и акцией всегда есть разница в цене. Обычно фьючерс дороже акции. Это называется контанго. Контанго всё время меняется. Оно то больше, то меньше. С каждым днём контанго распадается и стремится к нулю. Контанго достигает нуля к дате экспирации.
Робот, выложенный в первом посте, был первым наброском. Он многое не учитывал. С тех пор он стал умнее, я полностью переписал код и обогатил его новыми аналитическими элементами.
1. Теперь роботу не нужно задавать код фьючерса. Он сам возьмёт новый список фьючерсов, когда до экспирации останется 5 дней.
2. Робот умеет учитывать то, что часть денег морозится во фьючерсах, заблокированная под ГО. Он уменьшает доходность на размер замороженных денег.
3. Робот учитывает комиссию биржи автоматически (ничего писать не нужно)
4. Робот учитывает комиссию брокера. Задаётся пользователем в файле ContanGO.lua
5. Робот вычитает из доходности налог НДФЛ 13%
6. Если вы знаете что делаете, вы можете вписать размер дивиденда по каждой акции. Вписав дивиденд, вы поднимете доходность до справедливого значения. Дивиденд считается с налогом 13%. После среза реестра дивиденд нужно обнулить , потому что он перестанет играть роль. Этот пункт — для продвинутых. Если он вам не понятен — поставьте в дивидендах нули.

Ещё раз пройдусь по значениям полей.
1. Share — базовый актив — акция. Под валюты робот не адаптирован, не пытайтесь вписать туда доллар рубль, будет глючить.
2. Nazvanie — название акции — базового актива.
3. Futures — фьючерс на эту акцию.
4. Expire_Days — сколько дней до экспирации.
5. GO % — размер ГО по сравнению с полной стоимостью фьючерса.
6. Div_rub — размер дивиденда на акцию в рублях. Пишется при условии, что срез реестра выпадает до экспирации. И при условии, что этого среза ещё не было. Если срез уже был, то в этом поле надо поставить 0.
7. spread — разница в процентах между фьючерсом и акцией.
8. profit % — это разница в процентах между фьючерсом и акцией за вычетом всех отрицательных моментов: замороженное ГО, комиссия биржи и брокера, налог 13%. В скобках показано насколько это больше или меньше, чем доходность депозита. Если больше 1, то выше, если меньше 1, то ниже.
9. max_profit — робот засекает какой максимальный размер принимал предыдущий параметр и запоминает его. В скобках показано, на сколько он обыгрывает банковский депозит.
10. Depozit_v_banke — средняя доходность годового депозита в российских банках. Я его беру на banki.ru в разделе Аналитика. Сейчас он равен 7,57% годовых. Робот считает какую доходность даст такой депозит за количество дней, оставшееся до экспирации фьючерса.

Робот лежит здесь. Вот ссылка:
yadi.sk/d/1K7lQEaA3FT7fy
В архиве сам робот ContanGO!.lua и библиотека QL.lua. В ней торговые функции, необходимые для работы робота.

А это платформа LuaForWindows. Она нужна для работы библиотеки QL
github.com/rjpcomputing/luaforwindows/releases/download/v5.1.5-51/LuaForWindows_v5.1.5-51.exe

1. Установите LuaForWindows
2. Перезагрузите комп.
3. Положите в отдельную папку файлы ContanGO и QL
4. Запускайте в КВИКе робота ContanGO.lua через Сервисы — Lua скрипты — добавить.

Вот часть файла ContanGO!.lua, которую может редактировать пользователь.
Робот ContanGO! 2.0
Примечание. Два таких дефиса — превращают строку в комментарий. Это позволяет писать после них любой текст.
32 Комментария
  • Igr
    07 апреля 2017, 14:55
    а можно узнать почему прошлый пост про робота удалили? 
  • Igr
    07 апреля 2017, 14:57

     а с какой годовой ставкой в банке вы сравниваете?  надо бы такое значение в таблице 

     

    робот не торгует, только предоставляет информацию?

  • Igr
    07 апреля 2017, 15:00
     скачал, спасибо 
  • Replikant_mih
    07 апреля 2017, 15:41
    Мм, возникло пару интересных мыслей после прочтения, спасибо.

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

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