Блог им. baberbabrob

TSLab - давай, досвиданья!

Хочу немного рассказать о своем [скорее негативном] опыте работы с TSLab.

Как-то раз услышал я про Welthlab и TSLab и решил посмотреть чего это такое. Решил остановиться на последнем, поскольку слышал что это почти аналог первого, разве что приспособленный еще и к торговле на российском рынке… и бесплатный для разработки и тестирования.

Имея некоторый опыт программирования, с блок-схемами разбираться не стал, а начал сразу с изучения и переделки нескольких скачанных примеров на C#. Разобравшись немного с API методом научного тыка. Вернее с основными понятиями — как сделать вход, как сделать выход. И как протестить то что получилось на истории. Больше, как мне казалось, ничего и не надо.

Оказалось однако что не все так просто. Имеющийся API оказывается позволяет в тестере покупать на уже прошедших барах и заглядывать в будущие бары. То есть допускает написание торгового алгоритма, который будет тестере (работая по открытиям баров) вести себя одним образом, а в реальной торговле — совершенно другим. То есть подход изначально порочный и большого доверия не вызывающий. Тем не менее, покопавшись в интернете я узнал, что соблюдая некоторые «the rule of thumb» правила работы с индексами баров, то в принципе можно быть уверенным что алгоритм в будущее заглядывать не будет, и на прошлых баров тоже не станет покупать… так что вздохнув и утерев пот со лба я продолжил ковырять код, пока не получил нечто, что мне захотелось проверить на реале.

Итак, я воткул робота на реал и начал ждать… и вот тут собственно началось… Сначала оказалось что робот не торгует. Выяснилось что программе при запуске контейнера(так называется запущенный алгоритм) есть несколько настроек исполнения ордеров. Как конкретно эти настройки влияют на работу функций CloseAtProfit, CloseAtStop, BuyIfLess, SellIfLess и т.п., при помощи которых происходит вход и выход из позиций, для меня в итоге так и осталось загадкой. Но как грицца — подобным мелочам наш бух было не сломить, и я оставил алгоритм бегать на реале, надеясь разобраться с настройками опытным путем...

А дальше начался какой-то кромешный ад. Алгорим(робот) то пропускал вход, то пропускал выход… то внезапно решал закрыть какую-то виртуальную позицию, которая не пойми по какой причине у него там где-то образовалась. Иногда оживить контейнер получалось, но раз в несколько дней он настолько запутывался в своих ордерах, что проще было запустить контейнер заново. В результате за ~3 недели ковыряний не получилось собрать даже статистику работы алгоритма чтобы сравнить ее с бектестом.

В общем итог получился такой — рабочий(на тестере) алгоритм иногда пропускает входы. Но хрен бы с ними с входами, но иногда он пропускает и выходы по стопу! Ну не совсем стопу, но условию, что если на текущем баре убытки превышают разумные пределы, то нужно, хоть кровь из жопы, — закрываться. Игры с настройками (в попытке добиться чтобы вход в позицию не осуществлялся с большим проскальзыванием, а вот выход осуществлялся с проскальзыванием любым) особых успехов не принесли. 

В итоге через месяц я окончательно озверел, и решил что всё — лично мне хватит этих экспериментов на реале, и отложил программу в сторонку. 

Какова мораль данной истории?

Мораль такая, что если бы я начал работать с TSLab так, как это изначально задумывалось его авторами, то есть через кубики, результат возможно был бы иной( хотя бы потому что на смартлабе я наблюдаю товарищей, которые давно уже работают с TSLab и причем, по их словам, вполне успешно)… Но когда человек решает работать через API и обнаруживает что не может контролировать ньюансы исполнения — это звездец.

Внезапно я осознал( все познается в сравнении) насколько хорош mt4 с точки зрения программиста.

Да и отношение к людям, преподающим курсы по TSLab у меня немного изменилось. Раньше я считал их полной фигней и впариванием за деньги того, что любой желающий сам может изучить по свободным источникам. Однако после ковыряния в документации и форумах я пришел к мнению что там содержится очень мало того, что могло бы помочь в написании реальных боевых роботов. Так что если вы собираетесь реально программировать на TSLab то, разобравшись с азами, реально имеет смысл пойти в обучение к кому-нибудь у кого есть опыт создания реально работающих и исползующихся на этой платформе роботов.
★18
81 комментарий
тоже смотрел TSLab. Какое-то творение программиста-самоучки. Все глючит и работает не так как хочешь. Больше 10 000 рублей сложно доверить этой адской программе.
avatar
SECRET, что скажете насчёт LiveTrade?
avatar
Том Сойер, еще хуже))
avatar
SECRET, просто ты не использовал 3000 кубиков.
avatar
SECRET, во-во, у меня в поддержке вопрос решают уже месяца 3 с тем почему же алгоритм входит в позу раньше чем закроется свеча =) 
avatar
SECRET, TSLab — единственная программа автоматизации на российском ФР, у которой хорошо с execution и у которой широкие возможности для построения стратегий. Может ты просто не досмотрел? я ее тоже раньше не любил, но после тестирования всех (ВСЕХ) подобных программ, увидел, что TSLab — это единственное, что адекватнее всех работает. И конечно, мне удобнее пользоваться API.
Да, там есть еще к чему стремиться, если говорить про версию 1.2, но скоро можно будет перейти на версию 2.0, там многое уже доработано.

Для того что-бы правельно исполнялись сделки, TSLab надо подключать напрямую к серверу брокера или к Плазе (это умеет только TSLab). А не к терминалу Квик. Еще не открыт метод нормального взаимодействия с квиком ), с ним глючит любая программа и коннектор, и TSlab тоже.
Андрей Егоров, нифига там не доработано, кроме косметических мелочей. Втыкнули опционы (это было главной задачей 2.0) и теперь будут года два на них трахаться. В ущерб основному функционалу.
avatar
А как вобще в этих платформах разруливаются издержки сети? Вот ваш робот, я так понимаю, он работает на клиентской стороне, так? Допустим, он отправляет запрос на какую то операцию, а сервер в это время перегружен, и ваш запрос будет обработан только через 30 секунд. Как это все там учитывается?
avatar
sortarray sortarray, 30 секунд — да как вы вообще торгуете в таких условиях? 0_о
DMA спасет мир!
avatar
nik, я не торгую, я присматриваюсь пока:). Но ваша ирония мне не понятна. Даже гугл ложился. Кроме того, запрос проходит десятки узлов до места назначения, любой из узлов может дать задержку. Поэтому, нет и не может быть гарантии на время обслуживания.

Кстати, у этих торговых платформ какой-то отдельный протокол взаимодействия по сети? Он работает поверх TCP? Где об этом почитать? 
avatar
nik, 
DMA спасет мир!
Вы имеете в виду прямой доступ к памяти? Причем тут он вообще? Я говорил о издержках сети.
avatar
sortarray sortarray, нет, это Direct Market Access ))) тобишь торговля через прямое подключение к бирже по нативному протоколу биржи.

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

А каковы условия такого подключения? Где об этом можно почитать?
avatar
sortarray sortarray, на сайтак бирж.
кстати «прямой провод прокинуть» тоже возможно)) тобишь поставить свой сервер на биржу в колокацию.
avatar
sortarray sortarray, ну в теории то все просто — все должно быть так как ты захочешь. например — если за эти 30 сек цена ушла слишком далеко, то вход пропускается, а выход (по стопу) напротив — исполняться с любым проскальзыванием. 

А на практике, TSLab не может просто так взять и пропустить вход! Он должен создать виртуальную позицию и как-то там ее учитывать… то есть ее реально нету, а он считает что она есть… и может например либо открыть потом, когда у него что-то в мозгах провернется(когда ты этого не ждешь), либо закрыть эту несуществующую позицию… чего опять же не ждешь.

Я могу ошибаться в деталях, но впечатление сложилось именно такое.
Бабёр-Енот, спасибо за ответ!
avatar
Да, мт5 пока сасое лучшее, что есть на рынке. Дать только что не популярно оно
kbrobot.ru, мт5 не предназначен для торговли на бирже, только для кухонь.
avatar
nik, БКС и Открытие тоже кухни? мт5 поддерживает торговлю на бирже, он именно для этого и разрабатывался. 
avatar
valo, видел я это убожество  в открытии… нифига он не работает на бирже.
avatar
nik, а по конкретнее. Какие проблемы возникли?
avatar
valo, опционов нет, лимиты считает неправильно и не дает торговать, когда еще половина денег свободных, нет тикового графика,…
avatar
kbrobot.ru, Согласен. Гибкость МТ5 позволяет абсолютно любой алгоритм сделать для реальной торговли, даже ХФТ :) Правда тестер тупой очень. Даже спред не дает поставить свой. Про историю стаканов, полный лог и тиках вообще молчу :)
avatar
SECRET, а ты на чем тестишь стратегии? 
avatar
Ivor, у меня свой тестер есть.
avatar
SECRET, МТ плох тем, что это кухня. У больших брокеров на валюте МТ стоит как система-переходник. Выгоднее сразу подключаться по FIX.

Мы используем и тс лаб. Хорош для простых задач в плане тестирования, кубики помогают. Доверяем ей больше 10 000 рублей, но виртуальных. То, что вы описали, хорошо делается на стокшарпе.
avatar
Евгений, кухня ведь не МТ как таковой, а конторы, кухонные, которые его любят… А сам Софт вполне адекватный, хоть и с массой недостатков
avatar
Roki, софт исключительно кухонный. Знаю, потому что сами покупали ;-)
avatar
Евгений, объясните свою мысль. Что это значит?
avatar
kbrobot.ru, Когда в МТ5 появится вменяемый конструктор на подобии блоков ТС-лаба, то тогда да. Не все владеют языками.
avatar
Работаю с ТСЛаб уже 3 года, управляю брокерскими счетами с помощью роботов. Пока для меня это единственный нормальный способ (доступный, понятный, простой) одновременно управлять несколькими счетами — в одной программе ТСЛаб можно подключить 4 аккаунта Финам, любое кол-во аккаунтов АЛОР. Для меня это — спасение. На одном сервере вижу сразу по 5-10 счетам картину.

Скажу сразу: мне ни разу не пришлось лезть в API, и все мои задачи решались имеющимися средствами (кубиками).

Моя задумчивость в текущий момент и желание написать этот комментарий связаны с тем, что плата за продукт выросла до 2600 рублей (а 3 года назад 1 тыс. рублей).

Это означает, что все мои клиенты ежемесячно теперь в сумме отдают около 40 тыс. рублей. Это уже навевает на некоторые мысли и расчёты о том, окупится ли у меня собственная разработка такого продукта…
avatar
Освоил TSLab в кубиках. Обнаружил, что ATR неправильно считается. Причем на их форуме проблема была обозначена еще несколько лет назад, и объявлено, что она решена. Для тестирования идей- еще куда ни шло, но торговать в реале- нафиг- нафиг.

MQL4- супер вещь, жаль нельзя свои данные использовать и распараллеливать тесты, как в MT5.
avatar

ужасная программа, помню я ниче не смог делать, поддержка отвратная, никто не помогает, пишут только для таких же как они «прогеров» скриптами и всякими кодами. Правда с того времени утекло много воды, я уже и  руками неплохо справляюсь)  уже и не надо никаких роботов))

Руки рулят  

а в рекламе, у них там «собери своего робота, как в LEGO»

то это вранье, как LEGO собирается в Ninja, и да, там я робота собрал за 5 минут со статистикой и т.п. Другое дело — что это NInja, там свой геморр.

А вообще интерес к алго пропал, как стал видеть, что руками можно больше сделать намного 

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

проще им отсыпать, правда нужно ли это, это вопрос)

avatar
Не для обсуждения, и прошу никого не обижаться, просто личное мнение (если не согласны — просто считайте, что необоснованное).
У меня много примеров глюков тслаб. И кубиками. Никакого доверия нет, легче вручную все считать, глюк на глюке и все неудобно.
Какое там торговать! Он и для тестирования почти непригоден, причем самых простых стратегий, без всяких спрэдов и стаканов.
Зато бесплатно.
Мое печальное мнение — какашка, недопил, скомпрометированная идея. А жаль.
Придется свой тестер на джаве писать…
avatar
vladimir doigt, конкретный пример можно привести?
avatar
Oleg Only Algo,
можно, а как я вам должен пример стратегии, результаты, и глюки показать? Я судиться ни с кем не желаю, не считаю возможным что-либо доказать. Знаю — что многие нормально с ним работают, и рад за них. Сам потратил усилий много, обойти глюки не смог за разумное время. Документацию прочитал.
avatar
vladimir doigt, а вот для тестирования иногда лучше не придумать.
avatar
Андрей К, 
Увы, сначала я так думал — а потом посмотрел — явная белиберда (проверил на др тестере). Иногда прокатывает, иногда — нет,  некоторые вещи никак не обойти, а ведь еще надо понять, т е прокрутить весь график.
avatar
vladimir doigt, здесь есть уроки по разработке на C# на библиотеке под SmartCom:
www.youtube.com/playlist?list=PLZYekWHmh5oG6iuCQsfA2Rp6ieORpMToo
Библиотека опенсорсная и хорошо покрыта тестами — по сути тесты это небольшие примеры как работают части этой библиотеки, в том числе взаимодействие со SmartCom.
Здесь C# — короткие уроки: www.youtube.com/playlist?list=PLZYekWHmh5oGyvXSaqaXPL9nOCLjGl1SA
avatar
wyg,
я там был, спасибо за помощь.
avatar
У них все пляшет от того, что пересчет ведется строго по закрытию свечи. От сюда вываливается куча проблем. И пропуск сделок тоже.
avatar
Андрей К, Вы можете сделать пересчёт хоть каждый тик (через сжатие). А куча проблем, скорее, от недостатка опыта работы с прогой.
Николай Лазарев, я хорошо знаю этот способ. В моих идеях, он меня не очень устраивал.
avatar
Есть глюки, но работать с не хфт уж точно можно. Подключите через плазу и глюки все исчезнут с пропусками сигналов, правда придётся доплатить. Такое мнение, что кто то не умеет просто их готовить.
avatar
Тс лаб эксплуатируем с 2011 г. Софт вполне годен для направленных стратегий. На API можно писать коды высокого уровня. Но как продукт тс лаб сделан на массового пользователя, не для профи конечно. Хотя не понимаю почему за столько лет нельзя убрать все лишнее из него и оптимизировать на скорость работы и минимальных затрат ресурсов (съедает порядка 3 гб оперативны в нормальной работе). Но ценник зато подняли на него значительно. Артышка вроде понимающий человек, но занимаются только разработкой новых версий, где еще больше багов и ненужных примочек и индикаторов. Вообщем Артышка просто делает бизнес, невзирая на массу вопросов к его софту… Очень жаль!
avatar
ТСЛаб у меня торгует с 2010 г.
Глюки случались раз в год где то.
Но в основном все проблемы, исключительно, по моей вине были.
Прога не такая простая, как кажется, но очень удобная. На полное освоение уйдёт не меньше полугода-года. Но зато потом сможете писать алгоритмы любой сложности.

To SECRET: я и раньше подозревал, что вы совсем не торт «секрет» (не тот, что класс на ЛЧИ показывал). Но ваш коммент в начале меня окончательно в этом убедил.
Хотя может и тот, но в этом случае, возможно, ТСЛаб составляет серьёзную конкуренцию продажам ваших поделок…
Николай Лазарев, я честно говоря вообще в небольшом подвисоне нахожусь. У меня все работает, правда оч долго писал и обходил глюки или своё недопонимание процессов. А тут такой пост! Может это у меня одного получилось и я гений? Не думаю. Прокомментируйте, пжста, кто работает на тслаб ещё!
avatar
Николай Лазарев, я ничего никому и никогда не продавал :) А тот или не тот — какая разница? :)
avatar
SECRET, Назвать ТСЛаб творением самоучки, это или не быть совсем в курсе предмета или индивидуальная непереносимость Лабы.
В любом случае удивлён таким мнением. У программы масса недочётов, но одному самоучке не поднять подобный проект.
Николай Лазарев, ну это мое личное мнение. Я попытался реализовать простые вещи там, но они работали очень криво, постоянно переполняли какие-то буферы памяти и программа вылетала.
avatar
SECRET, Ну не получилось и ладно. Не у одного у вас не получилось. Я без претензий, просто был крайне удивлён напором негатива с вашей стороны, тем более при «шапочном» знакомстве с прогой (с ваших слов).
SECRET, @«постоянно переполняли какие-то буферы памяти и программа вылетала.»
когда начинал изучать платформу также было, решилось банально путем запуска 64битной версии тслаба))
avatar
Мое ознакомление с тслаб закончилось тем, что я скачал то что качается бесплатно, запустил это тормознючее говно, нажал какую-то кнопку и посыпались ошибки приложения… Будучи опытным отличальщиком гомна от конфеты, больше я к этому «софту» не возвращался

PS. Пардон, я имел в виду стокшарп! :) ТсЛаб это вообще наверно нечто… :)
avatar
У меня стабильно ТСЛаб работает уже больше 2х лет. Сбоев за это время по вине ТСЛаб вообще не было. Торгует одновременно более 10-ти стратегий на 5-ти минутном таймфрейме. Находится на виртуальной машине на contabo. Результат торговли по публично торгуемому счету можно посмотреть в моем профиле на смарт — лабе. Ничего, кроме благодарности создателям ТСЛаб выразить больше не могу.
Дмитрий Власов, вы тот самый Дмитрий Власов, что проповедует WealthLab? Смотрел много ваших бесплатных курсов, очень помогли в освоении роботостроения.

avatar
Ivor, Ну да, мы все идеи тестим, оптимизируем в велсе а затем быстро переделываем код для ТСЛаб и ставим на торговлю именно через эту программу. Вполне рабочий подход.
Дмитрий Власов, да, я тоже так думал делать, т.к первое, что освоил, это Велс. Но потом, все начал делать в ТСЛабе. 
avatar
Подтверждаю, есть такие моменты, пропуски поз, виртуальные позы и прочее. Но это все штатные ситуации. Я тоже месяц бился с настройками, потерял тысяч 8 рублей, но все таки добился стабильной работы. Сейчас полгода роботы спокойно работают без всяких глюков.
Да, настроек в ТСЛабе много, но они же дают и гибкость использования. 
Советую пройти курсы Родиона (не помню ник на смартлабе), ник на форуме ТСЛаба — ra81. Ну и естественно курить сам форум http://forum.tslab.ru/. Потихоньку все освоите. С наскоку вникнуть в эту тему у  меня лично не получилось, пришлось ковыряться с месяц.
Единственная проблема ТСЛба это утечки памяти при длительном использовании. Но это спокойно лечится принудительной перезагрузкой по расписанию ночью.
Да, и оптимизация стратегий тоже не фонтан, только монте карло, никаких визуализаций как в MQL5 и Амиброкер. Но оптимизировать можно. 
avatar
МТ 4, точнее MQL4 вообще сказка! Я не будучи программистом освоил его за несколько месяцев и до сих (уже много лет) пользуюсь.
ну а нужно оно если можно напрямую через квик  работать. что там такого чего нельзя сделать самому? история, расчет индикаторов? судя по описанию ну не космический алгоритм на барах.  понятно что тем для кого дао программирования недоступно, для них кубики…
avatar
ник у автора опупенный, плюсую за ник, пох на тс лаб)
avatar
хорошая прога тслаб. Косяков конечно много но для людей далеких от программирования  это хороший помощник. Сначала он помог мне не терять бабос, а потом уже стал зарабатывать. Есть пара моментов конечно, но они не очень влияют на работу. Все равно надо наблюдать за работой роботов и не оставлять их надолго.
avatar
Ник автора зарегистрирован два дня назад
Галимая антиреклама
avatar
nbvehrfr, не, я еще понимаю почему кто-то может назвать это антирекламой...
…но схрена ли вдруг она «голимая», а!!?

После такого наезда я ожидаю от вас не менее, чем скриншота с настройками секции открытия ордеров, которыми вы пользуетесь в вашей безупречной торговле!
Я тоже уже неоднократно писал что тслаб глючит и робота страшно оставить без пристального присмотра. Это если учесть, что на мт4 у меня крутятся месяцами без перезагрузки терминала.
Настройка рестарта тслаба это вообще нормальное требование авторов? Зачем?
Пропуск входов, выходов… Необходимость делать это руками, это нормально?
Ну вы меня извините...

А то, что пресловутая защита роботов, которые на продажу, в контейнерах? Дырявая и не рабочая… Это на заметку тем, кто продаёт тслаб роботов..

Я честно пытался работать через тслаб, но, к счастью, мт5 подоспел (и это не реклама мт5, смысла нет)
avatar
согласен с афтором 
1 багов много… например из 4ех типов открытия позиции работают только 2… и это в кубиках… а сколько багов в апи...
2 есть баги тестировщика… например баг входа -выхода на одной свече… поэтому обязательно надо смотреть сделки все ли там правильно… ну например ставим лимитник и он на той же свече исполняется… тестиовщик на этом глючит 
3 надо понимать что рынок более сложен чем тест… т.е в реальном рынке сигналы пропускаются заявки не исполняются есть клиринги, гэпы, запрет шортов, планки когода не торгуют и почие ньюансы
например в тслаб нельзя корректно реализовать простейший бот пересечение скользящей средней с ценой… будет в реальном рынке глючить и не исполнять сигналы…                           

имхо зря тслабовцы затеяли версию 2.0 имхо потратили впустую 1.5года… надо было баги править
avatar
ves2010, по поводу 2.0 — насколько я понял там другая архитектура, в отличии от 1.2. Поэтому допиливать 1.2 это путь в тупик, т.к. сама 1.2 сильно ограничена в возможностях из-за своей механики. В 2.0 вроде как механика работы другая и ее развитие более перспективна, чем 1.2. Но могу и ошибаться
avatar
Sicvent, архитектура у что 1.2 что 2.0 = сорта говна… достаточно посмотреть как сводится офсет… или например алгоритм торговли по пересечению со скользящей средней не работает при реальных торгах… т.е простейшие вещи не сделаны… разрабы погнались за количеством функций а надо было сократить функционал но вылизать надежность… как нибудь сваяю пост про баги тслаба
avatar
Adept, MT5 вообще для лохов) как можно построить стратегию в терминале, в который нельзя загрузить историю? )) это просто неприкрытый лохоразвод… какие на… й тики? ))
Странные у вас рассуждение по поводу МТ5, пользуюсь МТ5 у брокера Открытие, торгую на нем на Московской бирже фьючами, руками а так же роботами, арбитражники и т.д… Исторические данные можно скачать нормально запустив скрипт если котировки нужны… Все котировки уже давно для мос биржи реальные тиковые с направлением позиций и совершенно бесплатные, о чем есть инфа и способы получения этих котировок на халяву на форуме метаквотов

— Не нужно сравнивать мт5 тот что форекс кухни пользуют и мт5 который используется для биржевой торговли…
avatar
 А помимо мт5 что пробовали? С чем сравните? мт5 самый удобный по вашему?
avatar
Как обычно, если до конца не смог разобраться — значит всё говно.
avatar
Sid, эээ… ну да, примерно так и есть)))

PS: правда я не понял, причем тут «всё»…
Соглашусь в главном, если разобраться, и знать многие фишки, то Tslab очень удобен, да нет нормальной инструкции которая рассказывала бы все, но тогда бы ни кто не ходил на курсы, можно понять)
Через апи не которые вещи нельзя контролировать, т.к. алгоритм это одна часть, а его запуск и контроль это другая часть.
в не зависимости от того как написан робот, когда его запускаешь в торговлю, можно настроить и проскальзывание, и указать, что стопы закрывались по рынку, и профиты отдельно, есть настройки позволяющие роботу зайти на следующем баре если случился пропуск сигнала, основная проблема пропусков, это то что логика скрипта вами написанная не учитывает, что на след баре не будет этой цены или объема.
месяца 3-5 назад вышло обновление 1.2 и после этого огромная куча багов ушла, и главное пропажа баров)
простой робот делается быстро, для запуска надо чучуть разобраться и тоже все будут хорошо.
ну наверное да мт единственный более менее стоящий аналог, возможно еще смарт шарп, но когда я его смотрел он был слишком сырой.
avatar
А причем здесь до диез???

теги блога Niktesla (бывш. Бабёр-Енот)

....все тэги



UPDONW
Новый дизайн