Блог им. Tyam

SmartLabAlgoTrader++;



 Всем привет!
    Let me speak from my heart.
 
    Пришлось пройти довольно длинный путь к алготрейдингу, и есть мнение, что некоторые мои исследования и мысли могут быть кому-то интересны и полезны. А значит, настала пора «выходить в люди».
 А вот и я...
    Ну и как полагается первый пост о том, кто я такой и как до этого докатился, так сказать "mystory".
 
    2009 год. На дворе кризис, конфеты отчаянно не продаются (моя тогдашняя работа продажником). С подачи преподавателя в первом институте начал смотреть РБК, чтобы быть в «теме». Кроме того что тема «кризиса» для меня была раскрыта до тошноты, проявился один странный и сильный побочный эффект. В какой-то момент мне стало казаться, что быть трейдером это просто и невероятно прибыльно.
 
    Шло время, и к концу года я начал читать книги по трейдингу. Вильямсы, Шваб, Швагар, Лафевр, всех и не вспомню сейчас.   Год изучал трейдинг, прочёл около 20 книг, торговал на учебном счёте 4 месяца. И к концу 2010 наконец решился открыть свой первый реальный счёт.
 
    Долго (Лонг) ли, коротко (Шорт) ли, но в сентябре 2011 на депозите осталось около 30% от внесённой суммы. Что я ощущал и думал в этот момент всем вам известно, опустим это. НИКОГДА Не шорти Сбер БЛЕ@@ТЬ!
 
    Единственное что осталось после веселья так это куча записей в блокноте. Возможные стратегии, наблюдения и просто мысли. Последняя из них гласила: «Больше никогда не торгую руками».
 
    Счёт был закрыт и уже через месяц я, скрепя зубами, учил C#. К изучению программирования подошёл основательно. На тот момент, окончательно решив сделать алготрейдинг и программирование своей профессией.
 
    Решил, что хочу стать одним из лучших, а они (лучшие) не торгуют в ТСЛабах, СтокШарпах и прочих платформах. Поэтому задумал написать собственную библиотеку для тестирования МТС и торговли. Над чем и работаю по сию пору, ибо процесс этот, похоже, бесконечен.
 
    В 2012 пошёл на курсы профессиональной переподготовки на программиста в НГТУ АВТФ УЦИТ. Кто из Новосиба сами всё знают, остальным — из потока 125 человек диплом получили 6. Там меня заставили учить С, С++ и другие противные мне низкоуровневые (читай скоростные) вещи. Чему сейчас не нарадуюсь.
 
    В качестве диплома сдавал робота для парного трейдинга под Quik, чем заставил плакать от радости весь деканат и приёмную комиссию. Но это совсем другая история...
 
    На данный момент:
  • Торгую самописными роботами на своём крошечном депозите; 
  • Думаю, что делать с говноданными из Quik, которые выбили из игры мои лучшие МТС;
  • ИзучаюBest Practice C# C++;
  • Экспериментирую с архитектурой роботов, пытаясь найти баланс между скоростью и reusable;
  • Пытаюсь понять, как пишут МТС лучшие в своём деле;
  • В последний месяц плотно подсел на ИИ алгоритмы;
  • Ну и, конечно же, мечтаю найти Грааль, плюнуть в рожу начальнику уволится с работы и купить дачу в Miami...
 
    Вот об этом, обо всём и буду писать. Надеюсь, будет интересно.
    Короче, всем привет!  
    И будем знакомы.
★11
48 комментариев
1 трудной окольной дорогой пошел
2 специально не пишу на си (хотя и умею)… достаточно визуального редактора тслаба… все крайне просто… чем проще тем лучше… рулят граали
avatar
ves2010, возможно это и так, эквити покажет). Однако то, что я сейчас пилю и то, что у меня смотрит в рынок, на тслабе не сделать.
По С++ соглашусь, компилятор C# с каждым годом всё эффективнее, а программы на выходе быстрее. Смысл переходить с шарпов на си нет.
Tyam, «Однако то, что я сейчас пилю и то, что у меня смотрит в рынок, на тслабе не сделать.»

Пробовали? точно знаете? даже с помощью TSLab API?
Или не пробовали, но знаете?
Николай Лазарев, Конечно пробовал. Видите ли, чтобы освоить тслаб, достаточно несколько десятков часов. И естественно, я их честно потратил на изучение предмета.
Что косается тслаб API, мне это не зачем, и думается ни один победитель ЛЧИ никаких прокладок вроде тслаб не использует. Но конечно же TSLab API позволяет прикрутить всё что угодно к терминалу тслаб, вот только как это выглядит, какая у этого скорость и зачем это нужно?
Tyam, Скорее всего Вы правы, но про Квик непонятно, тоже «прокладка», через COM-ы брокеров быстрее наверно.
Николай Лазарев, Quik надо убирать на пути к бирже, тут и обсуждать нечего). На что его заменить и как это будет выглядеть, вопрос для меня открытый. Пока думаю Plaza2, а где размещаться не понятно. Надо изучать тему, одним словом.
У меня обратный путь, Я программист со стажем больше 9 лет, знаю все основные основные языки. Пока есть возможность торговать руками буду торговать руками, благо получается ;)

p.s.
По теме StockSharp хуже платформы не видел. Архитектура может быть и не плохая, но реализация, это тихий ужас.
avatar
Может лучше стать программером на Python, R, SQL, поучить дата-майнинг и устроится на крутую работу? Способности явно есть
avatar
>>>Думаю, что делать с говноданными из Quik, которые выбили из игры мои лучшие МТС;

Если ориентируетесь на алготрейдинг, переходите на плаза 2. Вам не нужен Quick
avatar
Valeriy. Да, надо собраться с силами и перейти на плазу.
Tyam, советую не мелочиться, а собраться с силами и перейти на западный рынок(ибо скоро тут будет пекло).
my_1st_m, да, хороший программер поднимет и 3 и 4 и 5 штук зелени. Стабильно, а трейдер? Далеко не факт.
avatar
my_1st_m, одно другому не мешает абсолютно. Может и стану, да только сразу на «крутую» не получиться. Сначало надо Juniorом отработать пару лет…
У меня одного алготрейдинг ассоциируется с алкоголизмом в трейдинге?
avatar
Lenny, Нет, ни у одного. Хотя ALCOtrading это чуть-чуть другое конечно)) Но хотелось бы увидеть и такого рода специалистов на Смарт-лабе.

алКотрейдер смотрит на RI перед началом торгов.
Советую заняться всем, что связано с Big Data. Таких специалистов на рынке в РФ нет, отрывать будут через пару лет за большие деньги
avatar
my_1st_m, спасибо за предложение). Но я всё же по роботам дальше… В Сибири OldSchool (C++, C#) алготрейдеров полтора человека, думаю меня и так «отрывать будут через пару лет за большие деньги», если мне это конечно надо будет.
Респект по выходу на Ай ти.

Относительно опыта трейдера — ну разве что пока демо версия.

Относительно размера счета — со временем убедитесь, что это большого значения не имеет.

Совершенствование процесс без конца, поэтому в определенный момент надо останавливаться, не в плане исследований, но реальной биржевой работы.

Направление представляется верным…
avatar
Перефразируя пафосное повествование «Хочу писать роботов, учу программирование».
Tyam, Вы с нуля начали изучать программирование, или какой то опыт был? Сколько ушло времени от начала изучения C#, до работающего робота?
avatar
kedr_trade. 1. да с нуля. Кроме холодильника ничего больше не программировал. 2. Я даже подсчёт часов примерный веду).
До первых полноценных бэк тестов я потратил около 1000 часов.
До платформы для торговли и тестирования — 1500 часов.
У кого-то может и быстрее получиться, +- 300.
У меня наоборот есть система, которую просто мечтаю закодить сам, а программировать быстро научиться не могу и все, кажется так много информации, что уйдут года прежде, чем смогу что то написать нормальное. Но учу, если честно медленно, как то не особо меня втягивает изучение программирования. А как Вы учились до НГТУ АВТФ УЦИТ по книгам???
avatar
aTom_. Да, по книгам в основном. Учёба в институте меня даже замедлила в плане алготрейдинга. Можно было и без этого обойтись.

Действительно уйдут года, прежде чем что-то нормальное получится написать, надо сразу это понимать.
Вот у меня уже два года потрачено, профитов миллионных нет и когда будут неизвестно.
aTom_. Чарльз Петцольд, Программирование в тональности C#. Первая книга по шарпам которую я смог до конца дочитать. Можно с неё начать попробовать.
Я из Новосиба, правда живу теперь в Москве. Лови респекты, двигайся дальше, желаю успехов!: )
avatar
Евгений Шоркин, Спасибо, и вам того же!)
Чего ты Tyam не патрийот. Или это просто по привычке долбо*бскокго поколения все обосрать вокруг для начала? )))
avatar
Изико, Не совсем понял, что таково не патриотичного в этом посте. Но смею заверить, что дальше будет НАМНОГО ХУЖЕ, ибо как большинство на этом ресурсе, я ещё и в экономике разбираюсь и за политикой слежу. А в этих сферах в России всё намного хуже.
Tyam, про говноданные не очень понравилось. ты же знаешь что квик это г. новосибирск ул. коммунистическая )
про плаза 2 здесь пишут, по мне так плаза нужна в очень специфических случаях. квик вполне себе хороший источник данных и средство выставления. и все рынки покрывает. да, и от плазы теоритически могут в будущем отказаться на бирже…
avatar
Велкам!
Футурама форевер!
Кодинг рулит и всё такое…
Сам правда свернул с этого пути. Потыркался чуток и решил пропустить этап освоения мелких таймфреймов. Пошёл охотиться «за большими трендами» =)… но я уже старый, а Вам желаю успехов!
Молодец. Как уже написали — нахер квик однозначно Плаза2.
Хорошо, что не стал писать через говнолаб и прочую ересь. С# + matlab Больше ничего не нужно. Старайся не супер подгонять роботов под рынок-он меняется. Используй-изучай кросс-валидацию. Читай американские квантблоги.
avatar
Я бы вместо matlab взял бы Python. Бесплатно и более распостранено (больше материалов в интернете). Да и перевести стратегию с бектестов на реал проще.
И не удержусь от вопроса автору поста — чем на начальном этапе не устроили стандартные средства — MultiCharts, AmiBroker и т.п.? Алгоритмы на ИИ туда сложно вкрутить, но начиналось все не с них, если я правильно понял.
avatar
Сергей, да, с точки зрения функционала я лишь недавно вышел за пределы возможностей редакторов.
Однако выход этот не произошёл «внезапно». Сразу было понятно, что если не реализовывать простые вещи самому, никогда не получиться сделать сложные.
Хороший подход, но очень ресурсоемкий :) Скажите, сколько в среднем уходит времени на реализацию чего-нибудь вроде пробоя канала со стопом на Вашей разработке?
avatar
Сергей, В среднем?)) У меня не достаточно данных, чтобы говорить о неких «средних» значениях.
Всё зависит от задачи. Канал у меня не реализован, и я не готов сказать точные сроки. Может пара дней, а может пара недель.
Каналы бывают разные, захочется и так и этак попробовать…
Ок, понятно. А производительность бектеста какая, если не секрет? С учетом интервала за который взяты данные, таймфрема и железа.
avatar
Сергей, не секрет. От 30 до 800 секунд на год РИ тиков (прим 3 гб.), в зависимости от параметров оптимизации и собственно точки входа. Intel Core i5-2500K Sandy Bridge.
С производительностью явно все неплохо, поздравляю :)
avatar
Сергей, спасибо. Оч. много времени уходит на оптимизацию процесса оптимизации.)
CUDA не пробовали использовать?
avatar
Сергей, нет, не пробовал. Но тема интересная. Проблема с производительностью пока не так остра, но вскоре встанет ребром. А вы пробовали?
Пробовал но для вещей вроде 2MA Cross :) Работает, конечно быстрее, но смысла практического я для себя не увидел. Проще тот же Multicharts оставить на день-два на сервере, чем еще одну реализацию алгоритма делать.
avatar
Хочу задать один вопрос)))
Как Вы думаете, почему хорошие программисты или инженеры далеко не всегда добиваются успеха на бирже или почему не становятся хирургами не смотря на то что делают классное оборудование для медицины и хирургии?
avatar
SMA, как тут писали выше, «хороший программист» и так себе на хлеб с маслом зарабатывает. А также этот «хороший программист» через день изучения вопроса понимает, что в сфере программирования торговых роботов он полный ноль. Т.к. ему платят за разработку к примеру UI для игр, а это совсем другие знания и скилы. И ему не охота ещё два года жизни тратить на изучение вопроса. Поэтому он плюет на всё это дело и уходит, попутно откладывая на смарт-лабе тонну стройматериалов и демотивируя окружающих. А незадачливые читатели, в свою очередь, не понимая что это был не программист торговых роботов, а программист UI для игр, думают что это путь в никуда и что даже не у всех «хороших программистов» получается…
Tyam, Вы не поняли вопроса, который задал SMA… Пока ещё рано. Позже поймёте.

теги блога Алексей Ван <o-s-a.net>

....все тэги



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