Блог им. Saro

Алгоритмизация трейдинга

Приветствую!

В данной статье хотелось бы рассказать о недавнем опыте процесса алгоритмизации ручной торговли.

Немного предыстории. Пришел человек с желанием сделать робота из серии, имею желание, но не имею возможности (не могу программировать). Ну это довольно распространенное явление. Суть алгоритма не такая и сложная для трейдера, НО обьяснить программисту, который не имеет опыта трейдинга — довольно таки сложно, имхо. 
Собственно обычно, даже «гури» рынка, не всегда могут обьяснить принцип своей торговой системы (ну кроме великих обучателей, которые легко могут обьяснить что покупать нужно дешевле, а продавать дороже!) 

С чего же начинать процесс описания системы,  в таком случае?

Как мне кажется, необходимо следовать простым правилам

1 не врать самому себе (если данный алгоритм не приносит в ручной торговле 50% в месяц, естественно цифра условная, то и после алгоритмизации не стоит ожидать большого профита) 
Лично для меня это самый важный пункт в процессе алгоритмизации. 
2 Делать для себя заметки, максимально детализируя принцип принятия решения о входе. 
Помимо того, что мы рисуем индикаторы и каналы, на которые ориентируемся в торговле, всегда присутствует множество факторов, особенно если трейдинг активный, внутредневной. Это и время в которое мы торгуем и не торгуем,  личные ощущения (ну например цена слишком сильно выросла или слишком сильно упала для данного инструмента и мы приняли решение «ловить падающий нож»), новости, «коррелируемые тикеры (ну например нефть подросла, бакс упал и мы решили срочно пора покупать ртс), плотность в стакане (возможно), накопление кластера (»аля volfix"), усреднение убытка (желание не закрывать своего лося, а тянуть неизбежное) и тд и тп. Реально лучше описывать абсолютно все детали. Чисто теоретически алгоритмизировать можно практически все, от слов, все покупали и я решил купить. 
3 Описать личный мани и риск менеджмент (если такой имеется) 

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

Естественно в дальнейшем будет огромное количество изменений и дополнений в алгоритме потому тут или уж нанимать постоянного программиста себе или упереться и научиться самому(правильнее имхо)

Цель, автоматизации алгоритма, не всегда сводится к тому, что робот торгует, а я кайфую на островах. Нет, это абсолютно не так, и если перестать анализировать рынок то довольно быстро упираемся в отсутствии идей трейдинга. Чаще всего сталкиваюсь с тем, что вроде бы у человека есть алгоритм, но это по большей части «теоретический трейдинг», то есть когда основной заработок только в теории. Далее после алгоритмизации и анализа результата сводится или к разочарованию (что тоже не плохо, ведь лучше разочароваться так, чем после слива денег) или к более правильному выходу — совершенствованию системы, в плоть до полного отказа от первоначального алгоритма и рождению нечто нового!
Понятно что в случае с совершенствованием системы, процесс бесконечен, но что делать если разочаровались в алгоритме? Хоть и субьективно, но все же, по моему опыту, большинство трейдеров просто уходят с рынка, после разочарования. Единственно что могу посоветовать — делайте перерывы в торговле с изучением нового для себя, новый софт, новые «индикаторы», новые методы и тд. 

Теперь к конкретному примеру, с которым ко мне пришел человек. Суть в двух словах — ловить импульс рынка, выходить когда встретили сопротивление (объемы накопленные в кластерах) или по стопу. Конечно это упрощенное изложение, но не могу же чужие секреты расскрывать (хоть секретов и нет, но все же не этичненько) 

В целом для внутредневного трейдинга алгоритм довольно нормальный. Не топчик, но как к минимум потенциально интересный. На данном этапе осталось только управление размером позиции доделать и будет уже интереснее результаты, но пока что дела обстоят так:
Тут результаты по rih 
Алгоритмизация трейдинга
тут текущие по rim (так же запустил трансляцию и можно будет следить онлайн если вдруг интересно)
Алгоритмизация трейдинга
Ну на графике сделки выглядят не совсем информативно, но главное они довольно быстрые если импульс стремительный, но могут и повиснуть если забоковим
Алгоритмизация трейдинга

Резюмируя хочу сказать, довольно сложно алгоритмизировать свою торговлю, но уже практически нет ничего невозможного. К слову представленный алгоритм собирать было довольно интересно, так как раньше не было торговой статистики/кластерного анализа в тслаб. Годы назад когда торговал руками, постоянно следил за наполнением кластеров, и всегда ждал, когда же появится в тслаб эта возможность, а когда появилась возможность уж все наработки были просто устаревшими, и вот подвернулся такой случай, думаю буду заново вникать в эту тему и искать новые для себя алгоритмы. 





  • обсудить на форуме:
  • TSLab
★19
23 комментария
Про кластеры интересно продолжение банкета. Не помню что бы рассказывалось про них что то интересное с точки лабы. С удовольствием почитаю, и попробую.
avatar
Frend, если интересное есть с точки зрения любого другого софта, кинь. реализую покажу!) ну а дальше разберешься, чай не новичок ж

Микаелян Саро, Не вникал еще в эту тему. Поэтому и есть первичный интерес, так сказать сразу на родном софте. 
avatar
Хороший алгоритм! Спасибо за очень интересную идею!
avatar
Согласен, сам когда то торговал в Volfix, но уже давно отошёл от этой темы, так-как полностью перешёл на алго(без кластерного анализа). Похоже пора вспомнить старое и на этом построить новые алгоритмы, тем более TSLab это уже давно позволяет!)
«1 не врать самому себе (если данный алгоритм не приносит в ручной торговле 50% в месяц, естественно цифра условная, то и после алгоритмизации не стоит ожидать большого профита) 
Лично для меня это самый важный пункт в процессе алгоритмизации.»...

Вот интересно.
А сколько должно быть NN% в месяц?

И сколько это будет годовых, если NN% в месяц?
avatar
ccoonnsstt, Не думаю что есть показатели, которые должны быть какой либо величины. Просто к примеру рассказывают супер идею, реализовываешь ее, а там посредственный результат. и вроде все сделки правильные, как и предполагалось, а общий результат не оказался супер. Энтузиазм то сразу пропадает при этом) а когда знаешь что результат итак будет именно таким, какой предполагаешь, то и энтузиазм соответственно не пропадает. 
Лично для меня это играет важную роль в процессе создания алгоритма.

Микаелян Саро, 
Расчетный, а еще хуже желаемый результат, да еще и каждый месяц — это просто не реально!

Согласен, что это очень важно, но жизнь вносит свои коррективы!

И рано или поздно расчетный результат существенно разойдется с реальным!

И это может существенно затянуться...

avatar

ccoonnsstt, это естественный процесс, расхождение расчетов и реальных показателей.

Моя мысль была немного о другом. 

вот к примеру мы торгуем руками и заработали например 10% в месяц. но при этом бывает не мало сигналов, которые пропустили когда ходили в магазин, или была температура, отвлекли звонком или просто отвлеклись на что либо. у робота этого нет (за исключением чп) и он покажет все сделки, которые в итоге приводят к результату например -2% 

Другой пример. торгуем руками и банальный тильт. сваливаем все на него, и решаем сделать робота, ведь робот не тильтует. Сделали и выяснили что причина неудач в трейдинге вовсе не тильт. Речь шла о таких сценариях. 

а к примеру зарабатывая руками 10%, делаем робота и его результат к примеру 8% это уже похоже на правду (за одинаковый отрезок времени) а может быть и 20%  с условием что алгоритм хороший, и часть сделок мы упускаем по различным причинам. дальше никто не мешает и алгоритму торговать и руками, а возможно и полуавтоматом, когда к примеру основа торговли заключается в новостном фоне как пример. 

Микаелян Саро, 
С этим согласен!
Но, руками торговать — это убивать кучу времени и нервов...

Я среагировал на 50% в месяц. Это просто не реально делать постоянно. При разном движении инструментов за месяц просто невозможно делать одинаковый результат. А +50% это просто бешеный риск.

У меня робот плюсовал 3 года с максимальной просадкой 10%, а потом вдруг покатили движения, на которых он сделал -35%.
Это был большой облом. А потом опять все в порядке...

avatar
ccoonnsstt, аа!) ну да, сразу указал, цифра условная. торговля всегда зависит от рынка.
Микаелян Саро, Есть смысл то вообще во 2-м? Влом переписывать и перекомпилировать сишные кубики
avatar
Oleg Only Algo, это выбор каждого.) по мне так одно другому не мешает в принципе, если на 1.2 получается и не уперлись в ограничения то зачем переходить на 2.0? с другой стороны прогресс не стоит на месте и можно просто в  конце паровоза остаться когда уже будет очень нужен 2.0 а его еще изучить нужно. в общем сплошная философия. 
Микаелян Саро, а 2.0 не забросят разработчики то? А то на 1.2 подзабили на некоторые вещи. И ещё что много учить после 1.2?
avatar

Oleg Only Algo, в редакторе разницы не будет, ну добавится просто новые кубики, но в целом разобраться можно.

смысл тратить ресурсы на 1.2 если для того чтобы исправить большинство багов там, нужно переписать большую часть кода? это просто не рациональное использование будет ресурсов. грубо говоря из серии, как не тюнингуй осла, а конем он не станет. Со временем сделают 2.1 или 3.0 хз как назовут, и этот процесс бесконечен думаю. если перестать развиваться и стараться латать узкие места в текущей версии то это просто будет программа с кучей «костылей»

Микаелян Саро, кубиков море, аж жуть! А в 2.0 также будет все работать как и в 1,2 точно? Есть что то, что в 2.0 из 1.2 не так работает?
avatar
Oleg Only Algo, на вскидку одинаково но в торговых настройках есть немного разнообразия
Микаелян Саро, не подсквдешь ещё, связка квика с тслабом через примочку луа для2.0 не глючит? для непосредственной торговли
avatar
Oleg Only Algo, если не на тиках и не на опционах то луа лучше будет работать и стабильнее. но квик все равно остается квиком
Микаелян Саро, да не. Спасибо!
avatar
Суть алгоритма не такая и сложная для трейдера, НО обьяснить программисту, который не имеет опыта трейдинга — довольно таки сложно, имхо.
О, даааа… Аж вздохнул с облегчением
когда начало что-то получаться в ТСЛабе. ))

если данный алгоритм не приносит в ручной торговле 
Это не совсем правильно. Робот вычищает из рынка весь потенциал алгоритма, а трейдер пришел с работы, торговать хочется — ну и достаются ему по закону подлости самые плохие входы на самом дохлом рынке.
Так работает большинство и не только начинающие.
avatar
VladMih, да много чего в итоге было попробованно в том числе и трейл. 

теги блога Микаелян Саро

....все тэги



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