Избранное трейдера Владислав
Пост о том, что нужно знать алготрейдеру — программисту Си Шарп. Какими базовыми знаниями надо обладать для того чтобы писать Роботов в СтокШарп / ВелсЛаб / ТсЛаб Api / SmartCom Api. Это не про кубико-трейдинг. Это про программирование.
Пост полезен в первую очередь трейдерам начинающим свой путь в алго, как дорожная карта. Чтобы не возникало желания изучать SmartCom Api на следующий день после изучения базовых типов данных.
Это вторая часть из серии статей Си Шарп Алго. Начало здесь.
План статьи:
1) Кто такой программист
2) Проба сил
3) Базовые знания языка
4) Продвинутые знания
5) Заключение
Целью настоящей работы является разработка математической торговой системы, прогнозирующей величину и направление изменения стоимости акций публичных компаний на определенном интервале времени. Исходными данными для модели служат данные из отчетов компаний и котировки их акций с биржевых площадок. Далее в статье речь пойдет об американском рынке акций в связи с текущими предпочтениями автора. Американский рынок является более привлекательным в связи с большим выбором эмитентов, широким спектром отраслей и доходом в долларах США.
В основе математической модели лежит классический многослойный перцептрон с количеством слоев равным двум, поскольку в процессе разработки было установлено, что значительное усложнение топологии нейронной сети приводит к явлению переобучения (overfitting) и сеть теряет свои обобщающие свойства. Проблема переобучения отдельно в данной статье не исследуется, а способы борьбы с ней будут освещены далее. Схема многослойного перцептрона представлена на рис. 1. Входные параметры в модели – “x” (данные по компании), а выходной параметр (output) – апсайд (upside), прогноз изменения стоимости акции.
В результате долгих поисков и исследований алгоритмов, мне не удалось найти что-либо стоящее в торговле интрадей из простых систем. Импульсные стратегии работали короткое время, MeanReversion практически не работали никогда. Исследования с использованием однородных фильтров (скользящих средних), коэффициентами бета, средними регрессиий, были очень продолжительными. Они также затронули область многоуровневого маркет-мейкинга, в котором основной вопрос сводился к правильному определению нулевого уровня. До этого применялись достаточно успешно трендовые торговые системы (на длительных интервалах), и парный трейдинг. Основная черта всех торговых стратегий, жёстко алгоритмизированных, состоит в том что рано или поздно они перестают работать. Надо этот факт учитывать в применении торговых систем. С этой точки зрения считаю очень полезной статью которая даёт обоснованный алгоритм оценки работоспособности системы (ссылка на статью www.quantalgos.ru/?p=567). Кроме этого, необходимо обязательно диверсифицировать системы по параметрам, и по «движку». Преимущественно методы диверсификации необходимо применять в парном и баскет трейдинге. Часто бытует мнение, что парная торговля это граальные системы. Но разочаровывающий опыт показывает, что только широкая диверсификация и большой капитал способны парную торговлю сделать прибыльной в долговременной перспективе. Тем не менее поиски более эффективной торговли продолжаются. Ниже я приведу результаты исследований стратегии маркет-мейкинга, благожелательно опубликованной автором сайта http://www.quantalgos.ru (начало www.quantalgos.ru/?p=51 smart-lab.ru/blog/244854.php).
Использование зон спроса и предложения — один из способов успешной торговли на рынке. Еще большую ценность представляет применение положительного ожидания в торговой стратегии, использующей зоны спроса и предложения. В данной статье будет показан простой и эффективный способ, как это сделать.
Когда цена пробивает зону спроса в направлении вниз, такая зона становится зоной предложения. Новая зона предложения будет областью сопротивления для любых движений в будущем, поскольку теперь условия более благоприятны для движения вниз. Когда цена пробивает зону предложения в направлении вверх, такая зона становится зоной спроса. Новая зона спроса будет противодействовать откатам цены, поскольку она поддерживает ее движение вверх.