Что такое алготрейдинг? Алгоритмический трейдинг – торговля по заданному алгоритму, когда сделки совершает программа от имени клиента.
Причины автоматизации торговли
Анализ рынка в моменте Кто платит дороже? Какова ли сила этой группы? Набирает ли это движение темп? Можно ли его соизмерить с чем-либо? Слабеет ли тенденция? На каком этапе старые покупатели, берут прибыль? Когда начнётся бегство с рынка, проигравших? Если паники не произошло. О чем это говорит? Мнение для смены тренда. Люди трудно расстаются со своими понятиями. Вероятность движения. Риск вступления в сделку.
Способы анализа рынка Прочие факторы, влияющие на принятие решений: Состояние торгового счёта
Формализация алгоритма Компьютер может принимать решения только на основе логических и математических выражений!
Конечные автоматы (FSM) Конечный автомат абстрактный автомат без выходного потока, число возможных состояний которого конечно. Анализ Входа Выставление Заявки Ожидание Исполнения Анализ Выхода Проверка Актуальности сигнал выставлена отменена исполнена сигнал - по таймауту сигнал - нет изменений
Программное окружение Инструменты алготрейдера
Риски алготрейдера
Архитектура торгового робота 1. Подсистема загрузки данных Отвечает за снабжение актуальными данными Данные можно получать по DDE, через плагин, API, COM, из базы данных, через сетевой сервис. 1. Подсистема загрузки данных Отвечает за снабжение актуальными данными Данные можно получать по DDE, через плагин, API, COM, из базы данных, через сетевой сервис. 2. Система принятия решений Отвечает за генерацию торовых сигналов Выполняется стандартными средствами языка реализации 2. Система принятия решений Отвечает за генерацию торовых сигналов Выполняется стандартными средствами языка реализации 3. Система риск- менеджмента Отвечает за риск и размер позиций Взаимодействует через API, COM, файлы, сетевой интерфейс. 3. Система риск- менеджмента Отвечает за риск и размер позиций Взаимодействует через API, COM, файлы, сетевой интерфейс. 4. Подсистема исполнения заявок Отвечает за выгодное открытие позиций Выполняется стандартными средствами языка реализации 4. Подсистема исполнения заявок Отвечает за выгодное открытие позиций Выполняется стандартными средствами языка реализации
Реализация робота Торговый Терминал с COM-интерфейсом: 1.АЛОР-Трейд 2.Альфа-Директ 3.NetInvestor 4.SmartCOM Загружаете Python: Устанавливаете PyWin32: Устанавливаете Wing 101: Читаете учебник по Python и документацию к терминалу! Примеры будут на:
Неопытный трейдер Отсутствие навыков. Ограничивающие понятия. Отсутствие самоконтроля.
Дефект наблюдателя Негативное влияние алготрейдера на работу системы: Прерывание работы программы Несистематическая оптимизация Частая доработка системы Параллельное участие в сделках Психологические препятствия: «Затягивание» реализации (запуска) Идеализация
Опыт автоматизации Stop Loss, Take Profit выставится в спреде. покупка и продажа по рынку с ограничением. Front run. цветовые сигналы. горячие клавиши и макросы авто выход для остатка позиции. фильтр для кол-ва лотов. звуковые алерты. автоматизация статистики.
Пошаговый план действий Что автоматизировать сначала? (С помощью специального ПО или собственных разработок) 1.Расчёт индикаторов 2.Генерация сигналов (алерты) 3.Расчёт позиций в сделке 4.Выставление заявок 5.Отслеживание заявок 6.Избыточность реакций (исключения) 7.Оптимизация (может быть…)
Итог Война окончена С приходом компьютеров элементы алгоритмической торговли незаметно и прочно вошли в работу каждого трейдера. Какой подход перспективнее? Максимальная формализация, и, впоследствии, автоматизация. Роботы Высшая степень автоматизации трейдинга.
Правда об алгоритмическом трейдинге Робот не панацея. Не всё автоматизируется. Автоматизация необходима в высоко конкурентной среде. Робот не существует без торгового подхода. Скорость имеет значение. Робот не дисциплинирует. Больше нет противостояния. Роботы на бирже это не революционный, а эволюционный процесс. Роботы на бирже это не революционный, а эволюционный процесс.