Приветствую!
В данной статье хотелось бы рассказать о недавнем опыте процесса алгоритмизации ручной торговли.
Немного предыстории. Пришел человек с желанием сделать робота из серии, имею желание, но не имею возможности (не могу программировать). Ну это довольно распространенное явление. Суть алгоритма не такая и сложная для трейдера, НО обьяснить программисту, который не имеет опыта трейдинга — довольно таки сложно, имхо.
Собственно обычно, даже «гури» рынка, не всегда могут обьяснить принцип своей торговой системы (ну кроме великих обучателей, которые легко могут обьяснить что покупать нужно дешевле, а продавать дороже!)
С чего же начинать процесс описания системы, в таком случае?
Как мне кажется, необходимо следовать простым правилам
1 не врать самому себе (если данный алгоритм не приносит в ручной торговле 50% в месяц, естественно цифра условная, то и после алгоритмизации не стоит ожидать большого профита)
Лично для меня это самый важный пункт в процессе алгоритмизации.
2 Делать для себя заметки, максимально детализируя принцип принятия решения о входе.
Помимо того, что мы рисуем индикаторы и каналы, на которые ориентируемся в торговле, всегда присутствует множество факторов, особенно если трейдинг активный, внутредневной. Это и время в которое мы торгуем и не торгуем, личные ощущения (ну например цена слишком сильно выросла или слишком сильно упала для данного инструмента и мы приняли решение «ловить падающий нож»), новости, «коррелируемые тикеры (ну например нефть подросла, бакс упал и мы решили срочно пора покупать ртс), плотность в стакане (возможно), накопление кластера (»аля volfix"), усреднение убытка (желание не закрывать своего лося, а тянуть неизбежное) и тд и тп. Реально лучше описывать абсолютно все детали. Чисто теоретически алгоритмизировать можно практически все, от слов, все покупали и я решил купить.
3 Описать личный мани и риск менеджмент (если такой имеется)
После этих довольно не сложных шагов уже начнется выжимка алгоритма. Тут есть два пути. Первый — это все описанное абсолютно все, реализовать, и потом методом проб и ошибок отсекать то, что делает результат только хуже (так как анализом уже совершенных сделок, редко какой трейдер занимается). Второй же путь обратный, начинать реализацию от основного сигнала, и в дальнейшем наращивать дополнительные условия (удобнее всего делать в виде настроек, для того чтобы было проще ту или иную настройку вкл/выкл).
Естественно в дальнейшем будет огромное количество изменений и дополнений в алгоритме потому тут или уж нанимать постоянного программиста себе или упереться и научиться самому(правильнее имхо)
Цель, автоматизации алгоритма, не всегда сводится к тому, что робот торгует, а я кайфую на островах. Нет, это абсолютно не так, и если перестать анализировать рынок то довольно быстро упираемся в отсутствии идей трейдинга. Чаще всего сталкиваюсь с тем, что вроде бы у человека есть алгоритм, но это по большей части «теоретический трейдинг», то есть когда основной заработок только в теории. Далее после алгоритмизации и анализа результата сводится или к разочарованию (что тоже не плохо, ведь лучше разочароваться так, чем после слива денег) или к более правильному выходу — совершенствованию системы, в плоть до полного отказа от первоначального алгоритма и рождению нечто нового!
Понятно что в случае с совершенствованием системы, процесс бесконечен, но что делать если разочаровались в алгоритме? Хоть и субьективно, но все же, по моему опыту, большинство трейдеров просто уходят с рынка, после разочарования. Единственно что могу посоветовать — делайте перерывы в торговле с изучением нового для себя, новый софт, новые «индикаторы», новые методы и тд.
Теперь к конкретному примеру, с которым ко мне пришел человек. Суть в двух словах — ловить импульс рынка, выходить когда встретили сопротивление (объемы накопленные в кластерах) или по стопу. Конечно это упрощенное изложение, но не могу же чужие секреты расскрывать (хоть секретов и нет, но все же не этичненько)
В целом для внутредневного трейдинга алгоритм довольно нормальный. Не топчик, но как к минимум потенциально интересный. На данном этапе осталось только управление размером позиции доделать и будет уже интереснее результаты, но пока что дела обстоят так:
Тут результаты по rih
тут текущие по rim (так же запустил трансляцию и можно будет следить онлайн если вдруг интересно)
Ну на графике сделки выглядят не совсем информативно, но главное они довольно быстрые если импульс стремительный, но могут и повиснуть если забоковим
Резюмируя хочу сказать, довольно сложно алгоритмизировать свою торговлю, но уже практически нет ничего невозможного. К слову представленный алгоритм собирать было довольно интересно, так как раньше не было торговой статистики/кластерного анализа в тслаб. Годы назад когда торговал руками, постоянно следил за наполнением кластеров, и всегда ждал, когда же появится в тслаб эта возможность, а когда появилась возможность уж все наработки были просто устаревшими, и вот подвернулся такой случай, думаю буду заново вникать в эту тему и искать новые для себя алгоритмы.
Лично для меня это самый важный пункт в процессе алгоритмизации.»...
Вот интересно.
А сколько должно быть NN% в месяц?
И сколько это будет годовых, если NN% в месяц?
Лично для меня это играет важную роль в процессе создания алгоритма.
Микаелян Саро,
Расчетный, а еще хуже желаемый результат, да еще и каждый месяц — это просто не реально!
Согласен, что это очень важно, но жизнь вносит свои коррективы!
И рано или поздно расчетный результат существенно разойдется с реальным!
И это может существенно затянуться...
ccoonnsstt, это естественный процесс, расхождение расчетов и реальных показателей.
Моя мысль была немного о другом.
вот к примеру мы торгуем руками и заработали например 10% в месяц. но при этом бывает не мало сигналов, которые пропустили когда ходили в магазин, или была температура, отвлекли звонком или просто отвлеклись на что либо. у робота этого нет (за исключением чп) и он покажет все сделки, которые в итоге приводят к результату например -2%
Другой пример. торгуем руками и банальный тильт. сваливаем все на него, и решаем сделать робота, ведь робот не тильтует. Сделали и выяснили что причина неудач в трейдинге вовсе не тильт. Речь шла о таких сценариях.
а к примеру зарабатывая руками 10%, делаем робота и его результат к примеру 8% это уже похоже на правду (за одинаковый отрезок времени) а может быть и 20% с условием что алгоритм хороший, и часть сделок мы упускаем по различным причинам. дальше никто не мешает и алгоритму торговать и руками, а возможно и полуавтоматом, когда к примеру основа торговли заключается в новостном фоне как пример.
Микаелян Саро,
С этим согласен!
Но, руками торговать — это убивать кучу времени и нервов...
Я среагировал на 50% в месяц. Это просто не реально делать постоянно. При разном движении инструментов за месяц просто невозможно делать одинаковый результат. А +50% это просто бешеный риск.
У меня робот плюсовал 3 года с максимальной просадкой 10%, а потом вдруг покатили движения, на которых он сделал -35%.
Это был большой облом. А потом опять все в порядке...
Oleg Only Algo, в редакторе разницы не будет, ну добавится просто новые кубики, но в целом разобраться можно.
смысл тратить ресурсы на 1.2 если для того чтобы исправить большинство багов там, нужно переписать большую часть кода? это просто не рациональное использование будет ресурсов. грубо говоря из серии, как не тюнингуй осла, а конем он не станет. Со временем сделают 2.1 или 3.0 хз как назовут, и этот процесс бесконечен думаю. если перестать развиваться и стараться латать узкие места в текущей версии то это просто будет программа с кучей «костылей»
когда начало что-то получаться в ТСЛабе. ))
Это не совсем правильно. Робот вычищает из рынка весь потенциал алгоритма, а трейдер пришел с работы, торговать хочется — ну и достаются ему по закону подлости самые плохие входы на самом дохлом рынке.
Так работает большинство и не только начинающие.