Блог им. kvazar

Not HFT

    • 18 февраля 2015, 11:24
    • |
    • kvazar
  • Еще

Добрый день!

На смарт-лабе довольно много роботостроителей. Со стороны корифеев этого жанра считается не комильфо писать не на c#, без подключения к plaza2. Это мелькает между строк.

Вопрос к роботостроителям, давно хотел спросить:

1. Сколько из ваших роботов (доля %) трудится на таймфрейме менее 5 минут? Сколько у вас HFT — роботов?

Вчера посмотрел на торги RIH5, смех сквоь слезы, сделок лотами более 100 просто кот наплакал. 80% оборота по 1 лоту генерят боты на тестировании)

Я пишу своего первого на VBA с ТФ 5 минут. Если никогда не планирую гоняться с HFT-алгоритмами какая разница насколько отстал от них в скорости? Следующие роботы, даст Бог,  будут использовать ТФ еще выше, прибыль там, наверху.

2. Какова цель постов «ура я сделал робота, с крутыми забубенными индикаторами или без, кому как нравиться, по ситуации», он есть, но Вам его никогда не покажу, смотрите на график эквити и восхищайтесь граалем?

3. Посоветуйте самый профессиональный с вашей точки зрения ресурс для алгоритмистов, язык и платформа не важны.

 

★6
104 комментария
Не надо путать среднюю длительность трейда и скорость работы экзекьютора (исполнителя).
Допустим, один из роботов торгует 20-минутный таймфрейм. На нем висит 100 контрактов РИ. Исполнитель может растянуть выполнение сигнала на все 20 минут, исполняясь единичками. И Вы просто не увидите, что на самом деле среднее время удержания позы 2-3 суток. Если подобных роботов сотня, может набираться и сдаваться очень пристойный объем, которого Вы в стакане вообще не увидите, так, бестолковые потоки мелких сделок.
avatar
SergeyJu, согласен, у самого теперь такой.
avatar
чем меньше скорость тем больше проскальзывание, у меня 8 сделок по си в день. с каждой сделки по 50 проскальзывание в среднем идет, открытие и закрытие по рынку.
avatar
1. Ни одного.
2. Не знаю.
3. Не знаю.
avatar
1. 0
2. не знаю
3. не совсем понятен вопрос, но на всякий случай sql.ru
>Я пишу своего первого на VBA с ТФ 5 минут. Если никогда не планирую гоняться с HFT-алгоритмами какая разница насколько отстал от них в скорости?

Например, есть стратегии, чувствительные к ценам входа/выхода (к проскальзыванию, в общем). Несколько пунктов туда-сюда, и на дистанции из зарабатывающей стратегия превращается в сливающую.
avatar
Enfernuz,
а не надо пользоваться такими стратегиями, собирать копейки с рынка и зависеть от случая и настроения маркетмейкера.
Я торгую на крупных таймфреймах, прибыль забираю в сотни и тысячи пунктов, в позиции нахожусь по несколько дней и вообще не знаю, что такое проскальзывание и комиссия брокера.
Дмитрий — Челябинск, торгуйте, кто ж запрещает. Но и к нашим фетишам относитесь с пониманием :)
avatar
Enfernuz, стратегия чувствительная к проскальзованию до такой степени уже близка к htf
avatar
ХФТ давно мертв)))
avatar
SECRET, а какой скайп-то? :D
avatar
1. большая часть
2. не пишу таких постов, зачем палить грааль
3. смартлаб тут куча идеи для роботов.

4.Большая часть роботов размазывает свой обьём зачем бить по рынку сразу и с проскальзыванием, когда это можно сделать когда нужно и на сколько нужно. Ни пункта рынку. Поэтому ты и видишь 1 лот в сделках но очень часто.
avatar
2. Запомните или запишите: проп-трейдинг самая неблагодарная профессия с точки зрения среднестат.человека.
Архитектор — видит свой дом, инженер- свою машину, даже инвестбанкир в рамочке держит своё достижение (выпуск, синдиц. кредит и тп).
Проптрейдер весь день сидит у компьютера и работает с цифрами и буквами. Никакой аудитории, никакой реализации тщеславия, никакого внимания и тп.
В какой то момент возникает внутреннее противоречие — работал дохрена, а реализовать свою потребность общения не с кем. Ну а если при этом ничего не получается (99% выборки), то вообще взрыв мозга. Падает чувство самоуважение, падает самооценка.
И вот этот букет не осознаваемых до конца эмоций выталкивает на всевозможного рода форумы, т.к. есть потребность в самоутверждении. Кто поумнее (или поудачливее) переселяются в околорыночную индустрию — там и аудитория есть, и комиссия free risk.
Кто среднего интеллекта — стараются «делиться» своими «знаниями».
Кто совсем низкого — живут в нише комментариев к комментариям «сам дурак», «ты хоть рубль заработал», «ну ты и лошара-сливала» и тп
как то так
avatar
vovam, согласен, просто стараюсь бороться с тщеславием. Осознание собственной греховности -первый шаг на пути к Богу
avatar
я пока только начинаю. несмотря на то что роботу уже год (в бою)
и к экзекуторной части ещё даже не подбирался.
ставлю лимиткой на всё сразу. таймфрейм 1 час. проскальзывание 0. объём вполне себе средний по стакану. иногда приходится долго ждать чтобы сработало.
пока не набрёл на более менее интересное описание алгоритмов по исполнению заявки с сохранением средней целевой цены.
для моего таймфрейма это не самая критичная задача пока.
таймфрейм специально выбрал таким, чтобы не сразу решать задачу по экзекутору.
хотя технически робот очень быстро может анализировать стакан и ставить заявку. по максимуму что может дать quik.
avatar
1. 5 роботов
2. Найти инвестора, продать робота, продать сигналы
3. Смартлаб)
avatar
Ребят а какие есть подводные камни в алготрейдинг, кроме проскальзывания?
Уже давно смотрю в сторону роботов, так как ручками торговать хорошо, но иногда дёрнут на работе и пропускаю движения :(
Как вы считаете стоит начать с Tslab как новичку и без Plaza2?
Почему выбрал Tslab — в программе можно выразить свою стратегию в блоках, увидеть так сказать её визуально, а потом перенести её в C#.

avatar
Kapusta, я сам такой, просто пишу на том, что знаю. Хотя есть лицензия стокшарпа.
avatar
kvazar, Т.е. вы рисуете стратегию и потом переносите её в код?
avatar
Kapusta, да можно и так сказать, только рисую на бумаге, потом руками анализ эксель чтобы пощупать + sql при необходимости, если вы про кубики, то нет. У меня безиндикаторная торговля, вернее индикаторы-триггеры свои.
avatar
Kapusta, неучтенные особенности индикаторов, стратегии, шаг и точность цены. Например, MACD может ходить ниже нуля. Если расчитываешь изменение MACD в процентах, при росте можешь получить отрицательное число. Шаг цены может быть 0.05 (Северсталь), а не 0.01, скажем. Точность цены тоже имеет значение, брокер отвергает заявки с завышенной точностью. В стратегии может быть косяк, например, робот может входить в сделки на хаях, если индикаторы показывают покупать. Важно ловить именно развороты. Это то, что я у себя всего за 1 день нашел ) Кстати, TSLab и другие игрушки не помогут избавиться от багов, они хороши лишь для прикидки прибыльности торговой системы в целом. Учесть все сразу не получится. Надо, на мой взгляд, начать терять деньги. При каждой потере исправлять неучтенные косяки ) Судьба на стороне сильных и храбрых. Как в драках — не участвуя в драках и не получая люлей, драться не научитесь на теории и общении с гуру вроде господина SECRETа )
avatar
SECRET, тщеславие — грех, в основном понимание этого приходит с возрастом, а если серьезно, только htf?
avatar
SECRET, значит в разных весовых категориях)
avatar
SECRET, я в смысле не получится пообщаться, вы ограничили доступ) уверен у вас все в порядке с размером торгуемых позиций
avatar
SECRET, по моим прикидкам ты уже должен быть в списке Форбс. Или торговля не прибыльная ?:)
avatar
Золото — лучшие короткие и длинные позиции!

Подробнее: obvalrub.blogspot.com
avatar
Владимир, Вы зарегистрировались на СМ, чтобы пиарить контору, которая, повернув на 90 градусов, спёрла логотип у Рейтерс Эйкон? И как, клиенты идут? (-:

Сделана попытка организовать коворкинг в интернете для алготрейдеров. Ссылка в моем никнейме или из профиля. :-)
avatar
С# — блевотный язык, кстати, для ламеров. Ты его с С++ путаешь.

www.quantopian.com/
avatar
Spekyl, настоящий робот должен быть написан на ассемблере на уровне драйвера сетевой карты под linux.
avatar
ПBМ, только если это суперHFT робот.
avatar
Вот, что бывает когда гуманитарий пробует писать своего робота, да езе и HFT, получается просто чудесное!
avatar
Spekyl, какой язык программирования используется в их платформе незнаете?
avatar
Machez_fewtasks.ru, питон
avatar
Spekyl, Да не, ламеры как раз уверены что С++ всегда и везде.
В частности продукты по типу StockSharp им только могают укрепится в своей вере
avatar
SECRET, у меня всегда проскальзывание срабатывает.
avatar
с++ быстрее будет работать, чем c# при оптимальной реализации. А еще быстрее FPGA ;)
avatar
Displacer, C++ скорее всего позволит сделать нужную программу, в отличии от Тслабов, метастоков, Матлаба, Питона и пр.
avatar
Фондовый индекс, составленный на основе акций 100 крупнейших компаний, обращающихся на Лондонской фондовой бирже (LSE).

Все подробности тут: option.go2jump.org/SHT0JU
avatar
SECRET, просто ради любопытства (пока): все 200 роботов используют разные алгоритмы? Или это разделение скорее по рынкам и тикерам?
avatar
1. 0, торгую на дневных графиках.
2. Если скроешь какой-то подарок судьбы от людей, судьба может скрыть что-то потом от тебя.
3. Документация QUIK, если разработка под QUIK на QPILE.
avatar
1. 100% на таймфреймах <5 минут. Ни одного HFT.
2. Для себя понял, что торговать руками не умею, поэтому единственный выход — торговать роботом. Может кого-то вдохновит мой пример.
3. Google.com
avatar
Machez_fewtasks.ru, Вы мне можете байки эти не рассказывать. Я занимаюсь профессиональной разработкой ПО. в моем арсенале языки которые у всех на слуху типа С++, С#, ASm, так функциональные и логические/
И да C# это не только виндовс гугл вам в помощь

А перебирать софт, извините так делают только ламеры :)
avatar
Valeriy, о, «профессионал» отыскался, хехе. И много вы на асме написали? И про функциональщину подробнее с логическими языками :)

«перебирать» значит софт только ламеры? Может это потому, что нормальные люди софт пересобирают? :)

Также интересна сказка про «не виндовс» на шарпе без пересборки, особенно с WPF :)
avatar
Displacer, вы вообще разницу между WPF и С# понимаете? вы вообще понимаете что такое C#?

А что много программ без пересборки работает на разных платформах ?
Хотя в принципе если заплатите специально для вас могу сделать программу которая будет запускаться без пересборки их одного exe файла и в линукс и win32
avatar
Valeriy, а вы понимаете разницу между предлогами и существительными? WPF и .NET в целом, конечно, не c#, это да, но речь о том, что кросс-платформенным c# быть не задумывался изначально. С пересборкой, без пересборки, даже не суть важно. Потом уже сообщество приделало костыли в виде mono.

И да, вперёд по части остального по существу. Особенно интересно будет послушать про обоснование того, что «профессионалы» ничего не «пересобирают».
avatar
Displacer, под словом «перебрать»? вы подразумевали пересобрать ?
тогда я вас вдвойне не понимаю как можно пересобрать 10 программ и таким образом прийти к С++ о_О
C# изначально при старте был заявлен как кросплатформенным, просто мелкосфот умолчал что CLR для других платформ нету, а исходники закрыты. поэтому родился моно, поделка по вашему мнению, кстати линукс тоже тогда поделка.
И еще раз кстати, сходники CLR открыты, моно обновляется, скоро моно подтянется к полному соответствию.

С++ C# или Asm это всего лишь инструмент, инструментом нужно уметь пользоватся
avatar
Valeriy, ваша фраза «А перебирать софт, извините так делают только ламеры :)» Это точная цитата. Тогда поясните эту фразу, возможно где-то кто-то что-то не понял. Слово «перебрать» и «ламеры» идёт от вас.

С этим моно может быть так и будет, но ложки то найдены, конечно, но осадок, так сказать, остался.

По части asm-а же, в котором у вас, по вашим словам, есть опыт, есть два вопроса. Конкретно какой ассемблер и зачем был применён. В большинстве своём люди, которые говорят о том, что умеют писать на ассемблере, на самом деле лучше бы этого не делали.
avatar
Displacer, Что значит какой ассемблер? Вас интересует компилятор ?
masm использовал, для доса программировал аппаратуру, когда дос кончился в винде. по сути тоже аппаратуру, но это не означает что нельзя создать новое окно.
Контроллеры тоже иногда приходится кодировать.

Бизнес приложения и торговых роботов предпочитаю писать на шарбе ибо удобно и быстро. работа ссетью или криптографиеё на с++ но не вижу проблем вызвать любой метод из любого «языка» в любой язык.
avatar
Valeriy, когда говорят какой ассемблер, то речь идёт об архитектуре. masm — это архитектура x86. Какая архитектура у микроконтроллеров ваших?

Из любого языка в любой язык вызвать бывает проблема, потому что это требует совместимого ABI, оберток или IPC. Так что то, что вы не видите проблем, не значит, что их нет.
avatar
Displacer, что ты хочешь доказать? ты кажется вообще не в ту сторону уводишь. По существу у тебя есть что ?
Еще не увидел опровержения почему не ламеры а только планомерный увод от темы.

Для меня загадка понимаете вы о чем я говорю или нет. или вы уходите в гугл после моего поста.
avatar
Valeriy, чтобы требовать опровержение, надо сначала предъявить доказательства. А пока что, судя по уровню аргументации могу предварительно оценить, что ламер — ты. Извиняюсь за прямоту, но насчет гугла это уже хамство, так что вынужден отвечать в таком духе.

По существу около 50 процентов всех программистов используют в своей работе native-ный код и называть их ламерами — очень сильное заявление :) Вопросы к тому и были, чтобы понять уровень собеседника. И в целом уровень понятен :)
avatar
Displacer, Да я тоже понял что ты неуч. И ничего не смыслишь в осуждаемом вопросе. А посему вперед в гугл, гуглите дальше, гуглите качественнее.
avatar
Valeriy, ага, все вокруг ламеры, а ты Дартаньян, я так и думал, но до последнего надеялся, что ошибаюсь :)

PS: а по ассемблерам — даже микроконтроллеры умные люди стараются программировать на Си и уж точно не будут хвастаться неподдерживаемым и непортируемым кодом и точно знают архитектуру, под которую пишут софт.
avatar
А еще, для информации, некоторые пересобирают не просто софт, а всю систему целиком. Gentoo называется. Вот идиоты, правда?
avatar
Displacer, не говорите того чего незнаете. Я вам еще раз повторяю последний раз. Асм, С++, С# это всего лишь инструмент.
Инструмент нужно уметь применять. Весь наш сегодняшний диалог происходит именно из-за того что вы не понимаете это простой истины.

p.s.
И да, разрабатывая на ассемблере, можно тоже сделать приложение портируемое, вопрос нужно ли…
avatar
Курс доллара и евро стабильно растет против рубля. Все прогнозы сходятся в том, что тренд падения будет держаться стабильно ещё некоторое время.

Подробнее: optionov.blogspot.com
avatar
SECRET, это должен быть вирус, который влезет в ядро биржи и позволит тебе офигенно заработать, но чтобы никто потом не докопался.
avatar
Мимо такой клюквы пройти сложно. Я аж зарегаться решил тут.
Ребят, по содержанию дискуссии видно что ни одного профессионального программиста в ней не участвует. У вас все в кучу драйверы, ОСи, языки программирования.
Написать робота на асме? Месье знает толк в извращениях. Рискну предположить что команда из 2-3 опытных ребят сделает это за пару лет, если в процессе не сойдет с ума (а если адекватно оценить сложность задачи, то вероятность этого события стремится к 1).
С# язык для ламмеров? Расскажи ка это миллиону+ разработчиков мобильных игр. Самый популярный, простой, и доступный (сейчас) игровой движок Unity как раз на нем написан. Там типа дураки сидят? Не знают что делают? Ну окей.
Каждый язык программирования имеет свои плюсы и минусы, а так же область применения. Какой именно язык выбрать нужно всегда решать исходя из задачи. Много параллельных вычислений, матричные уравнения там всякие? Пишите на куде под гпу. Нужно построить low latancy систему? Пишите на С++, и не забудьте все это запустить на RT ядре Linux. Можете в verilog или другой HDL, ну тогда вам карты в руки. Сделайте свою собственную сетевуху с преферансом и куртизанками.

ТСу
1. Я немного из другой оперы, роботов нет.
2. Очевидно же. Почесать собственное эго.
3. Вопрос поставлен не верно. Платформа и язык имеют прямое отношение к тому как и что вы будите использовать.
Попробуй дождаться бесплатного енрола тут
www.udacity.com/course/nd000
там вообще куча курсов очень сильных, ну оно и понятно это Стенфорд.
Куча курсов МИТа и КалТека на ютубе. Ты просто не искал.
avatar
Иванов Антон, кто вам сказал, что Unity написан на c#? Там ядро вроде как на c++ :) Кроме того, есть куча других движков и большая часть также на плюсах. А в целом с рассуждением согласен, надо выбирать то, что оптимально в данной конкретной задаче :)
avatar
Kapusta, Вы путаете язык сценариев (скриптов) с языком, на котором написан движок. А движок написан на плюсах.

Там справа табличка даже есть с фразой:

Написана на Си и C++
avatar
Displacer, действительно так и есть. Моя ошибка, перенервничал от такого обилия клюквы в комментах. Правильно было бы сказать, что если ты хочешь работать с юнити, то придется делать это в шарпе. Сам рендер в силу объективных причин естественно на С/С++.
avatar
b34rcava1ry, «если ты хочешь работать с юнити, то придется делать это в шарпе»

На самом деле это тоже слишком сильно сказано. Фактически, вы можете писать софт с unity на чем угодно: Unity has extensive support for Plugins, which are libraries of native code written in C, C++, Objective-C, etc. Plugins allow your game code (written in Javascript, C# or Boo) to call functions from these libraries. This feature allows Unity to integrate with middleware libraries or existing C/C++ game code.
avatar
b34rcava1ry, А дайте пожалуйста ссылке на ютуб, а то я что-то ничего не нашёл :(
А так вы правы на счёт языков программирования, я даже читать не мог о спорах какой язык лучше… Споры о религии и то интересней)))
avatar
Kapusta, не нужно читать споры. Все языки хороши. Какая стоит задача? Написать робота, который будет торговать условно «из дома»?
avatar
b34rcava1ry, Да. Сейчас во всю учу C#, но для теста хочу посмотреть как работает это всё в Tslab
avatar
Kapusta, нормальный выбор. Все равно HFT из дома не бывает. А как освоишься перелазить на плюсы будет чуть проще, хотя конечно все равно мозг порвет тебе разница между ними.
Опять же, если твоя идея не относится к классу машинного обучения, то шарп нормально. Если хочешь, чтобы были всякие там нейронные сети, то начинай учить CUDA. Хотя, может и стремный совет, если не нужна высокая производительность то можно и без куды обойтись.
avatar
b34rcava1ry, Куду можно поменять на OpenCl, если уж холливарить до кучи. ;)
avatar
chizhan, для OpenCL мало библиотек, тогда какна атишных видеокартах незалочивали двойную точность в отличии от куда. Для С++ есть бесплатная библиотека для поддержки Cudagpu с автопарралелизацией циклов и т.п. наз-я Thrust. OpenCL мощнее, но библиотек мало, или совсем нет.
avatar
Machez_fewtasks.ru, OpenCL не то чтобы мощнее, он просто вообще для всех гетерогенных систем, тогда как CUDA это чисто под связку CPU + GPU Nvidia. Ну и да, на куде в открытом доступе куча примеров, в том числе и под финансы.
chizhan, человек только начал с программирование знакомится, а ты его сразу в пекло кидаешь. Не надо так делать, он там помрет. Я видел пару курсов по куде, все они заканчиваются объяснением где и как пересекается куда и опенсл. Так что начав изучать куду, опенсл не пропустишь мимо.
avatar
b34rcava1ry, видеокарты производства АТИ Мощьнее! т.к. Нвидиа в своих видеокартах занижает возможность использования вычислений с двойной точностью! А АТИ не занижает, разница достаточно существенная в мощности — минимум в 2-3 раза!
avatar
Machez_fewtasks.ru, не забываем, что CUDA заточена под TESLA. Любая научная организация может себе позволить такие устройства, частный программист едва ли. А так да, Вы правы, Radeon 7970/R9-280x лучшая карта по соотношению FP64/$. 290-я уже сильней режется.
avatar
b34rcava1ry, на C++ примеров нейросеток, генетических алгоритмов и пр. дофига, код при помощи Thrust можно запустить на GPU!
avatar
Курс доллара и евро стабильно растет против рубля. Все прогнозы сходятся в том, что тренд падения будет держаться стабильно ещё некоторое время. Не упустите хорошую возможность заработать на этом непрерывном тренде!

Подробнее: obvalrub.blogspot.com
avatar
Machez_fewtasks.ru, да я собственно и не спорю кто мощнее. Если у вас задача получить наилучшую производительность c float, то вам нужно вообще на FPGA реализовывать. А все эти гпу, это так, игрульки.
avatar
b34rcava1ry, простите, FPGA хорош, когда обучение уже произошло и требуется только загрузить все переменные и запустить робота в торги. Само же обучение лучше делать в связке CPU-GPU. Самая низкая латентность ядро-память именно в ГПУ. 6 видов памяти знаете ли и самая большая до 6 гигов DDR5.
avatar
b34rcava1ry, видеокарты доступнее, 1 Террафлоп двойной точности это нормально, одинарной точности, тоже. На ФПГА -их не продают в магазинах как видеокарты и переход на ФПГА это опять необходимость разбора, как и что сделать, и что-то не помню ФПГа устройств мощностью сопоставимой с видеокартами… 4 террафлопа за 3500 руб m.avito.ru/sankt-peterburg/tovary_dlya_kompyutera/sapphire_radeon_hd_5970_2gb_512_bit_396267244
avatar
Machez_fewtasks.ru, таблица с характеристиками видеокарт radeon.ru/reference/cardtable/
avatar
Минимальная инвестиция $1
Вы сами регулируете прибыль и риски
Фиксированное время закрытия сделки
Для профессионалов и новичков
Гарантия отсутствия спреда
Вы можете закрыть сделку всего за 1 мин

Подробнее: 2500-rub.blogspot.com
avatar
Machez_fewtasks.ru, тфлоп виртуальная величина, мериться «флопами» удел теоретиков. На реальных задачах сложно добиться максимальной производительности.

Да продают, спокойно так продают, но они конечно же значительно дороже. И программистов нормальных под задачи меньше, и человеко-часы таких прогеров дороже. Т.е. конечная стоимость системы будет значительно выше. Но если цель быть самым быстрым, то может оно все же того стоит?

«Самая низкая латентность ядро-память именно в ГПУ.» Это не так. Высокая скорость работы с паматью у GPU обеспечивается только за счет прямых рук программиста и ширины шины. Я лично не вижу проблемы сделать тоже самое на FPGA, потому что ширина шины у плисины гораздо больше. Да и в целом, при реализации сложных параллельных вычислений важнее вопрос пропускной способности, нежели скорости канала.
avatar

теги блога kvazar

....все тэги



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