Принципы создания торговой системы. Часть первая
Для успешного совершения сделок на бирже необходимо использовать торговую систему. Давайте выясним, что это такое, где её взять и как именно использовать.
Торговая система (ТС) — это набор правил, согласно которым действует трейдер.
Эти правила трейдер должен понимать однозначно и точно исполнять. Если система даёт сигнал на покупку, значит, покупаем здесь и сейчас, а не гадаем, будет ход или нет. Если система говорит, что делать нечего, значит, ничего не делаем, независимо от того, как движется рынок. Конечно, бывает обидно, когда мимо проходят большие ходы, но предвидеть все колебания цен практически невозможно, поэтому, если нет сигнала от системы, мы спокойно ждём. Если система показала, что необходимо закрыть позицию, то это нужно сделать и не жалеть о том, что после ещё был рывок в прежнем направлении.
Системы разрабатывается на основе существующих инструментов фундаментального и технического анализа.
Существуют различные виды торговых систем. Первая из них, через которую, пожалуй, проходят все, — хаотичная торговля и полное отсутствие каких-либо правил. Выглядит это примерно следующим образом: вы садитесь за компьютер или берёте в руки смартфон. Читаете новости, смотрите YouTube, в телеграм-каналах, среди анекдотов, появляются прогнозы от аналитиков, и где-то в глубине души складывается впечатление, что вот-вот сейчас цена на нефть как скакнёт вверх! Надо ловить момент, быстренько покупать, причём на весь депозит сразу, и нечего тут думать! Что и делается. Проходит час, другой, третий, а цена, слегка подразнив, начинает медленно, но уверенно сползать вниз. Становится как-то не по себе, на душе тоскливо, депозит тает, а вместе с ним и надежды на быстрое обогащение. В результате, в лучшем случае, трейдер выйдет с небольшим убытком, в худшем — ему придётся искать деньги на новый депозит.
Почему так происходит? Трейдером были нарушены сразу несколько принципиально важных моментов.
- Во-первых, с его стороны не было предварительного анализа ситуации на рынке и того актива, по которому открывалась позиция.
Всё это можно свести к одному — отсутствию строгих правил.
Хотя возможен вариант, при котором трейдер бы выиграл, причём неплохую сумму. Он может выиграть не один, а несколько раз подряд, но рано или поздно начнётся череда неудач. Подобные игры, как правило, одноразовые, точнее — до первого проигрыша. Пока человек в профите, он радуется и считает, что всё прекрасно понимает и умеет торговать, но как только получает убыток, становится не до смеха. Возникает ощущение, что аналитик, выпустивший прогноз, соврал специально, а все независимые эксперты только пиарятся, собирая подписчиков на свой канал. То есть виним кого угодно, только не себя любимого. После неудачи человек пытается найти крайнего, вместо того чтобы оценить свои действия, проанализировать их, сделать выводы и учесть ошибки прошлого, чтобы не повторить их в будущем.
Торговые системы, помимо описанной выше, условно можно разделить на виды, в зависимости от применяемых инструментов, временных интервалов и других составляющих.
Например, если в ТС сигналы определяются положением цены относительно графических ориентиров, коими могут выступать линии, уровни или границы каналов, то такие системы называют ценовыми. В них, как правило, присутствует субъективность, значит, каждый раз мы будем оценивать рынок по-иному. Есть системы, в которых правила очень жёстко формализованы и не допускают субъективизма в оценке ситуации, их называют механическими.
Если правила основываются на математическом анализе, то такую ТС можно назвать индикаторной или алгоритмической.
Системы, применяемые на крупных графиках, таких как дневные и недельные, называют междневными, а используемые на мелких интервалах (часовых или даже минутных) — внутридневными.
Возможны и другие варианты, но главное не то, как будет называться система, а то, какие результаты она даёт на длительном промежутке времени и что требуется для её использования.
Информация, представленная в статье, не является призывом или рекомендацией к действию. Принимая решение совершать торговые операции на финансовых рынках, вы в полной мере осознаёте и принимаете на себя все риски.
При подготовке данного цикла статей были использованы материалы из книг: Д. Л. Маккормик «Энциклопедия торговых стратегий», А. Элдер «Трейдинг с доктором Элдером».
Чтобы полученные знания не выветрились из головы, рекомендуем как можно скорее закрепить их на практике. Тем более, что открыть торговый счёт в «Открытие Брокер» можно буквально за пять минут. И обязательно подписывайтесь на нашу рассылку — полезные материалы помогут в процессе обучения!
Урок 3. Создание торговой системы
Создание торговой системы – это, по сути, самое важное на пути к успешному трейдингу. Даже если ваша первая ТС не будет приносить профита, начало уже будет положено. Самое сложное в этом деле собрать воедино всю имеющуюся у нас информацию о биржевых торгах и своём отношении к ним, и, проанализировав все это, сделать правильные выводы и выдать готовый продукт.
Итак, что же такое торговая система? Торговая система – это некий свод правил, строго регламентирующих все ваши действия на бирже. Т.е. когда открывать позицию, при каких условиях, как долго держать, при каких условиях закрывать, когда не заходить в рынок, как интерпретировать ту или иную информацию, куда ставить стоп и т.д.
КАКИЕ БЫВАЮТ ТОРГОВЫЕ СИСТЕМЫ И ТОРГОВЫЕ СТРАТЕГИИ
Разновидностей торговых систем огромное множество, но можно выделить несколько основных групп. Давайте их рассмотрим:
1) Трендовые системы. Это системы, которые основаны на длинных движениях, трендах. Они, как правило, строятся на основании графиков с большим таймфреймом (от 4 часов) и подразумевают большую просадку (но и существенную прибыль в случае удачной позиции);
2) Контртрендовые системы. Это системы, которые, напротив, основаны на «поимке» точек разворота рынка, с помощью технических индикаторов и разворотных формаций. В этих системах, как правило, размер потенциальной прибыли от позиции значительно меньше, но и «стопы» ставить намного проще, чем в трендовых системах;
3) Реверсные системы. Намного менее распространены и имеют в себе элементы как трендовой, так и контртрендовой системы, и к тому же могут работать на любых таймфреймах. Суть в том, что позиция в таких системах открыта всегда (за исключением редких моментов), а прибыль или убыток от сделки фиксируется путём переворота в противоположное направление;
4) Универсальные системы. Наиболее распространены и это самая обширная группа. Суть этих систем в том, что позиция может открываться когда угодно, на любом таймфрейме и с любым горизонтом. Наиболее удобны для создания на их основе торговых роботов. Такие системы создать несколько проще, потому что исчезает двойная обусловленность, т.к. позиции могут открываться в любой точке и в любой момент (а не в начале или на пике тренда). Популярность этих систем также обусловлена тем, что take profit и stop loss в них в основном ставятся фиксированные, что существенно облегчает следование системе.
Тем не менее, все эти категории лишь номинальны, для формирования какого-то общего представления. То, в какой категории вы будете создавать свою торговую систему, зависит от вашего психотипа и комфортной для вас стратегии работы. По сути, приведенные категории торговых систем можно назвать примерами торговых стратегий. Многие ошибочно полагают, что торговая система и торговая стратегия – это одно и то же. Торговая стратегия на фондовом рынке близка к значению военной стратегии на поле боя. Т.е. это общий план или способ действий в широком понимании. А торговая система – это уже детализированный свод правил, выполняемых в рамках реализации общей стратегии торговли. По сути, выбор торговой стратегии определяется психотипом трейдера, т.е. если человеку комфортно долго сохранять позицию и неспешно ловить длинные движения, он, скорее всего, выберет трендовую стратегию, а если он привык открывать и закрывать позиции часто и быстро, то он создаст универсальную систему.
Ещ одной разновидностью классификации торговых стратегий можно обозначить разделение на модель функционирования рынков и модель успешной торговли, однако, этот подход будет актуален только для опытных трейдеров, давно определившихся и четко понимающих свои комфортные и эффективные методы анализа в торговле.
ДОБИВАЕМСЯ ЭФФЕКТИВНОГО СИГНАЛА ПРИ СОЗДАНИИ ТОРГОВОЙ СИСТЕМЫ
Итак, вернемся к созданию торговой системы. Если вы уже поняли, к какому психотипу вы относитесь и в каких условиях вам удобнее всего торговать, то начинаем формировать правила открытия позиции. Это может быть как сочетание сигналов технических индикаторов, так и реализация сигнала классического технического анализа (пробой уровня, развитие фигуры или формации), или какие-либо фундаментальные предпосылки. Один из самых сложных моментов в создании торговой системы — это провести классификацию и градировать методы анализа инструмента по уровню исполняемости сигналов. Вся прелесть финансовых рынков в том, что два разных трейдера на одном и том же графике, пользуясь одними и теми же инструментами анализа, могут увидеть совершенно разные сигналы, либо совершенно по-разному интерпретировать один и тот же сигнал. Именно поэтому очень тяжело пользоваться чужими торговыми системами.
После того, как у вас уже сложилось понимание того, какими инструментами анализа вы будете пользоваться, начинается самая монотонная работа, а именно различная перестановка инструментов анализа (если их несколько) с целью получения максимально эффективного сигнала от системы. На этом этапе не нужно забывать, что торговая система не должна быть слишком сложной и иметь в себе большое количество входных данных, иначе будет слишком много условностей, и в процессе работы у вас может появиться выбор, какие условия соблюдать, а какие нет. К тому же, если входных данных слишком много, эффективность будет снижаться. Если речь идет о технических индикаторах, то не стоит использовать одновременно более 5 индикаторов, поскольку они начнут противоречить друг другу. Как и у любого правила у этого правила есть исключения, мне знакомы очень эффективные системы с одновременным использованием пяти и более индикаторов, но на отладку корректной работы такой системы уйдет очень много времени, и это при условии, что вы сможете правильно проанализировать тот огромный массив информации. В противном случае, колоссальная работа отправится, как говорится, «коту под хвост».
ВЫХОД ИЗ ПОЗИЦИИ. TAKE PROFIT И STOP LOSS
После создания эффективного правила входа в позицию, надо думать, как из этой позиции выйти. Новички наивно полагают, что удачный вход – это главное в успешной торговле, но это не совсем так. Вы можете открыть просто идеальную позицию, но если не выйдете вовремя, то растеряете всю прибыль, или если выйдете слишком рано, то не получите достаточной прибыли. В то же время, вы можете зайти в позицию в середине движения (т.е. не так удачно), но выйти на пике и получить намного больше, чем тот, кто зашел вовремя, но не вовремя вышел. Так вот, создавая правило для торговой системы по выходу из позиции, нужно особо тщательно подходить к выбору инструментов анализа. И точно так же, как для входа, этих инструментов не должно быть слишком много. Самое простое, это определить в момент открытия позиции уровень потенциальной прибыли, которую эта позицию может принести и просто выставить take profit на этот горизонт. Если рынок дойдёт до этого уровня, позиция закроется, прибыль зафиксируется, если не дойдёт, то вам нужно иметь запасной план выхода из позиции, либо уже ждать пока сработает stop loss. Нельзя недооценивать важность этих параметров. Приказы take profit и stop loss могут существенно облегчить и повысить эффективность вашей торговли. Без последнего вообще торговать строго запрещено, особенно новичкам.
В качестве примера свода правил торговой системы (правда не в чистом виде для прямого пользователя, а в адаптированном, для пользователей рассылки рекомендаций), можно привести нашу систему.
МАТЕМАТИКА И РИСК МЕНЕДЖМЕНТ
Главное, при таком подходе создания торговой системы, когда take profit и stop loss устанавливаются на фиксированную величину, всегда помнить, что любое действие при торговле на бирже, должно иметь положительное математическое ожидание. Т.е., если максимально упростить это правило до обывательского уровня, то звучать оно будет так «размер вашей потенциальной прибыли, умноженный на вероятность положительного исхода, всегда должен быть больше, чем потенциальный убыток, умноженный на вероятность отрицательного исхода». Важно, чтобы показатель этого соотношения был выше, чем соотношение среднего количества открываемых вами прибыльных сделок к среднему количеству открываемых вами убыточных сделок. Другими словами, если у вас поровну прибыльных и убыточных позиций, то вам достаточно, чтобы каждая ваша прибыльная позиция, просто приносила прибыли больше, чем каждая ваша убыточная позиция приносит в среднем убытка. Если же у вас, скажем, 70% убыточных позиций и 30% прибыльных (и это вполне нормальное соотношение), то ваша средняя потенциальная прибыль должна быть минимум в 2,5 раза больше, чем средний потенциальный убыток от каждой позиции. Если после корректировки этих показателей соотношение количества прибыльных и убыточных позиций изменилось в худшую сторону, то систему нужно калибровать до тех пор, пока эти показатели не придут в норму.
Это самое главное и, если хотите, золотое правило любой торговой системы. Положительное мат. ожидание. Если в вашей системе нет положительного мат. ожидания, она не будет работать, и весь основной ваш труд как раз будет сводиться к достижению правильного соотношения показателей.
Многие опытные и не очень трейдеры до сих пор спорят, какой правильное соотношение take profit и stop loss: 3 к 1 или 1 к 1 или ещё как-то. На мой взгляд, это спор из разряда сравнения мягкого с тёплым. Эти цифры не имеют значения без учёта соотношения прибыльных и убыточных сделок, генерируемых вашей ТС.
Чтобы иметь сколь-либо репрезентативную выборку, из которой можно будет делать вывод о распределении вероятности прибыльной и убыточной сделки по вашей системе, я рекомендую совершить по ней как минимум 100 сделок на горизонте не менее 3 месяцев. Лишь после этого можно будет калибровать и подбивать систему по показателям.
Еще один важнейший элемент в создании любой успешной торговой системы – это риск менеджмент. Вы должны всегда и очень строго управлять рисками по каждой позиции. В вашей системе должно быть четко сформулированы правила закрытия убыточной позиции, максимально возможной просадки, среднего или стандартного горизонта stop loss. Вы должны всегда четко понимать, каким объемом средств вы рискуете, открывая каждую позицию, и, естественно, представлять, какую прибыль эта позиция может вам принести и насколько вероятно развитие вашего позитивного сценария.
Ни в коем случае никогда не торгуйте без стопов. Это путь в бездну. Вам может везти сколь угодно долго (а может и не везти вовсе), но обязательно наступит ваш личный «чёрный вторник» и обещаю, это будет больно.
Таким образом, становится очевидно, что залог создания успешной торговой системы – это положительное мат. ожидание и грамотный риск менеджмент. Ваша система может генерировать всего 30% эффективных сигналов, и этого вполне достаточно, если вы правильно выстроили риск и мани менеджмент.
Главная ошибка новичков – это уделять основное внимание эффективному входу, но, как я уже говорил, это не совсем верно. Безусловно, если, помимо всего прочего, в вашей системе будет идеальный вход в позицию, это огромный плюс, но это не залог успеха. Лишь с точки зрения интуитивного трейдинга преимущественное значение отдаётся удачному входу, но это совершенно иная модель торговли, применяемая опытными и профессиональными трейдерами. Сейчас мы с вами разбираем начальный уровень, базирующийся на применении стандартных классических методах анализа рынка. Так вот, эти стандартные методы анализа (будь то элементы технического или фундаментального анализа) почти никогда не дадут вам возможности на идеальный вход. Технические индикаторы, как правило, запаздывают, а те, которые работают на опережение, в основном осцилляторы, генерируют много ложных сигналов. Что же касается классического технического анализа (пробои уровней, реализация фигур и пр.), то здесь тоже возникает очень много вопросов: что считать пробоем уровня, как эти уровни проводить (по теням или телам свечи), ждать ли подтверждения пробоя, обращать ли внимание на объемы и пр. Таким образом, добиться идеального входа крайне сложно, к тому же рынок имеет свойство меняться, и идеальный сигнал на вход сейчас, может быть строго убыточным через пару месяцев.
Поэтому, во время создания торговой системы, расставляйте правильно приоритеты ее оптимизации, не гонитесь за лучшим входом, ибо можете потратить на это слишком много времени, но все равно не преуспеть, стройте ТС на основе положительного мат. ожидания и грамотного риск менеджмента. Помните, главное не когда зайти в позицию, а когда и как выйти из нее.
How-to: пошаговое руководство по разработке торговой системы для работы на фондовом рынке
Примечание: Данный пост написан британским разработчиком и финансовым аналитиком Майклом Халлс-Муром, который является профессионалом в так называемом Quantitative trading. С нашей точки зрения информация, содержащаяся в этом топике, может быть интересна техническим специалистам и разработчикам, которые интересуются фондовым рынком и обладают навыками для создания, к примеру, успешных торговых роботов, но не знают с чего начать. Поэтому топик будет рассматриваться именно в таком контексте, кроме того, текст адаптирован к российским реалиям, соответственным образом переведены и некоторые термины. Будем рады вашим комментариям! (Поправки по переводу лучше отправлять в личных сообщениях).
Алгоритмическая торговля — является крайне сложной областью финансов, и чтобы освоить объем информации, который позволит создать свою собственную торговую систему или устроиться разработчиком в финансовую компанию или фонд, потребуется довольного много времени. Большой опыт в программировании просто необходим для успешной работы на этом рынке, как минимум алготорговец должен хорошо разбираться в таких языках, как C/C++ (в области финансов перспективен и язык Java) и Python, Matlab и R (на российском рынке набирает популярность разработанный в США TradeScript — прим. перев.).
Любая высокочастотная торговая система состоит из четырех основных компонентов:
- Идентификация стратегии — то есть определение стратегии торговли, эксплуатация заключенных в ней преимуществ и выбор частоты торговли.
- Бэктестинг стратегии — получение исторических данных о торгах и «прогон» стратегии на них, анализ результатов и оптимизация слабых мест.
- Движок — часть, которая соединяется с брокерской торговой системой (недавно ITinvest ввел в строй новую систему Matrix — прим. перев.), автоматически осуществляет торговлю и подстраиваться под изменения на рынке для сокращения издержек.
- Риск-менеджмент — распределение капитала для совершения торговых операций оптимальным образом, определение последовательности действий при неудачном стечении обстоятельств на рынке.
Торговая стратегия
В трейдинге любым действиям всегда предшествует этап сбора и изучения информации. Прежде чем выбрать стратегию для торговли, необходимо проанализировать исходные данные вроде объема имеющихся средств, а также учесть, насколько новая стратегия сочетается с уже использующимися. Индивидуальные трейдеры просто обязаны уделять большое внимание транзакционным издержкам и всеми силами пытаться их сокращать, соответственным образом и выбирается оптимальная стратегия торговли.
Вопреки расхожему мнению, что «ни один дурак не будет делиться стратегией, которая приносит деньги», на самом деле в публичных источниках можно найти информацию о стратегиях, которые действительно работают. Кроме того, аналитики и ученые иногда публикуют результаты своих исследований и финансовых экспериментов. Существует довольно много блогов на тему алгоритмеческой торговли на английском языке (в России, иногда, интересные темы проскакивают на ресурсе Smart-lab.ru), а в прессу иногда попадают данные о торговых стратегиях фондов.
Конечно, никто не станет обсуждать в публичном поле все аспекты и детали настройки прибыльной стратегии. Ключ к прибыльности как раз заключается в понимании того, какие параметры должны иметь стратегия, а также её «тонкая настройка». Тем не менее, практически стопроцентный путь к созданию собственной стратегии этого «воровство» чужих идей и их последующая доработка.
Большинство стратегий можно разделить на две большие группы — «играющие на неэффективностях» и «идущие за трендом». Стратегии первого типа эксплуатируют неэффективности рынка (например, спред в цене связанных финансовых инструментов) и тот факт, что в краткосрочной перспективе цена активов часто возвращается на изначальный уровень. Трендовые стратегии играют на психологии инвесторов и действиях фондов, пытаясь «запрыгнуть» в поезд нового тренда и успеть собрать на этом профит до того момента, пока движение не обратится в обратную сторону.
Еще один важнейший момент алгоритмической торговли — это её частота. Низкочастотная торговля (LFT) подразумевает обладание финансовыми инструмента на протяжении времени, превышающем один торговый день. Соответственно, при высокочастотной торговли (HFT) все операции происходят «интрадей», то есть в рамках одного торгового дня. Существуют также так называемые ультравысокочастотные стратегии (UHFT), которые подразумевают удержание актива на протяжении секунд или даже миллисекунд. Большое развитие на мировых и российских рынках сейчас получила высокочастотная торговля.
После того, как стратегия выбрана, необходимо протестировать её эффективность на исторических данных. Этот процесс называется бэктестингом.
Бэктестинг
Суть бэктестинга в том, чтобы подтвердить или опровергнуть прибыльность выбранной стратегии, запущенной на исторических данных. Знание результатов, которые стратегия показала бы в прошлом, позволяет предположить её эффективность в текущей рыночной ситуации. Само собой, тот факт, что на исторических данных стратегия принесла виртуальный миллион, ещё не гарантирует успеха в реальном мире.
При бэктестинге самым важным моментом является наличие данных о прошедших торговых сессиях, для запуска стратегии. Получить эти данные можно несколькими способами — часто их предоставляют брокеры и биржи, но существуют и сторонние поставщики данных.
Также важно определить метрики, по которым будет определяться, насколько успешно или неуспешно отработала стратегия «на истории». Стандартом в индустрии являются понятия «максимальной просадки» и коэффициент Шарпа. Максимальная просадка — это максимальный убыток по портфелю за определенный период (обычно за год). У низкочастотных стратегий просадка может быть больше, чем у высокочастотных, вследствие некоторых статистических факторов. Бэктест покажет максимальную просадку портфеля, которая могла бы иметь место в прошлом, что даст примерное понятие о том, чего стоит ожидать в этом плане при работе на реальном текущем рынке. Коэффициент Шарпа же это показатель эффективности инвестиционного портфеля (актива), который вычисляется как отношение средней премии за риск к среднему отклонению портфеля.
После того, как стратегия оттестирована и устранены все выявленные узкие места, возможная просадка минимизирована а коэффициент Шарпа максимален, пора переходить к собственно разработке торгового движка.
Торговый модуль
Торговый движок является средством, благодаря которому список сделок, подлежащих исполнению в соответствии с торговой стратегией, передается в торговую систему брокера. Процесс генерирования приказов может быть наполовину или полностью автоматизирован, а механизм их исполнения может быть ручным, наполовину ручным («в один клик») или полностью автоматизированным. Для низкочастотных стратегий чаще всего используется ручной или наполовину ручной ввод приказов. Для HFT-стратегий, которым важна каждая миллисекунда, в основном используется полностью автоматический метод.
Главные момент, которые следует учесть при разработке торговой системы, это обеспечение надежного и быстрого подключения к брокерской торговой системе (обычно через API) или обеспечение прямого доступа на биржу, минимизацию издержек (включая комиссию брокера и биржи, а также возможное проскальзывание).
Транзакционные издержки — одна из главных вещей, о которой стоит думать HFT-трейдеру. Они обычно складываются из трех компонентов: коммиссий брокера и биржи (и налогов), проскальзывания (разница между ценой, по которой планировалось совершить сделку, и той ценой, по которой она в реальности прошла), а также спред конкретного финансового инструмента (разница между ценой покупки и продажи — bid/ask). Спред не является постоянно зафиксированной величиной и зависит от текущей ликвидности рынка.
Высокие транзакционные издержки могут сделать из потенциально очень прибыльной стратегии с хорошим коэффициентом Шарпа полностью убыточную и наоборот. С помощью бэктеста правильно спрогнозировать транзакционные издержки может быть довольно трудно, для этого обычно необходимо получать у биржи исторические тиковые данные, включающие информацию по ценам bid/ask.
Необходимо также помнить и о разнице между эффективностью работы системы в реальном мире и тем, что она показывала на исторических данных. Разница может быть весьма существенной, и тому есть множество причин. Баги программного обеспечения и ошибки самой торговой стратегии могут не проявиться при бэктестинге, но сыграть важную роль при реальной работе на рынке.
Примеры создания торговых роботов на TradeScript.
Риск-менеджмент
Понятие «риска» включает в себя вcе вышеперечисленные опасности. Риск состоит из технологических опасностей (например, внезапный отказ серверов), риск брокера (банкротство компании), да и вообще всё, что может потенциально помешать задуманному функционированию торговой системы.
Частью риск-менеджмента является и процесс оптимизации капитала (его распределении между различными стратегиями). Это довольно сложный процесс, использующий большое количество «математики». Индустриальным стандартом, описывающим отношение оптимального распределния капитала и получения максимального эффекта от работы торговых стартегий, является критерий Келли.
Ещё один важный компонент риск-менеджмента — определение собственного психологического портрета трейдера. У каждого человека есть какие-то черты, которые могут препятствовать успешной торговле на рынке. В случае алгоритмической торговли психологический эффект играет меньшую роль, чем при «ручной» торговле на рынке, но все же присутствует — ведь за торговым роботом следит человек, который может захотеть слишком рано зафиксировать убыток или поторопиться с закрытием позиции, опасаясь увеличения потерь.
Подробнее о риск-менеджменте можно прочитать в этом топике.
Выводы
Алгоритмическая торговля — это очень сложное направление человеческой деятельности, но оно также является очень интересной областью финансов. Для того, чтобы иметь шансы добиться успехов в этом деле, просто необходимо на хорошем уровне овладеть программированием. Необходимо тренироваться, создавая торговые модули самостоятельно (торговые движки, анализаторы данных, средства для бэктестинга стратегий), используя доступные ресурсы — в конце концов, речь идет о собственных деньгах, которые никто не хочет потерять.
Источник https://journal.open-broker.ru/trading/principy-sozdaniya-torgovoj-sistemy-chast-pervaya/
Источник https://smart-lab.ru/blog/446661.php
Источник https://habr.com/ru/company/iticapital/blog/224353/