Создание торговых роботов Преподаватели Михаил Бондаренко, Рушан Вахитов, Павел Ерофеев, Ольга Пономаренко Описание дисциплины Автоматизированная торговля на рынке ценных бумаг является общепринятой практикой: уже половину всех заявок на российских биржах выставляют роботы. Частному инвестору в процессе создания торгового робота приходится решать ряд задач: от разработки стратегии до подключения к брокеру. Курс призван кратко осветить все аспекты запуска собственного торгового робота. Студентов познакомят с языком программирования C#, средой разработки Visual Studio, пакетом Matlab, с основными алгоритмами, применяемыми на практике, со способами интегрирования алгоритмов, созданных в разных средах. Кроме того, будет разобран функционал торговой программы TSLab, позволяющей, помимо подключения к брокеру, создавать и тестировать стратегию, модифицировать ее в среде разработки Visual Studio на C#. Выбор именно этих инструментов обуславливается тем, что каждый из них служит дополнением к другому, и при этом, не возникает сложностей с интегрированием. Цель курса Научить студентов создавать стратегии торговли и применять их на практике. Методы ● ● Мастер-классы Домашние задания Итоги курса Каждый студент должен будет представить самостоятельно разработанного торгового робота, подключенного к демо-счету через программу TSLab. Список основной литературы Шилдт Г. Полное руководство C# 4.0, Вильямс Москва – Санкт-Петербург – Киев 2011 2. А.Свиридов, М.Матвеев, Н.Алейникова Модели и методы искусственного интеллекта. Применение в экономике, Инфра-М 2008 3. Хайкин С. (2008) НЕЙРОННЫЕ СЕТИ Полный курс, второе издание. Москва: Вильямс. 4. Швагер Д. (2001) Технический анализ. Москва: Альпина Паблишерз. 5. Акелис С.Б. (1999) Технический анализ от А до Я. Москва: Диаграмма. 6. Бэстенс Д., Ван Дер Берг В., Вуд Д.(1997) Нейронные сети и финансовые рынки. Москва: ТВП. 1. Содержание курса 1. Введение в программирование на языке С#, создание проекта Windows Forms Типы данных Операторы Массивы и строки Управляющие операторы Windows Forms Toolbox 2. Введение в классы, объекты и методы a. Основные положения о классах и ООП b. Создание объектов c. Методы 3. Обработка исключений a. Класс System.Exception b. Try{}-catch{} 4. Алгоритмы. Генетические алгоритмы a. Введение в генетические алгоритмы b. Применение генетических алгоритмов в экономике 5. Работа с файлами a. Класс System.IO b. Работа с диалоговыми окнами 6. Алгоритмы. Нейронные сети a. Введение в нейронные сети b. Рассмотрение различных видов нейронных сетей c. Применение нейронных сетей в торговле 7. Многопоточность a. Использование “backGroundWorker” 8. Создание и подключение динамических библиотек a. Использование “Add reference” b. Создание динамической библиотеки 9. Введение в технический анализ. Метод «Гусеница» a. Рассмотрение основных приемов в техническом анализе b. Метод «Гусеница» для анализа временных рядов 10. Введение в Matlab a. Работа с командной строкой b. Простейшие операции c. Построение графиков. Построение нескольких графиков на одном рисунке. d. Написание скриптов и функций. 11. Решение простейших задач на Matlab a. статистическая обработка данных, b. линейные системы уравнений. 12. Сборка динамических библиотек в Matlab для их использования в Visual Studio 13. Введение в Financial Toolbox и Financial Derivatives Toolbox. 14. Алгоритмы на Matlab. Многомерные аппроксиматоры, нейронные сети, бустинг. 15. Работа с программой TSLAB a. Основные возможности b. Пример работы с блок-схемой 16. Создание простого робота с помощью TSLab, Visual Studio, Matlab a. b. c. d. e. a. b. c. Написание алгоритма Работа с данными из файла Работа с системой TSLAB Тематический план Темы Блок C# Введение в программирование на языке С#, создание проекта Windows Forms Введение в классы, объекты и методы Работа с файлами. Многопоточность. Обработка исключений. Создание и подключение библиотек Блок Алгоритмы Алгоритмы. Генетические алгоритмы Алгоритмы. Нейронные сети Технический анализ Блок Matlab Введение в Matlab Решение простейших задач на Matlab Сборка динамических библиотек в Matlab для их использования в Visual Studio. Введение в Financial Toolbox и Financial Derivatives Toolbox Алгоритмы на Matlab. Многомерные аппроксиматоры, нейронные сети, бустинг Блок TSLab Работа с программой TSLAB Количество часов 3 пары 2 пары 2 пары 1 пара 2 пары 1 пара 4 пары 1 пара 1 пара 2 пары 3 пары