﻿<?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=30</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-19T03:44:48Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=blog&amp;page=30" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/245/</id>
    <title type="text">S# на конференции!</title>
    <published>2013-10-23T15:28:57Z</published>
    <updated>2013-10-23T15:29:15Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="S#" />
    <category term="конференция" />
    <category term="Новости" />
    <content type="html">&lt;p&gt;S# выступит на конференции &lt;a href="http://mfd.ru/event/" rel="nofollow" target="_blank"&gt;Инновационный взгляд на финансовые рынки&lt;/a&gt;, которая будет проходить совместно с &lt;a href="http://otexpo.ru/ru/program/conference" rel="nofollow" target="_blank"&gt;online trading expo&lt;/a&gt; 1 ноября. Ждем всех желающих!&lt;/p&gt;
&lt;div style="text-align:center"&gt;&lt;p&gt;Обновление. Как это было:&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102955/2013-11-01-16.08.11.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Наш ученик - Alexey Bond [biggrin]&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102959/2013-11-01-17.04.45.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Конференция:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102962/1380457_458073414310478_1062149205_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102963/1454671_458073434310476_1774476919_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102964/1456066_458074027643750_309162667_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102965/1452541_458073454310474_792515826_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102966/1392009_458073494310470_1081953678_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102967/1391422_458074704310349_2086041692_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102968/999285_458073484310471_1440655636_n.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Прочие фотки/движуха с форекс экспо:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Стенд МБ [wink]
&lt;img src="/file/102956/2013-11-01-16.09.42.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102957/2013-11-01-16.09.04.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102958/2013-11-01-16.15.00.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Если бы я хотел открыть счёт форекс, наверно я бы пошёл к ним!&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102960/2013-11-01-16.15.48.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;quot;Ковбойша стайл&amp;quot; детектид&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102961/2013-11-01-16.16.05.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;В целом было неплохо, тем более, что мы и так не часто выбираемся в оффлайн, но слушателей было маловато. Думаю, что в следующий раз будет поболее..&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/315/</id>
    <title type="text">Один день из жизни Ri. Или введение в микроструктурный анализ</title>
    <published>2013-10-10T11:26:28Z</published>
    <updated>2013-10-10T11:30:44Z</updated>
    <author>
      <name>vlad1024</name>
      <uri>https://stocksharp.ru/users/768/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="данные" />
    <category term="Ri" />
    <category term="Order log" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;Для большинства трейдеров свечные графики различного таймфрейма это и есть рынок, там скрывается все - и тренд и боковик и хитрый маркет мэйкер с глобальным кукловодом. Начнем с простых фактов, за одну сессию 2012.11.07 на фьючерсе Ri ядро биржи обработало 10 449 043 транзакций или примерно 12 000 транзакций в минуту, одна свечка самого &amp;quot;высоко частотного&amp;quot; минутного таймфрема скрывает за собой огромное количество более элементарных действий. Поэтому мы спустимся на самый низкий уровень того, что происходит на бирже и начнем оттуда.&lt;/p&gt;
&lt;p&gt;Можно долго рассказывать про то как устроена биржа, про промежуточные сервера и другие части &amp;quot;транспортной&amp;quot; инфракстуры, какие задержки они вносят при путешествии заявки, но в конце пути любая заявка попадает в ядро биржие, где непосредственно происходит то ради чего все собственно и затевалось - сведение(matching). И на этом уровне, в смысле формата данных и производимых элементарных действий, FORTS мало чем отличается от той же CME или любой другой современной биржи. Входной поток состоит из заявко двух типов, на вставку(insert) и отмену(cancel). Бьете вы по рынку или выставляете заявку в глубь стакана - для ядра нет разницы, все это в конечном итоге преобразуется в заявку на вставку, которой присваивается свой уникальный идентификатор. Другой тип заявок - на отмену, позволяет убрать часть(или всю) предшествующей заявки на вставку. Ядро принимая на входе поток состоящий из заявок на вставку и отмену, создает поток сведенных сделок, каждая сведенная сделка связана с двумя заявками участвующих в сделке. Исходя из полученного потока, затем строятся стаканы, и тиковые данные(сведенные сделки), которые рассылаются пользователям(к примеру на RTS срезы стаканов строятся с периодичностью 30 миллисекунд), и лишь затем тики преобразуются в красивые свечки, отображаемые на экране. Поток данных содержащий заявки на вставку, отмену и сведенные сделки, на FORTS называется Full Order Log.&lt;/p&gt;
&lt;p&gt;Рассмотрим более подробно формат данных Full Order Log. Возьмем для примера маленький, кусочек:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-cpp"&gt; QUOTE  TYPE    TIMESTAMP      SESSION    ORDER_ID  STATUS ACTION PRICE  VOL  DEAL_ID DEAL_PRICE
['riz2',  1, 1352315357375000, 20121107, 9368447574, 101401, 1, 141870.0, 1,,]
['riz2', -1, 1352315357380000, 20121107, 9368447558, 100001, 0, 141900.0, 3,,]
['riz2', -1, 1352315357380000, 20121107, 9368447580, 101401, 1, 141890.0, 3,,]
['riz2', -1, 1352315357381000, 20121107, 9368447559, 100001, 0, 141890.0, 2,,]
['riz2', -1, 1352315357381000, 20121107, 9368447581, 101401, 1, 141880.0, 2,,]
['riz2',  1, 1352315357381000, 20121107, 9368447507, 100001, 0, 141840.0, 4,,]
['riz2',  1, 1352315357381000, 20121107, 9368447582, 101401, 1, 141860.0, 4,,]
['riz2',  1, 1352315357384000, 20121107, 9368447522, 100001, 0, 141850.0, 8,,]
['riz2',  1, 1352315357384000, 20121107, 9368447586, 101401, 1, 141860.0, 8,,] &amp;lt;- A
['riz2',  1, 1352315357386000, 20121107, 9368447255, 201401, 0, 141850.0, 2,,]
           .... 
['riz2', 1, 1352315358149000, 20121107, 9368447396,      1, 2, 141860.0, 2, 657525271, 141860.0]
['riz2', 1, 1352315358149000, 20121107, 9368447454,      1, 2, 141860.0, 2, 657525272, 141860.0]
['riz2', 1, 1352315358149000, 20121107, 9368447586,      1, 2, 141860.0, 1, 657525273, 141860.0] &amp;lt;- B
['riz2',-1, 1352315358149000, 20121107, 9368447766,    402, 1, 134840.0, 5, ,,] &amp;lt;- C
['riz2',-1, 1352315358149000, 20121107, 9368447766,      2, 2, 134840.0, 2, 657525271, 141860.0]
['riz2',-1, 1352315358149000, 20121107, 9368447766,      2, 2, 134840.0, 2, 657525272, 141860.0]
['riz2',-1, 1352315358149000, 20121107, 9368447766,   1002, 2, 134840.0, 1, 657525273, 141860.0] &amp;lt;- D
['riz2', 1, 1352315358189000, 20121107, 9368447761, 100001, 0, 141840.0, 4, ,,]
['riz2', 1, 1352315358189000, 20121107, 9368447770, 101401, 1, 141860.0, 4, ,,]

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;QUOTE - содержит название инструмента, TYPE - направление заявки (+1 - bid, -1 - ask), TIMESTAMP - временная метка в микросекундах, SESSION - идентификатор сессии, ORDER_ID - идентификатор заявки, STATUS - флаги заявки, ACTION - тип заявки (0 - отмена, 1 - вставка, 2 - сведенная сделка), PRICE - цена, VOL - объем заявки, DEAL_ID - идентификатор сделки, DEAL_PRICE - цена сделки.
На примере выше показан цикл жизни заявки, вставка заявки c идентификатором 9368447586 в поток (A), вставка встречно заявки (C), первая сторона сведенной сделки (B) и вторая сторона (D).&lt;/p&gt;
&lt;p&gt;Теперь, немного разобравшись в формате данных, можно приступить к статистическому анализу. Всего за сессию было произведено 10 449 043 транзакций, из них 4 990 732 на вставку, и 4 362 829 на отмену, а сведено сделок - 1 095 482. То есть &amp;quot;в среднем по больнице&amp;quot; на каждую сделку приходилось 4 перестановки. Следующий вопрос, который возникает - каким образом данная активность распределена по объемам. Для этого посчитаем следующие факторы - количестов вставок и отмен для заданного объема, отношение отмененых заявок к выставленным, чем меньше это соотношение тем больше количество сделок сведено на каждую вставленную заявку, тогда умножив соотношение на количество вставленных заявок, мы получим количество проторгованных заявок для данного объема заявки. В результате получим следующую табличку, отсортированную по столбцу проторгованного объема(для анализа использовался python + scipy):&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-cpp"&gt;   cancel_count  cancel_volume  insert_count  insert_volume     ratio    trade_volume  
        1176407              1       1452121              1  0.810130      275714  
         272998              5        327113              5  0.834568      270575  
        1257775              2       1369794              2  0.918222      224038  
          39698             10         55877             10  0.710453      161790  
         432361              4        470513              4  0.918914      152608  
         668395              3        718625              3  0.930103      150690  
          15002             20         20662             20  0.726067      113200  
           1455             50          3608             50  0.403271      107650  
            453            100          1404            100  0.322650       95100  
         201295              8        212359              8  0.947900       88512  
          21651             15         27185             15  0.796432       83010   
          99168              6        110608              6  0.896572       68640  
           1989             30          4107             30  0.484295       63540  
           4926             25          7438             25  0.662275       62800  
           1025            200          1310            200  0.782443       57000  
          37216             12         41715             12  0.892149       53988  
             68            500           172            500  0.395349       52000  
          17857              7         25274              7  0.706536       51919  
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;cancel_volume, insert_volume - объем в заявке на вставку или отмену, cancel_count - количество отмен, insert_count - количество вставок, ratio - соотношение, trade_volume - оценка проторгованного объема в контрактах.&lt;/p&gt;
&lt;p&gt;Как видно, объемы заявок на вставку, можно условно разделить на две группы, small-volume traders с диапазоном объема 1-10 - высокочастотные трейдеры и скальперы, и всех остальных, как видно во второй группе, значения проторгованного объема кучкуются вокруг &amp;quot;психологических&amp;quot; уровней заявок - 15, 20, 25, 30, 50, 100, 200, 500.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://pastebin.com/ZBqyiY0n" rel="nofollow" target="_blank"&gt;код на питоне&lt;/a&gt;
Продолжение следует...&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/316/</id>
    <title type="text">Анализируем стаканы из плазы</title>
    <published>2013-10-09T18:40:31Z</published>
    <updated>2013-10-09T18:40:31Z</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="бесплатно" />
    <category term="HFT роботы" />
    <category term="Plaza" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;span style="color:green"&gt;&lt;span style="font-size:24pt"&gt;Анализируем стаканы из Plaza!&lt;/span&gt;&lt;/span&gt;
&lt;em&gt;несложный проект по выводу стаканам на чарты S#&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Открываю серию простых ботов/проектов (&lt;a href="http://stocksharp.com/products/api/"&gt;S#.Api&lt;/a&gt;). Простые и сложные версии будут лежать у нас на &lt;a href="http://stocksharp.com/news/10188-gde-luchshaya-tusovka"&gt;сервере&lt;/a&gt; по обучению. Как это было:&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/DXubn8muFpg" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;Собрались с алго-пацанами, стали обсуждать какие темы &amp;quot;тяжело&amp;quot; проходят у стокшарповцев. В итоге был реализован такой простой проект:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Подгружает хранилище стаканов, закаченное из &lt;a href="http://stocksharp.com/doc/?topic=html/7eda6d74-d3b8-4fe5-b6a3-fab60e441daf.htm"&gt;плазы&lt;/a&gt;, с помощью &lt;a href="http://stocksharp.com/products/hydra/"&gt;гидры&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Выводит простые индикаторы с расчетом по стаканам на чарт&lt;/li&gt;
&lt;li&gt;Можно поменять формулу и сделать свой аналайзер стакана.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Проект простенький, данные сразу лежат в готовом варианте:
&lt;img src="/file/102915/analyze.png" alt="симпл" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Скачать исходники можно через наше хранилище на TFS (бесплатно), &lt;a href="http://stocksharp.com/news/10188-gde-luchshaya-tusovka"&gt;подключиться к публичному серверу&lt;/a&gt;! &lt;a href="/file/102916/Analyzer.rar"&gt;Скачать exe&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/317/</id>
    <title type="text">Скоро на всех экранах страны. Исполнитель стратегий для Wealth-Lab.</title>
    <published>2013-10-08T14:50:18Z</published>
    <updated>2013-10-08T14:50:18Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="wealth-lab" />
    <category term="Статьи" />
    <content type="html">&lt;div style="text-align:left"&gt;&lt;p&gt;Как вы все наверное знаете Wealth-Lab это отличная штука для создания и тестирования торговых роботов. Он позволяет визуализировать, протестировать и оптимизировать вашу стратегию. Но к сожалению, Wealth-Lab очень плохо дружит с российским рынком. Мы конечно же решили эту проблему нашим адаптером S#.Wealth-Lab но перед вами встаёт другая проблема, это то что для запуска адаптера необходимо лицензионная версия Wealth-Lab которая к слову сказать стоит 800$ плюс 150$ за продление лицензии на следующий год, а это порой непозволительная роскош для российского человека. Плюс при проторговке системы мы столкнёмся с тем что Wealth-Lab не позволяет запускать тиковые и секундные стратегии через свой Strategy Monitor, а также в велсе отсутствует стакан. Мы решили все эти проблемы программой Wealth Script Executer.&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102906/08-10-2013-14-00-20.png" alt="" /&gt;
&lt;img src="/file/102907/08-10-2013-13-55-26.png" alt="" /&gt;
Что же из себя представляет Wealth Script Executer? Wealth Script Executer это отдельная программа которая позволяет запускать велсовские стратегии и при этом подключаться к большинству российских и зарубежных площадок без переписывания роботов. Плюс у вас будет возможность работать с любым типом графиков которые поддерживает S# и пользоваться стаканом, отслеживать статистику по стратегиям и запускать их по расписанию, что полностью исключит человеческий фактор из торговли!
&lt;img src="/file/102908/08-10-2013-13-56-41.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;И так как происходит процесс работы с Wealth Script Executer. Вы берёте Wealth Lab создаёте и оптимизируете в нём стратегию можно использовать даже Wealth Lab 5.6 сохраняете стратегию стандартными средствами и отрываете её в Wealth Script Executer настраиваете параметры и запускаете в торговлю и наслаждаетесь результатом.
&lt;img src="/file/102909/08-10-2013-14-29-47.png" alt="" /&gt;
Так же вы сможете использую Visual studio отнаследовавшись от специальной библиотеки создать и скомпилировать стратегию, а потом просто открыть её в Wealth Script Executer.&lt;/p&gt;
&lt;p&gt;Сейчас Wealth Script Executer находится в состоянии закрытого бета тестирования и совсем скоро будет доступен нашим подписчикам. Ждите анонса.&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/319/</id>
    <title type="text">Ещё один способ определения пробоя уровня</title>
    <published>2013-10-02T11:05:10Z</published>
    <updated>2013-10-02T11:05:10Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <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/forum/4007/Mietody-opriedielieniia-istinnosti-proboia-urovnia/"&gt;статье&lt;/a&gt; я обещал развить тему методов определения отскока от уровня, но я решил немного дополнить предыдущую статью, добавив ещё один метод определения пробоя уровня.&lt;/p&gt;
&lt;p&gt;Суть данного метода заключается в том, что мы дожидаемся пока цена начнёт консолидироваться вокруг нашего уровня. Тестируя его в разные стороны. После того как цена некоторое время, а точнее некоторое количество баров тестирует наш уровень, мы откладываем от нашего уровня канал на заданный процент и только после того как цена пробьет наш канал мы входим в позицию. Суть определения того что цена тестирует наш уровень заключается в том что предыдущие свечки должны полностью оставаться в канале.&lt;/p&gt;
&lt;/div&gt;&lt;div style="text-align:left"&gt;&lt;p&gt;В наглядном виде всё это выглядит примерно так.&lt;/p&gt;
&lt;p&gt;Входим в длинную позицию&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="/file/102889/01-10-2013-20-51-54.png" alt="" /&gt;&lt;/p&gt;
&lt;div style="text-align:left"&gt;&lt;p&gt;Входим в короткую позицию&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="/file/102890/01-10-2013-20-52-11.png" alt="" /&gt;&lt;/p&gt;
&lt;div style="text-align:left"&gt;&lt;p&gt;Результаты&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="/file/102893/01-10-2013-20-50-31.png" alt="" /&gt;
&lt;img src="/file/102891/01-10-2013-20-49-53.png" alt="" /&gt;
&lt;img src="/file/102892/01-10-2013-20-51-07.png" alt="" /&gt;&lt;/p&gt;
&lt;div style="text-align:left"&gt;&lt;p&gt;Вы можете сравнить результаты данного метода с результатами методов из прошлой статьи и убедиться, что данный метод намного лучше определяет точки входа чем предыдущие.
Конечно такую торговую систему не в коем случае не стоит использовать на реальной торговли, она годится лишь для тестирования различных методик определения пробоя и отбоя от уровня. Так как если кто не помнит мы строим уровень на основе вчерашней цены закрытия.&lt;/p&gt;
&lt;p&gt;Думаю, результаты будут намного лучше, если мы будем использовать нормальный алгоритм определения уровней. К примеру, камарилья или уровни мюррея. Также можно попробовать строить канал на основе волатильности что позволит ему более динамически подстраиваться под текущее состояние рынка.  Исходные коды данного метода, как и всегда лежат у нас на сервере. В свою очередь жду от вас предложений по улучшению данной методики.&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/320/</id>
    <title type="text">HFT изнутри</title>
    <published>2013-09-25T10:21:25Z</published>
    <updated>2013-09-25T10:22:19Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="Высокочастотная торговля" />
    <category term="HFT роботы" />
    <category term="Front Running" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;span style="font-size:24pt"&gt;Очень интересное видео про реально бота HFT, про опыт в алготрейдинге.&lt;/span&gt;
Смотрим, обсуждаем [biggrin]&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/Lg_0qDt1plM" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/337/</id>
    <title type="text">Торговая система на основе линий боллинджера</title>
    <published>2013-09-24T15:55:17Z</published>
    <updated>2013-09-24T15:55:17Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <category term="Торговые системы" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;Bollinger Bands&lt;/span&gt;&lt;/strong&gt;
Хотел бы Вас познакомить со стратегией, которую я называю &lt;strong&gt;BB&lt;/strong&gt; ну или &lt;strong&gt;Bollinger Bands&lt;/strong&gt; или Big Boobs[rolleyes] , вообщем название пришло само по себе.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Доходность:&lt;/strong&gt;&lt;/span&gt;
&lt;img src="/file/102327/profit.JPG" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;Характеристики:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Инструмент:склеенный фьючерс РТС (скачан с финама)&lt;/li&gt;
&lt;li&gt;Таймфрейм: 1 час&lt;/li&gt;
&lt;li&gt;Период тестирования: 01.04.2008 - 09.04.2013&lt;/li&gt;
&lt;li&gt;Проскальзывание:не учитывалось. Учитывался бар утренней сессии(10:00).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;Настраиваемые параметры:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Экспоненциальная скользящая средняя или EMA в народе. Две штуки - в коде &amp;quot;ma&amp;quot;(медленная) и &amp;quot;ma1&amp;quot;(быстрая).&lt;/li&gt;
&lt;li&gt;Индикатор ROC. В коде - &amp;quot;roc&amp;quot;&lt;/li&gt;
&lt;li&gt;Линия боллинджера(только верхняя). В коде - &amp;quot;BBUp&amp;quot;.&lt;/li&gt;
&lt;li&gt;Тейкпрофит.В коде - &amp;quot;_takeprofit&amp;quot;.&lt;/li&gt;
&lt;li&gt;Стоплосс. В коде - &amp;quot;_stoploss&amp;quot;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:green"&gt;Алгоритм для входа Покупка:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Ecли &lt;strong&gt;Close&lt;/strong&gt;(на текущем баре)&lt;strong&gt;&amp;gt;BBUUp&lt;/strong&gt;, то покупаем по рынку(покупка по открытию следующей свечи).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:green"&gt;Алгоритм для выхода Покупка:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Если &lt;strong&gt;Close&amp;lt;ma&lt;/strong&gt;, то продаем по рынку(по открытию следующего бара).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:red"&gt;Алгоритм для входа Продажа:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Если значение индикатора &lt;strong&gt;ROC&amp;lt;0&lt;/strong&gt; (на текущем баре) &lt;strong&gt;и&lt;/strong&gt; &lt;strong&gt;Close&lt;/strong&gt;(Цена закрытия свечки) &lt;strong&gt;&amp;lt; ma_1&lt;/strong&gt;, то продаём по рынку(продажа по открытию следующей свечи).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:red"&gt;Алгоритм для выхода Продажа:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Если &lt;strong&gt;Close&amp;gt;BBUp&lt;/strong&gt;, то покупка по рынку(по открытию следующего бара).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Стоплосс&lt;/strong&gt;(определенный процент от точки входа).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Тейкпрофит&lt;/strong&gt;(определнный процент от точки входа)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Код:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
/****************************************
Стратегия создана специально 
для обучения по Wealth-Lab от StockSharp
все подробности тут
http://stocksharp.com/lesson/wealth.aspx

StockSharp &amp;lt;&amp;lt;торговые роботы&amp;gt;&amp;gt;

*****************************************/
namespace WealthLab.Strategies
{
	public class MyStrategy : WealthScript
	{
		
		private StrategyParameter _bbPeriod;
		private StrategyParameter _bbdev;
		private StrategyParameter _malength;
		private StrategyParameter _malength1;
		private StrategyParameter _roc;
		
		//тейк профит и стоплосс
		private StrategyParameter _takeprofit;
		private StrategyParameter _stoploss;
		
		
		public MyStrategy()
		{
			 //индикаторы
			_bbPeriod = CreateParameter(&amp;quot;BBand Period&amp;quot;, 114, 10, 200, 10);
			_bbdev = CreateParameter(&amp;quot;BBand StdDev&amp;quot;, 1.86, 1, 4, 0.25);
			_malength = CreateParameter(&amp;quot;MA&amp;quot;, 137, 10, 200, 5);
			_malength1 = CreateParameter(&amp;quot;MA1&amp;quot;,83,10, 200, 5);
			_roc = CreateParameter(&amp;quot;ROC&amp;quot;,1,1,5, 1);
			//тейк профит и стоплосс
			_takeprofit = CreateParameter(&amp;quot;takeprpfit&amp;quot;,1.81,1, 10, 0.1);
			_stoploss = CreateParameter(&amp;quot;stoploss&amp;quot;,6.68,1,10, 0.1);
		}
		
		
		protected override void Execute()
		{
			//линия боллинджера
			DataSeries BBUp = BBandUpper.Series( Close, _bbPeriod.ValueInt, _bbdev.ValueInt );
			//скользящая средняя
			DataSeries ma = EMAModern.Series(Close, _malength.ValueInt);//60
			//индикатор roc
			DataSeries roc = ROC.Series(Close,_roc.ValueInt);//2
			//еще одна скользящая
			DataSeries ma_1 = EMAModern.Series(Close, _malength1.ValueInt);//115
			
            //Выводим графику ( BB,ROC)
			PlotSeries(PricePane, BBUp, Color.Green, LineStyle.Solid, 2 );
			ChartPane paneROC = CreatePane(75,true,true);
			PlotSeries(paneROC,roc,Color.SlateGray,LineStyle.Histogram,20);
			//Выводим графику (EMA)
			PlotSeries(PricePane,ma,Color.Red,LineStyle.Solid,2);
			PlotSeries(PricePane,ma_1,Color.Blue,LineStyle.Solid,2);

			for(int bar = 114; bar &amp;lt; Bars.Count; bar++)
			{
				if (IsLastPositionActive)//если активна позиция
				{
					Position p = LastPosition;
					//Выход из позиции 
					if (p.EntrySignal.Contains(&amp;quot;Sell&amp;quot;))
					{
						//уровень стопа для продажи
						double Stop = p.EntryPrice * (1 + _takeprofit.Value / 100);
						//уровень тейка для продажи
						double Target = p.EntryPrice * (1 - _stoploss.Value / 100);
						//выход по условию верхней линии Боллинджера
						if (CrossOver( bar, Close, BBUp ))
						{
							CoverAtMarket(bar + 1, p, &amp;quot;Exit_Sell_1&amp;quot;);
						}
						//условие на выход по стоплоссу(заведомо знаем что на первом баре невозможно выйти без проскальзывания)
						if(bar+1&amp;lt;Bars.Count&amp;amp;&amp;amp;Bars.Date[bar+1].TimeOfDay.Hours!=10)
						{
							CoverAtStop(bar + 1, p, Stop, &amp;quot;Exit_Sell_2&amp;quot;);
						}
						else if(Close[bar]&amp;gt;Stop)//если это первый бар, то выходим по его закрытию
						{
							CoverAtClose(bar+1,p,&amp;quot;&amp;quot;);
						}
						
						CoverAtLimit(bar+1, p, Target, &amp;quot;Exit_Sell_3&amp;quot;);
					}
					else if (p.EntrySignal.Contains(&amp;quot;Buy&amp;quot;))
					{
						if (CrossUnder(bar, Close, ma))
						{
							SellAtClose(bar + 1, p, &amp;quot;Exit_Buy&amp;quot;);
						}
					}					
				}
				else
				{
					//если значение Roc меньше нуля
					if (roc[bar] &amp;lt; 0)
					{
						//при пересечении цены закрытия свечи и скользящей
						if (CrossUnder(bar, Close, ma_1))
						{
							ShortAtMarket(bar + 1, &amp;quot;Sell&amp;quot;);
						}
					}
					//пересечение цены закрытия и линии боллинджера вверх
					else if (CrossOver( bar, Close, BBUp ))
					{
						BuyAtMarket(bar + 1, &amp;quot;Buy&amp;quot;);
					}

				}
			}
		}
	}
}


&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/335/</id>
    <title type="text">Торговая система Kaufman&amp;apos;s Adaptive Moving Average Binary Wave</title>
    <published>2013-09-24T15:54:34Z</published>
    <updated>2013-09-24T15:54:34Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <category term="Торговые системы" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;strong&gt;Описание&lt;/strong&gt;
KAMA - Адаптивная скользящая средняя была разработана Перри Кауфманом и впервые опубликована в его книге «Умный трейдинг» в 1995 году. Отличие адаптивной скользящей средней от ее сестер состоит в том, что период вычисления скользящей средней напрямую зависит от состояния рынка и динамики цен – при резких трендовых движениях период скользящей средней постепенно уменьшается для большей чувствительности, ну а в моменты затухания рынка и снижения активности период скользящей средней увеличивается, тем самым фильтруются незначительные колебания. В итоге, адаптивная скользящая средняя избавилась от извечных недостатков скользящих средних – запаздываний при увеличении периода и ложных срабатываний при его уменьшении.
Filter вычисляет разброс значений KAMA за определенный период с помощью стандартного отклонения. Если этот разброс не превышает определённую величину то используется предыдущее значения фильтра, если же оно превышает заданный порог происходит присвоение новой величины.&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using Community.Indicators; // ER is here

namespace WealthLab.Strategies
{
	public class KAMABinaryWave : WealthScript
	{
		private StrategyParameter paramPeriod;
		private StrategyParameter paramFilter;
		
		public KAMABinaryWave()
		{
			paramPeriod = CreateParameter(&amp;quot;Period&amp;quot;, 10, 1, 100, 1);
			paramFilter = CreateParameter(&amp;quot;Filter %&amp;quot;, 15, 1, 100, 1);
		}
		
		protected override void Execute()
		{
			int Periods = paramPeriod.ValueInt;
			double FilterPercent = paramFilter.Value;
			KAMA k = KAMA.Series( Close,Periods );
			ER e = ER.Series( Close,Periods );
			DataSeries bWave = new DataSeries(Bars,&amp;quot;KAMA Binary Wave&amp;quot;);
			
			DataSeries Filter = FilterPercent * StdDev.Series(k - (k&amp;gt;&amp;gt;1),Periods,StdDevCalculation.Sample);
			double AMALow = 0;
			double AMAHigh = 0;
			
			for(int bar = Periods; bar &amp;lt; Bars.Count; bar++)
			{
				AMALow = k[bar] &amp;lt; k[bar-1] ? k[bar] : AMALow;
				AMAHigh = k[bar] &amp;gt; k[bar-1] ? k[bar] : AMAHigh;
				
				if( ( k[bar] - AMALow ) &amp;gt; Filter[bar] )
					bWave[bar] = 1.0;
				else
					if( ( AMAHigh - k[bar] ) &amp;gt; Filter[bar] )
					bWave[bar] = -1.0;
				
				if (IsLastPositionActive)
				{
					if( bWave[bar] &amp;lt; 0 )
						SellAtMarket( bar+1,LastPosition );
				}
				else
				{
					if( bWave[bar] &amp;gt; 0 )
						BuyAtMarket( bar+1 );
				}
			}
			
			ChartPane bwPane = CreatePane( 30,true,true );
			PlotSeries( bwPane, bWave, Color.Blue, LineStyle.Solid, 1 );
			PlotSeries( PricePane, k, Color.Red, LineStyle.Solid, 1 );
		}
	}
}

&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/334/</id>
    <title type="text">Торговая система на основе индикатора ConnorsRSI</title>
    <published>2013-09-24T15:53:46Z</published>
    <updated>2013-09-24T15:53:46Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <category term="Торговые системы" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;ConnorsRSI&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102396/3.PNG" alt="" /&gt;&lt;/p&gt;
&lt;div style="text-align:left"&gt;&lt;p&gt;В этой статье я хотел бы рассказать вам о новом индикаторе, который был недавно реализован в &lt;strong&gt;Wealth lab&lt;/strong&gt;. Данный индикатор называется &lt;strong&gt;ConnorsRSI&lt;/strong&gt;.
Данный индикатор был разработан Ларри Коннорсом из Connors Research его доклад вы легко сможете найти в интернете по запросу
“Connors Research Trading Strategy Series An Introduction to ConnorsRSI”. И так давайте рассмотрим, что же из себя представляет индикатор &lt;strong&gt;ConnorsRSI&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ConnorsRSI&lt;/strong&gt; состоит из трех компонентов. Два из них используют расчеты, проводимые индикатором &lt;strong&gt;RSI&lt;/strong&gt;.
Третий компонент измеряет последние ценовые изменения по шкале от 0 до 100. В сочетании все эти три компонента формируют осциллятор, то есть индикатор,
который колеблется в диапазоне от 0 до 100 и указывает на уровень перекупленности или перепроданности. А сейчас, давайте вспомним, что из себя представляет &lt;strong&gt;RSI&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Индикатор &lt;strong&gt;RSI&lt;/strong&gt;сравнивает величину подъемов цены актива за последнее время с величиной ее падений и предоставляет эту информацию в виде числа находящегося
в диапазоне от 0 до 100. Единственный параметр данного индикатора это временной период, то есть количество свечек используемых в расчете индикатора.
В индикатор заложена простая идея:
Рост цены отражает силу быков, ее падение говорит о преимуществе медведей. Проше говоря, индикатор RSI считает долю бычьих белых свечей на выбранном интервале.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Если RSI&amp;gt;70%, то на рынке правят быки, цены растут.
Если же RSI&amp;lt;30%, то настроение определяют медведи, цены падают.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Ну а теперь давайте вернемся к нашему индикатору &lt;strong&gt;ConnorsRSI&lt;/strong&gt;. Как я уже говорил, ConnorsRSI состоит из 3 компонентов.&lt;/p&gt;
&lt;p&gt;Ценовой Импульс &lt;strong&gt;(Price Momentum)&lt;/strong&gt; - использует индикатор RSI для измерения уровней перекупленности и перепроданности рынка.
По умолчанию, &lt;strong&gt;ConnorsRSI&lt;/strong&gt;использует &lt;strong&gt;RSI&lt;/strong&gt;с периодом 3 применительно к ценам закрытия. Будем ссылаться на это значение как на RSI(Close,3).
Длительность Бычьего/Медвежьего Тренда: Когда  текущая цена закрытия ниже предыдущей, это значит, что рынок закрылся с понижением. Если наоборот,
то рынок закрылся с повышением. Исследования &lt;strong&gt;Connors Research&lt;/strong&gt; показали, что чем дольше длиться медвежий тренд (последовательность из нисходящих цен закрытия),
тем более сильным будет рост, когда рынок развернется. То же самое можно сказать и о бычьем тренде.&lt;/p&gt;
&lt;p&gt;Иными словами, длительность тренда – это также индикатор перекупленности  и перепроданности рынка.
Но проблема в том, что теоретически она неограниченна во времени. Хотя зачастую мы можем установить некоторые искусственные границы, основываясь на прошлом.
К примеру, изучив исторические данные, можно заметить, что на определенном инструменте было очень мало случаев,
когда последовательность из нисходящих или восходящих ценовых баров длилась больше 20 баров.
Но это еще не дает нам значения индикатора, которое вписывается в диапазон от 0 до 100.&lt;/p&gt;
&lt;p&gt;Выход из данной ситуации состоит из двух шагов. Сначала мы подсчитываем количество последовательных баров, в течение которых цена двигалась в одном направлении.
То есть используем положительные значения для бычьего тренда и отрицательные  - для медвежьего. К примеру давайте посмотрим на таблицу.&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102394/1.PNG" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Цена закрытия второго бара выше, чем цена закрытия первого бара, поэтому мы наблюдаем бычий тренд, который длится один бар.
На третьем баре цена снова закрывается выше предыдущей. Теперь наш тренд длится уже два бара. На четвертом баре цена закрывается ниже цены предыдущего бара,
давая нам медвежий тренд длительностью в один бар (тут мы указываем негативное значение: -1). Медвежий тренд продолжается на 5 и 6 баре (-2 и -3).
На седьмом баре цена закрытия остается неизменной, поэтому показатель продолжительности тренда возвращается к 0.
На восьмом баре цена закрытия снова растет, тем самым увеличивая показатель продолжительности тренда до 1.&lt;/p&gt;
&lt;p&gt;Следующая часть в решения проблемы заключается в способе применения расчетов RSI к последовательности значений длительности тренда (о которой только что шла речь).
По умолчанию, для этой части расчетов для ConnorsRSI используется период 2. Будем обозначать его как RSI(Streak,2).
В результате мы получаем следующую зависимость:
чем больше продолжительность бычьего тренда, тем ближе к 100 будет значение RSI(Streak,2), и наоборот, чем больше продолжительность нисходящего тренда,
тем ближе к 0 будет значение RSI(Streak,2). Теперь у нас есть два показателя:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;RSI(Close,3)&lt;/li&gt;
&lt;li&gt;RSI(Streak,2)
Оба используют шкалу от 0 до 100. Которая указывает на перекупленность или перепроданность рынка.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Относительная Величина Изменения Цены: Это последний компонент индикатора ConnorsRSI. Он измеряет размер текушего ценового изменения относительно предыдущих цен.
Для этого используется градация в процентах (Percent Rank). Конкретное значение указывает на процент прошлых значений, которые меньше текущего значения.
В данном случае мы измеряем расчеты не в рублях, а в процентах от цены предыдущего бара.
Этот процентный показатель прибыли или убытка рассматривается как однодневный возврат средств.
Если, цена закрытия предыдущего бара была 80.00, а цена закрытия текущего равна 81.60, то данный показатель составит: (81.60 ‐ 80.00) / 80.00 = 0.02 = 2.0%.
Чтобы определить значение Percent Rank, нам нужно выбрать временной период.&lt;/p&gt;
&lt;p&gt;Значением Percent Rank – это сумма значений за выбранный период, которые меньше текущего значения, деленное на общее количество значений за данный период.
Например, если мы выбрали период 20 баров, то нужно сравнивать текучее 2.0% значение с аналогичными значениями для всех 20 баров выбранного периода.
Давайте предположим, что 3 из 20 значений меньше 2.0%. В этом случае  Percent Rank будет рассчитываться следующим образом:
Percent Rank = 3 / 20 = 0.15 = 15%
Временной период Percent Rank по умолчанию равен 100. Обозначается как PercentRank(100).&lt;/p&gt;
&lt;p&gt;Мы сравниваем текуший процентный показатель с аналогичными показателями для всех 100 баров.
Конечный расчет индикатора ConnorsRSI заключается в простом вычислении среднего значения трех компонентов.
Формула с параметрами по умолчанию выглядит следующим образом: &lt;strong&gt;ConnorsRSI(3,2,100) = [ RSI(Close,3) + RSI(Streak,2) + PercentRank(100) ] / 3&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;В результате у нас получился индикатор, который эффективнее любого из трех компонентов, используемых отдельно.
У &lt;strong&gt;ConnorsRSI&lt;/strong&gt;есть преимущество перед использованием трех его компонентов как 3 самостоятельных индикаторов.
Когда мы используем 3 индикатора для генерации торговых сигналов, то обычно устанавливаем для каждого из них определенный целевой уровень.
Чтобы появился сигнал, все три индикатора должны достичь этих уровней.
Однако индикатор &lt;strong&gt;ConnorsRSI&lt;/strong&gt;основан на их усредненном значении. Тем самым он позволяет сильному сигналу от одного, частично компенсировать слабый сигнал от другого.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Доходность:&lt;/strong&gt;&lt;/span&gt;
&lt;img src="/file/102395/2.PNG" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;Характеристики:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Инструмент:обыкновенные акции Сбербанка (скачан с финама)&lt;/li&gt;
&lt;li&gt;Таймфрейм: 1 час&lt;/li&gt;
&lt;li&gt;Период тестирования: 14.05.2008 - 10.05.2013&lt;/li&gt;
&lt;li&gt;Проскальзывание:не учитывалось. Комиссия 0.05 на сделку.&lt;/li&gt;
&lt;li&gt;Комиссия 0.05 на сделку.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;Настраиваемые параметры:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Oversold Level 29&lt;/li&gt;
&lt;li&gt;Overbought Level 32&lt;/li&gt;
&lt;li&gt;RSI Period 20&lt;/li&gt;
&lt;li&gt;Streak Period 25&lt;/li&gt;
&lt;li&gt;PercentRank Period 29&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:green"&gt;Алгоритм для открытия длинной позиции:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Ecли ConnorsRSI(на текущем баре)пересекает уровень перепроданности снизу вверх, то покупаем по рынку(покупка по открытию следующей свечи).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:green"&gt;Алгоритм для закрытия длинной позиции:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Если на текушем баре обнаружен свечной паттерн LongBlackLine, то продаем по рынку(по открытию следующего бара).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:red"&gt;Алгоритм для входа в короткую позицию:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Ecли ConnorsRSI(на текущем баре)пересекает уровень перекупленности сверху вниз, то продаем по рынку(по открытию следующего бара).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;&lt;span style="color:red"&gt;Алгоритм для закрытия короткой позиции:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
Если на текушем баре обнаружен свечной паттерн LongWhiteLine, то продаем по рынку(по открытию следующего бара).&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Код:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using Community.Indicators;
using WealthLab.Rules.Candlesticks;
/****************************************
Стратегия создана специально 
для обучения по Wealth-Lab от StockSharp
все подробности тут
http://stocksharp.com/lesson/wealth.aspx

StockSharp &amp;lt;&amp;lt;торговые роботы&amp;gt;&amp;gt;

*****************************************/
namespace WealthLab.Strategies
{
	public class MyStrategy : WealthScript
	{
		StrategyParameter connorsRSIOversoldLevel;
		StrategyParameter connorsRSIOverboughtLevel;
		StrategyParameter connorsRSIPeriod;
		StrategyParameter connorsRSIStreakPeriod;
		StrategyParameter connorsRSIPercentRankPeriod;
		public MyStrategy()
		{
			connorsRSIOversoldLevel = CreateParameter(&amp;quot;Oversold Level&amp;quot;, 30, 1, 30, 1);
			connorsRSIOverboughtLevel = CreateParameter(&amp;quot;Overbought Level&amp;quot;, 35, 30, 60, 1);
			connorsRSIPeriod = CreateParameter(&amp;quot;RSI Period&amp;quot;, 22, 2, 30, 1);
			connorsRSIStreakPeriod = CreateParameter(&amp;quot;Streak Period&amp;quot;, 2, 2, 30, 1);
			connorsRSIPercentRankPeriod = CreateParameter(&amp;quot;PercentRank Period&amp;quot;, 100, 2, 100, 1);
			
		}
		
		protected override void Execute()
		{
			bool[] bearishLongBlackLine;
			CandlePattern.BearishLongBlackLine(this, &amp;quot;-Long Black Line&amp;quot;, true, out bearishLongBlackLine);
			bool[] bullishLongWhiteLine;
			CandlePattern.BullishLongWhiteLine(this, &amp;quot;+Long White&amp;quot;, true, out bullishLongWhiteLine);
			
			ConnorsRSI cr = ConnorsRSI.Series( Close, connorsRSIPeriod.ValueInt, connorsRSIStreakPeriod.ValueInt, connorsRSIPercentRankPeriod.ValueInt);
			
			ChartPane paneRSI = CreatePane(75,true,true);
			PlotSeries(paneRSI, cr, Color.Navy, LineStyle.Solid, 2);
			DrawHorzLine(paneRSI, connorsRSIOversoldLevel.Value, Color.Red, LineStyle.Solid, 1);
			DrawHorzLine(paneRSI, connorsRSIOverboughtLevel.Value, Color.Green, LineStyle.Solid, 1);
			
			for(int bar = 20; bar &amp;lt; Bars.Count; bar++)
			{
				if (IsLastPositionActive)
				{
					if (LastPosition.PositionType == PositionType.Short)
					{
						if (bullishLongWhiteLine[bar])
						{
							CoverAtMarket(bar + 1, LastPosition);
						}
					}
					else
					{
						if (bearishLongBlackLine[bar])
						{
							SellAtMarket(bar + 1, LastPosition);
						}
					}
				}
				else
				{
					if (CrossOver(bar, cr, connorsRSIOversoldLevel.Value))
					{
						BuyAtMarket(bar + 1, &amp;quot;&amp;quot;);
					}
					if (CrossUnder(bar, cr, connorsRSIOverboughtLevel.Value))
					{
						ShortAtMarket(bar + 1, &amp;quot;&amp;quot;);
					}
				}
			}
		}
	}
}


&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;P.S.&lt;/strong&gt;&lt;/span&gt;
Цель данной статьи была в том что бы донести до вас сведения о существовании такого интересного индикатора как СonnorsRSI.
В представленной стратегии есть большое пространство для манёвра по улучшению её характеристик.
К примеру, вы можете заменить код для закрытия открытых позиций на что-нибудь другое или же можно добавить какой либо фильтр для отсечения убыточных сделок.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/321/</id>
    <title type="text">Методы определения истинности пробоя уровня</title>
    <published>2013-09-24T15:48:29Z</published>
    <updated>2013-09-24T15:48:29Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <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/forum/323/Struktura-torghovoi-sistiemy-ili-anatomiia-robotov/"&gt;статье&lt;/a&gt;, я затронул тему создания торговых роботов из различных блоков, комбинируя которые между собой мы создаём робота. Сначала я хотел рассказать про уровни, но начав писать статью на эту тему, я столкнулся с вопросом, как определить истинный пробой или отскок от уровня и поэтому я решил сначала осветить именно эту тему, а уже потом приступить к уровням.&lt;/p&gt;
&lt;p&gt;В качестве сетапа для открытия позиции, мы будем использовать пробой вчерашней цены закрытия. Для выхода будем использовать выход люстры.
В чистом виде стратегия выглядит так.
&lt;img src="/file/102658/1.png" alt="" /&gt;
&lt;span style="font-size:24pt"&gt;Результаты:&lt;/span&gt;
&lt;img src="/file/102663/2.png" alt="" /&gt;
Тестировать методы пробоя уровня мы будем на сбербанке за последний год с таймфреймом в 15 минут. И в качестве комиссии выставим такие значения.
&lt;img src="/file/102659/0.png" alt="" /&gt;
И так существуют огромное число способов определения пробоя уровня.  Если вы знаете дополнительные способы определения пробоя или отбоя от уровня, пожалуйста оставляйте их в комментариях с удовольствием закодирую и протестирую. А также поделюсь результатами. Также каждая стратегия подвергнется оптимизации методом полного перебора для получения наиболее подходящий параметров.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Утверждение первое&lt;/span&gt;
Истинность пробоя можно определить по объему, то есть, если пробой прошел на больших объемах нежели предыдущие бары, нужно считать его истинным. Тут конечно можно наколдовать массу кода. К примеру взять скользящую построенную на объёме или какой-либо другой индикатор. Но мы пойдём самым лёгким путём и просто будем сравнивать текущий объём с предыдущим, и если текущий объём меньше предыдущего то мы не входим в сделку считая такой сетап некорректным.
&lt;img src="/file/102661/volume.png" alt="" /&gt;
Результаты:
&lt;img src="/file/102662/volume-per.png" alt="" /&gt;
Как вы видите результаты хуже чем у эталонной стратегии. Думаю если бы мы взяли иной способ работы с обьёмами результат был бы лучше. или же можно попробовать использовать несколько баров для сравнения, а не один.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Утверждение второе&lt;/span&gt;
Обычно если пробой состоялся цена от уровня пробоя уходит на приличное расстояние. Здесь встает вопрос что считать значительным расстоянием? Будем считать, что свечка, которая пробила уровень должна быть больше двух предыдущих свечей.
&lt;img src="/file/102664/ver-2.png" alt="" /&gt;
&lt;span style="font-size:24pt"&gt;Результаты:&lt;/span&gt;
&lt;img src="/file/102665/ver-2-per.png" alt="" /&gt;
У второго варианта дела тоже обстоят не очень. Хотя казалось бы здесь мы имеем дело по сути с импульсом. но видимо большинство крупных игроков просто гасят эти импульсы на корню и следовательно такой подход нужно использовать в отбойной стратегии. Или попробовать какой либо другой индикатор для определения импульса к примеру ADX.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Утверждение третье&lt;/span&gt;
Консервативный вариант если цена пересекает не сам уровень а отложенный от него канал на заранее заданный процент.
&lt;img src="/file/102666/ver-3.png" alt="" /&gt;
&lt;span style="font-size:24pt"&gt;Результаты:&lt;/span&gt;
&lt;img src="/file/102667/ver-3-per.png" alt="" /&gt;
&lt;img src="/file/102668/ver-3-win.png" alt="" /&gt;
Данный способ обогнал эталонный вариант. Думаю это связано с тем что здесь происходит отсев большинства ложных пробоев. Которые гасятся крупными игроками и следовательно данный подход следует развивать и дальше, у меня есть пара идей как это сделать, возможно расскажу о них в следующих статьях.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Утверждение четвертое&lt;/span&gt;
Можно определить пробой уровня, если произошло пересечение уровня и первая свеча и вторая закрылись выше уровня.
&lt;img src="/file/102669/ver-4.png" alt="" /&gt;
&lt;span style="font-size:24pt"&gt;Результаты:&lt;/span&gt;
&lt;img src="/file/102670/ver-4-per.png" alt="" /&gt;
&lt;img src="/file/102671/ver-4-win.png" alt="" /&gt;
Ну эти результаты совсем не куда не годятся. даже затрудняюсь их объяснить. Может быть это связано с тем что современные рынки очень нестабильны и к моменту срабатывания сетапа его сила уже угасает. Возможно переход на меньший временной интервал поможет данному методу. Но на это могут ответить только тесты.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Утверждение пятое&lt;/span&gt;
Пробоем считается касание уровня тенью свечи
&lt;img src="/file/102672/ver-5.png" alt="" /&gt;
&lt;span style="font-size:24pt"&gt;Результаты:&lt;/span&gt;
&lt;img src="/file/102673/ver-5-per.png" alt="" /&gt;
&lt;img src="/file/102674/ver-5-win.png" alt="" /&gt;
Данный метод показал результаты чуть хуже эталонных. Но думаю введение дополнительного фильтра может существенно улучшить их. Как вы думаете какой фильтр можно было бы добавить?&lt;/p&gt;
&lt;p&gt;Как и всегда, все коды доступны у нас на сервере. Скачивайте, тестируйте, модифицируйте и делитесь результатами. Давайте соберём коллекцию, всех возможных методов пробоя уровня. Следующая статья будет посвящена работе с отбоем от уровня. Жду ваших комментариев и предложений.&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/244/</id>
    <title type="text">Что такое алготрейдинг? (вебинар)</title>
    <published>2013-09-23T17:02:09Z</published>
    <updated>2013-09-23T17:02:09Z</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;strong&gt;робот — это вовсе не мифическая программа&lt;/strong&gt;, которая черпает деньги с рынка, отправляя при этом свои сигналы настолько быстро, что обычному трейдеру никак с этим не совладать.&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/ADpXgCxjDPU" 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;strong&gt;План занятия:&lt;/strong&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;Примеры торговых роботов на софте StockSharp (S#).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Для участия в вебинаре достаточно &lt;strong&gt;26 сентября в 20:00&lt;/strong&gt; перейти по &lt;a href="http://meet29954100.adobeconnect.com/free/" rel="nofollow" target="_blank"&gt;ссылке&lt;/a&gt; и авторизоваться в роли гостя, указав свое имя.&lt;/p&gt;
&lt;p&gt;Хотите узнать всю правду об алготрейдинге? Тогда не пропустите трансляцию!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/243/</id>
    <title type="text">Yahoo и  Google источник для Гидры.</title>
    <published>2013-09-17T17:35:45Z</published>
    <updated>2013-09-17T17:35:45Z</updated>
    <author>
      <name>Kazai Mazai</name>
      <uri>https://stocksharp.ru/users/5954/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Hydra" />
    <category term="S#.Data" />
    <content type="html">&lt;p&gt;Я просто не могу не поделиться новой user-friendly версией.+)&lt;/p&gt;
&lt;p&gt;Источник поддерживает закачку &lt;strong&gt;daily&lt;/strong&gt; свечек с &lt;strong&gt;Yahoo и Google finance.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Поддерживается Гидра версии &lt;strong&gt;4.1.16.1&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Установка&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Идем на &lt;a href="https://github.com/KazaiMazai/YahooGoogleSource-for-StockSharp-Hydra" target="_blank"&gt;ГитХаб&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Обращаем внимание на то, что б была включена ветка &lt;strong&gt;&amp;quot;master&amp;quot;&lt;/strong&gt; и жмем &lt;strong&gt;&amp;quot;download zip&amp;quot;.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102546/1.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;После того, как скачали, идем в архиве в папку &lt;strong&gt;bin\Release&lt;/strong&gt; и ищем там файлик &lt;strong&gt;StockSharp.Hydra.YahooGoogle.dll&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Копируем его в &lt;strong&gt;Hydra\Plugins&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Запускаем Гидру. В списке Источников должен был появиться &lt;strong&gt;Yahoo+Google&lt;/strong&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;/p&gt;
&lt;p&gt;Временной отступ - для обычного режима. При отступе равном, например, 50, будут качаться все отсутствующие данные за последние 50 дней.&lt;/p&gt;
&lt;p&gt;Полезно, например, если вы считаете какой-нибудь индикатор за последние 50 дней, а все что раньше, вас не интересует.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Инструменты&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;При первом запуске, в главной директории Hydra появится текстовый файл &lt;strong&gt;YahooGoogleSourceTickers.txt&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Записываем в него id необходимых инструментов через пробел, например:&lt;/p&gt;
&lt;p&gt;AAPL@SMART SPY@SMART APOL@NASDAQ GOOG@SMART&lt;/p&gt;
&lt;p&gt;&lt;em&gt;SMART это умная система роутинга ордеров по ECN'ам. Типа как exchange board. Можно не обращать внимания.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Для импорта инструментов в гидре жмем добавить.&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102547/2.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102548/3.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Инструменты спарсятся и добавятся в базу.&lt;/p&gt;
&lt;p&gt;Перед началом закачки нужно не забыть добавить желаемые данные - &lt;strong&gt;свечки 1 DAY&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ошибки&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Id инструментов, по которым по каким-то причинам не удалось загрузить данные, или были получены битые данные, записываются в файл &lt;strong&gt;ErrorTickers.txt&lt;/strong&gt; в корневой директории Гидры.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/323/</id>
    <title type="text">Структура торговой системы или анатомия роботов</title>
    <published>2013-09-17T13:26:30Z</published>
    <updated>2013-09-17T13:26:30Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="вебинар" />
    <category term="wealth-lab" />
    <category term="S#" />
    <category term="Торговые системы" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;span style="color:green"&gt;&lt;strong&gt;&lt;span style="font-size:24pt"&gt;Теория шаблона идеи торговой системы&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;
&lt;em&gt;Собери своего робота из нужных пазлов!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;По сути построение торговой системы практически всегда сводится к нахождению оптимального &lt;strong&gt;входа&lt;/strong&gt; и &lt;strong&gt;выхода&lt;/strong&gt;, конечно есть и более изящные системы, но в основном все сводиться к этому!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Давайте выделим основные, самые важные блоки торговой систем:&lt;/strong&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;Задача алготрейдера всегда сводится к постоянному поиску наиболее подходящих комбинаций для этих трех основных блоков.
В этом уроке собраны все самые популярные методы для перебора блоков.&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/F5nRkoq4Iow" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;Чтобы построить свою торговую систему, нужны только простейшие знания математики. Вы выделяете определенные блоки входа и выхода, который понравились Вам, а в дальнейшем отталкиваетесь от них, дорабатывая их до совершенства!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;А вот и наши блоки, которые мы упорядочили на нашем &lt;a href="http://stocksharp.com/forum/3885/Onlain-chaty--komandnaia-rabota--proiekty/"&gt;сервере&lt;/a&gt; по обучению (для &lt;a href="http://stocksharp.com/lesson/wealth/"&gt;учеников&lt;/a&gt; и подписка &lt;a href="http://stocksharp.com/lesson/bonus/"&gt;EduLive&lt;/a&gt;). Блоки постоянно добавляются, расширяются и модернизируются:&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102638/1.png" alt="" /&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/329/</id>
    <title type="text">Обзор визуалайзера Analysis Series для платформы Wealth Lab (видео-урок)</title>
    <published>2013-09-10T23:31:20Z</published>
    <updated>2013-09-10T23:31:20Z</updated>
    <author>
      <name>Валентин Мирошниченко</name>
      <uri>https://stocksharp.ru/users/6156/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="wealth-lab" />
    <category term="Analysis Series" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;iframe src="https://www.youtube.com/embed/vcPtVrDjypo" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;span style="font-size:36pt"&gt;&lt;strong&gt;Тема занятия&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="text-align:left"&gt;&lt;p&gt;В данном видео-уроке, мы рассмотрим с вами, такой слабо освещённый визуалайзер для платформы &lt;a href="http://stocksharp.com/lesson/wealth.aspx"&gt;Wealth lab&lt;/a&gt; как &lt;a href="http://www2.wealth-lab.com/WL5Wiki/PVAnalysis.ashx" rel="nofollow" target="_blank"&gt;Analysis Series&lt;/a&gt;. Данный визуалайцзер поможет нам подобрать оптимальное значение фильтра, для нашей торговой системы. Не используя при этом большое количество вычислительных мощностей и не рискую нарваться при этом на переоптимизацию.&lt;/p&gt;
&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/332/</id>
    <title type="text">S#. Вебинар для алготрейдеров на Америке (Nyse)</title>
    <published>2013-09-10T23:29:28Z</published>
    <updated>2013-09-10T23:29:28Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="вебинар" />
    <category term="S#.Api" />
    <category term="Fusion" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;Все особенности программирования торговых роботов на Nyse!
&lt;a href="http://stocksharp.com/products/pricing/"&gt;DMA&lt;/a&gt; платформа Fusion &lt;a href="http://stocksharp.com/doc/?topic=html/89c3f13d-2602-446a-8c3d-5615b6f901b9.htm"&gt;(BlackWood)&lt;/a&gt;&lt;/p&gt;
&lt;iframe src="https://player.vimeo.com/video/69308006" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;em&gt;Видео уже подготовлено и отформатировано!&lt;/em&gt;&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/327/</id>
    <title type="text">S#. Автоматическая торговля (вебинар)</title>
    <published>2013-09-10T23:23:01Z</published>
    <updated>2013-09-10T23:23:01Z</updated>
    <author>
      <name>Самунджян Артем</name>
      <uri>https://stocksharp.ru/users/675/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="вебинар" />
    <category term="S#.Studio" />
    <category term="бесплатно" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;Вебинар про &lt;a href="http://stocksharp.com/products/studio/"&gt;S#.Studio&lt;/a&gt; (1 час)!&lt;/p&gt;
&lt;p&gt;Запись:&lt;/p&gt;
&lt;iframe src="https://player.vimeo.com/video/71350329" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;Краткий план:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Общее описание всего функционала S#.Studio&lt;/li&gt;
&lt;li&gt;Создаем и запускаем простого робота&lt;/li&gt;
&lt;li&gt;Тестируем торгового робота&lt;/li&gt;
&lt;li&gt;Анализируем полученные результаты&lt;/li&gt;
&lt;/ol&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/324/</id>
    <title type="text">Лекции Твардовского по опционам</title>
    <published>2013-08-28T19:06:33Z</published>
    <updated>2013-08-28T19:06:33Z</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;p&gt;Систематизирую их, чтобы можно было найти ссылки в одном месте. У самого айти такой страницы не нашел, поэтому искал самостоятельно через Ютюб.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:36pt"&gt;&lt;strong&gt;Лекция номер 1. Основные понятия.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/AeSCpfGL8B4" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;ol&gt;
&lt;li&gt;Понятие срочного контракта. Базисный или подлежащий актив (БА)&lt;/li&gt;
&lt;li&gt;Понятие опциона (Option)&lt;/li&gt;
&lt;li&gt;Понятие опциона колл (CALL)&lt;/li&gt;
&lt;li&gt;Понятие опциона пут(PUT)&lt;/li&gt;
&lt;li&gt;Покупатель и продавец. Держатель и подписчик&lt;/li&gt;
&lt;li&gt;Американский и европейский стили опционов&lt;/li&gt;
&lt;li&gt;Исполнение опционов.&lt;/li&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;&lt;span style="font-size:36pt"&gt;&lt;strong&gt;Лекция номер 2. Внутренняя стоимость опциона. Факторы, влияющие на ценообразование.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/YZnJDnL-lkA" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;ol&gt;
&lt;li&gt;График выплат и внутренняя стоимость опциона.&lt;/li&gt;
&lt;li&gt;Понятия «на деньгах» (atthemoney, ATM), «вне денег» (outofthemoney, OTM), «в деньгах» (inthemoney, ITM), глубоко в деньгах, глубоко вне денег.&lt;/li&gt;
&lt;li&gt;Страховка -- дело добровольное. Страхователь или страховщик? Сколько стоит страховка?&lt;/li&gt;
&lt;li&gt;Основные факторы, влияющие на ценообразование опциона.&lt;/li&gt;
&lt;li&gt;Волатильность -- что это за зверь? Три вида волатильности: HV, IV, FV&lt;/li&gt;
&lt;li&gt;Формула Блэка -- Шоулза. Формула Блэка&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="font-size:36pt"&gt;&lt;strong&gt;Лекция номер 3. Греки и волатильность.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/I2Bet-EH70w" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&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;/li&gt;
&lt;li&gt;Зависимость премий от волатильности. Vega&lt;/li&gt;
&lt;li&gt;Зависимость от процентных ставок. Ро.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="font-size:36pt"&gt;&lt;strong&gt;Лекция номер 4. Учимся читать рынок.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;iframe src="https://www.youtube.com/embed/uZvn_vilxxo" width="640" height="390" frameborder="0" allowfullscreen&gt;&lt;/iframe&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;/li&gt;
&lt;li&gt;Put-Call ratio и распределение длинных и коротких позиций по рынку.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Еще есть лекция номер 5 - &lt;strong&gt;Мифы опционной торговли&lt;/strong&gt;, но она доступна только клиентам брокера.&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/328/</id>
    <title type="text">Особый мани-менеджмент, или фиксированно-пропорциональный метод</title>
    <published>2013-07-25T17:41:09Z</published>
    <updated>2013-07-25T17:41:09Z</updated>
    <author>
      <name>Николай_Флёров</name>
      <uri>https://stocksharp.ru/users/6456/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Для начинающих" />
    <category term="Торговые роботы" />
    <category term="мани менеджмент" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;img src="/file/102614/0_b59ef_7f86a721_XL.png" alt="Метод Райана Джонса" /&gt;&lt;/p&gt;
&lt;p&gt;Многие опытные и публичные трейдеры говорят, что управление капталом может погубить прибыльную стратегию. Некоторые даже говорят,  что можно из плохой стратегии сделать хорошую с помощью мани-менеджмента.
Мое мнение - важно не бояться просадок, а реагировать на них.
И желательно реагировать по заранее намеченному плану, а не паникой, жадностью и другими прелестями человеческой психологии.&lt;/p&gt;
&lt;p&gt;Почему нормальные люди не торгуют на все плечо?
Все просто - чем больше позиция на которую мы входим, тем больше возможный убыток, тем более, если у нас прибыльных сделок только 20-30% от общего числа сделок.
А если попадем в серию убыточных сделок, то счету не поздоровится.&lt;/p&gt;
&lt;p&gt;Все слышали фразу типа &amp;quot;Давай прибыли течь, убытки уменьшай&amp;quot;. Но мало кто задумывался, что это универсальной правило, применимое не только к сделке, но и к управлению капиталом.
Некоторые считают, что именно наращивание позиции в звездные моменты стратегии и уменьшение позиций во время глубоких просадок - единственно правильное решение.
В качестве примера, трендовые стратегии в последний квартал 2012 года. Никто не кричал &amp;quot;Яхуу, беру на все..&amp;quot; наоборот, многие вообще переждали этот период.&lt;/p&gt;
&lt;p&gt;После того, как мы провели оптимизацию, проверили стратегию на устойчивость, как могли - максимальная просадка по стратегии к примеру - 15%. Какую просадку мы можем ожидать по счету? Правильно, ожидаемая просадка всегда должна составлять 100%. Это сделано таким образом, мы всегда должны подготовить план на случай экстренной ситуации.
Что может привести наш счет к такому плачевному состоянию? Ответ, затянувшаяся череда убыточных сделок, ну и конечно - большое плечо.&lt;/p&gt;
&lt;p&gt;Пример, описанный во всех книгах наглядно показывает: заработав 25% к капиталу и проиграв 20%, мы оказываемся даже в минусе, за счет комиссии, проскальзывания, оплаты PlazaII, инфраструктуры, нашего вложенного времени, которое могли бы потратить на другие цели. Объяснение этому процессу довольно простое - процент прибыльной и убыточной сделки рассчитывается по разному значению капитала на счете. (После прибыльной сделки капитал увеличился, а значит и возрос риск).
И чем больше плечо, тем убыток от ошибки пересчета больше.
Как же быть?&lt;/p&gt;
&lt;p&gt;Товарищ Райан Джонс говорит, что все уже сделал за нас и написал про это книгу, содержащую &amp;quot;волшебную&amp;quot; формулу с использованием которой мы можем одновременно работать и с плечом и не боятся длинной череды убыточных сделок.
Ознакомимся с не подробнее.
&lt;img src="/file/102591/0_b59d6_e24cb2b0_XL.png" alt="Формула для расчета уровней по которым уже рассчитываем количество контрактов" /&gt;&lt;/p&gt;
&lt;p&gt;Мани-менеджмент Мистера Джонса называется Фиксированно-Пропорциональный метод. В системе мани-менеджментов он занимает следующую позицию:
&lt;img src="/file/102592/0_b59d7_fb2fb612_XL.png" alt="Схема разновидностей манименеджмента" /&gt;&lt;/p&gt;
&lt;p&gt;Фиксированно-Фракционный метод его не устроил по причине того, что, как он пишет  &amp;quot;этот метод требует неравномерных доходов при различном числе контрактов&amp;quot;. Если проще, то Ф-Ф метод требует с 10000 доход 10000 с одного контракта для перехода с одного уровня на другой, затем ту же сумму, но уже с 2-х контрактов, то есть по 5000 с контракта и так далее. В связи с этим, чтобы начать торговать более-менее крупной суммой уходит довольное большое количество времени, хотя в это время мы как раз могли хорошо заработать, ну или потерять.&lt;/p&gt;
&lt;p&gt;Суть Фиксированно-пропорционального метода:
&lt;img src="/file/102615/0_b59f5_fbb3aeff_XL.png" alt="Визуальное представление уровней фиксированно-пропорционального метода" /&gt;&lt;/p&gt;
&lt;p&gt;Данные уровни - это точки перехода от одного количества контрактов к другому в большую или меньшую сторону. Увеличение и уменьшение количества контрактов зависит от того, упал наш капитал или вырос и насколько он вырос. Как правило, непосредственно от последней сделки. Если мы получили прибыль, количество контрактов увеличивается, если получили убыток -  уменьшается.
&lt;img src="/file/102594/0_b59d9_7182ad74_L.png" alt="Как работает уровень" /&gt;&lt;/p&gt;
&lt;p&gt;Вот, наглядный пример, как такие уровни можно было бы рассчитать:
&lt;img src="/file/102593/0_b59d8_abce999c_L.png" alt="Расчет уровней в ручном режиме" /&gt;
Delta  -  представлена в виде % от капитала, но по сути - его можно рассчитать по-разному, главное, чтобы число это было неизменным.
10000 - начальный капитал&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Проблемы написания такого мани-менеджмента в Wealth-lab:&lt;/strong&gt;
Дело в том, что желательно мани-менеджмент в Wealth-lab прописывать в виде такого элемента, как PosSezer - это специальный компонент с помощью которого можно применить мани-менеджмент любой сложности к стратегии. В связи  с этим я столкнулся с несколькими проблемами:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;я не умел еще писать PosSizer&lt;/li&gt;
&lt;li&gt;использование готовых PosSizer- это черный ящик, если досконально не разбирать их код&lt;/li&gt;
&lt;li&gt;их нет в StockSharp, а значить тестирование с использованием PosSizer может отличаться от подобного мани-менеджмента, написанного на S#, для реальной торговли.
Поэтому я приступил к написанию универсального метода.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Дальше больше:
В Wealth-lab размер позиции определяется, уже после того, как стратегия просчитала все позиции в режиме Raw Profit Mode:
&lt;img src="/file/102598/0_b59de_6fc9ab49_XL.png" alt="Вырезка из Quick Ref" /&gt;&lt;/p&gt;
&lt;p&gt;То есть не в реальном времени, а накладывая мани-менеджмент, комиссии и статистические данные, уже на готовые сделки. Мне же было нужно размер позиции менять в зависимости от изменений самой эквити. Решением стало создать свою собственную эквити , рассчитывая ее из эквити по каждой сделке.&lt;/p&gt;
&lt;p&gt;И в заключении:
Wealth написан на C#, значит мы можем в работе своей использовать всю мощь этого языка, но даже опытные разработчики могут задаться вопросом работает ли он например с System.Linq. Я бы не задавался бы этим вопросом, если бы мне не пришлось с ним столкнуться. Зная точно, что Linq должен работать в Wealth, я не мог понять почему все-таки у меня получается ошибка.
А вот и решение:
&lt;img src="/file/102596/0_b59dc_61a3a5af_XL.png" alt="Шаг № 1" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102595/0_b59db_8090363b_XL.png" alt="Шаг № 2" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102597/0_b59dd_fc61814f_XL.png" alt="Шаг № 3" /&gt;&lt;/p&gt;
&lt;p&gt;Далее идем по этому вот пути:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319&lt;/p&gt;
&lt;p&gt;Находим там System.Core:
&lt;img src="/file/102599/0_b59df_e9ad04d5_XL.png" alt="Шаг № 4" /&gt;&lt;/p&gt;
&lt;p&gt;В StockSharp препятствий для написания выявлено не было,  реализовалось изящно:&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102600/0_b59e0_69f407a1_XL.png" alt="Код метода" /&gt;
*Для Wealth-lab код практически идентичен. Коду быть.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Самое время сравнить результаты:&lt;/strong&gt;
&lt;img src="/file/102606/0_b59e6_bb374ee6_M.png" alt="HotDayEnter" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102601/0_b59e1_d33ae33f_L.png" alt="Расположение стратегий мани-менеджмента в следующем порядке" /&gt;
&lt;img src="/file/102609/0_b59e9_ffc70f69_XL.png" alt="Performance, Ударный день, 2 мани-менеджмента" /&gt;&lt;/p&gt;
&lt;p&gt;А теперь посмотрим динамику контрактов, которыми торговали стратегии:
&lt;img src="/file/102608/0_b59e8_51f88552_XL.png" alt="Количество контрактов, которыми стратегии разрешено торговать" /&gt;&lt;/p&gt;
&lt;p&gt;А также, сравнение по периодам:
&lt;img src="/file/102607/0_b59e7_4ab78d37_XL.png" alt="Сравнение результатов в квартальном разрезе" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102602/0_b59e2_87b00ee3_M.png" alt="Donchian chanel" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102601/0_b59e1_d33ae33f_L.png" alt="" /&gt;
&lt;img src="/file/102603/0_b59e3_8ea50e24_XL.png" alt="Performance, канал Дончиана, 2 мани-менеджмента" /&gt;&lt;/p&gt;
&lt;p&gt;Динамика изменения числа торгуемых контрактов:
&lt;img src="/file/102604/0_b59e4_14be9308_XL.png" alt="Количество контрактов, которыми стратегии разрешено торговать" /&gt;&lt;/p&gt;
&lt;p&gt;Сравнение по периодам:
&lt;img src="/file/102605/0_b59e5_7d078230_XL.png" alt="Сравнение в квартальном разрезе" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102610/0_b59ea_db993473_M.png" alt="Parabolic SAR" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102601/0_b59e1_d33ae33f_L.png" alt="" /&gt;
&lt;img src="/file/102611/0_b59eb_30f1bc21_XL.png" alt="Performance, parabolic, 2 мани-менеджмента" /&gt;&lt;/p&gt;
&lt;p&gt;Динамика изменения числа торгуемых контрактов:
&lt;img src="/file/102612/0_b59ec_10ed615a_XL.png" alt="Количество контрактов, которыми стратегии разрешено торговать" /&gt;&lt;/p&gt;
&lt;p&gt;А также, сравнение по периодам:
&lt;img src="/file/102613/0_b59ed_b251ff82_XL.png" alt="Сравнение в квартальном разрезе" /&gt;&lt;/p&gt;
&lt;p&gt;В наше распоряжение мы получаем довольно гибкий инструмент, который еще нужно уметь правильно настроить.
Во-первых контракты могут наращиваться не по 1-му, а скажем по 2 или 3. Также, мы можем решить для себя с какого контракта мы больше не будем снижать их число, по умолчанию - это  1.
И в третьих, можно регулировать начальный торговый объем, то есть начнем с такого объема, который будет уменьшаться прямо с первой сделки. Например, начнем с 10 контрактов и если сразу попадем в неблагоприятный период, стратегия защищая капитал, спустит вас до 1-го контракта.&lt;/p&gt;
&lt;p&gt;Использовать его можно по-разному. Из графиков видно, что данный подход скорее помогает защитить нам капитал, чем увеличить доходность. Я думаю, он будет интересен при торговле портфелем инструментов. В тот момент, когда какая-нибудь из стратегий начинает сливать, она сбрасывает капитал, давай другой стратегии, которая сейчас в тренде, подхватить свободный капитал и использовать его по назначению. То есть, происходит естественное перераспределение капитала, по результат работы стратегий.&lt;/p&gt;
&lt;p&gt;В результате своего исследования, лично я уяснил то, что может мани-менеджмент и может погубить прибыльную стратегию, но из убыточной стратегии прибыльную не может сделать даже самый хитрособранный мани-менеджмет.
Статистики, я мог бы еще много показать, но лучше выложу код.)&lt;/p&gt;
&lt;p&gt;Стратегии использовались те же, что и в статье &lt;a href="http://stocksharp.com/forum/3823/Diviersifikatsiia-v-pomoshch--trieidieru/"&gt;про портфели стратегий&lt;/a&gt;, они заходят в позицию лимитками, также учтены комиссии(для фьючерса на индекс ртс) и проскальзывание.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://yadi.sk/d/Rhmw8pbB7C_7i" rel="nofollow" target="_blank"&gt;DonchianWLD&lt;/a&gt;
&lt;a href="http://yadi.sk/d/-1TkudVf7C_8A" rel="nofollow" target="_blank"&gt;Ударный деньWLD&lt;/a&gt;
&lt;a href="http://yadi.sk/d/go_xfjB57C_9A" rel="nofollow" target="_blank"&gt;ParabolicWLD&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Спасибо за внимание!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/331/</id>
    <title type="text">Спасти скальпера или тестирование на Full Orders Log</title>
    <published>2013-07-18T17:02:51Z</published>
    <updated>2013-07-18T17:07:33Z</updated>
    <author>
      <name>Николай_Флёров</name>
      <uri>https://stocksharp.ru/users/6456/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Торговые роботы" />
    <category term="S#.Data" />
    <category term="тестирование" />
    <category term="Скальпинг" />
    <category term="Order log" />
    <category term="Статьи" />
    <content type="html">&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Спасти скальпера или тестирование на Full Orders Log.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://stocksharp.com/forum/yaf_postst3617_Skal-pingh.aspx"&gt;Скальпинг&lt;/a&gt; - это стратегия, подразумевающая быстрый вход на импульсе, снятие прибыли(скальпа трендового движения) и выход, до момента возврата цены к средней.&lt;/p&gt;
&lt;p&gt;Инструментами рядового скальпера являются стакан, скальперский привод, а также (поводыри) западные индексы и природные ресурсы от которых зачастую зависят цены базового актива, и в следствии цены на фьючерсы, которыми скальперы и торгую. Это знают все.
У меня есть свое мнение на эту тему, так как лично я и сам торговал в пропе.
Инструментами правильного скальпера должны стать не привод и не поводыри, они пригодятся - это само собой, но главным объектом внимания, любого трейдера должны стать не графики, или приводы - а исследования рынка.&lt;/p&gt;
&lt;p&gt;Обратите внимание на засилье различных курсов по скальпингу в последнее время. Такие курсы зачастую предоставляют помимо базовых принципов, стартегии, которые уже не работают, или перестанут работать в ближайшее время, потому что на таких маленьких таймфреймах - рынок меняется намного быстрее, чем, например на часовках. А самые безбашенные авторы и вообще не проводили никаких изысканий в этой области.&lt;/p&gt;
&lt;p&gt;Я призываю трейдеров, которые собираются пройти один из таких курсов, какие бы копейки он не стоил - &amp;quot;научиться ловить рыбу самим&amp;quot; вместо того, чтобы брать ее непонятно у кого и непонятно какого качества!&lt;/p&gt;
&lt;p&gt;Но, ближе к делу!&lt;/p&gt;
&lt;p&gt;Каким инструментарием может пользоваться новоявленный исследователь:
&lt;img src="/file/102588/0_b4972_654256c2_XL.png" alt="Инструменты для исследовательской работы" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Excel&lt;/strong&gt; - это очень полезная программа и я лично ей пользуюсь, но исключительно, как дополнение к более продвинутому софту. Я знал людей, которые пробовали даже тестировать стратегии в Excel.. Мое мнение - это не серьезно, не понимаю, как в нем можно протестировать какую-то стратегию, но как помощник - самое то!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Мат-lab&lt;/strong&gt;- это профессиональный инструмент математиков, как и excel он платен , но лицензия на него стоит не дешево. На нем можно тестировать все что угодно, были бы данные. И стратегии на индикаторах и мани-менеджмент. Однако из-за его дороговизны, необходимости изучать еще один язык программирования и нужды прописывать все что уже и так есть в системах для тестирования стратегий, считаю такие усилия неоправданными. Лично я использую его, когда не хватает функционала у Excel, для расчетов.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Wealth&lt;/strong&gt; и подобные программы, специально созданные для тестирования стратегий.
Я пробовал тестировать тиковые стратегии. Мне есть что написать по этому поводу:&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Тики можно сжать до любых свечек, 2-10 или 47 секундных. Здесь мы уже можем подсчитать проскальзывание и комиссию. Проблема в том, что такого медленного тестирования вам не захочется. Когда программа сжимает тики и без того медленное тестирование превращается в 5-ти дневное ожидание, когда за час до окончания теста у Вас или перегревается компьютер, или один маленький перепад напряжения и все тесты насмарку, а они ведь могут оказаться и отрицательными!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Часто наши любимые, в иных случаях программы, Wealth-lab и т.д., начинают тормозить и подвисать. Конечно, вам нужны достаточно хороший компьютер, но я говорю про ситуации даже когда у Вас больше 16GB оперативной памяти.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Это все еще тестирование на свечках. Это значит, что мы не видим стакан. А для скальпера - это критично!
Программа не видит, как &amp;quot;живет&amp;quot; рынок. И это еще одна причина по которой скептики отказываются от исследований.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Тиковых данных по  фьючерсу на индекс РТС когда я его тестировал, в блокнот у меня помещалось только 3 месяца сделок. Их нужно было скачать по одному дню(только так,  по-другому никак ее было скачать нельзя ), затем самостоятельно склеить.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;StockSharp&lt;/strong&gt; -  я узнал об этом способе проведения исследований от человека, которые предоставлял такие курсы по скальпингу, про которые я писал в начале. Оказалось, что он тестирует скальперские стратегии в StockSharp, но не на свечках а на ордер логе.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;a href="http://stocksharp.com/forum/yaf_postst1771_Torghovyie-roboty--Full-Orders-Log.aspx"&gt;Full orders log&lt;/a&gt; — это список всех заявок с полной информацией по каждой заявке. Еще его называют анонимным ордер логом (анонимная рыночная информация), т.к. из всей информации о заявке в нем не доступен только номер счета клиента, пославшую эту заявку. Как вы понимаете, эта информация конфиденциальна. Ордер лог, это самый глубокий и детальный уровень информации, который доступен трейдеру.&lt;/em&gt;	Источник &amp;lt;&lt;a href="http://robostroy.ru/community/Article.aspx?id=319" rel="nofollow" target="_blank"&gt;http://robostroy.ru/community/Article.aspx?id=319&lt;/a&gt;&amp;gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Тестирование на ордер логе, тоже не является панацеей, рынок все также меняется, а тестирование все такое же медленное. Но ничего лучше еще не придумали, здесь мы получаем всю полноту информации,  тестирование на стакане, а стакан для скальпера - самое важное.&lt;/p&gt;
&lt;p&gt;Также, пользуясь инструментарием  StockSharp можно скачать ордер лог, или тиковые данные и уже из них создать свечки любого тайм-фрейма! Для чего нам это нужно?&lt;/p&gt;
&lt;p&gt;Когда нам не приходится сжимать тики в 10-ти секундные свечки в самом &lt;a href="http://stocksharp.com/forum/yaf_topics62_Voprosy-otviety-Wealth-Lab.aspx"&gt;Wealth-lab&lt;/a&gt; - тестирование проходит намного быстрее и сама программа &amp;quot;чувствует&amp;quot; себя лучше, не тормозит и не зависает. Поэтому кому не нужно супер точное тестирование - этот вариант для вас! Главное уделять внимание исследовательской работе и ваши результаты улучшаться!&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102580/0_b496a_83fbf5e2_XL.png" alt="Ресурсы для проведения исследования" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Качественные данные.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Есть 2 новости хорошая и плохая. Плохая - то что скорее всего данные ордер лога вам найти не удастся. Качественные данные можно, конечно купить напрямую у RTS - но это будет неоправданно дорого.Хорошая новость заключается в том, что для тестирования скальперских стратегий много истории не нужно. подключение плаза - это обязательное условие скальпинга, так что считаем, что оно у нас есть по определению. Так что, ничего нам не мешает записать ордер лог с плазы. Особенно радует тот факт, что к плазе можно подключить одновременно и программу для записи ордер лога и скальперский привод. Так что можем и торговать и записывать данные одновременно. Софт для записи называется S#.Data.&lt;/p&gt;
&lt;p&gt;Единственным его назначением является записывать данные сохранять их в специальном формате и преобразовывать одни данные в другие. Благодаря ему, из ордер лога можно вытащить и стаканы и тиковые данные, из тиковых данных можно сделать свечки любого таймфрейма. Ордер лог - самый полный пакет данных, поэтому кроме как записью с плазы получить синтезировать его никак нельзя.
Также, можно записать сделки и стаканы с обычного Quik, но они будут рассинхронизированы, а для скальперов - стакан имеет важное, если не первостепенное значение. Тестирование без стакана возможно, но оно более грубое и лишено важных преимуществ.&lt;/p&gt;
&lt;p&gt;S#.Data выглядит вот так:
&lt;img src="/file/102581/0_b496b_4df1915c_XL.png" alt="S#.Data" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/102582/0_b496c_dde68e5d_XL.png" alt="Порядок действий для записи лога заявок" /&gt;&lt;/p&gt;
&lt;p&gt;Как пользоваться S#.Data:
&lt;img src="/file/102584/0_b496e_ad2c4d29_XXL.png" alt="Как пользоваться S#.Data" /&gt;&lt;/p&gt;
&lt;p&gt;Как создать инструмент:
&lt;img src="/file/102585/0_b496f_f734dfc0_L.png" alt="Как создать инструмент" /&gt;&lt;/p&gt;
&lt;p&gt;Как настроить плазу:
&lt;img src="/file/102583/0_b496d_2acc24c0_XL.png" alt="Как настроить плазу" /&gt;&lt;/p&gt;
&lt;p&gt;Как запустить приложение:
&lt;img src="/file/102587/0_b4971_dd8693f9_L.png" alt="Запустить приложение" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Тестер стратегий.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Когда вы записали данные считайте, что половину дела вы уже сделали. Осталось всего-навсего написать свой привод для тестирования и саму стратегию. =)&lt;/p&gt;
&lt;p&gt;Под меня написанный тестер, он простой, без визуализации, специально под тот шаблон стратегий, к которому я привык. Статистика в динамике выгружается автоматически в Excel. Здесь я взял шаблон, что давали, на обучении и пользуюсь им практически без его доработки. Он симпатичен на вид и есть графики эквити и проскальзывания.&lt;/p&gt;
&lt;p&gt;Шаблон тестера выглядит так.
&lt;img src="/file/102586/0_b4970_8e2a4d54_XL.png" alt="Шаблон тестера стратегий" /&gt;&lt;/p&gt;
&lt;p&gt;Для примера взял трендовую стратегию пробоя полос Боллинджера.
&lt;img src="/file/102589/0_b4973_f4207ac4_XL.png" alt="Визуальное представление стратегии" /&gt;&lt;/p&gt;
&lt;p&gt;С точки зрения самого процесса, тестирование на ордер логе практически ничем не отличается от обычного, главное не забыть вписать:&lt;/p&gt;
&lt;p&gt;Trader.RegisterOrderLog(security);
&lt;img src="/file/102578/0_b4a19_259465e_L.png" alt="Регистрируем Ордер лог" /&gt;&lt;/p&gt;
&lt;p&gt;UseOrderLog = true,
&lt;img src="/file/102577/0_b4a18_8c3e0682_L.png" alt="Использовать Ордер лог" /&gt;&lt;/p&gt;
&lt;p&gt;Условия тестирования:
&lt;img src="/file/102590/0_b4974_7b3a3988_XL.png" alt="Условия тестирования" /&gt;&lt;/p&gt;
&lt;p&gt;Почему я не учитываю комиссию. Все просто, частенько приходится тестировать стратегии, для которых наиболее выгодным вариантом будет Fix комиссия. Такую услугу предлагает практически каждый брокер, но цены разные, поэтому просто вычитаю ее из прибыли.
В любом случае, вы можете посчитать комиссию, как общее количество закрывающих сделок умножить на вашу нынешнюю комиссию на круг и вычесть ее из общего результата . Хотя данная &amp;quot;стратегия&amp;quot; всего лишь пример - это не готовая стратегия, которую можно было бы торговать.&lt;/p&gt;
&lt;p&gt;Статистика и эквити протестированной нами стратегии с 15-ого по 25-ое января 2013, в расчете на 1 контракт.
&lt;img src="/file/102579/0_b49de_cd58ca84_XL.png" alt="Результаты тестирования стратегии" /&gt;
Просадки впечатляют, но положительное мат. ожидание -  на лицо.
Проскальзывание - 0, потому что и на вход и на выход использовалось лимитное котирование.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;strong&gt;Время.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Как я писал ранее, тестирование на ордер логе требует больше времени, из-за того что оно в точности повторяет все события, происходящие на рынке. Лично я решил для себя эту проблему, используя несколько компьютеров для тестирования. Также, я использую методику, которая называется тестирование под управлением пользователя.
По сути это ручная генетическая оптимизация. Такой подход  экономит машинное время, но мне приходится тратить больше моего личного времени на проведение оптимизации. Также я часто использую прикидочные тесты в Wealth-lab.
Для того, чтобы результаты тестирования в Wealth-la были близки к тестам в StockSharp при входах, например котированием, нужно использовать специальный компоненты &lt;strong&gt;EnterAtPrice&lt;/strong&gt; и &lt;strong&gt;ExitAtPrice&lt;/strong&gt;. С помощью них, входы происходят по точно определенной цене на том баре, который мы укажем. Ориентировочно по этим ценам мы и войдем в рынок котированием. Эти компоненты позволяют нам тестировать входы на [bar] а не на [bar+1], что намного точнее.&lt;/p&gt;
&lt;p&gt;Тестируйте свои стратегии, проверяйте по 3 раза код, чтобы не переделывать тесты!
Пользуйтесь только лучшими инструментами, будьте исследователями, но не забывайте торговать!&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:24pt"&gt;&lt;em&gt;Код стратегии:&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;namespace BollingerTrendStrategy
{
	using System;
	using Ecng.Common;
	using Ecng.ComponentModel;
    using Stops;
	using StockSharp.Algo;
	using StockSharp.Algo.Candles;
	using StockSharp.Algo.Indicators;
	using StockSharp.Algo.Indicators.Trend;
	using StockSharp.Algo.Strategies;
	using StockSharp.BusinessEntities;
    using StockSharp.Algo.Candles.Compression;
    using StockSharp.Algo.Indicators;
    using StockSharp.Algo.Indicators.Misc;
    using StockSharp.Algo.Indicators.Trend;
    
	/// &amp;lt;summary&amp;gt;
    /// Стратегия по полосам Болинджера, пробойная.
    /// &amp;lt;/summary&amp;gt;
    internal class BollingerTrendStrategy : Strategy
    {
        private BollingerBands _bands;
        private CandleSeries _series;
	   
        /// &amp;lt;summary&amp;gt;
        /// Событие отрисовки новой свечки и значения индикатора.
        /// &amp;lt;/summary&amp;gt;
        public event Action&amp;lt;Candle, IIndicator&amp;gt; Draw;

        protected override void OnStarted()
        {
            //создаем серию свечек и индикатор
            this._series = Security.TimeFrame(TimeSpan.FromSeconds(60));
            this._bands = new BollingerBands
            {
                Length = 64
            };

            //указываем период, за который должны формироваться свечки для данной серии
            this._series.WorkingTime = new WorkingTime
            {
                Times = new[] { new Range&amp;lt;TimeSpan&amp;gt;(TimeSpan.FromHours(10), TimeSpan.FromHours(19)), }
            };
          
            //подписываемся на событие окончания формирования свечек по серии
            //а так же на событие изменения свечек, чтобы можно было перерисовывать график в реалтайм режиме
            this._series
                .WhenCandlesFinished()
                .Do(Process)
                .Apply(this);

            //запускаем процесс формирования свечек
            this
                .GetCandleManager()
                .Start(this._series);

            base.OnStarted();
        }

        /// &amp;lt;summary&amp;gt;
        /// Основной алгоритм.
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;candle&amp;quot;&amp;gt;Свечка.&amp;lt;/param&amp;gt;
        private void Process(Candle candle)
        {
            //пересчитать значение индикатора для новой свечки
            this._bands.Process(candle);

            //вызываем событие отрисовки свечки и индикатора на графике
            this.Draw.SafeInvoke(candle, this._bands);

            //если состояние свечки не Finished, значит сработало событие
            //изменения свечки и нет необходимости принимать решение о входе или выходе из позиции
            if (candle.State != CandleStates.Finished)
                return;

            //получаем таймфрейм свечек
            var timeFrame = (TimeSpan)this._series.Arg;
            //получаем время начала последней свечки с учетом текущего времени
            var time = timeFrame.GetCandleBounds(Security).Min - timeFrame;

            bool SignalLong; //Переменная для входа в лонг
            bool SignalShort; //Переменная для входа в шорт
            SignalLong = candle.ClosePrice &amp;gt; this._bands.UpBand.GetCurrentValue();
            SignalLong &amp;amp;= Position&amp;lt;=0;
            SignalShort = candle.ClosePrice &amp;lt; this._bands.LowBand.GetCurrentValue();
            SignalShort &amp;amp;= Position &amp;gt;=0;
            
            if (this._bands.IsFormed)
            {
                //При пробитии канала нет открытой позиции или открыта длинная позиция - Long, предварительно продав

                if (SignalLong &amp;amp;&amp;amp; doNotEnter &amp;gt; Security.GetMarketTime().TimeOfDay &amp;amp;&amp;amp; Security.GetMarketTime().TimeOfDay &amp;gt; isItMorning)
                {

                      if (Position == 1)
                        {
                            //sell
                            ChildStrategies.Add(new LimitQuotingStrategy(OrderDirections.Sell, 1,_bands.UpBand.GetCurrentValue()));
                            //RegisterOrder(this.SellAtMarket());
                        }
                    if (ChildStrategies.Count == 0)
                    {
                        //RegisterOrder(this.BuyAtMarket());

                        ChildStrategies.Add(new LimitQuotingStrategy(OrderDirections.Buy, 1, _bands.UpBand.GetCurrentValue()));
                    }
                }
                //При пробитии канала нет открытой позиции или открыта короткая позиция - Short, предварительно откупив
                if (SignalShort &amp;amp;&amp;amp; doNotEnter &amp;gt;Security.GetMarketTime().TimeOfDay &amp;amp;&amp;amp; Security.GetMarketTime().TimeOfDay &amp;gt; isItMorning)
                {
                    if (Position == -1)
                            {
                                //buy
                                ChildStrategies.Add(new LimitQuotingStrategy(OrderDirections.Buy, 1,_bands.LowBand.GetCurrentValue()));
                                 //RegisterOrder(this.BuyAtMarket());
                            }
                       if (ChildStrategies.Count == 0)
   
                        {
                            
                            //sell
                            ChildStrategies.Add(new LimitQuotingStrategy(OrderDirections.Sell, 1, _bands.LowBand.GetCurrentValue()));
                            //RegisterOrder(this.SellAtMarket());
                    }
                }
           
            }
        }
    }
}

&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Спасибо за внимание!&lt;/p&gt;
</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/236/</id>
    <title type="text">Единая Учетная Запись</title>
    <published>2012-12-03T01:48:24Z</published>
    <updated>2013-06-22T21:44:41Z</updated>
    <author>
      <name>StockSharp</name>
      <uri>https://stocksharp.ru/users/341/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;p&gt;Уважаемые участники проекта S#!&lt;/p&gt;
&lt;p&gt;Для обеспечения удобной работы StockSharp создал для вас единую учетную запись, которая объединяет Личный кабинет и Форум S#. В связи с этим произошли следующие изменения:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Для тех, кто уже был зарегистрирован на форуме S#: после регистрации на сайте ваш ЛК и форумный логин автоматически объединятся.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Примечание:&lt;/strong&gt;
— Чтобы форум и личный кабинет объединились в одну учетную запись, при регистрации используйте одинаковый адрес почты.
— Ваш форумный логин останется прежним, но пароль будет заменен на пароль, указанный при регистрации в ЛК. Ваш текущий пароль для ЛК и форума будет отправлен вам в письме после регистрации на сайте &lt;a href="http://stocksharp.com"&gt;StockSharp&lt;/a&gt;.&lt;/p&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Если вы регистрируетесь на нашем сайте впервые, для вас автоматически будет создан логин на форуме.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Обратите внимание!&lt;/strong&gt;
&lt;strong&gt;Логин и пароль для форума и личного кабинета совпадают! При смене пароля или логина изменения применяются и для ЛК, и для форума!&lt;/strong&gt;&lt;/p&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;Возможность скачивать лицензии из ЛК&lt;/li&gt;
&lt;li&gt;Просмотр заказов и их статуса&lt;/li&gt;
&lt;li&gt;Возможность оплаты наших услуг банковской картой и другими способами&lt;/li&gt;
&lt;li&gt;Смена пароля учетной записи&lt;/li&gt;
&lt;li&gt;Защита личных данных с помощью привязки ЛК к номеру телефона&lt;/li&gt;
&lt;li&gt;Некоторые другие функции, о которых мы расскажем несколько позже
Ждем от Вас вопросов по работе нового личного кабинета и единой учетной записи! Принимаем пожелания и замечания :)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;С уважением,
Команда StockSharp!&lt;/p&gt;
</content>
  </entry>
</feed>