﻿<?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">Блог. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=blog&amp;page=29</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-22T08:50:11Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=blog&amp;page=29" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/305/</id>
    <title type="text">Почему супермассив данных никогда не заменит исследование рынка.</title>
    <published>2014-10-31T11:52:30Z</published>
    <updated>2014-10-31T11:52:30Z</updated>
    <author>
      <name>Student</name>
      <uri>https://stocksharp.ru/users/15/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="big data" />
    <category term="анализ" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;span style="color:brown"&gt;&lt;/span&gt;:::right
Опубликовано в рамках &lt;a href="http://stocksharp.com/forum/4787/Konkurs--Spasibo/"&gt;конкурса&lt;/a&gt;&lt;/p&gt;
&lt;div&gt;&lt;p&gt;&lt;img src="/file/103325/Big-Data-Hype.jpg" alt="" /&gt;
Не легко быть исследователем в наши дни. В новостях и блогах нет недостатка в статьях доказывающих уход исследований рынка в прошлое или о том, как супермассивы данных превратят исследования в устаревший вид деятельности. Согласно этим экспертным мнениям, в то время как в прошлом мы страдали от недостатка данных  - и, таким образом, была необходимость в  исследовании рынка, чтобы заполнить пробелы в знаниях, сегодня нам посчастливилось иметь обилие информации. В результате, с правильными методами обработки гор данных и толикой таланта для их просеивания,  на все наши вопросы будут даны ответы, и исследования рынка могут, наконец, поклониться и уйти со сцены.&lt;/p&gt;
&lt;p&gt;Ерунда.&lt;/p&gt;
&lt;p&gt;Для начала, позвольте мне сделать необходимую ремарку. Я ни в коем случае не выступаю против супермассивов данных. На самом деле, я очень взволнован крупными и богатыми наборами данных, которые, мы надеемся, приведут к новым знаниям и интересным идеям. Моя точка зрения состоит в том, что супермассивы данных не являются панацеей. Они могут рассказать нам, что произошло в прошлом, и, возможно, вывести будущие события, но они имеют ограниченные возможности объяснить, ПОЧЕМУ что-то произошло. Без понимания ПОЧЕМУ, супермассивы данных не обладают значительной практической ценностью.&lt;/p&gt;
&lt;p&gt;Чтобы проиллюстрировать это, давайте сосредоточимся на двух компаниях обладающих крупнейшими массивами данных в мире.&lt;/p&gt;
&lt;p&gt;Не существует никаких сомнений, что колоссальный рост Facebook, был вызван Супермассивом данных. Каждое фото, лайк, комментарий, и так далее, которые вы делаете, собираются, берутся на анализ и анализируются, чтобы создать высоко персонализированный профиль каждого пользователя. С такой огромной сокровищницей персональных данных, какая возможная необходимость могла заставить Facebook обращаться к методам старой школы исследований?
Но, как сообщает Huffington Post, Facebook не только &amp;quot;регулярно опрашивает своих пользователей&amp;quot;, но и создал панель обратной связи для подготовки данных для долгосрочных исследований, которые по утверждению многих скептиков уже давно ушли в прошлое. Несмотря на огромное количество пользовательских данных, Facebook видит ценность в непосредственном опросе своих пользователей.&lt;/p&gt;
&lt;p&gt;Другим гигантом больших данных является Google, который объединяет личные данные из своих поисковых систем, электронной почты, карт, браузера и других продуктов, чтобы создать высокоточный портрет того, кто мы есть, с целью лучше таргетировать рекламу. С разнообразным и подробным объемом данных размером с гору Олимп, не говоря уже о команде супер-умных ученых, безусловно, Google не нуждается в том, чтобы задавать вопросы своим пользователям. Само упоминание о проведении таких исследований рынка, кажется таким старомодным, как телефон с диском.
На самом деле, в соответствии с thenextweb, Google опрашивал своих пользователей чтобы лучше понять, почему пользователи реагируют определенным образом на различную рекламу. Супермассивы данных могут рассказать Google, что пользователи делают (отключение звука в объявлении, закрытие рекламы на полпути, и т.д.), но они не могут объяснить, почему пользователи реагируют именно таким образом. Отсюда, полагаю, что потребность в традиционных исследованиях рынка никуда не исчезла и не исчезнет в ближайшем будущем.&lt;/p&gt;
&lt;p&gt;Если понравилось, не забудьте сказать &amp;quot;спасибо&amp;quot; [blush]&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/257/</id>
    <title type="text">Конкурс &amp;quot;Спасибо&amp;quot;</title>
    <published>2014-10-23T00:18:54Z</published>
    <updated>2014-10-23T00:18:54Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <category term="Конкурс" />
    <content type="html">&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="http://i.gyazo.com/ef968e78f124b900d55bc3e389bf9cce.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;С завтрашнего дня и до 31 декабря 2014 года стартует &lt;span style="font-size:36pt"&gt;конкурс &lt;strong&gt;&amp;quot;Спасибо&amp;quot;&lt;/strong&gt;&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Мы начинаем поощрять активное участие на нашем форуме, сайте или группах в соц. сетях. Каждый из вас, кто активно участвует в обсуждениях, отвечает на вопросы других участников сообщества, может получить «спасибо» за свои посты и ответы. Чем интереснее дискуссия и правильнее ответ, тем больше «спасибо» вы получите. Полученное Спасибо теперь можно, что говорится, &amp;quot;намазать на хлеб&amp;quot;, а в нашем случае - расплатиться им за &lt;a href="http://stocksharp.com/edu/"&gt;обучение&lt;/a&gt;:&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="http://i.gyazo.com/4f7ebfed976dc3ecdf37ec7d7c5a9815.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Детали конкурса:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Отчет по набранным Спасибо будет производится в данном топике раз в неделю.&lt;/li&gt;
&lt;li&gt;Вы можете сделать репост нашего конкурса на других сайтах (сразу получаете 5 Спасибо от StockSharp): вконтакте, смарт-лабе и т.п. После репоста необходимо отписаться в данном сообщении для получения награды.&lt;/li&gt;
&lt;li&gt;Пишите статьи! За интересные статьи (набрала более 10 спасибо от пользователей) оценки &lt;strong&gt;удваиваются&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Репост своей же статьи. В конце репоста необходимо указать ссылку на конкурс. Оценивается в 5 спасибо.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/255/</id>
    <title type="text">IQFeed делает скидку в $50 пользователям StockSharp</title>
    <published>2014-10-14T14:01:24Z</published>
    <updated>2014-10-14T14:01:24Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Новости" />
    <content type="html">&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103296/iqfeed.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;IQFeed делает скидку в $50 пользователям StockSharp. Для этого нужно зарегистрировать через нашу &lt;a href="https://www.iqfeed.net/stocksharp/index.cfm?displayaction=start" rel="nofollow" target="_blank"&gt;&lt;span style="font-size:8px"&gt;промо-страницу&lt;/span&gt;&lt;/a&gt;. Подробнее &lt;a href="http://stocksharp.com/broker/12-iqfeed"&gt;http://stocksharp.com/broker/12-iqfeed&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/254/</id>
    <title type="text">Рассылка о новом</title>
    <published>2014-09-28T14:50:45Z</published>
    <updated>2014-09-28T14:50:45Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Новости" />
    <content type="html">&lt;p&gt;Чтобы быть всегда в курсе последних новостей StockSharp, подписывайтесь на рассылку через Триттер &lt;a href="https://twitter.com/stocksharp" rel="nofollow" target="_blank"&gt;https://twitter.com/stocksharp&lt;/a&gt; или группу в Контакте &lt;a href="https://vk.com/stocksharp" rel="nofollow" target="_blank"&gt;https://vk.com/stocksharp&lt;/a&gt; . Будем оповещать о:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Новых релизах.&lt;/li&gt;
&lt;li&gt;Статьях.&lt;/li&gt;
&lt;li&gt;Событиях.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Оповещения на Email, телефон, часы и очки.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/306/</id>
    <title type="text">О новом интерфейсе IMarketDataProvider</title>
    <published>2014-09-25T21:47:11Z</published>
    <updated>2014-09-25T21:47:11Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Статьи" />
    <content type="html">&lt;p&gt;Достаточно тихо прошло нововведение &lt;a href="http://stocksharp.com/forum/4694/Poluchieniie-level1-s-pomoshch-iu-IMarketDataProvider/"&gt;интерфейса IMarketDataProvider&lt;/a&gt;. Тем не менее, сама фича очень важна, так как она меняет использование самого старого класса - &lt;strong&gt;Security&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Как известно, класс &lt;strong&gt;Security&lt;/strong&gt;, олицетворяющий собой финансовый инструмент, имеет просто огромное количество полей (классические OHLC, лучшие котировки, последную сделки, греки опционов и многое другое). Пользоваться этим получается достаточно удобно:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;// получение цены последней сделки
var lastTradePrice = sber.LastTrade == null ? (decimal?)null : sber.LastTrade.Price;

// получение открытого интереса по РИ
var oi = ri.OpenIntereset;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;И чудесным образом подключение к торговой системе через XXXConnector обновляет эти данные. Но в этой красоте скрывается один серьезный недостаток. А что если у нас 2, или даже, 3, поключения (причем, некоторые из них могут быть вполне виртуальными, как &lt;strong&gt;HistoryEmulationConnector&lt;/strong&gt;)? И все они транслируют данные по многим одинаковым инструментам. Какое подключение будет обновлять данные?&lt;/p&gt;
&lt;p&gt;Ответ простой - все одновременно. И мы получаем кашу, если мы используем единые объекты для разных подключений. По-умолчанию, подключения создают отдельные объекты &lt;strong&gt;Security&lt;/strong&gt;. Тогда перезапись данных невозможно. Но получается другая проблема - разные объекты для одного и того же инструмента.&lt;/p&gt;
&lt;p&gt;В итоге родилась идея, чтобы хранить изменяющиеся поля в подключении (точнее, реализации IMarketDataProvider), а константные (код, дата экспирации, шаг цены и т.д.) оставить в классе &lt;strong&gt;Security&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Спешу сразу успокоить - по-умолчанию все работает в классическом режиме. При обновлении вам не нужно &amp;quot;доводить напильником&amp;quot; старый и проверенный код. Но чтобы получить возможность использовать один объект в разных подключения - просто включите &lt;a href="http://stocksharp.com/forum/4694/Poluchieniie-level1-s-pomoshch-iu-IMarketDataProvider/"&gt;соответствующие режимы&lt;/a&gt;. Вот как будет выкглядеть старые код на новый лад:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;// получение цены последней сделки
var lastTradePrice = myStrategy.GetSecurityValue&amp;lt;decimal?&amp;gt;(sber, Level1Fields.LastTradePrice);

// получение открытого интереса по РИ
var oi = myStrategy.GetSecurityValue&amp;lt;decimal?&amp;gt;(ri, Level1Fields.OpenIntereset);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Конечно же, это несколько сложнее, чем предыдущий код. Но тем самым будет упрощено взаимодействие с параллельным тестированием и работой стратегий. И да, в &lt;a href="http://stocksharp.com/products/studio/"&gt;Студии&lt;/a&gt; нужно использовать, конечно же, последний вариант. Есть повод для осмысления и модернизации.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/253/</id>
    <title type="text">Как насчет помочь?</title>
    <published>2014-08-20T20:07:36Z</published>
    <updated>2014-08-20T20:07:36Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Работа" />
    <content type="html">&lt;p&gt;Всех привествую!&lt;/p&gt;
&lt;p&gt;Интересует помощь в обновлении документации по &lt;a href="http://stocksharp.com/products/"&gt;нашим программам&lt;/a&gt;. На данный момент интересует &lt;a href="http://stocksharp.com/forum/4663/Dokumientatsiia-S--Studio/"&gt;дописать документацию&lt;/a&gt; к новой версии Studio.&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103276/studi_designer.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Что требуется от этой работы:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Разобраться в Студии (новая версия, по сравнению со старой все принципиально поменялось).&lt;/li&gt;
&lt;li&gt;Начать тыкать мышкой в те участки Студии, которые необходимо задокументировать.&lt;/li&gt;
&lt;li&gt;Писать нам о своем опыте, интуитивности или не очень каких-то участков.&lt;/li&gt;
&lt;li&gt;Написать топики на форуме в соотвествии с &lt;a href="http://stocksharp.com/forum/4663/Dokumientatsiia-S--Studio/"&gt;разделом TOC&lt;/a&gt; (часть документации уже написана).
Что вы можете требовать от StockSharp:&lt;/li&gt;
&lt;li&gt;Деньги.&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Получить курс обучения.&lt;/del&gt;&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Получить саппорт.&lt;/del&gt;&lt;/li&gt;
&lt;li&gt;Нучиться делать роботов в Студии забесплатно.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Заинтересованные пишите на почту info стокшарп ком&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/307/</id>
    <title type="text">Аналитика - новая фича Гидры для квант анализа и дата майнинга</title>
    <published>2014-03-17T18:08:58Z</published>
    <updated>2014-03-17T18:08:58Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <category term="Python" />
    <category term="S#.Data" />
    <category term="исторические данные" />
    <category term="аналитика" />
    <category term="R" />
    <category term="статистика" />
    <category term="datamining" />
    <category term="quant" />
    <content type="html">&lt;p&gt;В &lt;a href="http://stocksharp.com/products/hydra/"&gt;S#.Data (Гидра&lt;/a&gt;) появилась новая фича &lt;strong&gt;Аналитика&lt;/strong&gt;. Она позволяет производить анализ над данными, что скачала Гидра. Стандартно входят 2 скрипта: Анализ объема с разбивкой по часам и анализ объема с разбивкой по цене:&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103138/hydra_anal_1.png" alt="Анализ объема по часам" /&gt;&lt;/p&gt;
&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103139/hydra_anal_2.png" alt="Анализ объема с разбивкой по цене" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span style="font-size:12pt"&gt;&lt;em&gt;&lt;a href="http://www.scichart.com/Abt.Controls.SciChart.SL.ExampleTestPage.html" rel="nofollow" target="_blank"&gt;Множество примеров о том, как делать красивые графики на компоненте SciChart.&lt;/a&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Сам код так же пишется внутри Гидры:&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103140/hydra_anal_3.png" alt="Редактор кода" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Для того, чтобы пойти чуть дальше, и попробовать заместить R и Python, добавлена библиотека &lt;a href="http://numerics.mathdotnet.com/" rel="nofollow" target="_blank"&gt;Math Numerics&lt;/a&gt;. В одной программе (Гидра) теперь можно и скачивать данные, и анализировать, и производить визуализацию.&lt;/p&gt;
&lt;p&gt;Для тех, кто пользуется серверным режимом S#.Data, теперь можно анализировать данные, не закачивая их к себе на диск.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/308/</id>
    <title type="text">Многослойный персептрон! Грааль где то рядом!</title>
    <published>2014-01-22T18:23:12Z</published>
    <updated>2014-01-22T18:23:12Z</updated>
    <author>
      <name>Иван З.</name>
      <uri>https://stocksharp.ru/users/6502/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="Алгоритмы" />
    <category term="Нейросети" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;Начало здесь: &lt;a href="http://www.stocksharp.com/forum/4136/Mnoghosloinyi-piersieptron--Vstriechaitie--Vpiervyie-na-arienie/"&gt;http://www.stocksharp.com/forum/4136/Mnoghosloinyi-piersieptron--Vstriechaitie--Vpiervyie-na-arienie/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Первая часть: Для тех, кто верит в нейросети&lt;/strong&gt;
В вышеуказанном посте я описал работу персептрона, как он учится и торгует после обучения. Проблема в том, что я начитавшись постов в интернете сделал как все. То есть, собрал сеть, обучил, написал стратегию под сеть, и давай ее тестировать! Обучу на одних входных параметрах, тестирую стратеги, обучу на других, тестирую. И тут меня осенило! Когда сеть обучается идет подсчет ошибки, а что если вести параллельный подсчет еще и ошибки работы сети на данных не участвующих в обучении? После реализации чего, прогнав данные в которые я верил, окончательно разочаровался в персептроне. Но все по порядку.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Вторая часть: Что я поправил еще до этой идеи.&lt;/strong&gt;
Убрал позорный график и вставил родной от S# .
Параметры персептрона теперь передаются в StatisticParameterPanel от S# .
Обучается параллельно 5 нейросетей с одинаковыми параметрами, но с разными первоначальными весами.
Сохраняется одна сеть на выбор пользователя, один раз при остановке обучения (раньше сохранялась при обновлении минимума).
Еще по мелочи, кнопки убрал, перегруппировал и тп.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Третья часть: Что я поправил после этой идеи.&lt;/strong&gt;
Добавил еще график для вывода контрольной ошибки.
Ошибка считается теперь не среднеквадратичная, а абсолютная. Так легче для понимания графика. Например, на рисунке видно, что образов для обучения 804 это значит, что сети предоставлено 804 единиц, минус единиц, и нулей. Если сеть на каждый образ выдаст ноль, то суммарная ошибка будет равна 804. Что мы и видим на нижнем графике рисунка, вначале обучения ошибка сети равна 804.
Контрольная ошибка считается также, как и ошибка обучения, но на следующий день после последнего дня обучающей последовательности. &lt;strong&gt;И НИКАКИМ ОБРАЗОМ НЕ ВЛИЯЕТ НА ОБУЧЕНИЕ СЕТИ&lt;/strong&gt;.  На рисунке видно, что количество образов проверки 161, это значить что если сеть не нашла закономерность, то контрольная ошибка будет колебаться вокруг 161. По логике вещей если сеть нашла закономерность, то контрольная ошибка всех 5 сетей должна устремиться вниз. И дойти хотя бы до 100-110. Но такого я не видел. Прошу если кто-то этого добьется, опубликуйте скирин окошка, верните веру. [biggrin]
В выложенном варианте входную последовательность, и эталон я менять не стал(ну не выкладывать же грааль [lol]). Все как первом моем посте на эту тему. И лежит там же.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Четвертая часть: Мой соображения&lt;/strong&gt;
Вместе с входными полезными данными мы подаем много мусора в надежде что сеть из мусора вытащит закономерности. А она подстраивается под мусор, и запоминая его, обучаясь до определенного момента.
Вывод: на вход сети надо подавать обработанные данные в которых много полезной информации и мало мусора, вопрос зачем мне нейросеть если у меня есть такие данные?&lt;/p&gt;
&lt;p&gt;Вот и все!
Всем спасибо за внимание! Жду отзывов, и лайков! [biggrin]&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/251/</id>
    <title type="text">На встречу 2014-ому</title>
    <published>2013-12-31T14:49:27Z</published>
    <updated>2013-12-31T14:49:27Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.ru/users/201/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Праздник" />
    <category term="Новости" />
    <content type="html">&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;span style="font-size:36pt"&gt;&lt;strong&gt;Приветствую всех участников проекта StockSharp&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Хочется поздравить всех с наступающим новым 2014 годом! Уходящий год был непростым для многих, кто-то в нем приобрел, кто-то потерял. Для граждан и живущих в России последние события омрачили новогоднее настроение, и надеемся, что ответственные за ужасные вещи в скором времени будут сурово наказа по закону.&lt;/p&gt;
&lt;p&gt;Но, несмотря на все негативные вещи, жизнь продолжается, и нужно стремится к светлому и хорошему. Надеемся, в 2014-ом многие из вас покорят новые &amp;quot;вершины&amp;quot; в жизни и, конечно же, трейдинге.&lt;/p&gt;
&lt;p&gt;Традиционно хотелось бы подвести итог по нашему проекту, что мы смогли сделать за уходящий год.&lt;/p&gt;
&lt;p&gt;В начале про тех, &lt;strong&gt;кто сделал наш проект лучше&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;К нам в команду присоединился &lt;a href="http://stocksharp.com/users/6156/"&gt;Валентин&lt;/a&gt;, сделавший адаптер между нашей платформой и программой &lt;a href="http://stocksharp.com/products/wld/"&gt;Wealth Lab&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/users/26882/"&gt;Джеймс Bond&lt;/a&gt; (известный как просто Bond) показал всем, как виртуозно сделал оптимизатор-анализатор-профито-генератор.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/users/5954/"&gt;Сергей&lt;/a&gt; (известный как Казай Трейдер) сделал для &lt;a href="http://stocksharp.com/products/hydra/"&gt;S#.Data&lt;/a&gt; (Гидра) источники &lt;a href="http://stocksharp.com/forum/3930/Yahoo-i--Google-istochnik-dlia-Gidry/"&gt;Google, Yahoo Finance&lt;/a&gt; и &lt;a href="http://stocksharp.com/forum/318/WL-istochnik-dlia-Gidry/"&gt;Fidelity&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;И про &lt;strong&gt;достижения самого проекта&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Мы сделали коннекторы к Interactive Brokers, LMAX, CFH, FinFX, Micex, Plaza 2 CGate, Fusion, IQFeed.&lt;/li&gt;
&lt;li&gt;Обновили интерфейс программы &lt;a href="http://stocksharp.com/products/hydra/"&gt;S#.Data&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Выпустили публичную бета версию &lt;a href="http://stocksharp.com/products/studio/"&gt;S#.Studio&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Сделали решение для компания &lt;a href="http://stocksharp.com/products/pricing/"&gt;S#.Enterprise&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Расширили линейку обучения &lt;a href="http://stocksharp.com/lesson/"&gt;S#.Edu&lt;/a&gt; новыми курсами.&lt;/li&gt;
&lt;li&gt;Начали активно публиковать статьи про алго трейдинг (опять же, отдельное спасибо &lt;a href="http://stocksharp.com/users/26882/"&gt;Bond&lt;/a&gt;, &lt;a href="http://stocksharp.com/users/768/"&gt;vlad1024&lt;/a&gt;, &lt;a href="http://stocksharp.com/users/6456/"&gt;Николаю Флерову&lt;/a&gt; и &lt;a href="http://stocksharp.com/users/5954/"&gt;Казай Трейдеру&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Сделали брокерские лицензии (= заставили поучаствовать брокеров в жизни S# =) ).&lt;/li&gt;
&lt;li&gt;Много всего другого, что не видно, но положительно влияет на проект.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Надеемся, что в следующем году с нами будет еще больше участников. В свою очередь мы будет делать наш проект лучше и лучше.&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:8px"&gt;&lt;span style="color:green"&gt;Еще раз всех с новым годом!&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103062/new_year_cut.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/309/</id>
    <title type="text">Один день из жизни Ri. Баланс объема сделок.</title>
    <published>2013-12-24T22:23:42Z</published>
    <updated>2013-12-24T22:23:42Z</updated>
    <author>
      <name>vlad1024</name>
      <uri>https://stocksharp.ru/users/768/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="Стратегии" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;a href="http://stocksharp.com/forum/315/Odin-dien--iz-zhizni-Ri--Ili-vviedieniie-v-mikrostrukturnyi-analiz/"&gt;В предыдущей статье&lt;/a&gt; мы расмотрели, как выглядит рынок на микроуровне (ордер лог сделок). На этот раз мы углубим наш анализ, в следующем направлении. Как известно на рынке действует простое правило, если кто-то продает значит кто-то это покупает и наоборот, таким образом если сложить объемы всех сделок на покупку(+объем) и продажу(-объем) то получится ноль, то есть существует некоторое соотношение &amp;quot;баланса&amp;quot; которое никогда не нарушается. Как нам это может помочь в анализе? Очень просто, если классифицировать весь входящий поток сделок по некоторым группам, мы можем  увидить как изменяется динамика баланса (поглащенного объема) между разными группами. Самый простой вариант - классифицировать сделки по группам, используя объем выставленный в заявке которая породила сделку, учитывая наш предыдущий анализ распределния объема, выберем следующую сегментацию на три группы по объему заявки 1-10, 10-100, 100-10000. Затем просуммируем выставленный объем на покупку со знаком '+', на продажу со знаком '-' для каждой из групп таким образом получим временной ряд отображающий изменение баланса объема между группами (если сделки происходили внутри группы, то они не приведут к изменению). Рассмотрим один из графиков построенных указанным способом(с добавлением графика цены Ri).&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/103051/session_2012_11_13.png" alt="График Ri (фиолетовый) и баланса сделок" /&gt;&lt;/p&gt;
&lt;p&gt;Как видно из графика, хотя динамика Ri и не определяется полностью динамикой группы крупных трейдеров (объем сделки 100-10000), видно что большинство крупных структур в цене движения актива (в том числе небольшие спайки) вызываются именно ей, в то время как остальные две более мелкие группы (в том числе HFT) выступают абсорберами этого дисбаланс сделок.&lt;/p&gt;
&lt;p&gt;Рассмотрим такой же график за другой день.
&lt;img src="/file/103052/session_2012_11_07.png" alt="График Ri (фиолетовый) и баланс сделок" /&gt;&lt;/p&gt;
&lt;p&gt;Как видно из графика, в этот день взаимная динамика носит иной характер, баланс сделок группы (100-10000) носит более размытый по времени характер, и корреляция с активом возникает лишь в моменты возникновения более интенсивных &amp;quot;спайков&amp;quot; объема, в остальное время динамика скорее всего определяется внешними факторами.&lt;/p&gt;
&lt;p&gt;И на последок еще одна торговая сессия, на этот раз динамика опять напоминает первый случай, с ярко выраженным влиянием на динамику Ri крупных трейдеров.
&lt;img src="/file/103053/session_2012_11_01.png" alt="График Ri (фиолетовый) и баланс сделок" /&gt;&lt;/p&gt;
&lt;p&gt;Продолжение  следует.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/250/</id>
    <title type="text">Скидка 50 процентов на обучение!</title>
    <published>2013-12-23T16:29:35Z</published>
    <updated>2013-12-23T16:29:35Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <content type="html">&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103046/resource.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Если Вы весь год мечтали о том, чтобы научиться создавать торговых роботов, если Вам интересно, как делаются деньги на знаниях, как создаются таймфрейм роботы, высокочастотные роботы(HFT), арбитражные роботы, как можно создать торгового робота для парного трейдинга всего лишь за один день, как работать с &lt;a href="http://stocksharp.com/products/shell/"&gt;S#.Shell&lt;/a&gt; или же Вы просто хотите освоить &lt;a href="http://stocksharp.com/lesson/csharp/"&gt;язык программирования C#&lt;/a&gt;, в контексте создания торговых роботов и многое-многое другое, то сейчас у Вас появилась уникальная возможность научиться всему этому за фантастически низкую цену!&lt;/p&gt;
&lt;p&gt;В преддверии нового года, мы дарим Вам подарок в виде &lt;span style="color:red"&gt;&lt;strong&gt;50% скидки на все наши курсы!&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;Новогодние цены&lt;/p&gt;
&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103047/resource.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color:red"&gt;50% скидка действует только до 31 декабря 2013г.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/310/</id>
    <title type="text">Рассказ нашего ученика 2</title>
    <published>2013-12-18T00:50:55Z</published>
    <updated>2013-12-18T00:50:55Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Алготрейдинг" />
    <category term="Торговые роботы" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;В прошлой &lt;a href="http://stocksharp.com/articles/10413-rasskaz-nashego-uchenika"&gt;статье&lt;/a&gt; рассмотрели общую схему создания и проектирования системы для алгоритмической торговли на бирже. Рассмотрим более подробно работу каждого модуля.&lt;/p&gt;
&lt;p&gt;Как получить исторические данные для работы мы уже знаем. Сейчас рассмотрим необходимый минимальный функционал для своего терминала визуализации.&lt;/p&gt;
&lt;p&gt;Ниже буду приводить скриншоты моей последней версии «Анализатора», более раннюю версию можно скачать с серверов S#. Просто опишем, что из себя представляет система визуализации стратегий.
&lt;img src="/file/103035/1.png" alt="" /&gt;
Задаем диапазон тестирования, таймфрейм и тестируемый инструмент. Как дополнительно, но не обязательно можно задать комиссию, начальный депозит и др. настраиваемые параметры.&lt;/p&gt;
&lt;p&gt;Строим свечной график, также выводим индикаторы. Снизу строим график Эквити. В данном примере для оценки стратегии я использую свой расчет Профита. В стандартной версии графика PnL от S# используется немного другой вариант, более приспособленный для торговли в реальном времени с расчетом вариационной маржи.&lt;/p&gt;
&lt;p&gt;Выводим сделки на график в виде стрелок. Зеленая стрелка покупка, красная продажа. Это стандартная функция. Прикрутить к коду не сложно, главное округлить время сделки до времени свечки, а то она может выставиться некорректно.
&lt;img src="/file/103036/2.png" alt="" /&gt;
Что нам еще нужно? Не плохо бы знать, что и в какой последовательности делала наша стратегия. Нам нужно Логирование! В стандартных версиях полно разных видов окон логирования, но я как всегда не ищу легких путей и сделал свое логирование на базе ListView из WPF C#.
&lt;img src="/file/103037/3.png" alt="" /&gt;
Для удобства вывел на экран кнопки для запуска результатов тестирования и таблицу с расчетом статистических данных стратегии.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Статистика&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Очень важно перед запуском стратегии для реальной торговли на бирже проверить ее на работоспособность – протестировать. Как нам узнать какая стратегия хорошая, а какая плохая? Оказывается итоговая прибыль в конце тестирования не единственно важный показатель нашего алгоритма. Для полной картины нам нужно изучить статистические показатели нашей стратегии.&lt;/p&gt;
&lt;p&gt;Основные формулы для расчета показателей стратегии:
&lt;strong&gt;1. Profit factor (PF)&lt;/strong&gt;
Рассчитывается как отношение за определённый период суммы всех прибыльных сделок к сумме всех убыточных с положительным знаком. Большее значение соответствует меньшей вероятности разорения.
Profit Factor = [Сумма прибылей всех прибыльных сделок] / [Сумма прибылей всех убыточных сделок]&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Maximum Intraday Drawdown (MIDD)&lt;/strong&gt;
Максимально Нарастающий Убыток (MIDD — Maximum Intraday Drawdown). Он обозначает самую большую финансовую яму, в которую попадала наша система.
Максимальный нарастающий убыток – это глубина максимальной просадки за период.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Вероятность выигрыша %W (P)&lt;/strong&gt;
%W(P) вероятность выигрыша (отношение количества выигрышных сделок к общему их количеству).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;вероятность выигрыша &amp;gt; 0,5.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;4. Математическое ожидание M[X]&lt;/strong&gt;
Математическое ожидание — понятие среднего значения случайной величины в теории вероятностей. В зарубежной литературе обозначается через Е[X], в русской M[X]. В статистике часто используют обозначение μ.
Наиболее распространенные варианты расчета:&lt;/p&gt;
&lt;ol class="contains-task-list"&gt;
&lt;li class="task-list-item"&gt;M&lt;input disabled="disabled" type="checkbox" checked="checked" /&gt; Математическое ожидание = вероятность выигрыша * средняя величина выигрыша + вероятность проигрыша * средняя величина проигрыша (в качестве результата прирост на 1 сделку в абсолютных величинах)&lt;/li&gt;
&lt;li class="task-list-item"&gt;M&lt;input disabled="disabled" type="checkbox" checked="checked" /&gt; Математическое ожидание (1+( средняя величина выигрыша / средняя величина проигрыша))* вероятность выигрыша -1 (в качестве результата вероятность в % получения прибыли за период)&lt;/li&gt;
&lt;/ol&gt;
&lt;ul class="contains-task-list"&gt;
&lt;li class="task-list-item"&gt;M&lt;input disabled="disabled" type="checkbox" checked="checked" /&gt; &amp;gt; 0,6 верно для варианта 2.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;5. Фактор восстановления (RF)&lt;/strong&gt;
RF (фактор восстановления, restoration factor) = отношение прибыли за период (Profit) к максимально нарастающему убытку (MIDD) за тот же период.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;при тестировании RF должен быть &amp;gt; 2&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;6. Стандартное отклонение (σ)&lt;/strong&gt;
Стандартное отклонение σ или SD (sigma) — это широко используемая мера разброса или вариабельности (изменчивости) данных. Стандартное отклонение популяции определяется формулой:
SD= [S(xi-m)2/N]1/2, где m — среднее популяции, N — размер популяции.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;7. Z-счет&lt;/strong&gt;
Z-счет позволяет определить эффективность торговой системы одной цифрой, предоставляя более точные результаты при сравнении с другими ТС. Кроме того, положительный либо отрицательный результат Z-счета несет в себе дополнительную информацию об особенностях использования взятой торговой системы.
Собственно, формула вычисления Z-счета имеет вид:
Z-счет = (N*(R — 0.5) — X)/((X*(X — N))/(N -1))^(1/2)
N – общее количество сделок;
X – 2&lt;em&gt;количество прибыльных сделок&lt;/em&gt;количество убыточных сделок;
R – количество серий (сколько раз после прибыльной сделки шла убыточная и наоборот);
^(1/2) – это квадратный корень.
Для определения Z-счета необходимо иметь данные как минимум по 30 сделкам. Положительный либо отрицательный Z-счет несет в себе дополнительную информацию:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Положительный Z-счет означает, что практически после каждой прибыльной сделки следует убыточная, т.е. торговая система склонна к чередованию. И, чем больше число Z-счета, тем чаще происходит чередование. Основываясь на этом, следует после каждой убыточной сделки увеличивать размер лота (т.к. следующая сделка будет прибыльной), а после прибыльной – уменьшать лот.&lt;/li&gt;
&lt;li&gt;Отрицательный Z-счет означает, что ТС имеет последовательные серии как прибыльных, так и убыточных сделок. Эти данные вырисовывают следующий сценарий – если система склонна к сериям, то после первой убыточной сделки следует прекратить торговлю и войти в рынок снова только после первой прибыльной сделки. Мы пропускаем одну прибыльную сделку, но, при этом, минуем серию убыточных.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Прочая статистическая информация:
8. Общее число сделок.
9. Число прибыльных сделок.
10. Число убыточных сделок.
11. Средняя прибыль от сделки.
12. Средний убыток от сделки.
13. Максимальная прибыль.
14. Максимальный убыток.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Есть, конечно, и другие показатели стратегии, но эти наиболее распространенные и информативные.
Так выглядит статистика в сводной таблице стратегий:
&lt;img src="/file/103038/4.png" alt="" /&gt;
&lt;strong&gt;Подробнее о тестировании и простой оптимизации&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ранее мы рассмотрели на примерах как можно визуализировать свою стратегию:
&lt;img src="/file/103039/5.png" alt="" /&gt;
И рассчитать основные ее показатели:
&lt;img src="/file/103040/6.png" alt="" /&gt;
Но все эти приложения имеют графическую оболочку (англ. Graphical user interface, GUI), что сказывается на производительности таких приложений. Для того чтобы тестировать много стратегий и очень быстро нам нужно использовать более производительную архитектуру приложений.&lt;/p&gt;
&lt;p&gt;Например, консольные приложения, хотя некоторые профессионалы умудряются обходиться вообще без GUI.&lt;/p&gt;
&lt;p&gt;Рассмотрим простое консольное приложение для тестирования стратегий методом перебора.
&lt;img src="/file/103041/7.png" alt="" /&gt;
Для тестирования нам совсем не обязательно выводить графики, строить свечки, визуализировать таблицы. Все это можно оставить на заднем плане.&lt;/p&gt;
&lt;p&gt;На примере стратегии из двух пересекающихся SMA (Simple Moving Average, простое скользящее среднее) постараемся выбрать лучшие варианты из сочетания длин периодов «короткой» и «длинной» скользящих средних.&lt;/p&gt;
&lt;p&gt;Для этого создадим диапазон параметров «длинной» SMA от 20 до 120 и выберем шаг для этого диапазона равным 1. Итоговые данные сохраним в одномерном массиве {20, 21, 22, … ,120}. Аналогично для «короткой» SMA с диапазоном от 5 до 20 с тем же шагом 1 создадим одномерный массив {5, 6, 7, …, 20}.&lt;/p&gt;
&lt;p&gt;Теперь сформируем массив всех возможных вариантов стратегий сочетанием значений массива «длинной» и «короткой» SMA. Получим следующий массив всех вариантов параметров нашей стратегии: {{20, 5}, {20, 6}, …, {20, 20}, {21, 5}, …, {120, 19}, {120, 20}}. Итого 1500 вариантов нашей стратегии. Не мало. Поэтому нам так важна скорость тестирования.&lt;/p&gt;
&lt;p&gt;В S# есть простые примеры как провести такое тестирование. Я брал исходные параметры наших SMA из массива параметров стратегий и по очереди в цикле их тестировал. В итоге, после каждого теста получал массив []MyTrades в котором хранились данные времени совершения сделок, их направление (Покупка или Продажа), объем сделок (количество контрактов в сделке) и цены сделок за временной период тестирования.&lt;/p&gt;
&lt;p&gt;В конце мы получили число массивов с результатами тестирования равное числу всех возможных параметров нашей стратегии. Сохраняем (сериализуем в бинарный файл) все наши параметры и результаты тестирования. Открываем эти файлы в рассмотренном ранее «Анализаторе», рассчитываем по этим данным статистику и получаем итоговую таблицу с результатами тестирования. Сортируем данные, например, по матожиданию и анализируем результаты. При этом можем сразу визуализировать заинтересовавшую нас стратегию.
&lt;img src="/file/103042/8.png" alt="" /&gt;
Примерно так проходит тестирование и оптимизация стратегий. Но оптимизация методом перебора зарекомендовала себя как неэффективная и ресурсоемкая при больших объемах данных. В следующей статье мы рассмотрим другие более производительные варианты оптимизации стратегий.&lt;/p&gt;
&lt;p&gt;Всем восходящего тренда! С уважением, Bond.
&lt;a href="http://stocksharp.com/edu/"&gt;Бонд наш ученик!&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/311/</id>
    <title type="text">Рассказ нашего ученика</title>
    <published>2013-12-17T12:52:08Z</published>
    <updated>2013-12-17T12:52:08Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Алготрейдинг" />
    <category term="Торговые роботы" />
    <category term="Статьи" />
    <content type="html">&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103033/bond.png" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;strong&gt;Как я стал алготрейдером&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Год назад в Вконтаке я увидел скриншоты из Квика одного своего знакомого. На них была прибыль от сделки в 34 тысячи рублей. Потом он еще парочку выложил с прибылью в несколько десятков тысяч рублей. Парень учился на экономическом - гуманитарий, а я закончил технический факультет на инженера. И вот сидя на заводе с зарплатой в 25 тысяч рублей, я задумался… «А какого собственно хрена, я 6 лет учил сопромат, теормех, высшую математику? Когда обычный студент с эконома за пару минут заработал больше, чем я за месяц въе**** на заводе???» Эти мысли не давали мне покоя, и я решил разобраться с этой несправедливостью) Нет, я не пошел и не набил ему морду))) А полез в гугл читать, что такое акции и как торгуют на бирже!&lt;/p&gt;
&lt;p&gt;После первых статей в интернете понял, что ничего сложно в этом нет. Ставишь Квик, регистрируешься у брокера и покупаешь и продаешь акции одним кликом мышки! Но тогда я еще не представлял на сколько глубока кроличья нора…
После первых сделок на тестовом сервере, я понял, что с моими руками что-то не то))) Когда я видел, что график растет, я понимал, что нужно покупать, забивал настройки и периодически нажимал вместо «Покупать» на «Продавать». Или не ту цифру в суматохе прописывал! Пока все переустановишь и проверишь, уже собственно график туда и обратно три раза обернется. Ужас в общем! И как люди так торгуют?&lt;/p&gt;
&lt;p&gt;Полез опять в интернет и нашел, что у Квика есть встроенный язык QPILE для совершения автоматических сделок по алгоритму. То, что мне нужно! Никакого бездумного клацанья по мышке, машина не ошибается! Полез в документы и руководства.
Как же все сложно… Я в школе Паскаль с трудом сдавал на уроках информатики… И как это давно было…
Но упорство сделало свое дело и через месяц не без помощи такой-то матери, смог запустить свой первый алгоритм! Радости моей не было предела!)&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103034/Qpile.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Постепенно код усложнялся и вскоре перевалил за тысячу строк! Я использовал кучу индикаторов и однажды заметил, перематывая свою программу, что собственно забыл, чего искал в том месте программы, пока перематывал код. Так разросся код и стал сложным в восприятии. Потом осознал, что-то, что я писал вчера, сегодня уже не работает. Рынок другой. Индикаторы ведут себя по-другому.&lt;/p&gt;
&lt;p&gt;«Нужно сначала тестировать стратегии!» - подумал я. И опять начал гуглить. И чем больше я ковырялся в интернете, тем больше ухудшалось мое настроение. А в QPILE никаких тестеров то и нет. В Excele? Я еще не настолько отчаялся… Другие программы типа Wealth-Lab? Но там все на английском, платная, ничего не понятно и из него нельзя торговать… Как туда перевести стратегии? Опять по-новому переучиваться? Только не это…&lt;/p&gt;
&lt;p&gt;Предпринял последнюю попытку написать рекурсивный цикл в QPILE для тестирования! Та еще порнография! Сделал замкнутый цикл и в нем обращался к историческим свечкам и индикаторам, и тестировал свои алгоритмы. Вы не поверите! Работало! Выставлялись заявки, логировались сделки, ставились метки входа и выхода на графике! Но… Протестировать можно было не глубже чем на неделю, и тестирование стратегии за один торговый день на одних параметрах занимало 10-15 минут. И таймфрейм нельзя было сделать меньше минуты, и стратегии выполнялись по очереди, а не параллельно, если их было много, то до последней выполнение могло не дойти. Все сыпалось на глазах, ничего не хотело работать так как я хотел…
Я зашел в тупик. Понял, что зря потратил время и ничего у меня с моими алгоритмами не получается. Потом я узнал, что тот самый знакомый слил всю свою прибыль на паре неудачных сделок (хоть как-то приподняло настроение). Дурацкий трейдинг!..&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103031/____-____________.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Как я решил эти проблемы благодаря парням из S# и их платформе для алготрейдинга!&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;strong&gt;С чего начать алготорговлю&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;В итоге я полностью разочаровался в QPILE, не хотел извращаться с Excel и собственно не знал, что мне делать дальше. В общем, решил пока приостановить все работы пока не соберусь с собственными мыслями. Но идея о торговле меня не оставляла, люди же как-то зарабатывают на этом хорошие деньги?
В интернете наткнулся на S#, посмотрел, почитал и пришел к выводу, что мне нужно двигаться в этом направлении. Русскоязычная платформа, специально заточенная под алготрейдинг, есть обучение, форум, техподдержка. После головной боли от QPILE напрочь отмел все остальные скриптовые языки и криворукие оболочки. Только низкоуровневый код, только тру алготрейдинг!
Но вот незадача… Я c QPILE еле совладал, а в С# вообще полный 0. Да, и цена на обучение кусается. Решил сначала немного подготовиться, купил Герберта Шилдта «Полное руководство C# 4.0» и почитывал на работе, когда выдавалось свободное время. Мой мозг разрывался на маленькие кусочки, полиморфизм, инкапсуляция, наследование… Пару раз бросал с мыслью: «Зачем я во все это ввязался!».&lt;/p&gt;
&lt;p&gt;Но через месяц заметил, что стал более-менее разбираться в элементарных вещах. Шилдт молодец! Не зря считается одним из лучших писателей книг по обучению программированию. Рекомендую!
Начав в общих чертах разбираться в логике построения программ и поняв, что это все можно читать до бесконечности, и пора уже изучать применительно к алготорговле, &lt;a href="http://stocksharp.com/lesson/stocksharp/"&gt;купил &lt;/a&gt;обучающие курсы S#.&lt;/p&gt;
&lt;p&gt;Сначала прошел курс C#, если честно он был тяжелый. Насколько я знаю, они сейчас его переделали и выпустили новые более адекватные и понятные уроки. Разобрался с Visual Studio. И начал потихоньку изучать примеры из уроков. Собственно первые буковки и циферки кода я начал писать с этих примеров. Потому что если еще с Шилдта примеры пробовать писать так это точно на все про все одной жизни не хватит.
Сначала все шло очень тяжело, нехватка знаний в C# и специфика работы API S# давали о себе знать. Но постепенно, при возникновении проблем, я все реже и реже стал обращался в техподдержку, и научился решать задачи самостоятельно. Отельное спасибо Бухарину Ивану из техподдержки S# за помощь в изучении!
Так что все реально, нужно идти от простого к сложному и все получится!&lt;/p&gt;
&lt;p&gt;А теперь перейдем непосредственно к сути статьи. Что нам необходимо для алготорговли? Как вообще все это происходит? Какие модули и в какой очередности создавать?
Оговорюсь сразу, в своих статьях я буду затрагивать чисто технические моменты алготорговли, супер профитных стратегий и граалей не будет. Ну, может если только в более поздних статьях.
Ниже представлена общая комплексная схема работы моих приложений для анализа, тестирования и оптимизации стратегий:&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;&lt;img src="/file/103032/_____-______.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;quot;АНАЛИЗАТОР&amp;quot; - приложение с графическим интерфейсом WPF и графиками Chart для визуализации и анализа стратегий, проверки на работоспособность стратегий.
&amp;quot;ОПТИМИЗАТОР&amp;quot; - консольное &amp;quot;производительное&amp;quot; приложение для тестирования стратегий.
«РОБОТ» – непосредственно торговый робот в который передается уже готовая стратегия для торговли на Бирже.
«Исторические данные» – хранилище исторических данных.
«Хранилище стратегий» – хранилище результатов тестирования «Оптимизатора» и «Анализатора», готовых стратегий и других параметров.&lt;/p&gt;
&lt;p&gt;Исторические данные&lt;/p&gt;
&lt;p&gt;Алготрейдинг без бэктестинга не алготрейдинг! Прежде чем запускать алгоритм в работу его нужно проверить, протестировать. В этом огромное преимущество алгоритмической торговли!
Что нужно для тестирования? Это, конечно, исторические данные. В S# есть готовое решение S#.Data. С ее помощью закачал с сайта Финама исторические данные в бинарном формате. Сейчас у меня в хранилище исторических данных лежит более 400 тысяч файлов по разным инструментам, в каждом файле хранится информация о тысячах сделок. И все это занимает не более 10-11Гб на жестком диске.
Исторические данные заимели.
Теперь нам нужно их как-то визуализировать, научиться строить по ним свечные графики разных таймфреймов, индикаторы, выводить сделки на график и т.д.
Также нам нужно научиться тестировать стратегии, сохранять результаты тестирования и находить самую оптимальную стратегию.
Обо всем этом и многом другом вы сможете прочитать в моих следующих статьях)&lt;/p&gt;
&lt;p&gt;Всем восходящего тренда! С уважением, Bond.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://stocksharp.com/lesson/stocksharp/"&gt;Научиться алготрейдингу быстро&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/249/</id>
    <title type="text">Приглашаем вас в чат алготрейдеров</title>
    <published>2013-12-06T13:21:27Z</published>
    <updated>2013-12-06T13:21:27Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <category term="Для начинающих" />
    <category term="Программирование роботов" />
    <category term="Торговые роботы" />
    <category term="клуб алготрейдеров" />
    <category term="Чат" />
    <content type="html">&lt;p&gt;Мы создали &lt;a href="http://chat.stocksharp.com/"&gt;чат алготрейдеров&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Чат открыт для всех желающих. &lt;a href="http://stocksharp.com/chat/"&gt;Подробнее, как подключиться&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Ждем вас в онлайне!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/248/</id>
    <title type="text">Мы обновили каркас</title>
    <published>2013-11-27T12:01:59Z</published>
    <updated>2013-11-27T12:01:59Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Обучение" />
    <category term="Программирование роботов" />
    <category term="Алготрейдинг" />
    <category term="Торговые роботы" />
    <category term="Каркас" />
    <content type="html">&lt;div style="text-align:left"&gt;&lt;p&gt;Дорогие коллеги. Спешу поделиться с вами интересной новостью.
&lt;a href="http://stocksharp.com/products/shell/"&gt;S#.Shell&lt;/a&gt; претерпел значительные имения. Узнать о новинках каркасы, а также, о работе с ним, вы можете из данного &lt;a href="http://stocksharp.com/forum/4045/S--Shell--Manual/"&gt;руководства&lt;/a&gt;. Новая версия уже находится на нашем &lt;a href="http://stocksharp.com/posts/m/26968/"&gt;сервере&lt;/a&gt; и доступна всем нашим &lt;a href="http://stocksharp.com/lesson/"&gt;ученикам&lt;/a&gt;. Основной фишкой данной версии является обновление &lt;a href="http://stocksharp.com/products/api/"&gt;S#.API&lt;/a&gt; идущей в комплект с каркасом.&lt;/p&gt;
&lt;p&gt;Все дружно благодарим камрада &lt;a href="http://stocksharp.com/users/5954/"&gt;Kazai Mazai&lt;/a&gt;. За проделанную титаническую работу.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="http://ic.pics.livejournal.com/kazai_trader/23836215/37705/37705_original.png" alt="" /&gt;
&lt;img src="http://ic.pics.livejournal.com/kazai_trader/23836215/37705/37705_original.png" alt="" /&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/247/</id>
    <title type="text">Теперь Вы можете оплатить наши услуги через Интернет</title>
    <published>2013-11-20T14:31:17Z</published>
    <updated>2013-11-20T14:31:17Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Способы оплаты" />
    <content type="html">&lt;p&gt;&lt;a href="http://stocksharp.com/lesson/"&gt;Обучение&lt;/a&gt; от S# стало ещё доступнее. Теперь Вы можете оплатить наши услуги через Интернет, не выходя из дома. Вам доступен огромный выбор способов оплаты.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Наши услуги&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/lesson/live/"&gt;EduLive&lt;/a&gt; - от 3 900&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/lesson/stocksharp/"&gt;Курсы S#&lt;/a&gt; - от 25 900&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/lesson/wealth/"&gt;Курсы Wealth-Lab&lt;/a&gt; - от 23 900&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/products/pricing/"&gt;Корпоративная лицензия&lt;/a&gt; - от 95 тыс.р.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/lesson/corporate/"&gt;Корпоративное обучение&lt;/a&gt; - от 150 тыс.р.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Способы оплаты&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;банковские карты&lt;/li&gt;
&lt;li&gt;электронные деньги QIWI кошелек, Яндекс.Деньги, Webmoney, Деньги@Mail.ru&lt;/li&gt;
&lt;li&gt;оплата через интернет-банкинг&lt;/li&gt;
&lt;li&gt;оплата с баланса мобильного телефона&lt;/li&gt;
&lt;li&gt;и множество других способов оплаты&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/312/</id>
    <title type="text">Работа с TFS и EduLive</title>
    <published>2013-11-18T14:13:32Z</published>
    <updated>2013-11-18T14:13:32Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="вебинар" />
    <category term="хранилище стратегий" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:9px"&gt;Введение в работу с Microsoft Team Foundation Server&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/mi6WZBHUCeA" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;strong&gt;Темы урока:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Краткий обзор возможностей TFS&lt;/li&gt;
&lt;li&gt;Преимушества TFS как системы версионного контроля кода&lt;/li&gt;
&lt;li&gt;Начало работы с TFS репозиториями S# Education&lt;/li&gt;
&lt;li&gt;Загрузка проектов, работа с зависимостями&lt;/li&gt;
&lt;li&gt;Добавление нового проекта в TFS&lt;/li&gt;
&lt;li&gt;Концепция ветвления версий&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Описание:&lt;/strong&gt; в этой лекции дается введение в системы версионного контроля, а также рассказано обо всём что необходимо знать, для работы с сервером TFS и нашим новым сервисом &lt;a href="http://stocksharp.com/lesson/live/"&gt;EduLive&lt;/a&gt;, показаны примеры работы с EduLive.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Полезные ссылки:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Управление жизненным циклом приложения с помощью Visual Studio и Team Foundation Server
&lt;a href="http://msdn.microsoft.com/ru-ru/library/vstudio/fda2bad5(v=vs.110).aspx" target="_blank"&gt;http://msdn.microsoft.com/ru-ru/library/vstudio/fda2bad5(v=vs.110).aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Разработка с использованием TFVC
&lt;a href="http://msdn.microsoft.com/ru-ru/library/vstudio/ms181382.aspx" target="_blank"&gt;http://msdn.microsoft.com/ru-ru/library/vstudio/ms181382.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Введение в использование TFS c Visual Studio 2010 (EN)
&lt;a href="http://blogs.msdn.com/b/jasonz/archive/2009/10/21/tutorial-getting-started-with-tfs-in-vs2010.aspx" rel="nofollow" target="_blank"&gt;http://blogs.msdn.com/b/jasonz/archive/2009/10/21/tutorial-getting-started-with-tfs-in-vs2010.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Team Foundation Service переименован в Visual Studio Online (EN)
&lt;a href="http://www.visualstudio.com/products/visual-studio-online-overview-vs" rel="nofollow" target="_blank"&gt;http://www.visualstudio.com/products/visual-studio-online-overview-vs&lt;/a&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/313/</id>
    <title type="text">Хранилище стратегий</title>
    <published>2013-11-08T12:45:51Z</published>
    <updated>2013-11-08T12:45:51Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;span style="color:green"&gt;&lt;span style="font-size:24pt"&gt;Готовые примеры роботов&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Вебинар прошёл успешно, в основном рассказывал про новые примеры, как для учеников так и для всех желающих, а также всё что было предоставлено у нас на &lt;a href="http://stocksharp.com/forum/3885/Nastoiashchaia-tusovka/"&gt;сервере&lt;/a&gt; по обучению. В основном рассматривали новый проект, который мы сделали специально для всех учеников и любых желающих:&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102970/robot.png" alt="" /&gt;&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/lHv8ullqvz8" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;strong&gt;А теперь подробнее для тех, кто хочет получить доступ к серверу, где лежат проекты (в том числе и к этому проекту). В основном наш сервер по обучению делится на две части:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102969/tfs_tfs.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;StockSharp Lessons&lt;/strong&gt; - здесь представлены все открытые коды по роботам и проектам принадлежащим видео-урокам.  Есть много различных торговых стратегий, кластерных свечек, вообщем все проекты, относящиеся к этим урокам + много дополнительных закомментированных примеров. Бесплатно доступ к нему получают все ученики &lt;a href="http://stocksharp.com/lesson/stocksharp/"&gt;наших курсов&lt;/a&gt;, а также &lt;span style="color:red"&gt;все желающие под услугой &lt;a href="http://stocksharp.com/lesson/live/"&gt;EduLive&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;StockSharp Public&lt;/strong&gt; - публичный сервер, куда мы накинули уже не мало всего готового. Более подробный разбор того, что есть сейчас в паблике:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Robots (на скриншоте)&lt;/strong&gt; - 8 торговых стратегий. Исходные коды 3 самых сложных стратегий, находятся у нас в &lt;span style="color:red"&gt;репозитории Lessons&lt;/span&gt;. Все остальные стратегии открыты, так что можете смотреть и изучать. Проект позволяет задавать настройки запускать и останавливать стратегии.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BestBuySell&lt;/strong&gt; - реальный проект торгового робота на заказ. Что делает? Включается в определенное время, прописанное в xml настройках. Основная задача - изменение позиции по корзине инструментов (прописаны в настройках) с помощью &lt;a href="http://stocksharp.com/doc/?topic=html/24250c24-029c-4dbc-bc8b-4afde645e483.htm"&gt;котирования&lt;/a&gt;. К примеру при включении у RIZ3 текущая позиция 5, а должна быть 10. Он начинает с прописанными условиями и итерациями отправлять заявки, пока позиция по инструменту не станет правильной. Исходники безотказной стратегии котирования &lt;span style="color:red"&gt;лежат в Lessons.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Analyzer&lt;/strong&gt; - специальный анализатор стратегий. &lt;a href="http://stocksharp.com/forum/4053/Optimizator-stratieghii/"&gt;Более подробно&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MarketDepthAnalyzer&lt;/strong&gt; - подгружает историю стаканов и выводит соответствующие индикаторы на график. &lt;a href="http://stocksharp.com/forum/4035/Analiziruiem-stakany-iz-plazy/"&gt;Более подробно&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data&lt;/strong&gt; - сохраненные данные с помощью S#.Data. Сейчас на сервере бесплатно лежит 1 месяц Ордер Лога по 3 инструментам. Берите и изучайте, кстати ордерлог - это платная услуга от МБ.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NN_Developing&lt;/strong&gt; - нейросеть. Простой проект для исследований и обучения нейросети.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Как скачать все текущие проекты?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://stocksharp.com/forum/3885/Nastoiashchaia-tusovka/"&gt;Подключиться&lt;/a&gt; к нашему TFS (в любом случае надо будет сделать)&lt;/li&gt;
&lt;li&gt;Скачать через Visual Studio (ссылка в первом пункте)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://stocksharpeducation.visualstudio.com/DefaultCollection/StockSharp%20Public/_api/_versioncontrol/itemContentZipped?repositoryId=&amp;amp;path=%24%2FStockSharp+Public&amp;amp;__v=4" rel="nofollow" target="_blank"&gt;Скачать архивом&lt;/a&gt; всё что есть в StockSharp.Public (для ленивых)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://stocksharpeducation.visualstudio.com/DefaultCollection/StockSharp%20Lessons/StockSharp%20Lessons%20Team/_api/_versioncontrol/itemContentZipped?repositoryId=&amp;amp;path=%24%2FStockSharp+Lessons&amp;amp;__v=4" rel="nofollow" target="_blank"&gt;Скачать архивом&lt;/a&gt; всё что есть StockSharp.Lessons (для ленивых)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;P.S. В связи с большим объёмом вложений, лучше качать их напрямую из Visual Studio&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/314/</id>
    <title type="text">использование PCA в торговле парами инструментов</title>
    <published>2013-11-05T10:42:57Z</published>
    <updated>2013-11-05T10:43:27Z</updated>
    <author>
      <name>Андрей Шабанов</name>
      <uri>https://stocksharp.ru/users/16691/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Арбитраж" />
    <category term="мат статистика" />
    <category term="математические модели" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;Всем доброго времени суток...сейчас занят в проекте создания нового алгоритма для маркет-мейкера, по этому почти нет времени для нормальных «исследований и тестирования» нашего рынка. Поэтому пришла идея выкладывать обзор разных статей из мира Quantitative Analysis,  HFT, трейдинга и всего, что относится к нашему рынку. Сразу прошу извинить за вольность и не точность перевода. Основная цель просто передать суть,  для любопытных – всегда есть ссылка на оригинал.&lt;/p&gt;
&lt;p&gt;Начну с любопытной статьи про использование PCА.&lt;/p&gt;
&lt;p&gt;Введение:
PCA - &lt;strong&gt;Метод главных компонент&lt;/strong&gt; (англ. Principal component analysis, PCA)  очень-очень популярный метод преобразования исходных признаков в анализе данных. Его идея состоит в следующем пусть у нас есть N признаков, факторов или переменных (назовем их X1,X2,X3,X4…).
Представим наши X (их может быть ооочень много) в виде матрицы. Применяя к этой матрице SVD-разложение, мы можем перейти к новым переменным, которые будут обладать рядом замечательным свойств:&lt;/p&gt;
&lt;p&gt;первое - наши новые признаки (назовем их главными компонентами и будем обозначать Y) будут некоррелированы (в смысле линейной корреляции.
второе – дисперсия главных компонент равна собственному числу ковариационной матрицы, а собственные числа у нас обладают упорядоченностью. Итого: DY1&amp;gt;DY2&amp;gt;DY3….&lt;/p&gt;
&lt;p&gt;Лучше всего это проиллюстрировать картинкой. Рассмотрим 2х мерное облако данных в коррдинатах X1 X2, которые в свою очередь обладают ненулевым коэффициентом корреляции:
После преобразования получаем Новые координаты Y1 Y2, которые не будут коррелированы между собой, и в тоже время первая компонента будет иметь наибольший вклад в общую дисперсию данных (красная стрелочка), а на вторую (черная полоска) придется остаток дисперсии.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://postimage.org/" rel="nofollow" target="_blank"&gt;&lt;img src="http://s23.postimg.org/cqcqnnvy3/pca01.png" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Есть сотни случаев, где такой метод может понадобиться в анализе данных. Например вы хотите анализировать 100500 признаков и их влияние на какую-то величину Z. Применяя PCA вы получаете некоррелированные признаки (что уже хорошо в смысле оценок коэффициентов регрессии или что вам там надо) и упорядоченные признаки, что дает вам возможность отбросить хвост из признаков и использовать только 10 первых компонент с наибольшим вкладом в дисперсию (такой метод называется отбеливание данных). Есть и другие примеры.&lt;/p&gt;
&lt;p&gt;Причем здесь рынок, спросите Вы?&lt;/p&gt;
&lt;p&gt;Классическая торговля парами (спредами) обычно требует некоррелированности спреда с рынком..То есть нулевой корреляции между приращением спреда и приращением рынка (естественно нам также нужна ограниченность значений нашего спреда в каком-то смысле.&lt;/p&gt;
&lt;p&gt;Обычно когда мы хотим начать торговать парой инструментов мы выбираем 2 сильно коррелированных актива, и используя «бета коэффициенты инструментов» образуем нейтральную к рынку пару.
В случае конструкции синтетического инструмента состоящего из нескольких «ног» такой подход приносит трудности, и тут мы приходим к методу главных компонент: Используя PCA мы трансформируем наши данные при этом упорядоченность дисперсии дает следующий результат:
1-ая компонента, обладающая наибольшей волатильностью, зачастую очень сильно коррелирует с рынком. 2ая компонента, с одной стороны обладает наибольшей дисперсией после вычета из данных первой компоненты, с другой является нейтральной по отношению к первой. Соответственно портфель состоящий из компоненты Y2=a1X1+….anXn мы и будем рассматривать для нашей торговли.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://1.bp.blogspot.com/-kRujUhINIZU/UL0bSxEddlI/AAAAAAAADj8/GzEYNqC3aaI/s1600/energy.png" alt="PCA" /&gt;&lt;/p&gt;
&lt;p&gt;На этой картинке даны 4 инструмента (X1..X4 в нашей терминологии) и 4 главных компоненты после преобразования. Налицо убывание волатильности  от 1ой компоненты к 4ой.&lt;/p&gt;
&lt;p&gt;Если взглянуть на оставшиеся компоненты после вычета первой, то можно увидеть что компоненты вполне торгуемы на той истории на которой проводилось исследование:
&lt;img src="http://4.bp.blogspot.com/-EziqDUQ7cKY/UL0d5kThjAI/AAAAAAAADkM/XnqmWTiLof0/s1600/energy_zoom.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;оригинал: &lt;a href="http://matlab-trading.blogspot.ca/2012/12/using-pca-for-spread-trading.html" rel="nofollow" target="_blank"&gt;http://matlab-trading.blogspot.ca/2012/12/using-pca-for-spread-trading.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;P.S. данный подход относится к классической торговле акциями, куда не стоит относить торговлю ставкой или связанами инструментами.
P.P.S. недавно всвязи с переходом на Т2 рассматривал под микроскопом движение ставки в наших замечательных парах Акция-Фьючерс..
на лицо было заметна корреляция между движением нструмента (внутридневной масштаб) и микродвижением ставки.
Пример:
&lt;a href="http://postimage.org/" rel="nofollow" target="_blank"&gt;&lt;img src="http://s21.postimg.org/i7vp0w5t3/mean02.jpg" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;никто не строил стратегий на внутридневной торговли ставкой (базисом) в сбербанке,лукойле,газе?[glare]&lt;/p&gt;
&lt;p&gt;на след. Неделе раскажу про популярный подход  VPIN и OrderFlow для анализа микро движений рынка.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/246/</id>
    <title type="text">Вебинар, разбираем стратегии S#</title>
    <published>2013-10-30T14:48:21Z</published>
    <updated>2013-10-30T14:48:21Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="вебинар" />
    <category term="клуб алготрейдеров" />
    <category term="хранилище стратегий" />
    <content type="html">&lt;p&gt;&lt;span style="color:green"&gt;&lt;span style="font-size:24pt"&gt;Приглашаю всех на вебинар!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:red"&gt;6 ноября 19:00&lt;/span&gt;. Время выбрано коллективно!&lt;/p&gt;
&lt;p&gt;О чем будет вебинар (смотреть видео):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Хранилище стратегий. Будем разбираться с примерами стратегий от обучения.&lt;/li&gt;
&lt;li&gt;Поработаем с TFS.&lt;/li&gt;
&lt;/ol&gt;
&lt;iframe src="https://www.youtube.com/embed/mHB1bgzrR-s" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;em&gt;Вебинар обещает быть дружелюбным, будем использовать скорее всего &lt;a href="http://www.google.com/+/learnmore/hangouts/?hl=ru" rel="nofollow" target="_blank"&gt;Hangouts&lt;/a&gt;(чаты, запись и т.д), где каждый из участвующих сможет что-нибудь добавить от себя голосом[biggrin]&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Чтобы записаться на вебинар, пожалуйста оставьте свою заявку &lt;a href="http://stocksharp.com/lesson/stocksharp/"&gt;здесь&lt;/a&gt; в группе &amp;quot;Вебинар&amp;quot;, чтобы мы уведомили Вас об окончательной дате и сделали рассылку за час до вебинара.&lt;/span&gt;&lt;/p&gt;
</content>
  </entry>
</feed>