Роботостроение и алготорговля

+7.38
169 читателей, 36 топиков

robot_umberto, + 461%. Слишком хорошо - тоже плохо: остановка для анализа и перезапуск.

продолжение истории форвард-теста http://www.h2t.ru/blog/algotrading/1564.html


Сегодня, после превышения очередной планки по доходности, по плану была остановлена торговля и закрыты все позиции. Приятно закрываться на максимумах недели и истории, но это чистое совпадение)).


Необходимо провести анализ и пересчитать риски по парам на основе накопленной с начала торговли статитистики для очередного перезапуска на следующей неделе. Количество совершенных сделок это позволяет, их немногим меньше 1000.


Доходность за прошедшую неделю была показана феноменальная, во многом, за счет движения в паре USDJPY. Я отчетливо понимал, что робот входил по йене в контртренд, т.е. неправильно с точки зрения алгоритма, и как только позиции вошли в зону прибыльности, в силу их значительного объема, я вмешался в алгоритм и устанавливал трейлинг-стопы вручную, в зависимости от текущей волатильности инструмента. Необходимо отметить, что риски по данной паре были завышены, что критически


Читать дальше →

robot_umberto, примеры удачных входов

самая простая иллюстрация работы алгоритма на картинке с EURNZD, 15M, сегодня


пока тренд в силе — входим и выходим, при смене тренда — недолго думая, входим снова.



robot_umberto, изменения и результаты через 2 мес торговли

Изменения:


  • С 05.04 добавлены ещё 4 пары: USDJPY, USDCAD, EURAUD и EURNZD
  • Переопределены объемы для позиций
  • Рабочий таймфрейм переведен с 5М на 15М
  • Введен дополнительный фильтр на открытие позиций



Результаты на 19.04.2013: 767 закрытых сделок


  • Начальный депозит:9550 Эквити: 28665.33 
  • Чистая прибыль: 19115.33 (+200.1%) Комиссия: 3278.2 (с учетом открытых сделок)



После достижения доходности в 200%, по плану происходит остановка торговли и закрытие позиций, на данный момент выключены 5 пар из 12-ти. Принудительного закрытия сразу всех позиций решено было не делать из-за накопленного существенного дисбаланса объемов позиций, в частности, по парам USDJPY, GBPCHF и EURAUD открыты значительные позиции, и их закрытие окажет сильное влияние на статистические показатели системы в целом. 


Совокупная эквити на 30М, построенная в режиме реального времени:


Анализ с сервиса myfxbook:


Читать дальше →

robot_umberto, примеры сделок и разбор алгоритма

Несколько примеров и разбор того, как работает алгоритм.


На самом деле всё очень просто)


Алгоритм исповедует вход по тренду (кто бы знал, что это такое))) и разумное усреднение при формировании позиции.


Сценарий 1: вход по фильтру (средняя) 1ой частью, если цена сразу идет в нужную сторону — после выхода в плюс неторопливый трейлинг.


примеры


long USDCAD



Читать дальше →

robot_umberto на 8 парах, остановка и перезапуск

Продолжение http://www.h2t.ru/blog/algotrading/1346.html


Сегодня, после превышения эквити 100% доходности, все позиции были принудительно закрыты и алгоритм был перезапущен в новой точке отсчета. Такой подход планировался изначально и связан со спецификой алгоритма.


Ниже полученная с момента запуска 15.03.2013 эквити и статистика в mt4:



 


Читать дальше →

robot_umberto на 8 парах

Идеи, заложенные в систему в прошлом году, после серии неудач, продолжают совершенствоваться и тестироваться на небольших реальных счетах.


Так, недавно система была запущена на 8 парах, в целях диверсификации и сглаживания общей эквити. Насколько это отразится на жизнеспособности, покажет форвард-тест.


Т.к. позиции держатся несколько дней, а может, и недель, и переносятся через выходные, она тут же попала под кипрскую раздачу))


Так случилось, что перед гепом система попала в серьезную просадку (из-за неправильно определенных параметров риска) и надо отметить, что если б она стояла в другую сторону, счет был бы скорее всего слит.


Но ей повезло, и она осталась в живых. После этого риски были уменьшены, некоторые параметры изменены и на данный момент ситуация такова:


реальная эквити (красная) вместе с графиком EURUSD:



Статитистика по сделкам в mt4:


</a


Читать дальше →

Системный и дискретный трейдинг

Здравствуйте!


 


            В данной статье приведу основные  метода торговли в трейдинге, их преимущества и недостатки.


Итак, три основных метода -   Механический (Sistematic), Тренд следящий (Trend-Following)  и дискретный (Diskret) .


Рассмотрим, в сравнении,  механический и дискретный.


            Механический (автоматизированный) имеет некоторые существенные преимущества по сравнению с традиционными тренд-следящими, дискретными торговыми методами. Ключевая трудность для институциональных участников рынка заключается в том, что результаты торговли дискретных трейдеров очень трудно прогнозировать. Даже трейдеры с многолетней историей хорошего соотношения прибыли/убытков восприимчивы к внешним факторам, которые могут быть разрушительными для «интеллектуального багажа», от которого зависит их работа.


Беспокойства о здоровье, личных взаимоотношениях, семье и огромное число других факторов могут оказать серьезное влияние на эффективность их торговли. Трейдеры ограничены числом рынков, которые они могут отслеживать, и сталкиваются с все более длительными часами торговли по большинству инструментов. Они могут пропустить сделку из-за своего отсутствия у монитора, нахождения в отпуске, болезни или затянувшейся встречи с руководителем или инвесторами.


Напротив, автоматические торговые системы являются более прогнозируемыми в плане будущих прибылей/убытков, доходностей, максимальных просадок, длительности просадок. Так же преимущество в меньшей психико — эмоциональной нагрузке, которая возникает в постоянном анализе рынка и при совершении сделок, особенно при фиксации убытков.


Автоматическая торговая система аккуратно исполнит каждый ордер, который выполняет ее критерии, на широчайшем наборе рыночных инструментов 24 часа в сутки, без каких-либо колебаний.


Однако, прежде чем применять автоматическую торговую систему, трейдер должен понимать все стороны этого процесса. Не каждому подходит систематический подход. Создание последовательно выгодной торговой системы -это серьезный процесс, который не стоит недооценивать. Многие трейдеры, которые плохо знакомы с систематическим подходом, думают, что взяв несколько своих любимых технических индикаторов и добавив к ним правила выставления стоп-ордеров и лимит-ордеров будет достаточным, чтобы достигнуть их целей. Это не так, надо понимать за счет чего и кого зарабатывает система.


Конечно, при дискретной торговле  возможно достичь положительных стабильных  результатов, используя эти индикаторы при принятии торговых решений, эффективно сочетая их с другими факторами и своим чувством рынка. Однако, применяя их отдельно, трейдер быстро понимает, что эта комбинация индикаторов и торговых моделей фактически реагируют на рыночный шум. Кроме того, трейдер должен быть способен признать, что некоторые очень закоренелые убеждения могут оказаться ошибочными.


Механические системы направленного типа (которые применяю я в своем подходе) в среднем имеют показатели 40% доходность в год, 3/1-5/1 доходность/макс просадка. Главное стабильное прирощение прибыли по месяцам. Но основную стабильность дает диверсификация по инструментам и разнородным основам самих систем.


При правельном распределнии средств м/у алгоритмами достигаются еще более стабильные результаты.


 


 


Ниже приведена кривая капитала, как результат от объединения алгоритмов.



 


Потребность в дискретной торговле подразумевает, что трейдеры вынуждены постоянно бросать вызов и пересматривать свое видение рынка. Перейдя к систематической торговле, трейдер имеет высокую склонность вмешиваться в работу системы и он должен либо преодолеть, либо изменить свое поведение. Ясно, что идеалом для систематической торговли является подход, при котором, как только система была признана пригодной для поставленной цели, она должна оставаться без какого-либо значительного вмешательства. Единственное, когда необходимо вмешательство в работу автоматической системы, это ситуации, если эффективность системы сильно снижается за пределы ожиданий.


Другие области, где начинающие (а иногда и опытные) разработчики систем рискуют столкнуться с проблемами, связаны в основном с проектированием кривой доходности. Проектирование кривой может происходить в различных формах, наиболее распространенной из которых является оптимизация.


Однако, это еще не все — есть другие формы проектирования кривой, которые несут в себе не меньше рисков. Также распространенной практикой для начинающих разработчиков торговых систем является создание модели, когда исчерпывающее тестирование проводится на широчайшем спектре торговых инструментов, пока не находится один или несколько, на которых получаются приемлемые результаты, т.е. фактически подбирается рынок под торговую модель.


Рассмотрим следующий пример — система A делает 50000п в год; система B теряет 25000п в год. На первый взгляд кажется, что мы должны использовать весь свой капитал для торговли на системе A и забраковать систему B. Однако когда система A делает деньги, система B теряет не более 50% прибыли система А, а когда система A теряет деньги, то каждый пункт потерь системы A компенсируется двумя пунктами прибыли системы B. Ясно, что за период тестирования эффект управления двумя система вместе уменьшает общую прибыль, но при этом создает намного более гладкую кривую активов. Таким образом, мы должны быть более озабочены общей результативностью всего портфеля, а не его отдельных элементов, и торговать на всем спектре инструментов, которые были в нашей оригинальной корзине тестирования.


 


Ниже приведены эквити, параметры и примеры сделок контр-трендового алгоритма.




Алгоритм включает 3 контрендовые системы, которые имеют некий разнос во времени по сделкам.  Системы мониторят некоторые урони. Входят против краткосрочной тенденции с некоторыми условиями закрытия позиции. За счет временного и уровнего разноса имеем боле стабильную кривую доходности.


Алгоритм реализован на языке C# под терминал ТСлаб.


Подобные алгоритмы выкладываю на профессиональном ресурсе по аренде торговых роботов


algolaba.com


Помогаю в реализации идей на C#.


Вопросы на почту vanilov83@mail.ru


 


Оценка работоспособности идеи

Здравствуйте!


В  очередной раз выкладываю статью в области алгоритмического трейдинга, с целью показать метод проверки работоспособности какой-либо идеи. Рассмотрим на примере одной из моих разработок 


                Данную закономерность заметил летом 12г. Торгует так называемый «паттерн», который стабильно существует с 2009г.  Рассмотрим временные участки, которые включает разные фазы рынка (тренд, флэт).


Преимущество алгоритма – не имеет оптимизируемых параметров и идея в чистом виде выглядит следующим образом (2010-06.2012 – тестовый период оценки системы).



 



Читать дальше →

Парный трейдинг

Добрый день!


В очередной раз выкладываю одну из своих разработок, на сей раз в области парного трейдинга. Потратил немало времени на изучение данной тематики и проработал множество вариантов по реализации стратегий. В интернете в открытом доступе лежит достаточно материалов, исследований в этой области, но не нашел ничего, что бы в итоге помогло получить конечный алгоритм с качественными параметрами .


Начну с исследования поведения спрэда инструментов с высокой степенью корреляции. На РФР существует множество инструментов с высокой корреляцией поведения цены, такие как Сбербанк и  ВТБ, Газпром и Лукойл, Сбербанк и Сбербанк п, и многие другие. Для конкретики возьмем одну пару фьючерсов со средней степенью корреляции >0.5 Сбербанк и ВТБ.


На картинке изображен характерный участок спрэда этих инструментов (Close(SBRF)/Сlose(VTB)).



 


 


Читать дальше →

Алгоритм Спрэдер

Здравствуйте!


                В очередной раз размещаю одну из своих разработок в области алгоритмического трейдинга.


               Но в качестве анализа использую не ценовой ряд, а стакан. Цель алгоритма — получение прибыли размещая лимитные ордера в стакане при определенных условиях. Будем подбирать инструменты, которые не интересны HFT роботам, где  спред составляет более 0,05%, такие как BRH, GZM, SUGR, OFZ и множество других инструментов с “вялым стаканом».


               Итак, для получения прибыли в долгосрочном плане нам потребуется несколько инструментов + условия для входа, при котором будем получать мат. ожидание>0. А именно средняя прибыль*%приб.сделок-средний убыток*%убыточных сделок.


               Условие для получения хорошего входа: при расширении спреда на определенной значение будем выставлять лимитные заявки на покупку и на продажу, при условия исполнения закрывать чуть выше/ниже от цены входа. При не длительном наблюдении получаем что спред в основную сессию в среднем составляет 30-50п на что не более 0,07%


                Скрин  стакана GZM приведен ниже.


Читать дальше →

Новая профессия: Роботостроитель, или алготрейдер

Занятная статейка про алготрейдинг. United Traders приплели, хотя это не их робот, как говорят, на ЛЧИ торговал.

http://www.the-village.ru/village/hopesandfears/newprof/114931-algotreyder

TSlab

Ну что, друзья. Рынок скис, движений почти нет, как и всегда летом. Хорошее время для отдыха и вне рыночных дел. Я лично для себя пытаюсь разобраться в TSlab, но пока не очень выходит — пытаюсь подключить историю, скачанную с Финама, но не получается. Скажите, кто-нибудь шарит в этой программе? Нужна помощь.
  • хорошо
    плохо

Конструктор торгового робота

Сегодня я решил изложить свои основные принципы к подходу создания торговой системы. Но подход таким образом, что бы можно сразу переложить его в код, а не так: «вот тут похоже надо бы купить, а закрыться…. ну вот процента 3% получу от сделки а раньше даже и не ждите». Это пахнет несознательностью. Сразу разделим торговую систему на две части:

  • Risk менеджмент (РМ)
  • Money менеджмент (ММ)

Читать дальше →

Parabolic SAR

совсем недавно я разместил торгового робота Parabolic SAR для Quik. В настройках можно менять параметры торгов: long, shor, и конечно же revers.

Индикатор всем хорошо знаком. Что я хочу посоветовать, и на что обратить внимание в этом посте.
  1. это прежде всего трендовый индикатор.
  2. ему просто, как воздух, необходим фильтр сделок, что бы не выставлять все это руками.
  3. думаю, лучше еще привязать индикатор, который будет еще и торгуемый объем изменять.

Это все уже есть у меня! Но это не для всех :)

И так, у вас есть идеи как отфильтровать Parabolic SAR что бы он стал универсальным?
Предлагайте. Это все я реализую на базе существующего бездушного чудовища.
Пора уже кончать с тильтом и не хваткой дисциплины.

PS
Свои методы я конечно раскрывать не буду, но они мне уж очень нравятся.
Что реализовал — привязал к индикатору торгуемый объем. Если после открытия позиции ситуация на рынке поменялась, робот или наращивает позицию, или сокращает. Это безумно удобно.

Ну конечно отфильтровал ему основной режим торгов. Или long или short. Отфильтровал простым трендовым индикатором.

Есть еще мысль прикрутить trail stop (для фиксирования профита). Но пока я не понял, нужен ли он.
Если trail stop будет, то буду дописывать расчет средней цены (так как баланс получается динамический), а пока просто берется цена последней сделки, точность гуляет максимум на 10 пунктов.