Блог им. Replikant_mih
Многие алгоритмические трейдеры – одиночки – он и трейдер, он и кодер, и квант. И хотя во многом эти роли близки (например, если сказать: трейдер, художник, квант, кодер, уберите лишнее слово, то оставшиеся 3 видно, что достаточно близки), всё-таки при этом они и существенно отличаются между собой. В контексте данного поста важны те отличия, которые завязаны на предрасположенности. Я допускаю – и это так и есть – что человеку могут подходить часть этих ролей и не подходить другие, или подходить меньше. Меньше подходить, в данном случае означает, что отдача от выполнения соответствующей роли будет меньше. Да, ты приспособишься, адаптируешься, подтянешь нужные дисциплины, засунешь подальше свои предрасположенности и предпочтения и будешь делать весь спектр работ, но нетипичная роль, нелюбимая роль всегда будет в отстающих в твоём единоличном тандеме.
Какие блоки (процессы, этапы) имеются в алгоритмической торговле:
1. генерация идей.
2. формализация идей.
3. тестирование идей.
4. аналитика результатов тестирования.
5. техническая реализации торговых роботов, и всей инфраструктуры для всех процессов в целом.
Для целей поста классификация прокатит.
Из предложенного списка я хорош в 1, неплох в 3, 4 и довольно слаб в 2, 5.
Генерить идеи – это прям моё!) Я в целом по жизни предпочитаю абстрактный уровень мышления конкретному – это даёт тебе в плане генерации идей огромное преимущество. Какие идеи хороши? – не стандартные, ну, вернее, не стандартные идеи повышают твои шансы наткнуться на что-то действительно стоящее, интересное, не избитое на рынке, где ещё нет толпы высокообъёмистых алго-конкурентов. Когда ты любишь и умеешь мыслить на абстрактном уровне, твоё конкурентное преимущество основано на том, что мысля так ты не цепляешься за землю – за конкретный уровень, ты как бы мыслишь свободно, да, ты платишь за это цену в виде того, что некоторые идеи могут быть абсурдными, бессмысленными и т.д., но для фильтрации таких идей есть последующие этапы, наличие таких идей не проблема, а вот отсутствие нестандартных идей – вот настоящая проблема.
Тестирование идей и аналитика результатов – ну это аналитика – это я тоже люблю, это я тоже умею, но поскольку генерить идеи – это для меня прям лайтовый процесс, т.е. если процесс пошёл – он идёт легко, ненапряжно, эмоционально приятно и т.д., аналитика же, это хоть и интересный процесс, но более приземленный, сам по себе лайтово он не идёт, чуть, скажем так, напряжней этот процесс, это и на результатах сказывается, именно поэтому эти блоки я оценил применительно к себе только как «неплохо».
Формализация идей, тут речь собственно о формализации), конкретизации идей, но главное, что я в данный блок смыслово вкладываю – это то, что в данном случае залог успеха часто – наличие хорошего математического бэкграунда и общая техническая подкованность. По своей основной на данный момент работе у меня получаются отличнейшие тандемы с людьми с хорошим техническим бэкграундом – моей общей технической эрудиции вполне достаточно чтобы находить общий язык с такими людьми и направлять их качественные технические знания в нужное русло, получаются классные результаты. Аналогично и с технической реализации всей инфраструктуры, кода – ну тут нужно быть хорошим программистом – т.е. опыт и знания, ну и предрасположенность. В целом мне нравится кодить, но это не то что прям «моё», поэтому даже если я подтяну серьёзно знания, наберусь опыта, «моим» это всё равно не станет и этот блок всегда будет в отстающих.
В идеале алгоритмическая команда должна составляться таким образом, чтобы тетрис сложился, чтобы минусы одного компенсировались плюсами других. Предпринимал я попытки объединяться, но тогда я имел смутное представления о критериях выбора компаньонов и из этого получались то команда из трёх с половиной трейдеров и одного полу-кодера, то трейдер + сисадмин с навыками программирования и начальными знаниями в трейдинге, другими словами, итоговая команда ни разу не была сколько-нибудь эффективней чем я один)).
А как бы выглядела идеальная алгоритмическая команда в случае если бы я был её участником: я – генератор идей, хороших и разных. Есть кто-то с хорошей мат. подготовкой, с этим человеком мы находим интересные, прогрессивные, эффективные способы реализации идей – в тандеме. Далее есть человек – супер-кодер, супер-технарь, который мутит качественную архитектуру софта и собственно сам софт – быстрый, надежный, расширяемый, гибкий. Как-то так. Возможно, к этому приду. Но, видимо, не сейчас. В любом случае, даже если прийти в итоге к такой схеме, желательно иметь достаточно хорошее представление обо всех этапах, обо всех процессах, т.е. быть ассом в своем и разбираться во всём.
Ну а трейдинг это вообще элементарная составляющая, посадить следить за роботами можно даже неквалифицированную обезьяну, но я сейчас занимаюсь этим сам. На втором мониторе открыты квики и мониторилка роботов и я иногда краем глаза туда поглядываю как у них идут дела, спокойно на основном моне занимаясь первыми двумя ролями.
Андрей К, А когда примерно сезон?) — как и в других отраслях — осень-зима?
StockChart.ru, не согласен. В том смысле, что если у кого-то что-то получается легко и непринужденно и при этом качественно, и одновременно это редкая способность — ценность такого умения и такого вклада будет высокой — важен вклад, а не то, какими усилиями ты его сделал.
Условно говоря, если ты классный менеджер и наладил все бизнес процессы так, что можешь плевать в потолок, а всё работает как часы — ты крутой чувак, гораздо более крутой чем когда тебе для того чтобы добиться таких же результатов с высунутым языком пахать.
В этом случае реализация тривиальна, но идеи всегда стоят впереди — идеи об архитектуре, например, о гибкости, расширяемости.
Мы же не говорим, что идея двигателя внутреннего сгорания состояла в том, чтобы что-то ездило по дорогам, абстрактно, и непонятно каким образом.
Народ давно изобрел ступу бабы яги и летающие ковры, но самолеты намного позже пришли в нашу жизнь
sortarray sortarray, Да, согласен! Просто для целей систематизации в посте мне пришлось пойти на упрощение — в частности упрощенная классификация.
Я в своё хранилище идей, действительно, закидываю идеи относительно разных моментов — и формализации, и относительно того, как должно работать и т.д. Но общий принцип я озвучил и он справедлив даже с учётом этих уточнений — в некоторых блоках задач я с удовольствием бы делегировал часть работы)
ves2010, зачем лишние этапы, можно же по бэктестам это посмотреть). Про постепенность согласен в плане, что не надо год разрабатывать что-то сложное, потом в бой, лучше что-то простое, потом допиливать.
Ну и согласен, что погружение в предметную область как обычно важно — другими словами, торговый опыт, постоянный торговый опыт лишним не будет)
1 проскальзывание и реальное исполнение приказов по бэк тесту не поймешь
2 многое решают психологические аспекты… и кботу тупо надо привыкать
3 кроме того есть комфортные боты и некомфортные… т.е. одни боты более удобны в торговле чем другие… ну например мне нравится когда бот торгует только часть дня… мне нравится когда у меня постоянный хедж и мне не страшен внезапный гэп на -30-50%… мне нравится когда бот сам по себе отбивает затраты на торговлю… мне нравится что когда отваливается брокер у меня не теряются заявки… мне нравится когда у меня частично захеджен валютный риск и тд и тп
ves2010, 1. это да, но в принципе ты это понимаешь после какого-то боевого опыта торговли, дальше просто экстраполируешь этот опыт на новые стратегии.
Среди публично доступных есть качественные, как по мне. Другое дело, что потребности у каждого специфичны, сложно подобрать такой бэктестер, чтобы всем потребностям конкретного товарища удовлетворял, тут, действительно, только самому писать.
ПС. под качеством я подразумеваю отличие в результатах торговли в реальности с тем, что тестер выдает при тестировании на том же интервали времени. Хороший тестер это тот, у которого не мение 99% сделок будет совпадать с тем что получилось при реальной торговле.
У меня несколько другие критерии оценки. В чем проблемы делать реалистичное тестирование? — тут вроде космических возможностей тестера не надо, делаешь реалистичное проскальзывание, подходящий тип заявки и т.д. Или речь о чем-то другом?
Для качественного бектеста как минимум требуется фулордерлог в качестве исходных данных и грамотно написанный алгоритм экзекьюшена ордеров. В то время как все публично доступные бектестеры(которые мне доводилось встречать) не заморачиваются и делают примитивный нериалистичный экзекьюшен и используют сильно упрощенные исходные данные вплоть до свечек. И чем меньшие движения ловит алгоритм, тем сильней различается результат теста от реальности. Вплоть до того, что тестер выдает хорошую прибыль в то время как в реальности алгоритм торговал в убыток.
Генерация идеи/формализация идеи — условная градация, сложно провести четкую границу, во-первых. Во вторых, я не говорю, что генерация идей — самодостаточный этап, естественно без остальных блоков как и во всем другом цена идеи — ноль, потому что мера оценки — результат, а его без других блоков не будет. Но недооценивать процесс генерации идей тоже не следует, я немного слушаю, читаю и т.д. трейдеров, наиболее распространенная ситуация когда за идеи выдаются разные комбинации индикаторов и разные способы генерации сигнала одним индикатором. Причём в банальнейшем виде. Это очень далеко от того, что я называю генерацией идей. Такие идеи, действительно, не сильно ценны, такие идеи может генерить каждый, а не такие — тут нужен талант))
нужны идеи и предварительная формализация
ну и конечно нужен балабол чтоб притягивать денег
иначе смысл торговать на свои?
silentbob, ну я технических рассматривал, а так да, тот кто деньги привлечет или будет отвечать за любой другой способ извлечь больше денег из имеющихся алгоритмов — такой товарищ тоже нужен)
Смысл торговать на свои есть, но, на мой взгляд — если их а) достаточно чтобы при имеющейся доходности и приемлемых рисках что-то достойное, б) доход, который можно получить на имеющуюся доходность на те деньги, которые реально привлечь исходя из показателей торговли и емкости стратегий, — не в достаточное кол-во раз больше того профита, который можно получить на свои.
вот есть команда 3 человека.
есть капитал суммарный пусть Х рублей и доходность с него 50 годовых.
вопрос
сколько должен быть капитал, чтоб три человека с него прокормились год если поделят эти 50 годовых?
а если с 50 годовых они получат всего лишь бонус 20% что составит 10% от капитала в итоге
тут и кроется ответ почему все по-одиночке сидят в норах (мудилы) и ничего друг другу не рассказывают
Думаю для команды достаточно дуэта.
Первый — генератор идей и по совместительству их формализатор.
Второй софтер -хардкоддер, которого не интересуют идеи первого (иначе он их спи*зит (в случае их сверхпрофитности) и пошлет первого на**й, либо втихую будет перекрывать ликвидность их «общему» проекту), но который в компетенции надежно прикрутить любую приблуду к любому шлюзу, отвечать за исполнение и архитектуру.
SuperMegaTrader, Мож. я не совсем точно понятие употребил. На самом деле если я вот так взаимодействую по схеме: я-генерирую идею, кто-то формализует, то по факту, и формализую во многом тоже я. Например, одна из подзадач в рамках разработки стратегии свелась к тому, что мне нужно проверить корреляцию двух инструментов, тут я обращаюсь к математически подкованному человеку на предмет того, какие бывают способы это сделать — он мне, допустим, выкатил 3, я спрошу в чем их суть, если не вкурю суть, да даже если и вкурю — спрошу про плюсы и минусы, обмозгую, взвешу их, выберу способ. Дальше при дальнейшей формализации в рамках выбранного одного из 3-х способов, условный математик проинформирует о ряде нюансов в рамках этого способа, я опять-таки попытаюсь понять их суть и значение в рамках моего видения ну и т.д. в таком духе, а не то, что я сказал: идея: «пробой волатильности на восходящем тренде после коррекции», а вы дальше е**тесь как хотите).
Да, достаточно и двух и только одного, в общем столько достаточно, сколько достаточно чтобы качественно закрыть все аспекты.
Про сохранность идей и кидки — ну да, это отдельная тема, я для себя этот вопрос не решил)), кроме жесткого фильтра по человеческим качествам)) — но и это не надежно, наверно.
Но все упрется в условия сотрудничества (с тем же математиком) — если только не нанять за з/п, если есть серьезный объем работы, которым можно его загрузить.
Проще будет на форумах синергии добиваться, имхо.