Программируем торговых роботов и индикаторы на языке C# (для Ninja Trader и др. платформ)

Тема в разделе "Алготрейдинг", создана пользователем Pill for Greediness, 19 май 2018.

  1. Pill for Greediness

    Pill for Greediness Administrator Команда форума

    Сообщения:
    2.767
    Симпатии:
    160
    [​IMG]
    Сообщество трейдеров
    Цель без пути — мираж. Путь без цели — дорога в никуда…


    Курсы программирования торговых роботов, индикаторов и торговых советников
    [​IMG]


    Торговые роботы - версия 3.0

    1-я версия– 11 февраля 2014 г. Playlist Youtube - видео в открытом доступе, можно посмотреть и оценить качество преподавания.
    2-я версия– 22 сентября 2015 г. Отзывы и публичная оферта.

    Версия 3.0 содержит большое количество видеоуроков, являющихся компиляцией моих индивидуальных занятий (репетиторства) с учениками по программированию торговых роботов, индикаторов, торговых помощников и советников;
    Для тех, кто считает, что программировать это сложно, - поверьте, это не так. Стоимость готового робота, сделанного по вашему заказу, часто превышает стоимость данного курса. Как говорил Лао-цзы (учение о дао): «Дай человеку рыбу – он будет сыт один день, научи человека ловить рыбу – он будет сыт всю жизнь!»
    Удочка - это великолепная торговая платформа NinjaTrader и язык программирования СиШарп (С#). Моя задача - научить Вас ловить рыбу.
    На данный момент курс содержит 65 видео, посвящённых программированию различных задач, связанных с трейдингом (заработком на бирже). Используются язык программирования C# (СиШарп) и торговая платформа NinjaTrader (НинзяТрейдер).
    Со временем у любого трейдера возникает желание автоматизировать свой труд, сделать его более легким и комфортным. Ручная торговля очень утомительна, часто требует эмоциональных затрат и отбирает много времени. Выходом из этой ситуации является автоматизация труда. Идеальная ситуация – это полностью готовый торговый робот, который работает 24 часа в сутки 5 дней в неделю, приносит устойчивую прибыль, в то время как мы отдыхаем. Но путь к этому состоянию долог и тернист.
    Пути поиска трейдерского Грааля.
    Путь без цели – это дорога в никуда. Цель у нас с вами одна – заработать, стать финансово независимым. Можно торговать руками, совершенствовать себя и свою торговую систему (ТС), но есть еще один путь, это автоматизировать свой труд. Данный видеокурс поможет вам это сделать, он даст более глубокое понимание рынка (порядка 70% всех сделок на рынке совершают роботы), вы научитесь реализовывать свои торговые идеи в виде индикаторов, торговых стратегий или торговых помощников.
    Хочу обратиться к тем, кто думает, что, купив выставленного на продажу торгового робота (в интернете много предложений подобного рода), он решит все свои проблемы (достигнет своей цели). Не обольщайтесь, просто включите здравый смысл, поменяйтесь местами с продавцом. Лично вы будете продавать торгового робота, приносящего вам прибыль (курицу несущую золотые яйца)? Алгоритмы и торговые идеи для реальных игроков биржи являются их ноу-хау, их хлебом, заработком, преимуществом на рынке. Вы будете пилить сук, на котором сидите?
    В качестве примера хочу привести реальные случаи, которые я лично наблюдал и наблюдаю. Некоторые трейдеры ради сиюминутного успеха (известности) участвуют в различных чемпионатах (я тоже участвовал) и в результате раскрывают свой алгоритм, торговую идею. Так было на чемпионатах, проводимых фирмой MetaQuotes (разработчики терминала MetaTrader: https://championship.mql5.com/), то же самое происходило и происходит ежегодно на ЛЧИ: идея торгового робота, показавшего хорошие результаты, исследуется другими участниками рынка, изучается, затем делается её клон, и в результате эффективность падает, т.к. множество роботов начинают использовать эту идею в торговле.
    Как действовать, если есть идея, но не умеешь программировать.
    Если у Вас есть торговая идея и вы хотите её автоматизировать, то существует несколько путей:Путь первый - «код за идею» (наиболее часто встречается у новичков рынка). Трейдер рассказывает идею, а программист бесплатно её программирует. Ничего хорошего из этого не получится, т.к. за такую работу возьмётся только программист новичок (см.: Торговый робот сошёл с ума).Путь второй – найти опытного программиста, который запрограммирует по вашему словесному описанию торгового робота. На этом пути вас ожидают следующие трудности: если программист не трейдер (никогда не торговал) и (или) вы ни разу не программировали, то понять друг друга будет очень и очень сложно, плюс вы всегда будете зависеть от программиста, любое, даже маленькое изменение в коде не сможете без него сделать.Путь третий: организовывается фирма, снимается помещение, собирается команда, которая реализовывает ваши торговые идеи и может генерировать свои. Обычно команда состоит из троек (трейдер, математик, программист), тройки специализируются по разным направлениям – акции, фьючерсы, опционы, биржи и т.д. Естественно – служба безопасности. Недостатки этого пути связаны с огромными затратами и большими рисками, что торговые идеи (коды) уйдут из фирмы (см.: Goldman Sachs кража кода).Путь четвертый – поступить, как капитан Немо, т.е. заказывать части своего «корабля» у разных программистов; каждая часть без остальных – бессмысленна.Путь пятый – все сделать самому. В принципе этот способ перекликается с четвертым, т.к. вы должны уметь собирать все части "корабля" в единый торговый алгоритм.Не верьте своим страхам и тем, кто говорит, что программирование — это сложно. Научиться программированию достаточно просто. Всякий неизведанный путь априори кажется трудным, и мы стараемся его избежать. Неужели мальчишка-восьмиклассник знает и умеет больше, чем вы? Если он может, то почему не сможете вы?
    К примеру, изучить английский язык намного сложнее, чем научиться программировать. Достаточно запомнить 20-30 слов – и можно уже начинать писать программы. Поверьте мне, программисту с 30-летним стажем, который до сих пор так и не освоил английского. [​IMG]
    Содержание курса.
    Начинаем от простого к сложному. Устанавливаем и настраиваем нужное программное обеспечение, получаем демонстрационный счет (ДС) и учимся продлевать его до бесконечности. Это нужно, чтобы исключить любую возможность подключения к реальному счету в процессе обучения или тестирования - только ДС. Пока не научим робота торговать на истории, не протестируем его на ДС в режиме реальных торгов, на боевом счёте ему делать точно нечего.
    Следующая часть посвящена простейшим алгоритмам. Всего несколько строк кода, но они уже позволят нам исследовать статистику торгов, научат построению простейших алгоритмов. К примеру, я встречал алгоритмы, которые используют элементарную логику работы: если свеча в 16:30 в третий четверг месяца красная, то продаем в 18:00 (время Московское). На первый взгляд кажется бредом и что это не должно работать. Но, если вы трейдер и вдумаетесь, то поймете, что в 3-й четверг каждого месяца в 16:30 всегда выходят важные новости. Эта свеча определяет, куда пойдет рынок. Можно входить и не в 18:00, а, к примеру, в 17:30 - открытие торгов в Америке. Вариантов масса. Статистика покажет.Затем изучаем индикаторы. Как использовать стандартные индикаторы, как их можно модифицировать, раскрасить, как прикрутить Allert в нужном месте, как создать свой собственный индикатор, как взять любой индикатор (не только стандартный), исследовать его, узнать, какие данные из него можно использовать; как вытащить из него необходимую нам информацию для торгового робота, и т.д.
    Есть программисты, которые прячут свой код различными способами, в частности закрывают код от просмотра в dll файл. Сразу хочу предупредить: мы работаем только с открытым исходным кодом, нам незачем прятать код от самого себя, поэтому я не показываю, как взламывать такую защиту. Да и не нужно это. Главное – понять идею этого индикатора или торговой стратегии, и можно запрограммировать все с чистого листа – это будет быстрее, эффективнее и, главное, надежнее.Есть видео, посвящённые целому классу стратегий, в которых анализируется сразу несколько таймфреймов (графиков). К примеру дневные, часовые, а вход в рынок осуществляется на 5- минутном графике. В английском языке эти стратегии называются Multi-Timeframes. Аналогично Multi-Instrument – это, когда для входа анализируется несколько инструментов, торгуемых на бирже.
    Вот простой пример: анализируем курс доллара относительно евро, индекс miniS&P500, фьючерс на погоду и т.д., а торгуем трежерис, или йену, или все эти инструменты сразу. Входим разными объемами в нужном направлении.Есть уроки, посвящённые работе со «стаканом» цен (Level II): как к нему получить доступ, как обработать эти данные и т.д. Работа со «стаканом» очень интересная и достаточно благодатная тема. В качестве примера хочется привести одну из простейших стратегий: находим в «стакане» крупный лот и становимся перед ним. Более подробно можете посмотреть эту стратегию на видео


    Программирование подобных стратегий является лакмусовой бумажкой для торгового терминала, оценкой его возможностей. Многие торговые терминалы не дают возможность программировать «стаканные» стратегии. Помимо возможности запрограммировать нужно еще и протестировать созданный алгоритм, т.е. необходимо иметь историю «стакана» и уметь её воспроизводить. Все это возможно сделать в NT7(8).Есть интересный класс торговых стратегий, называемый «арбитражные роботы». Они работали 100 лет назад, работают сейчас и будут работать в будущем. Сама идея проста и понятна, есть в учебниках для вузов. Запрограммировать её достаточно просто. Есть много сайтов, где продают подобных роботов, но не торопитесь их покупать. Чтобы настроить этот алгоритм, нужно понимать, как он устроен изнутри, нужно уметь подбирать торговые пары (корзины инструментов). Не зная, не умея этого, вы будете, как настройщик пианино, у которого нет слуха.В видеокурсе есть нейронные сети, за громким названием этого класса алгоритмов стоит очень простая идея, которую я вам объясню и покажу, как говорят, «на пальцах». Вы на 100% поймете её и будете удивлены, насколько это просто.Есть пример использования великолепной бесплатной математической библиотеки (http://www.alglib.net/) – в ней очень много полезного. На рис.1 показан пример использования этой библиотеки, с её помощью создается спектр (преобразование Фурье), рассчитывается адаптивный цифровой фильтр низкой частоты (ФНЧ) и из колебаний цены удаляется высокочастотный шум.
    [​IMG]
    Рисунок 1. Пример использования сторонней математической библиотеки. Построение спектра и адаптивный фильтр низкой частоты (ФНЧ).В данной библиотеке содержится много различных алгоритмов, облегчающих анализ данных (то, чем мы тут и занимаемся). Вот некоторые из них (http://www.alglib.net/translator/man/manual.csharp.html):
    dataanalysis.cs - алгоритмы интеллектуального анализа данных (data mining);
    diffequations.cs – решатели дифференциальных уравнений;
    fasttransforms.cs – преобразование Фурье и сопутствующие алгоритмы;
    integration.cs – численное интегрирование;
    interpolation.cs – интерполяция;
    linalg.cs – линейная алгебра;
    optimization.cs – алгоритмы оптимизации;
    solvers.cs – линейные и нелинейные решатели;
    specialfunctions.cs – специальные функции;
    statistics.cs – статистика;
    ap.cs – векторные/матричные классы и операции с ними;
    и т.д.В курсе есть примеры программирования полуавтоматов, наших с вами помощников. В меню NinjaTrader 7 можно добавить кнопки и запрограммировать их на различные действия – это очень удобно, когда человек а не робот, принимает решение о входе в рынок. Просто нажимаете кнопку, а дальнейшие действия совершает робот. На рис. 2 показан пример кнопок, при нажатии на которые происходит покупка и продажа сразу нескольких торговых инструментов с заданным объемом, формируется так называемая «дельта нейтральная» позиция, после этого робот следит за текущей суммарной позицией и при достижении заданной в настройках прибыли выходит из рынка.
    [​IMG]
    Рисунок 2. Пример встраивания кнопок в меню Ninja Trader 7.
    Курс содержит блок видео, посвящённый программированию в новой версии торговой платформы NinjaTrader 8. Показано, как подключить, как настроить, какие ещё программы необходимо установить для комфортной работы, как конвертировать созданное программное обеспечение из NT7 в NT8. Есть специальная программа, которая помогает это сделать. К сожалению, полностью автоматически перенести код на новую торговую платформу с её помощью не всегда удаётся. Если в NT7 при программировании использовались какие-то недокументированные возможности (коды), то их приходится исправлять руками (порядка 2% кода), т.к. это уже конец курса, вам будет не сложно это сделать, и я всегда на связи. Что-то не получается – стучитесь, будем разбираться вместе.

    Продающий сайт:
    http://communitytraders.ru/torgovye-roboty-svoimi-rukami.html

    Цена автора на его сайте: 29.250 руб.
    Наша цена в розницу:4.388 руб.


    Автор: Привалов Сергей Владимирович
    Год выпуска курса: 2015

    [​IMG]

    Сколько весит курс: 11,22 Гб в архиве

    Скачать курс Программируем торговых роботов и индикаторы на языке C# (для Ninja Trader и др. платформ)
    Все более чем 1.500 курсов сайта можно купить оптом за $299.95. Вечный доступ в клуб + все последующие обновления навсегда бесплатно.
    Также этот курс можно купить и в розницу по цене 15% от цены на продающем сайте (но не дешевле чем $5).
    Также можно поменяться курс на курс.
    Стоимость любой розничной покупки можно впоследствии вычесть из стоимости вечного доступа.
    FAQ по всему что касается этого сайта (читаем все очень внимательно, чтобы не задавать потом глупых вопросов в саппорт).
    Пишите на мыло [email protected] Курсы других тематик тут www.glavsliv.com
     
    Последнее редактирование: 25 май 2018

Поделиться этой страницей