Блеск и нищета торговых роботов

Автор: Торговый робот

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

Для начала мы определимся с терминологией. Забавно, хотел в начале привести официальное объяснение из википедии, а оказывается, там только заготовка страницы есть, а определения нет. Тогда попробую дать определение сам.

Торговая система – четко сформулированный свод правил для торговли, т.е. для открытия и закрытия позиций. Так же используется термин “торговая стратегия“. Если у вас есть четкий план, при каких условиях входить в сделку и выходить из нее, пусть даже только на бумаге или в голове – у вас есть торговая система. Идем дальше.

Механическая торговая система (МТС) – это программа (или устройство, как следует из термина “механическая“), которая осуществляет автоматическое выставление и снятие заявок по заранее заложенной в нее логике, в соответствии с торговой системой (торговой стратегией). Так же возможно выполнение программой дополнительных функций на усмотрение автора системы – контроль выставленных заявок, мониторинг сделок, анализ торговли, с предоставлением графиков и отчетов и т.д. Думаю вместо слова “механическая” было бы уместнее говорить “автоматическая” торговая система, но в силу сложившихся традиций участники рынка используют именно этот термин.

Еще существует понятие “торговый советник” или “торговый эксперт”. Торговый советник – это, скажем так, полуавтомат, который собирает данные, анализирует их, производит вычисления и докладывает о результатах человеку, который уже на основании полученных данных принимает решения. В программе Metatrader, которая используется для торговли на Форексе, торговыми советниками и экспертами называют программы, которые могут не только выдавать сигналы, но и, при желании трейдера, осуществлять автоматическую торговлю.

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

Итак, мы знаем, что такое торговый робот, выясним теперь, зачем же он нужен и какие он может дать преимущества.

Плюсы торговых роботов.

  • Скорость. Торговый робот может отслеживать десятки, сотни котировок ценных бумаг, производить мгновенно сложнейшие вычисления, принимать решение и тут же выставлять заявки. Человек ни за что не сможет так быстро анализировать такое количество информации. Трейдеры, использующие в своей торговой системе большие объемы сложных вычислений, доверившие торговлю роботу получают преимущество перед коллегами, торгующими по-старинке. Трейдеры, которые не используют роботов вынуждены сокращать количество торгуемых инструментов, увеличивать используемые временные интервалы (таймфремы) и отказываться от перспективных, но сложных торговых систем.
  • Точность. Торговый робот не совершает ошибок (если конечно ошибка не закралась в код программы при ее создании), все входные и выходные данные могут расчитываться с точностью до нескольких знаков после запятой, если это необходимо. Выставляя за��вку робот не наберет случайно лишний ноль и не поставит запятую не в том месте. Трейдеры, торгующие вручную, иногда могут ошибаться как в расчетах, так и при выставлении заявок. От некоторых подобных ошибок может защитить грамотно спроектированный торговый терминал, но шанс на ошибку все равно остается.
  • ��орговый робот не подвержен эмоциям. Очень многие трейдеры, особенно начинающие, подвергшись эмоциональному импульсу, совершают сделки, противоречащие логике торговой системы и в большинстве случаев такие сделки оказываются убыточными. Торговый робот всегда строго придерживается своей логики. Он не слушает в курилке “гуру”, котрые точно знают, куда пойдет цена, он не пугается трех подряд убыточных сделок, у него не бывает плохого настроения.
  • Торговый робот не устает, он готов работать 24 часа в сутки. Вы можете заниматься своими делами, работать, спать, отдыхать, а ваш робот будет торговать. Если торговать вручную, то не получится проводить 100% времени за компьютером, даже если торговая сессия на бирже всего 8 часов. Отлучаясь от компьютера, трейдер может пропустить важный сигнал для входа или выхода и это может принести убытки.
  • Масштабируемость. Если вы захотите добавить функциональности вашей торговой системе, вам потребуется лишь дописать код. Например, вы можете получать красивые отчеты и графики в любое время, вы можете настроить оповещения от робота по СМС, можно до бесконечности усложнять торговую стратегию. Торгуя вручную, вам прдется тратить больше своего времени, если захотите расширить возможности своей торговли, или даже нанимать дополнительных помощников, либо отказываться от расширения деятельности.

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

Минусы торговых роботов.

  • Сложность изготовления робота (написания программы). Вы можете разработать отличную торговую стратегию, но не иметь возможности запрограммировать ее. Даже если вы программист, потребуется изучать новый язык, а если вы не разбираетесь в программировании, то вам придется еще сложнее. Можно заказать написание робота, но вы не сможете быть уверенным, что программист в точности опишет в программе логику вашей стратегии и не допустит ошибок, а в дальнейшем у вас могут возникнуть сложности при необходимости модифицировать код или расширить функциональность. Еще есть вариант с покупкой готового робота, но, на мой взгляд, это наихудший вариант – во-первых, вы должны точно знать, как работает ваш робот, а покупные системы в большинстве своем “черные ящики”, во-вторых, лично у меня вызывает подозрение, зачем авторы продают “машины для делания денег”, а не зарабатывают на них сами.
  • Торговый робот может использовать только технический анализ. Вы не научите читать его новости и отчеты компаний. Робот, в соответствии с сигналом, может открыть позицию в то время, когда в новостях передали о начале снижения курса.
  • Торговый робот не может принимать решения в нестандартных ситуациях. Он лишь выполняет заложенную в него логику, а в случае возникновения проблем не сможет ничего изменить. Конечно, в программе можно заложить реакцию робота на некоторые ситуации, но все предусмотреть невозможно. Например, если пропадет связь с интернетом, робот не сможет продолжить торговлю или хотя бы закрыть открытую позицию. Трейдер, торгующий вручную, в таком случае позвонил бы брокеру и закрыл позицию, или восстановил бы интернет. Компьютер может зависнуть, программа может закрыться с ошибкой, брокер может не принять заявку или принять, но с большой задержкой. Торговый робот не сможет реагировать на все события и это может привести к незапланированным убыткам.
  • Отсутствие эмоций, один из плюсов торгового робота, является так же и минусом. Робот может без какого-либо смущения спустить весь ваш капитал за один день. Учитывайте это при создании робота, предусмотрите такую возможность и не допустите этого. Например, позвольте роботу торговать только частью вашего капитала, или сделайте так, чтобы при достижении какого-то порога робот оповещал вас и(или) прекращал торговлю.
  • Торговый робот не обладает интуицией и не использует ее в своей торговле. Некоторые торговые стратегии базируются на интуиции или используют интуитивный подход (хотя лично я бы не назвал бы это стратегией). Например, многие скальперы принимают решения, полагаясь на свое чутье. Он просто смотрят на котировки и принимают решение. Запрограммировать такую стратегию невозможно.

Выводы

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

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

Этой публикацией я начинаю серию статей о создании торговых роботов (механических торговых систем). Постепенно, шаг за шагом, я буду делиться своим опытом, расскажу об используемых программах, о том, где взять данные и как провести тестирование вашей стратегии, о модулях, из которых состоит торговый робот. Через день начинается лето, поэтому я решил назвать эту серию “летний марафон”. Мы вместе с вами “пробежим” эту длинную марафонскую дистанцию и на финише у вас будет простой торговый робот, набор модулей (функций), используемых при написании программ, и багаж знаний, используя которые, вы сможете самостоятельно создавать новых роботов.

На правах рекламы: Торговые сигналы

Читайте также:

  • Обновление на сайте
  • Уважаемые постоянные читатели и посетители блога, коллеги ... (барабанная дробь) ... представляю вашему внимаю новый дизайн, выполненный в стиле хай-тек,...
  • И снова про скальпинг
  • Я очень рад, что на сайте постепенно собирается хорошая аудитория коллег-трейдеров, которые не только читают, но и высказывают свое мнение....
  • Заработок на бирже – плюсы и минусы
  • Практически каждый, кто задавался вопросом "как можно заработать в интернете" рано или поздно узнает о возможности заработка на бирже. Итак,...
  • Механическая торговая система (МТС) по RSI от Чака Лебо (49 бюллетень)
  • (Перевод 49 бюллетеня Чака Лебо) Наш бюллетень №48 об использовании индикатора RSI вызвал интересные обсуждения на форуме. В одном из сообщений...


    Отзывов: 40 на “Блеск и нищета торговых роботов”

    1. Сергей пишет:

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

    2. Владимир пишет:

      Интересно и знакомо) На собственном опыте убедился, что психология подводит…особенно когда выходили новости я не верил своей стратегии и делал сделку, но потом рынок возвращался обратно и получался огромный лось. Так что, торговый робот в этом плане просто молодец.
      В настоящее время возникла проблема с написанием некоторых идей, где можно найти материал по языку программирования в EsyLeanguage

    3. Торговый робот пишет:

      По всем функциям EasyLanguage отличная документация в самой программе TradeStation. А по синтаксису толковых учебников я не видел, но могу порекомендовать сайт Константина Копыркина (konkop.narod.ru) где на примерах можно все понять. Язык сам по себе очень простой.

    4. Владимир пишет:

      Спасибо. в самой программе TradeStation все на английском тяжело разобраться…Вот рекомендованный сайт посмотрю.

    5. Торговый робот пишет:

      Владимир, поискал у себя на винчестере, специально для вас выкладываю два учебника:
      Полное руководство по EasyLanguage
      Учебник EasyLanguage
      Учебники эти по 2000 версии, но в TradeStation 8 синтаксис не поменялся, за исключением входа и выхода в рынок. Теперь для входа в длинную используется Buy, для выхода Sell, а для короткой сделки – SellShort и BuyToCover соответственно.

    6. Владимир пишет:

      Спасибо….у меня как раз стоит TradeStation 8.

    7. Владимир пишет:

      интересно как за последний месяц отторговали ваши роботы?….у меня по 2 робота с конца мая самая большая просадка которая была
      что то явно изменилось

    8. Юрий пишет:

      Прочитал ваши рассуждения о торговых роботах и был весьма удивлен, что “Торговый робот может использовать только технический анализ”. Я например уже давным давно отказался от технического и фундаментального анализов и считаю, что без них можно построить гораздо более продвинутых роботов, которые будут с успехом зарабатывать.
      В вашем разделе “Минусы торговых роботов” очень много сомнительных доводов. По крайней мере ваши доводы сложно принять, потому что эти вопросы уже давно обсуждались на форумах и в печати.
      С уважением,

    9. Торговый робот пишет:

      Спасибо, Юрий, за то, что высказали свое мнение. А что Вас удивило в этой фразе? Я еще раз скажу это – торговый робот может использовать только технический анализ. Или, как вы говорите, может вообще не использовать его. Аргументируйте, пожалуйста, с чем вы не согласны и почему? А чем руководствуется Ваша программа при анализе рынка и принятии решения? Искусственный интеллект, теория вероятности?

      И по минусам – если Вы с чем то не согласны и у Вас есть желание обсудить это – пишите, пожалуйста, конкретнее. С удовольствием выслушаю Ваше мнение. А то как-то не серьезно вот так говорить – “доводы сомнительные, все уже обсуждалось”.

    10. Торговый робот пишет:

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

    11. Юрий пишет:

      1. Касательно технического анализа. Дело в том, что технический анализ далек от совершенства и особенно в качестве составления алгоритмов для торговых роботов. Этот вопрос довольно сильно обсуждался на форуме у Мойши 2 или 3 года назад. Я даже статью в журнале “Валютный спекулянт, № 11-12, 2006″ написал по этой дискуссии. Она так и называется – “О чем молчит технический анализ”. Ее можно найти на сайте журнала или желающим могу выслать на мыло. Пишите – vis_invest@yahoo.com
      2. На ваш вопрос, какие технологии использует мой робот, как вы понимаете вопрос достаточно обшир��ый. Я его подробно изложил в своей книге: http://www.biblion.ru/cgi-bin/WebObjects/shop.woa/wa/aspurl?pid=129&sku=545696
      где можно найти также и ответы на все ваши вопросы.
      3. Касательно вашего раздела “Минусы торговых роботов”, то на ваши вопросы я дал обширные ответы в своей другой книге двух летней давности: http://www.ozon.ru/context/detail/id/2634257/
      Поэтому мне кажется, что вы зря начинаете обсуждать тему, которая уже достаточно избита в своем содержании.
      4. Сейчас самая сложная тема при разработке торговых роботов – это создание адаптивного к рынку и устойчивого на длительном интервале времени по доходности алгоритма. Это и есть главные требования к алгоритмам роботов. Без устойчиво работающих алгоритмов нельзя создать настоящие торговые роботы, а технический анализ вообще не способен к созданию устойчиво работающих алгоритмов на достаточно длинном интервале времени. Технический анализ – это уже историческое прошлое. Конечно, его изучать нужно, но только для общего развития.
      С уважением,

    12. Торговый робот пишет:

      Юрий, я соглашусь с Вами по всем пунктам – да, нельзя полностью полагаться на технический анализ, да, технический анализ о многом “умалчивает”, да, есть технологии, позволяющие строить более надежные и устойчивые торговые системы.

      Не соглашусь с Вами только в том, что это обсуждать не стоит, ибо уже было обсуждено. Сайты Мойши и многие другие, будучи крайне авторитетными 2-3 года назад, в данный момент практически заброшены, информация устаревшая, и не так просто ее отыскать новичкам.

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

      Буду очень рад, если Вы будете иногда заходить к нам и делиться с нами своим бесценным опытом и комментировать наши идеи.

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

    13. Юрий пишет:

      Напишите мне на E-mail. Поскольку вы занимаетесь разработкой торговых роботов, то в начале хотелось бы с вами приватно поговорить.
      С уважением,

    14. Владимир пишет:

      На реальном счете 4 месяца торгуют, причем доходность была очень хорошая, но с конца мая по настоящее время была самая большая просадка. На истории с 2006 года просадки были, но в 2 раза меньше.
      Использую 2 разные стратегии, на разных интервалах.

    15. zhorzh пишет:

      У меня июнь по тесту стратегии тоже не ахти месяц вышел. Июль получше. А август просто подарок. Жаль, робота закончил только на этой неделе. :)

    16. zhorzh пишет:

      посомтрел достижения Чеботарева – приличный слив по счетам под управленеим роботов Dron1, Dron2. Так что, видимо, есть, что обсуждать.

    17. Tsch пишет:

      Не хочу злорадствовать, но видимо придется…
      Чеботарев, честно говоря, своей активность не понравился сразу, книги его не о чем, в выступлениях пропагандировал только себя, а конкурс расставил все точки над i…

    18. Юрий пишет:

      2 Zhorzh: Я не знаю, чего там показывает Церих на наших счетах по роботам Dron 1 и Dron 2, но там нет ни каких денег с 1 января 2008 года. Ответственность за Церих я нести не могу.
      2 Tsch: А чего вы так боитесь раскрыть свое имя. Я готов обсудить ваши замечания открыто, а вы по��ему-то скрываетесь под псевдонимом, как Зульфия. Как? Слабо раскрыться?

    19. Юрий пишет:

      2 Tsch: Обратил внимание на ваше вранье. Результаты конкурса Церих официально изложил здесь: http://robot.zerich.ru/news/27413.php

    20. Oscar пишет:

      Спасибо за сайт!Согласен с большинством высказанных идей по поводу роботов.Пытаюсь написать программу на QPILE.
      С постановкой заявок и стоп-заявок проблем не возникло.Однако при снятии заявок или стоп-заявок после выполнения кода
      transactionParams = set_value(transactionParams, “ACCOUNT”, glAccount)
      transactionParams = set_value(transactionParams, “CLIENT_CODE”, glClientCode)
      transactionParams = set_value(transactionParams, “CLASSCODE”,get_value(secInfo, “secclass”))
      transactionParams = set_value(transactionParams, “SECCODE”, get_value(secInfo, “seccode”))
      transactionParams = set_value(transactionParams, “ACTION”, “KILL_ORDER”)
      transactionParams = set_value(transactionParams, “ORER_KEY”, killedOrder)
      trans_result = SEND_TRANSACTION (8, transactionParams)
      получаю сообщение – НЕ УКАЗАНО ЗНАЧЕНИЕ ПОЛЯ “ЗАЯВКА”.
      Аналогично при снятии стоп-заявки получаю сообщение – НЕ УКАЗАНО ЗНАЧЕНИЕ ПОЛЯ “НОМЕР СТОП-ЗАЯВКИ”.
      Подскажите пожалуйста в чем проблема.Если программа заработает обязательно пришлю её текст.
      Заранее благодарен. Оскар.

    21. Торговый робот пишет:

      В переменной killedOrder – что указываете при снятии заявки?

    22. Oscar пишет:

      Спасибо за быструю реакцию.
      Проблема оказалась в том,что вместо “ORDER_KEY” я написал “ORER_KEY”
      Оскар

    23. павел пишет:

      а мог бы ктонибуть отправить мне на емайл готовую программу с готовои стротегией, очень хотелось бы проверить.
      p.s. за рание огромное спосибо.

    24. Student пишет:

      А где найти эту серию статей о кот. Вы пишете в конце стать и? “Этой публикацией я начинаю серию статей о создании торговых роботов (механических торговых систем)”".

    25. Робот в Проекте пишет:

      Ну, что могу сказать, как потенциальный робот, на тему спора о принципах работы МТС… Данные статьи помогают научиться создавать робота – и это главное! Так же помогают обсудить различные технологические инструменты актуальные для активных пользователей. Остальное тоже важно, но я уже сам имею возможность выбора что в него “напихать” (какую начинку и на каких принципах).
      По-любому, начинать надо с простого робота. Наверное основанного на теханализе. А по мере совершенствования навыков можно уже искать более изощренные варианты реализации.
      Из своего опыта на наст момент могу сказать, что информации не могу особенно найти толковой (спасибо вот этому сайту). Может где-то раньше что-то и обсуждалось, но это как обучение: то, что для взрослых уже тривиально, для сменяющего поколения все интересно. Это просто несколько иная целевая аудитория. И общение происходит на новом эволюционном витке с учетом общений происходивших ранее. Тем более, если уж в Википедии нету определения что такое МТС, то, значит, совсем далеко еще до конца обсуждений. Это скорее начало после хоть какого-то осознания вопроса о чем хотели бы поговорить.
      И еще добавлю. Развитие технологий – динамичная штучка, постоянно подверженная изменениям (новые программы, технологии, возможности, идеи и т.д.), поэтому подобные обсуждения будут актуальны, пока будут происходить изменения – эволюция. Так что.. Вперед!
      А мнения… они всякие важны. Они помогают лишний раз протестить себя и свою позицию, возможно, внести корректировки и обозначить новые направления и цели. Поэтому СПАСИБО говорю всем! участникам проекта.

    26. Евгений пишет:

      Всем привет!я конечно понимаю тут серьёзные темы обсуждаются,но все же хотел бы спросить – мужики где торговые системы мне найти ?? про роботов почитал ,терминатора вспомнил :) ) сложно так всё это….

    27. Антон пишет:

      вот простые примеры торговых систем для Metastock
      http://stockvest.ru/metastock/mts.html

    28. zn-soft пишет:

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

    29. Motiv69 пишет:

      Доброго времени суток.
      Прочитал статью, очень интересно опробовать на реале что-либо… Буду очень рад любому рабочему варианту.

    30. zn-soft пишет:

      “рабочих” вариантов куча выкладывают на форумах mq4.com или подобные , даже просто достаточно взять macd sample и в нем поменять , применительно к нынешнему кризису, PRICE_CLOSE на OPEN и он начнет приносить прибыль аж 200 – 300 долларов за 5 месяцев :) ))
      и при этом нужен немалый депозит чтоб выдерживать просадку

    31. zn-soft пишет:

      ой сорри mql4.com и по macd sample запретить buy ордера т.е только short trading… но все равно все это от лукавого .

    32. Motiv69 пишет:

      жаль fxclub.org не дает возможность торговать с МТС. И все равно спасибо

    33. zn-soft пишет:

      да уж rumus от fxclub настолько ниже плинтуса что в нем даже нельзя нормальный индикатор написать , не то что робота , и вообще меня бесит модерн форекс от fxclub вот это действительно обдираловка чесных людей … не индикаторов, ничего, вообще глюк!!!

    34. Александр 2501 пишет:

      Очень интересная и перспективная тема.
      Прошу дать ссылку – где можно заказать простого и НЕДОРОГОГО робота.
      Особенно интересует робот для ММВБ.

    35. Alexey пишет:

      Добрый день!
      Хотел бы Вас поблагодарить за столь интересный ресурс. Очень много полезного что можно подчерпнуть.
      Хотелось бы узнать, где , у кого или у какой компании можно купить готовую программу…и начать сразу ей пользоваться? Есть несколько желающих купить роботы программы для работы с фьючерсами и с акциями. Буду безмерно признателен за данную информацию.
      С уважением,
      Алексей

    36. Торговый робот пишет:

      Александр и Alexey, могу порекомендовать Евгения, автора блога http://www.hirobot.ru/ – он разрабатывал торговые системы на заказ, профессионализм и честность его гарантирую лично. Свяжитесь с ним на его сайте.

    37. Форекс-трейдер пишет:

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

    38. Олег пишет:

      ДОбрый День, Торговый Робот!!!
      При разрабке торгового робота на QPILE столкнулся с такой проблемкой: получение времени сервера QUIK ( для синхронизации) … не поможете?

      Заранее благодарю, СПАСИБО.

    39. Семен пишет:

      Я вот думаю – чего мне делать – торгую я фьючами на американском рынке, вручную, платформу использую Ninjatrader. И очень надо автоматизировать торговлю – но вот беда – программистов нет! То есть они есть, но все в основном работают с другими платформами, и все вежливо отказываются , ссылаясь на занятость. Кто возьмется за программирование? Язык там C#

    40. Алексей пишет:

      Добрый день-я так понял вы занимаетесь написанием и оптимизацией торговых систем на основе Метастока.Меня интересует либо готовая система на основе стохастика либо написание по моим алгоритмам.

    Оставьте свой отзыв

    Да человек я, человек! =)