﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.ru/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Торговые роботы. С чего начать. Общие вопросы</title>
  <id>~/topic/341/torgovye-roboty_-s-chego-nachat_-obshshie-voprosy/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-02T02:19:15Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=341" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/151/</id>
    <title type="text">Перед человеком, решившим встать на путь алготрейдера, встает важный вопрос: какую площадку для тест...</title>
    <published>2012-08-27T19:43:05Z</published>
    <updated>2016-07-28T17:57:34Z</updated>
    <author>
      <name>M.Kovaleva</name>
      <uri>https://stocksharp.ru/users/5979/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Перед человеком, решившим встать на путь алготрейдера, встает важный вопрос: какую площадку для тестирования и создания торгового робота выбрать? Согласитесь, будет обидно потратить несколько месяцев на освоение инструмента, после чего осознать его непригодность. В этой статье я постараюсь затронуть все основные направления в роботостроении и ответить на большинство вопросов начинающего алготрейдера.&lt;/p&gt;
&lt;p&gt;[b][center]Учить язык программирования или использовать визуальный редактор?[/center][/b]
Во многих программах для тестирования торгового робота и, тем более, непосредственно для его написания, требуется знание языка программирования. Изучение языка программирования в наших умах – дело сложное и не скорое, поэтому в поиске более легких путей начали разрабатываться визуальные редакторы. Есть отличная статья, которая отражает всю суть визуальных редакторов. Выдержка из [url=http://stocksharp.blogspot.com/2011/02/blog-post_19.html][color=green][b]статьи[/b][/color][/url]:&lt;/p&gt;
&lt;p&gt;[quote][i]«В чем причина провальности таких решений? В направлении. Людям, которые только изучают программирование, визуальный редактор только навредит. Он дает первоначальный вау фактор, который исчезает уже ко второму дню использования. Через неделю, код будет выглядеть как на картинке. И вот тут как раз и происходит крах такого подхода. Они были призваны упростить программирование. А вместо этого, происходит усложнение. И более того, код в текстовом файле начинает занимать значительно меньше места, чем вся эта мега-диаграмма, не влезающая аж 8 мониторов. А уж как ее тестировать - у-у-у-у. Это отдельная тема мазохизма.»[/i] [/quote]
[b][center]Выбор языка программирования[/center][/b]
Изучить язык программирования будет сложнее, чем освоить визуальный редактор, но если у Вас серьёзные намерения, это правильный выбор. Но языков программирования много, какой выбрать? Основные языки, на которых пишут роботов:
• [color=green][b]QPILE – встроенный язык в терминале QUIK[/b][/color]
• [color=green][b]VBA Excel[/b][/color]
• [color=green][b]Delphi[/b][/color]
• [color=green][b]C#[/b][/color]&lt;/p&gt;
&lt;p&gt;[color=green][b][center]QPILE[/center][/b][/color]
Трудно выделить какие-либо существенные плюсы в этом языке программирования, другие языки существенно превосходят его по функциональности, возможностям и другим параметрам. Его широкое распространение связанно с тем, что до недавнего времени не существовало альтернативы, а также с тем, что терминалом QUIK пользуются большинство трейдеров и, соответственно, qpile на слуху. Единственный плюс, вытекающий из популярности qpile – довольно просто получить тех. поддержку на форумах. На qpile можно написать робота, тестировать торговые стратегии нельзя. Я не советую использовать этот язык.
[color=green][b][center]
VBA Excel[/center][/b][/color]
В целом те же замечания, что и в qpile. Функционал чуть шире, но пользуются им небольшое количество трейдеров, а значит тех. поддержку получить сложно.&lt;/p&gt;
&lt;p&gt;[center][color=green][b]Delphi[/b][/color][/center]
Язык функциональный, на нем Вы сможете реализовать практически любую задачу, которая встанет перед Вами. Но абсолютно все придется писать самому, к тому же поддержки в виде форумов и других ресурсов нет или практически нет. Отсутствие тех. поддержки и необходимость писать весь код самому делает этот язык непривлекательным.&lt;/p&gt;
&lt;p&gt;[color=green][center][b]C#[/b][/center][/color]
С# (разработан Microsoft) выделяется по всем параметрам. Функциональность, простота и надежность сделали его фаворитом для большинства платформ для тестирования торговых стратегий. WealthLab, TS-Lab в качестве внутреннего языка программирования используют именно его. Возможность написания библиотек на C# существенно ускорила и облегчила написание торгового робота. Что такое библиотека? Представьте себе, что Вам нужно написать код, который будет выставлять заявку на рынок. Код будет состоять из 100 строк, на написание и отладку которых уйдет N-е количество времени. Теперь представьте, что кто-то уже написал этот код и теперь Вы можете воспользоваться им, написав одну строчку. Библиотека – это множество кодов, написанных проф. программистами. Библиотека StockSharp содержит все коды, которые нужны для разработки торгового робота. Таким образом, Вы экономите время на написание и отладку кода. Раньше каждый писал библиотеку для себя, для этого нужно иметь приличный опыт программирования. Теперь любой может использовать плюсы языка C#, не являясь проф. программистом. На нашем форуме оперативно отвечают на вопросы, Вы всегда сможете получить тех поддержку от первых лиц. Что мы имеем в итоге: выучив C# у вас нет привязки к какой-то одной платформе, язык используется повсеместно. На нем можно тестировать торговые стратегии как интрадей (WeathLab), так и HFT (StockSharp). Написание торговых роботов - можно самостоятельно писать свой код, можно воспользоваться библиотекой S#.&lt;/p&gt;
&lt;p&gt;[b]Рекомендуем ознакомиться:
[url=http://stocksharp.blogspot.com/2010/07/blog-post_12.html]Небольшая статья о выборе языка программирования.[/url][/b]&lt;/p&gt;
&lt;p&gt;[b][color=green][center]Создание торговых роботов условно можно разделить на два этапа:[/center][/color][/b]
1 — тестирование торговой системы;
2 — воплощение торговой системы в виде робота.&lt;/p&gt;
&lt;p&gt;[b][center]1. Тестирование торговой стратегии[/center][/b]
Тестирование торговых систем призвано доказать прибыльность системы, найти её минусы и подсказать способы улучшить систему. Я выделю три основных платформы для тестирования:
[b]WealthLab[/b] — cтабильная, удобная в использовании платформа. Подойдет для тестирования внутридневных стратегий, среднесрочных, долгосрочных, тестирования на портфеле бумаг. WLD - oдно из лучший решений на данный момент. В WLD — нельзя тестировать HFT стратегии. Внутренний язык программирования в WLD — C#.
[b]TSLab[/b] — тот самый визуальный редактор, о котором мы говорили в самом начале. Алгоритм представлен в виде блок-схемы. Разработка относительно новая, поэтому имеются некоторые проблемы с тестированием и расчетами, хотя в последнее время проблем стало значительно меньше. Основной минус визуальных редакторов мы уже затрагивали. Если выбирать между TSLab и WLD, выбор очевиден.
[b]StockSharp[/b] – возможность тестирования HFT стратегий. В скором времени появится полноценная графическая среда ([b]StockSharp Studio[/b]) для тестирования всех видов систем.
Другие платформы для тестирования: Metastock, amibroker, OpenQuant.&lt;/p&gt;
&lt;p&gt;Дорогие друзья, время не стоит на месте, торговые платформы меняются и развиваются. Сегодня октябрь 2013 года и мы представляем вам новый, пересмотренный подход к выбору платформы для торговых роботов. Мы стараемся давать вам полную информацию, чтобы вы смогли сделать справедливый выбор, поэтому предоставляем вам ссылки на следующие статьи:&lt;/p&gt;
&lt;p&gt;[list][&lt;em&gt;][url=http://rusalgo.com/article/what-to-choose]Какую платформу для торговых роботов выбрать: TSLab,WealthLab,StockSharp?[/url]
[&lt;/em&gt;][url=http://rusalgo.com/article/stocksharp-yes-or-not]StockSharp (СтокШарп) – Торговые роботы. Стоит ли выбирать?[/url][/list]
В этих статьях вы ознакомитесь с текущим положением дел.
Мы умеренно сообщаем вам об этом сейчас, когда вы уже прочитали половину статьи, с той целью, чтобы вы прочувствовали, как меняются технологии с течением времени. Но, с другой стороны, вы можете убедиться, что наш основной совет – изучать C# – остался прежним. Этот совет становится даже более актуальным, т.к. и  в TSLab API используется C#!&lt;/p&gt;
&lt;p&gt;[b][center]2. Воплощение торговой системы в виде робота[/center][/b]
Торговые роботы реализуются двумя путями:
1 — тестирование стратегии на WealthLab (WLD), а реализация робота на qpile.
Минус такого подхода – надо знать два языка программирования: C# для WLD и qpile для QUIK.
2 — к программе для тестирования торговых систем приделывается коннектор.&lt;/p&gt;
&lt;p&gt;[b]Второй путь:[/b]
Робот пишется на платформе для тестирования торговых систем и подсоединяется к торговому терминалу через коннектор. Удобство такого метода должно состоять в том, что после тестирования торговой стратегии Вы можете сразу вводить робота в эксплуатацию. Так задумывалось, но не всегда так бывает. Возникают различные сложности, природа которых лежит в том, что программы для тестирования стратегий создавались для тестирования, а не использования их в виде торговых роботов. Например, отсутствие обратной связи, когда после выставления заявки нельзя проверить её статус – была она исполнена или не дошла из-за разрыва интернета. Сами коннекторы чаще всего самописные, что делает связку &amp;quot;торговый робот/платформа&amp;quot; нестабильной. Для 6го WealthLab есть коннектор, написанный брокерской компанией Церих; коннектор платный - 50 рублей в день. Издержки, сопоставимые с платой за Интернет, и есть какая-то уверенность стабильной работы. Все же этот путь тупиковый: программа для тестирования стратегий накладывает сильные ограничения на функционал робота, поэтому вернемся к первому способу, когда реализация торгового робота осуществляется на языке программирования. В этом случае функционал робота ограничивается лишь возможностями языка программирования, а значит, почти не ограничен.&lt;/p&gt;
&lt;p&gt;[b]Первый путь:[/b]
Совсем не обязательно знать два языка программирования, если Вы прислушались к совету и выбрали C#. Тестирование торговых систем идет на WLD, там пишется код на C#, потом этот же код с минимальными изменениями переносится в инфраструктуру робота, написанного на C# с использованием библиотеки StockSharp. Правильный выбор языка позволяет использовать нам лучшие решения. Функционал робота неограничен по сравнению с первым случаем. Есть возможность обратной связи (отслеживания состояния робота), автоматическое переподключение при разрыве и т.д.
Ниже показан [b]пример интерфейса торгового робота, написанного с использованием библиотеки StockSharp[/b].&lt;/p&gt;
&lt;p&gt;Из этого окна осуществляется запуск и навигация по роботу. При нажатии кнопки &amp;quot;Старт&amp;quot; робот запускают все прописанные торговые терминалы, логинится и выполняет подключение к данным.
[center][img]102067[/img][/center]
Если нужно добавить новый терминал – заходим в настройку.
[center][img]102068[/img][/center]
Редактирование настроек робота без вмешательства во внутренний код.
[center][img]102069[/img][/center]
Робот отчитывается о своих действиях, пересчет алгоритма идет с заданной вами частотой.
[center][img]102070[/img][/center]
[center][b]Итог[/b][/center]
Знание языка программирования открывает перед нами широкие возможности. Выбор С# позволяет использовать лучшие решения и не привязываться к определенному продукту. Практически все продукты, связанные с тестированием ТС и созданием роботов, используют C#. Тестирование стратегии лучше всего делать в WealthLab. Реализовывать робота лучше всего, используя библиотеку S# - мы экономим своё время и упрощаем задачу написания торговых роботов.&lt;/p&gt;
&lt;p&gt;[b][center]Успехов на рынке!
Торговые роботы Stock#
Горбунов Алексей [/center][/b]&lt;/p&gt;
&lt;p&gt;[center][url=http://stocksharp.com/doc/][color=green][b]Ознакомиться с документацией к библиотеке S# можно здесь.[/b][/color][/url] [/center]&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>