Профессор

FAQ Настройка TSLab

В этом посте я собрал особенности настройки TSLab для торговли на боевом сервере. Эти настройки помогут вам избежать многих проблем, с которыми почти все сталкиваются в начале карьеры алготрейдера. Статья будет пополняться новыми советами. Если у вас возникли сложности или дополнения, пишите в комментарии или мне в Skype.

Оптимизация памяти

Если вы смотрели видео уроки на сайте TSLab, то знаете как сократить размер кэша агента чтобы освободить оперативную память и ускорить пересчет. В настройке вашего скрипта перед запуском агента нужно выставить Максимум баров – ограничитель. Я ставлю не более 2000, в зависимости от тайм фрейма. Можно также ограничить количество дней “Макс. дней”. Главное, чтобы цифра была больше чем нужно самому медленному индикатору. Проверьте чтобы до и после ограничения ваши сделки совпадали. 10 агентов у меня занимают 1.2 Гб памяти. Также имейте ввиду что со временем TSLab увеличивает потребление памяти и к вечеру уже может занимать 3 Гб, особенно если открывать роботов в лабе на рабочей программе.

Настройка скрипта TSLab
Максимум баров

Настройка связки TSLab + QUIK

Защита от смены сервера

Настоятельно рекомендую всем установить галочку в QUIK для того чтобы он не менял сервера и не дублировались стоп-заявки.

Настройка подключений QUIK
Настройка подключений QUIK
Не доступен сервер QUIK

Если сервер вашего брокера недоступен (такое иногда бывает), то нужно в списке соединений выбрать другой сервер и попробовать подключиться к нему. Если получилось, то у вас могла остаться стоп-заявки на недоступном сервере. Они там и будут оставаться, пока вы их не отмените. Для этого нужно на каждой заявке в окне QUIK нажать правой кнопкой и выбрать “Сделать своей”, после чего она будет перенесена на текущий сервер. После этого можете ее отменить и дать возможность TSLab выставить их заново перезапуском агентов.

Защита от изменения файла конфигурации QUIK

Одной из самых частых проблем у новичков является нарушение связи DDE из за изменения конфигурации окон QUIK. Для того чтобы ее восстановить нужно взять tslab.wnd из поставки и заменить его в папке QUIK, после чего сделать загрузку файла настроек и указать этот файл. Этот файл следует держать в неизменном виде! Для этого нужно зайти в настройки QUIK, перейти в раздел Программа – Файлы настроек и снять галочку с Сохранять настройки в файл при выходе. Данную настройку нужно сделать в самый первый запуск QUIK.

Автоматический запуск с утра

Для того чтобы TSLab самостоятельно подключался с утра без вашего участия необходимо правильно подобрать настройки поставщика данных. Особенно это касается QUIK.
Необходимо настроить расписание подключения. Можно оставить настройки по-умолчанию 9-50 с пн по пт, но я поставил 9-41 в ТСЛаб и 9-40 в QUIK (настройка в меню Доступные соединения). Важно чтобы QUIK подключался раньше TSLab.
В настройках поставщика галочку с “Перезапускать QUIK” нужно снять. Таким образом он будет запущен всегда. Нужно только 1 раз запустить TSLab, нажать Соединить в меню и он запустит QUIK. Произойдет автоматический ввод логина и пароля, если ничего не трогать. Если не произойдет, что-то настроили неправильно. Загружаем настройку tslab.wnd, которая дефолтная или скачанная у брокера, сворачиваем QUIK и больше вообще его не трогаем. Можно только переключать вкладки, не меняя их. С этого момента все будет включаться – отключаться автоматически: в 9-40 QUIK подключается к брокеру, в 9-41 TSLab подключается к QUIK и выставляет заявки. В конце сессии отключается. Раз в неделю перезапускаем все вручную чтобы очистить память.

Ошибка “Превышено время ожидания”

Возникает когда ТсЛаб не может получить подтверждения о выставлении заявки. Проблема в связи между ними, либо в настройках системы. Первое лечится загрузкой tslab.wnd, второе установкой русского лэнгвидж пака в Windows и родного отображения даты/времени в системе. Также нужно поставить пакет обновлений Windows, который отключает переход на зимнее-летнее время. Все это нужно проделать в первую очередь когда впервые запускаете удаленный сервер.

Настройка региональных стандартов Windows
Настройка региональных стандартов Windows
Русские региональные настройки Windows
Региональные настройки Windows для TSLab
Профилактика

Ежедневно перед торгами или вечером после торгов открываем в QUIK вкладку позиций и сверяем их с агентами. Вкладки там не двигаем и не закрываем.
Еженедельно перезапускаем TSlab и QUIK, выполняем соединение снова. Это для очистки памяти.

Не выставляются заявки, не обновляются котировки и тд

Проверьте связь между терминалами, загрузите tslab.wnd. Этот файл всегда должен лежать у вас на рабочем столе в своём первозданном виде. При необходимости кидайте его в папку QUIK с перезаписью.

Не обновляются котировки, пропали графики

Такое часто случается при сбое и вылете ТСЛаб. Нарушается работа кэша котировок. После того как запущен ТСЛаб нужно дать минут 5-10 чтобы они загрузились сами. Если этого не произошло, то рядом с агентом нажать кнопку Гр, подождать пока загрузится график, нажать на нем правой кнопкой и выбрать Перезагрузить данные. Это обновит кэш. Если котировки после этого не скачались за какой-то промежуток времени и вы работаете через QUIK, то нужно в QUIK в меню выбрать Перезаказать архив графиков, перед этим отключив ТСЛаб от поставщика. QUIK перезапустится, подключайтесь, проверяйте.

Какой выбрать удаленный сервер VPS/VDS для TSLab?

Выбирайте по отзывам и цене в этом отличном обзоре на Хабре. Лично я использовал Агаву, 1Gb, был недоволен, перешел на UltraVDS его использовал пол-года и был доволен, пока не начались лаги и сбои QUIK, затем перешел на домашний хостинг и отказался от Квика.

Если вы всё же решили найти надежного VPS провайдера для трейдинга, обратите внимание на ruVDS, с которым сотрудничают крупнейшие брокеры. Пишите мне и получите промо-код на скидку 5% на хостинг!

На скриншоте оптимальная конфигурация сервера для TSLab до 10-12 агентов.

Оптимальная конфигурация VDS/VPS для TSLab
Оптимальная конфигурация VDS/VPS для TSLab

Как установить внешние индикаторы

Скачать дополнительные индикаторы можно на официальном форуме программы TSLab. Скачиваем и разархивируем в папку Handlers. Попасть туда можно нажав в меню TSLab Инструменты – Папка с логами и перейти на уровень выше. Перезапустить программу. Индикаторы могут быть 32-битными, 64-битными и универсальными. Для разработки рекомендуется работать в 64-битной версии TSLab, а на рабочем сервере с той, которую поддерживает торговый терминал или коннектор. Например, QUIK сможет работать только с 32-битной версией, а Plaza2 и терминал брокера АЛОР может работать и с 64-битной. Соответственно, индикаторы должны соответствовать версии TSLab. Прошу также принять во внимание что кубик, который работает в тестовом Лабе может не работать в реальном агенте или работать иначе.

Настройка лотов в агенте

При настройке агента вы должны указать портфель, инструмент, а также лотность. Размер позиции будет зависеть от настроек, указанных в блоке открытия позиции скрипта. Вы можете выбрать Управляется алгоритмом, тогда настройку лотов нужно производить в самом скрипте, каждый раз открывая его меняя количество в блоке открытия, когда это необходимо. Можно выбрать вариант В лотах, тогда вы указываете количество лотов уже в агенте, но при этом данное количество будет умножаться на количество, указанное в блоке открытия в скрипте. Это важный момент! Вариант В процентах от портфеля теоретически должен высчитывать количество, исходя из суммы на счете и цены актива или ГО, но на практике с фьючерсами работает не корректно, не рекомендую использовать.

Как настроить менеджер уведомлений

TSLab позволяет настроить рассылку уведомлений о различных событиях на электронную почту. Это удобно чтобы быстро получить сообщение о проблеме с подключением к поставщику данных или о возникновении ошибок в агентах. Нужно зайти в Инструменты – Менеджер уведомлений и создать тип e-mail. Настраивается он не тривиально, настройки работают такие:notifications_manager

Если не работает 25 порт, то попробуйте 587. На Яндексе должно быть аналогично.

Через некоторое время использования Мэйл.ру заблокировал мне отправку сообщений через POP3, потому что программа превысила лимит, перешел на Gmail.

Gmail использует порт 587, сервер smtp.gmail.com. В настройках аккаунта Goolge создайте пароль приложения чтобы не палить свой пароль от ящика, либо создайте отдельный профиль Google.

Кроме настройки типа уведомлений и данных авторизации нужно также добавить фильтры по типу событий и не забыть активировать созданные уведомления галочкой. Подробней можно посмотреть в видео-уроке на сайте tslab.ru. Фильтры обрабатываются по порядку с условием “и”. То есть создать в одной настройке два разных типа или категории уведомлений не удастся. Для этого нужно сделать 2 настройки типа email с разными фильтрами. Например, одну настройку для событий категории “Поставщик данных”, другую для сообщений типа “Ошибки”. Можно также выбрать фильтр “Коды” и перечислить коды сообщений из списка (раздел 2.3.12).

После перезапуска агентов теряется история и статистика

Что делать? Избежать этого никак нельзя. Для ведения статистики нужно заполнять свой торговый журнал. Я делаю это еженедельно. Хочу поделиться журналом для роботов в Excel. В нем вы можете вести свою статистику, смотреть графики вашего депозита и дополнять любыми нужными вам цифрами. Скачать Журнал доходности портфеля.

Где скачать котировки для TSLab и склейка фьючерсов

Настройки для экспорта котировок в TSLab с сайта FINAM
Настройки для экспорта котировок в TSLab с сайта FINAM

Скачать архив минутных графиков для TSLab и других торговых систем можно бесплатно через сайт Финам или MFD. Сделать это можно вручную, выгружая файлы частями и склеивая их в блокноте в один файл по порядку. Также есть специальные программы, которые скачают и склеят данные за вас, но программы эти в основном не поддерживаются разработчиками и работают не всегда адекватно. Из рабочих программ могу отметить Cognitum Updater, который обновляет котировки по расписанию с Финам. Если вам понадобятся тиковые данные, то Финам позволяет их скачивать только после 18:00, то есть в нерабочее время и тоже частями. Есть также программа от StockSharp под названием Hydra, которая может экспортировать данные сначала в свой формат, а затем в .txt. Скачать можно на официальном сайте S#.

Для того чтобы загрузить исторические данные в текстовом формате или csv нужно создать текстовый поставщик данных. Инструменты – Менеджер поставщиков данных – Добавить … и выбрать Исторические данные – Текстовые файлы. В окне настроек указать папку где будут храниться склейки, задать валюту “п” – пункт.

Сменить тип отображения графика: свечи, бары, стакан

Смена типа отображения графика на бары в TSLab

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

Какую установить комиссию

Какую брать комиссию, если вы торгуете фьючерсы? С 2017 года Мосбиржа установила относительные комиссии на рынке Фортс. Это значит, что комиссия считается также, как и на акциях — в процентах от стоимости контракта. Это относится к фьючерсам и опционам. Узнать актуальный размер комиссии на сайте Мосбиржи (раздел Группы срочных контрактов и базовые ставки за заключение фьючерсов).

Не стоит забывать что это лишь комиссия биржи. К ней нужно прибавить комиссию вашего брокера. Также рекомендуется умножить полученную комиссию на 2, чтобы проводить стресс-тестирование алгоритма и учесть проскальзывание в алгоритме.

Например: фьючерс рубль-доллар SI относится к группе курс иностранной валюты к российскому рублю.

  • Базовая ставка 0,0014%
  • Комиссия брокера = комиссии биржи, то есть 0,0014%
  • Итоговая комиссия 0,0014*2*2 = 0,0056%, что при курсе 63000 где-то 3,52 руб

Для учёта комиссии в TSLab берём кубик Относительная комиссия. Стоимость денег нам не нужна. Если вам понятней комиссия в рублях, то можно брать Абсолютная комиссия и ставить фиксировано 5, а то и 10 руб комиссии на SI – с запасом.

TSLab 2.1 скачать

Последняя версия доступна на официальном сайте. Отвечу на основные вопросы:

  • Ключ от версии 1.2 и 2.0 подходит.
  • Поддержку можно получить через тикеты поддержки и официальном канале в Telegram.
  • Через QUIK работать можно, связь через LUA.
  • Опционы работают в Transaq и Алор трейд точно.
  • Алгоритмы со стандартными кубиками из 1.2 открываются и работают без проблем. Обратная совместимость c TSLab 2.0 и 1.2 отсутствует.

Обучение TSLab

Рекомендации и отзывы по продуктам школы только положительные!

44 комментария

    1. Добрый день. Тут такая проблемка возникла. При работе самого скрипта на графике показывает одни сделки, а в реале на графике агента и в самой торговле – идет не соответствие работе самого скрипта. Как такое возможно?

      1. Возможны различные причины: заглядывание в будущее, разные данные, пропуск сигналов.

        1. Спасибо, Александр. Видимо остается глядя на сигналы на лаборатории исполнять в ручную их.

  1. Александр, Спасибо!
    Описаны очень ВАЖНЫЕ настройки для корректной работы.
    Все сделал как у тебя написано, головной боли стало гораздо меньше.
    Спасибо!

  2. Подскажите пожалуйста, когда в портфеле я выбирают инструмент (в частности Si-3.16) и потом подключаюсь и запускают агента, программа пишет, что инструмент не найден so+3.16. Что это за ошибка и как её можно исправить? Спасибо

    1. QUIK? Если график грузится то все в порядке, просто не было в таблицах данных о нем до этого. Можно в настройках QUIK получение данных установить Исходя из открытых пользователем таблиц. То есть это может зависеть от списка инструментов, которые загружает QUIK от брокера.

  3. Подскажите пожалуйста, как быть в такой ситуации – вечером робот зашел в позицию и выставил стоп. Соответственно этот стоп появился в стоп-заявках в QUIK. На следующий день TSLab забыл, что он выставил стоп и выставляет этот стоп еще раз. А QUIK не забыл. И теперь в стоп-заявках в QUIK висят 2 стопа на 1 позицию! Если цена подходит к стопу, то происходит двойной выход из позиции.
    Роботы стоят на UltraVDS, tslab.wnd не менялся, переход на зимнее время отключен.
    В чем может быть проблема?

    1. Возможно TSLab не получил ответ от квика в течение таймаута о принятии заявки. Это происходит либо от большой задержки в связи с сервером брокера, либо всё-таки сбился DDE. Если проблема не единоразовая, то скорей всего второй вариант. Нужно также открыть таблицу Свои заявки, сравнить когда выставлялся стоп с квиком и было ли это успешным. wnd лучше хранить под рукой, менять каждое утро, либо отключить сохранение конфига в квике и перезапускать его.

      1. Поставил дефолтный wnd. Отключил сохранение конфига в квике. Подключил QUIK на другой сервер. Не помогло.
        В течении дня все нормально. Стопы выставляются синхронно – в TSLab и в QUIK одна и та же цена, одно и тоже время. Происходят покупки/продажи, выставляются/снимаются стопы. Но на следующее утро TSLab забывает про выставленный вчера вечером стоп и в 9.45, при подключении TSLab к QUIK происходит повторное выставление стопа.

        1. То что стоп перевыставляется – это нормально. А старый стоп не снимается разве? Если так, то надо обратиться в поддержку.

  4. Старый (вчерашний) стоп в QUIK не снимается. Поддержка брокера говорит, что это Ваши роботы и это Ваша проблема.

    1. Лучше сразу обращаться в поддержку TSLab, потому что брокеры перенаправляют технические вопросы им. В запрос нужно добавить лог программы (Инструменты – Папка с логами) и подробное описание проблемы с номерами проблемных заявок и скриншотами заявок и сделок.

          1. У другого брокера будет тот же QUIK, те же проблемы..

          2. Так и не надо через QUIK торговать, проблем не будет тогда :)

  5. Будьте добры подскажите. При запуске TSLab, и последующем запуске QUIK(Открытие), в квике выходит сообщение: “неверный пароль”. Набираю пароль руками-всё норм работает. В чём может быть проблема, хочу настроить автовключение по утрам, но эта проблема не даёт??

    1. Происходит не зависимо от того вручную нажато подключение или по расписанию? Заполняется ли при автоматическом логине поле логин и пароль в квике ? Если поставить галочку “Перезапускать Квик”, то тоже не работает? Может раскладка или действительно что то не так введено ? Сохранять пароль стоит?

  6. Добрый вечер.
    Подскажите, пожалуйста.по моей проблеме.
    Не могу настроить ТСЛаб на удаленном сервере.
    Выходит такая ошибка – 19:41:00.14 4 Не получается выполнить автологин. Возможно, идет попытка соединения из удаленной сессии (RDP).
    Запрошенная операция требует повышения. (Исключение из HRESULT: 0x800702E4)
    Брокер Открытие, сервер УльтраVDS.

  7. Здравствуйте!
    Интересует применение тслаб2 для торговли опционами, но ни где не найду её в доступе, каким образом можно попробовать её?

    1. Сборки 2.0 пока можно скачать на форуме TSLab в соответствующем разделе.

  8. Добрый день!
    пытаюсь в ТсЛаб 1.2 настроить онлайн обновление графика путем считывания текстового файла, который обновляется по расписанию программой Quote Updater Seda (хотя это не принципиально, какой программой обновляется текстовый файл). ТсЛаб отказывается в онлайне обновлять график, хотя в файле данные обновляются постоянно… в чем может быть проблема и как можно настроить ?
    Спасибо!

  9. Здравствуйте
    Постоянно пропускаются сигналы, исполнился 1 из 10 где-то, пишет “Пропущен сигнал входа в позицию.
    Требуется вмешательство через Менеджер Команд.” выставляю действие автооткрытия/закрытия 5 баров и проскальзование в шагах 500 шагов
    tslab1.2 через transaq финам

      1. Александр, будьте добры, расскажите пожалуйста про взаимодействие TSLab с транзак коннектором

      2. Здравствуйте! У меня такая-же проблема с Пропусками входов-выходов. Что-такое “Го”,и где это смотреть?

        1. ГО это сколько денег надо на открытие контракта, гарантийное обеспечение. Может не хватать денег на счете при открытии позиции по рынку. Надо смотреть лог чтобы разобраться в причине пропуска. Либо в программе, либо в мен. “Папка с логами” и искать ошибки когда выходит сообщение.

  10. первичный запуск квика через тслаб ,постоянно перезапускает квик пишет Терминал QUIK в папке ‘C:\QuikTSLab\’ не найден, либо не получается инициировать механизм автологина.
    а в статусе ошика ,подключение,ошибка связи . что такое

  11. Добрый день!
    Сделал робота на tslab 1.2. При переносе в 2.0 выдает ошибку, не считает один индикатор. Как его можно перенести?

    1. Нестандартные индикаторы только собирать вручную из кубиков, либо просить на форуме автора компилировать под новую версию.

  12. Здравствуйте! В 1.2 сам создавал папку “Handlers”. В 2.0 не могу найти никакой информации – где её создвать и как подключать пользовательские “кубики-инструменты”. По пути как в 1.2 – программа 2.0 не видит дополнительных пользовательских “кубиков-инструментов”.

    1. Создаётся также, как и в 1.2. Должен видеть. У вас эти dll для 2.0? Потому что от 1.2 не подходят.

      1. Спасибо,понятно теперь.Да, dll для 1.2 . Получается для 2.0 всё заново надо где-то добывать.

  13. Здравствуйте! Помогите пожалуйста новому пользователю TsLab. Не могу понять логику программы. В программе нет циклов. Как его построить? На ПИТОНЕ это можно сделать очень легким и простым кодом. Задача найти самую большую свечу. Помогите пожалуйста, очень прошу. Практически во всём разобрался кроме цикла

    1. Каждая свеча это цикл, пересчёт идёт по закрытию свечи. Объясните подробнее свою задачу, если не понятно.

  14. Мне нужно установить фрактал для ТСлаб 2.0. Есть ли пошаговая инструкция

    1. Нужно создать папку Handlers на уровне, где лежит папка Logs, туда можно из меня программы попасть “Папка с логами”. Туда закинуть dll внешних индикаторов. Найти фракталы можно на форуме TSLab.
      Нужно иметь ввиду что фракталы могут перерисовываться, беря свечи на тестах “из будущего”, поскольку их условие Х свечей после пика и У до пика.

  15. Здравствуйте! У меня в стратегии используются индикаторы RSI, SMA но во вкладке “Оптимизация” я вижу только кубик открытия позиции, а индикаторы не вижу, соответственно не могу подобрать лучший период индикатора. Почему, что-то надо настроить? Спасибо.

    1. Не понял как кубик может быть на вкладке Оптимизация. Возможно есть ошибки в логе программы. Посмотрите все ли соединили.

Добавить комментарий