Sylvia Chardonnay
Sylvia Chardonnay Блог компании Marketstat
26 ноября 2017, 20:03

Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.

 

Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.

Торгую на Американском фондовом рынке с Interactive Brokers (IB) более трех лет на сегодняшний день используя разные стратегии.  До недавнего времени все это было вручную, внутридневка и средний срок. Моя торговая жизнь изменилась, когда я, закончив курсы по созданию и алгоритмизации торговых систем с использованием платформы TSLab, решила выйти на Америку со своими роботами.

Вооружившись знаниями с курса по поиску рыночных закономерностей и отточив навык по нахождению смещения вероятности в своей торговой системе, я создала портфель из десятка роботов и горела нетерпением запустить их на своем боевом счету у Interactive Brokers. В процессе обучения на курсе я проходила практику на Российском срочном рынке в течение нескольких месяцев, поэтому сложности как настроить и запустить агентов в платформе TSLab не возникало. Меня интересовало другое- как сконнектировать TSLab с платформой брокера Trader Workstation (TWS), так как она не является особо user-friendly, достаточно громоздка и не совсем интуитивно понятна, а для алготрейдинга нужно только торговать через эту платформу. Вот тут-то и оказалось, что кроме краткого руководства по подключению TSLab к брокеру IB особо ничего и нет. Перелопатив сотни страниц интернета, русско- и англоязычных блогов и сайтов, я нашла часть необходимой информациии, а недостающая часть была получена методом тыка, путем проб и ошибок в процессе запуска и работы на реале.

Поэтому я решила обобщить в данном цикле статей весь наработанный материал и свой опыт по выходу на реал на Америке со своими роботами из TSLab через IB. Буду рада, если данная статья поможет кому-то сэкономить время, нервы и деньги при подобном процессе.

Для удобства я разбила весь материал на три части:

Часть 1- Особенности при подготовке к запуску TSLab на реал с IB

Часть 2- Непосредственная работа терминалов TSLab и TWS

Часть 3- Часто встречающиеся проблемы

Отмечу, что здесь речь пойдет о реальном счете на IB,(не демо) и полнофункциональном коннекторе TSLab,(не тестовый режим).

Сразу оговорюсь, чего не будет в этой  статье-не будет информации о том, как открыть счет у IB, как формировать свой портфель, как управлять рисками и как создавать роботов в TSLab для Америки. Все это отдельная тема, и если будет значительный интерес, то могу написать об этом дополнительно.

В этой статье я рассмотрю основные моменты подготовки и запуска уже готовых роботов, созданных в TSLab на реал с IB, с которыми я столкнулась. Итак, все по порядку.

                                         

 

 

                  Часть 1. Особенности при подготовке к запуску TSLabна реал с IB



  • Trader Workstation(TWS), платформа брокера IB, через которую нужно будет вести торговлю и коннектировать с TSLab. Она устанавливается отдельно на той машине/ПС, откуда будет вестиcь торговля, скачивается версия для десктопа, не онлайновская. Занимает примерно 700 МВ. Платформа TSLab при этом занимает около 500 МВ, и в процессе работы до конца сессии еще накачивает примерно столько же. Это надо будет учитывать при выборе памяти (RAM), если вы размещаете свои скрипты на отдельном сервере-VPS (Virtual Private Server)


  • Market Data Subscriptions. Для начала работы необходимо иметь подписку у брокера на реальные маркет данные- Market Data Subscriptions. Делается это через

    Account Management>User Settings> Market Data Subscriptions.

    Особенностью IB является не очень удобная система самой подписки- плата взимается за целый календарный месяц независимо от дня подключения. т.е если вы хотите подключить реальные маркет данные в середине месяца, например 16 числа, то платить придется за целый месяц до первого числа следующего месяца.

    Стоимость данных зависит от рынка, страны и от глубины данных. Я например выбрала такие, как на скрине внизу- это позволяет видеть реальные котировки и торговать всеми акциями USA, без стакана. В целом это стоит мне 4,50 дол. в месяц, если комиссия за этот же месяц более 30 долларов. Если меньше, то дополнительно нужно платить 10 дол
Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.


  • APIID- для меня это был не совсем понятный момент, какой API client ID нужно иметь и где его брать. Оказалось, все намного проще. Это делается в настройках

    TWS – File> Global Configuration>API> Settings > Master API client.

    Выбираем любое не отрицательное число и вписываем туда. Это же число затем будем использовать при настройке поставщика в TSLab.

    В этом же блоке  проверяем Socket port- должен быть 7496, иначе работать не будет.

    И я также вбила данные IP co своего VPS в строчку Trusted IPs

Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.

  • Автоматическое закрытие платформы TWS и ее блокирование после определенного времени неактивности. Для этого опять идем в

    File> Global Configuration> Configuration>Lock and Exit и устанавливаем следующее:

    • never lock Trader Workstation, чтобы платформа постоянно была открыта и не блокировалась в течении рабочей сессии

    И вбиваем нужное время для автоматического выхода из программы- Set  Auto Log  Off  Time

    После этого нажимаем «Apply»

Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.

  • Автоматический вход в платформу TWS -стоит отметить, что в базовой конфигурации он не предусмотрен в целях безопасности, поэтому каждый день до начала сессии нужно заходить на свой VPS сервер/ту машину, где она установлена и запускать ее вручную до начала работы сессиии. Если у вас в TSLab стоит автоматическое подключение к поставщику по расписанию в менеджере команд, то запускать TWS нужно до начала времени подключения.

    IB использует двойной метод идентификации, сначала по логину и паролю, а затем по комбинации цифр и букв с карты-ключа IB, которая выдается при открытии счета. При желании в настройках можно отказаться от двойного метода  идентификации:

    Account Management> Manage Account>Security>Secure Login System>SLS Opt Out

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



Теперь о некоторых особенностях в настройках поставщика в TSLab. При создании поставщика данных необходимо обратить внимание на следующее:

Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.

Счет — это ваш номер счета у IB.

API ID-это тот номер, о котором я писала в п 4. Вбиваем то же число, которе выбрали для Master API client в TWS.

Адрес — вбиваем IP той машины, на которой установлены TSLab и TWS

Порт- должен быть обязательно 7496, как и в п 4.

Локальное время- обязательно поставить галочку

Исп. SMARTвсегда — тоже ставим галочку, это нужно для API торговли и правильного расчета комиссии.

Остальные настройки- по желанию.

Особенностью настройки агента в TSLabявляется выбор тикера в источнике скрипта или агента. Тикер для торговли акциями вбивается вручную, а не выбирается из списка меню, как это например, при торговле на рынке FORTS. При первом запуске TSLab не имеет ни одного тикера в памяти и поэтому его нужно занести туда через платформу TWS.

Для этого в TWS создается  любой лимитный ордер с нужным тикером, я, например, делаю это по 1 долл за акцию вне рабочей сессии. Затем после того, как связь с брокером установлена в менеджере поключений TSLab, можно запускать скрипт или агента и выбирать нужный источник как обычно и тогда появится выбранный тикер. После этого, не раньше, лимитный ордер у брокера можно удалить. Все набранные тикеры потом сохраняются в памяти TSLab и второй раз один и тот же тикер вводить не нужно, только новые.

Если вы все правильно настроили, то при подключении TSLab к TWS у вас в платформе брокера должна высветиться такая табличка при нажатии на зеленый символ DATA в правом верхнем углу. Внизу можно увидеть ваши IP данные с портом 7496 и API Client ID и статус- Аccepted. 

Алготрейдинг на Америке с Interactive Brokers – Взгляд Изнутри. Часть 1.



Продолжение следует...

В следующей статье, Часть 2 я продолжу рассказ о непосредственной работе обеих платформ в реальном режиме.  

Надеюсь, этот материал был полезным. Буду признательна за комментарии и пожелания.

Удачных вам трейдов!

 



52 Комментария
  • Redline
    26 ноября 2017, 20:24
    Вооружившись знаниями с курса по поиску рыночных закономерностей

    Что за курс такой?
  • shprots
    26 ноября 2017, 21:01
    Очень ценно! Мне только кажется tws супер интуитивно понятной. Но жутко навороченной, за год далеко не все прощелкал.
    А как у вас результаты на России после всех этих курсов? Надо ли оно простым смертным? Спасибо!
  • Денис Маршал
    26 ноября 2017, 21:09
    Вопрос — как оптимизировать налогообложение?
    Ищу толкового спеца по ин. юрисдикциям.
    Встречались такие?
  • Халявщик
    26 ноября 2017, 21:18
    с декларацией проблем нет? столько сделок считать, рехнуться же можно
      • Халявщик
        26 ноября 2017, 21:31
        Sylvia Chardonnay, если вы платите налоги в Великобритании, то вам еще нужно курсовую разницу считать
          • Халявщик
            26 ноября 2017, 21:49
            Sylvia Chardonnay, вы в Англии налог платите? от 20 до 40%?
              • Халявщик
                26 ноября 2017, 22:09
                Sylvia Chardonnay, выше 100к — 40%. я к тому как трейдерам там живется? не задумываетесь на открытием офшора?
                  • Халявщик
                    26 ноября 2017, 22:17
                    Sylvia Chardonnay, понял! хорошего профита!
  • Дмитрий Новиков
    26 ноября 2017, 21:23

    «Trader Workstation(TWS), платформа брокера IB, через которую нужно будет вести торговлю и коннектировать с TSLab.»
    Есть IB Gateway. Он без запуска платформы позволяет коннектитца. 
      • Дмитрий Новиков
        26 ноября 2017, 23:24
        Sylvia Chardonnay, Я им не пользуюсь. Когда то скачивал просто так. Про оплату не знаю. По моему, это модуль типа TWS только без картинок. Он даже в тестовой версии есть https://www.interactivebrokers.com/en/index.php?f=16454
    • Евгений Гуревич
      26 ноября 2017, 22:41
      Есть IB Gateway. Он без запуска платформы позволяет коннектитца.

      Неспешно изучаю C++ API к TWS. А оказывается есть возможность даже без TWS работать...

      Вопрос, как выше отмечено, упирается в цену.
  • ALGO
    26 ноября 2017, 22:44
    В статье превалирует IB. Совпадение? не думаю…
  • Sphinx
    26 ноября 2017, 23:49
    Давно не было полезного на смартлабе. Спасибо, пишите еще!
      • Степан
        27 ноября 2017, 11:20
        Sylvia Chardonnay, здравствуйте! Очень полезная информация, спасибо большое. Не могли бы вы еще рассказать про комиссии на  американском рынке, про ГО если работаете с фьючерсами чтобы иметь представление с какими суммами можно туда заходить. Спасибо!
        • Рустам TradeInWest.ru
          27 ноября 2017, 16:10
          Степан, ГО на амер. фьючерсы можете посмотреть здесь.

          Если нужна более подробная консультация, то обращайтесь.
          • DDD
            29 ноября 2017, 08:19
            Sylvia Chardonnay,
          • DDD
            29 ноября 2017, 08:21
            Sylvia Chardonnay, провёл первые тестовые сделки на IB… При покупке комиссия fixed за 200 лотов =1$, а при продаже = 1.19-1.24$, там за продажу отдельно что-то берётся? в сносках непонятно.
            И ещё вопрос: вчера продал акции, поставка денег, как я понимаю, будет через т+2. Вот вчера же через десктоп они мне дали выставить заявку на покупку с учётом ещё непоставленных ден.средств, а сегодня через мобильный уже не дают. Счёт немаржинальный, cash, на нём нужно обязательно дождаться поставки денег с проданных бумаг, чтобы с их учётом делать заявки?
              • DDD
                29 ноября 2017, 11:15
                Sylvia Chardonnay, спасибо за ответ!
  • First
    27 ноября 2017, 01:44
    А как через МТ5 торговать Америку? Кроме всяких CFD.
    • Рустам TradeInWest.ru
      27 ноября 2017, 16:09
      First, обращайтесь в личку или сюда.
      • First
        27 ноября 2017, 17:13
        Рустам TradeInWest.ru, а зачем нужен tradeinwest, если можно напрямую работать с AMP Global Clearing?
        • Рустам TradeInWest.ru
          27 ноября 2017, 19:44
          First, можно, никто  не спорит.
          Но работая через нас вы ничего не теряете в деньгах.
          Зато получаете дополнительную тех. поддержку в России.
          • First
            29 ноября 2017, 05:51
            Рустам TradeInWest.ru, а как вообще нерезиденты работают на Америке?
            Что насчет налогов?
            • Рустам TradeInWest.ru
              29 ноября 2017, 09:01
              First, спокойно работают. Никаких проблем с этим.
              При торговле фьючерсами никакие налоги на америки не удерживаются.
              Платите налоги только в России.
              • First
                29 ноября 2017, 17:41
                Рустам TradeInWest.ru, а в России обязательно платить? А как переводить/получать деньги?
                • Рустам TradeInWest.ru
                  29 ноября 2017, 17:58
                  First, 
                  1)обязательно
                  2)банковский валютный перевод.
  • Boris Litvinov
    27 ноября 2017, 02:27
    не понятно
  • Михаил К.
    27 ноября 2017, 05:44
    Скажите, а на какой платформе вы торговали вручную? И зачем переходить на TSLab, если любая программа теханализа имеет как встроенные средства для коннекта к IB, так и инструментарий для автоматической торговли? 
    • Павел Целищев
      27 ноября 2017, 10:09
      Михаил К., Не каждая программа имеет визуальный редактор для программирования. Если человек не знает языков, но хочет работать с алгоритмическими системами (роботами), то ТСЛаб (и ей подобные) — для многих единственный выход.
      • Михаил К.
        27 ноября 2017, 11:22
        Павел Целищев, вы так говорите, как будто выучить язык — это что-то несусветно тяжелое. Месяца — двух хватит, чтобы освоить AFL(Amibroker) или EL(Multicharts). Преимущества же этих программ неоспоримы. Процесс написания системы вручную гораздо удобнее и гибче, чем путем раскладывания кубиков. Кроме того, TSLab абсурдно дорога… TSLab возможно имеет какой-то смысл использовать на российском рынке, где из официальных альтернатив только дубовый Quik, а популярные программы теханализа подключаются только через коннекторы умельцев-любителей. К IB же любая программа цепляется на раз… Поэтому и спрашиваю, в чем смысл?
        • Павел Целищев
          27 ноября 2017, 11:42
          Михаил К., 
           вы так говорите, как будто выучить язык — это что-то несусветно тяжелое. Месяца — двух хватит, чтобы освоить AFL(Amibroker) или EL(Multicharts) 
          Боюсь, тут с вами согласятся не все. Да, есть те, кто способен освоить язык за месяц-два. Особенно если обладает техническим образованием и математическим складом ума. Но уверяю вас, таких абсолютное меньшинство. Тут еще и другой момент есть. Чтоб решиться изучать язык — мотивация должна быть сильная, должна быть уверенность в результате и нацеленность на него. А если человеку нужно просто быстренько проверить несложную идею? Учить язык? Но ведь можно быстро и бесплатно накидать в лабе… А там уже появляется некоторая привычка и лень  учить языки… И так же работает. Так что, если для вас смысла нет, то это совсем не означает, что смысла нет и для всех остальных. К тому же, как вы правильно заметили, 
          TSLab возможно имеет какой-то смысл использовать на российском рынке, где из официальных альтернатив только дубовый Quik
          Соответственно, если вы диверсифицируетесь по рынкам и торгуете в том числе РФ, то гораздо удобнее делать это из одного терминала. Я не хочу рекламировать софт, у тслаба куча проблем, в том числе и с ценой. Но это не значит, что он для кого то не может являть оптимальным решением, с учетом вышеперечисленных мной моментов.
          • Михаил К.
            27 ноября 2017, 12:28
            Павел Целищев, к сожалению, не могу с вами согласиться. 
            Во-первых, языки, встроенные в программы теханализа — это не полноценные (и сложные) стандартные языки программирования. Я сейчас не говорю про C#, который также нашел свое применение. Я про, например, Easylanguage, написание программы на котором  близко к простому английскому.
            Во-вторых, какую идею вообще можно описать кубиками? Хорошо, простую идею можно, но можно ли создать сложную торговую систему со множеством условий? Например, представим гипотетическую торговую стратегию: 
            1. Сигнал на покупку: при пересечении двух МА определяется максимум за последние 10 дней и вход происходит при пробое данного уровня ценой в течение 5 баров с момента пересечения машек. Далее, на первом баре устанавливаем стоп в размере 2 АТR, который подтягиваем на каждом баре стандартным для trailing stop образом. При срабатывании стопа, определяем максимум за последние, допустим, 10 дней, и перезаходим в позицию, если его пробой произойдет в следующие, скажем, семь баров… Сколько кубиков придется отложить, чтобы все это описать? Сколько времени все это займет? На EL можно уложиться минут в 15. И я еще не упомянул о необходимости написания алгоритма для определения размера позиции или какого-либо способа формирования портфеля… Возможно ли вообще такое в TSLab?
            В Multicharts же (и в Amibroker, с горем пополам) даже можно описывать графические паттерны, алгоритмически строить трендовые (и прочие) линии и создавать торговые системы с их применением. Возможности широчайшие.

            Да, учить что-то придется, но тут как в мультфильме — лучше день потерять, а потом каждый раз за полчаса долетать. 
            И, вообще, разве создавать автоматические системы просто? Любые трудозатраты на освоение программ — это маленькая толика того времени, что придется потратить на разработку и тестирование.
  • Павел Целищев
    27 ноября 2017, 12:47
    Михаил К., Ради интереса провел эксперимент. Ушло 9 мин. К сожалению, вы уточнили не все моменты (например, что если после стопа цена уже выше максимума, ведь стоп трейлится). Но в том виде, в каком поставлена задача — алгоритм соответствует. 
    Возможности лабы шире, чем кажется на первый взгляд. К тому же, если уж есть навыки программирования, то в тслаб API вообще что угодно можно делать.
  • eDoK
    27 ноября 2017, 21:33
    Спасибо, интересно! Жду продолжения :)
  • Galia
    14 ноября 2021, 13:55
    Здравствуйте! Благодарю за подробную статью, но к сожалению, подключить IB к Тслаб не удалось. Вы можете помочь, в индивидуальном порядке, за отдельную плату? [email protected]
  • Egorax
    16 декабря 2022, 14:33
    Надо смотреть здесь — deneb.app/product
  • SergeyFd
    01 марта 2023, 10:33
    Тоже хочу попробовать свои алгоритмы на IB. Возможно ли это сейчас с паспортом РФ? Где взять внутридневные исторические данные для иностранных акций для тестирования?

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

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