﻿<?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">wealth-lab. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=tag&amp;id=wealth-lab&amp;type=articles</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-06T02:25:09Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=tag&amp;id=wealth-lab&amp;type=articles" rel="self" type="application/rss+xml" />
  <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 align="left"&gt;Как вы все наверное знаете Wealth-Lab это отличная штука для создания и тестирования торговых роботов. Он позволяет визуализировать, протестировать и оптимизировать вашу стратегию. Но к сожалению, Wealth-Lab очень плохо дружит с российским рынком. Мы конечно же решили эту проблему нашим адаптером S#.Wealth-Lab но перед вами встаёт другая проблема, это то что для запуска адаптера необходимо лицензионная версия Wealth-Lab которая к слову сказать стоит 800$ плюс 150$ за продление лицензии на следующий год, а это порой непозволительная роскош для российского человека. Плюс при проторговке системы мы столкнёмся с тем что Wealth-Lab не позволяет запускать тиковые и секундные стратегии через свой Strategy Monitor, а также в велсе отсутствует стакан. Мы решили все эти проблемы программой Wealth Script Executer.&lt;br /&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102906/08-10-2013-14-00-20.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102906/08-10-2013-14-00-20.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102907/08-10-2013-13-55-26.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102907/08-10-2013-13-55-26.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Что же из себя представляет Wealth Script Executer? Wealth Script Executer это отдельная программа которая позволяет запускать велсовские стратегии и при этом подключаться к большинству российских и зарубежных площадок без переписывания роботов. Плюс у вас будет возможность работать с любым типом графиков которые поддерживает S# и пользоваться стаканом, отслеживать статистику по стратегиям и запускать их по расписанию, что полностью исключит человеческий фактор из торговли!&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102908/08-10-2013-13-56-41.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102908/08-10-2013-13-56-41.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;И так как происходит процесс работы с Wealth Script Executer. Вы берёте Wealth Lab создаёте и оптимизируете в нём стратегию можно использовать даже Wealth Lab 5.6 сохраняете стратегию стандартными средствами и отрываете её в Wealth Script Executer настраиваете параметры и запускаете в торговлю и наслаждаетесь результатом. &lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102909/08-10-2013-14-29-47.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102909/08-10-2013-14-29-47.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Так же вы сможете использую Visual studio отнаследовавшись от специальной библиотеки создать и скомпилировать стратегию, а потом просто открыть её в Wealth Script Executer.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Сейчас Wealth Script Executer находится в состоянии закрытого бета тестирования и совсем скоро будет доступен нашим подписчикам. Ждите анонса.&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 align="left"&gt;Доброго времени суток. Я зная, что в предыдущей &lt;a href="http://stocksharp.com/forum/4007/Mietody-opriedielieniia-istinnosti-proboia-urovnia/" title="http://stocksharp.com/forum/4007/Mietody-opriedielieniia-istinnosti-proboia-urovnia/"&gt;статье&lt;/a&gt; я обещал развить тему методов определения отскока от уровня, но я решил немного дополнить предыдущую статью, добавив ещё один метод определения пробоя уровня.&lt;br /&gt;&lt;br /&gt;Суть данного метода заключается в том, что мы дожидаемся пока цена начнёт консолидироваться вокруг нашего уровня. Тестируя его в разные стороны. После того как цена некоторое время, а точнее некоторое количество баров тестирует наш уровень, мы откладываем от нашего уровня канал на заданный процент и только после того как цена пробьет наш канал мы входим в позицию. Суть определения того что цена тестирует наш уровень заключается в том что предыдущие свечки должны полностью оставаться в канале.&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;В наглядном виде всё это выглядит примерно так.&lt;br /&gt;&lt;br /&gt;Входим в длинную позицию&lt;/div&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102889/01-10-2013-20-51-54.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102889/01-10-2013-20-51-54.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;Входим в короткую позицию&lt;/div&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102890/01-10-2013-20-52-11.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102890/01-10-2013-20-52-11.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;Результаты&lt;/div&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102893/01-10-2013-20-50-31.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102893/01-10-2013-20-50-31.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102891/01-10-2013-20-49-53.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102891/01-10-2013-20-49-53.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102892/01-10-2013-20-51-07.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102892/01-10-2013-20-51-07.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;Вы можете сравнить результаты данного метода с результатами методов из прошлой статьи и убедиться, что данный метод намного лучше определяет точки входа чем предыдущие.&lt;br /&gt;Конечно такую торговую систему не в коем случае не стоит использовать на реальной торговли, она годится лишь для тестирования различных методик определения пробоя и отбоя от уровня. Так как если кто не помнит мы строим уровень на основе вчерашней цены закрытия.&lt;br /&gt;&lt;br /&gt;Думаю, результаты будут намного лучше, если мы будем использовать нормальный алгоритм определения уровней. К примеру, камарилья или уровни мюррея. Также можно попробовать строить канал на основе волатильности что позволит ему более динамически подстраиваться под текущее состояние рынка.  Исходные коды данного метода, как и всегда лежат у нас на сервере. В свою очередь жду от вас предложений по улучшению данной методики.&lt;/div&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;b&gt;&lt;span style="font-size:120%"&gt;Bollinger Bands&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;Хотел бы Вас познакомить со стратегией, которую я называю &lt;b&gt;BB&lt;/b&gt; ну или &lt;b&gt;Bollinger Bands&lt;/b&gt; или Big Boobs[rolleyes] , вообщем название пришло само по себе.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Доходность:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102327/profit.JPG' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102327/profit.JPG?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:120%"&gt;Характеристики:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Инструмент:склеенный фьючерс РТС (скачан с финама)&lt;br /&gt;&lt;li&gt;Таймфрейм: 1 час&lt;br /&gt;&lt;li&gt;Период тестирования: 01.04.2008 - 09.04.2013&lt;br /&gt;&lt;li&gt;Проскальзывание:не учитывалось. Учитывался бар утренней сессии(10:00).&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:120%"&gt;Настраиваемые параметры:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Экспоненциальная скользящая средняя или EMA в народе. Две штуки - в коде &amp;quot;ma&amp;quot;(медленная) и &amp;quot;ma1&amp;quot;(быстрая).&lt;br /&gt;&lt;li&gt;Индикатор ROC. В коде - &amp;quot;roc&amp;quot;&lt;br /&gt;&lt;li&gt;Линия боллинджера(только верхняя). В коде - &amp;quot;BBUp&amp;quot;.&lt;br /&gt;&lt;li&gt;Тейкпрофит.В коде - &amp;quot;_takeprofit&amp;quot;.&lt;br /&gt;&lt;li&gt;Стоплосс. В коде - &amp;quot;_stoploss&amp;quot;.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:green"&gt;Алгоритм для входа Покупка:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ecли &lt;b&gt;Close&lt;/b&gt;(на текущем баре)&lt;b&gt;&amp;gt;BBUUp&lt;/b&gt;, то покупаем по рынку(покупка по открытию следующей свечи).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:green"&gt;Алгоритм для выхода Покупка:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Если &lt;b&gt;Close&amp;lt;ma&lt;/b&gt;, то продаем по рынку(по открытию следующего бара).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:red"&gt;Алгоритм для входа Продажа:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Если значение индикатора &lt;b&gt;ROC&amp;lt;0&lt;/b&gt; (на текущем баре) &lt;b&gt;и&lt;/b&gt; &lt;b&gt;Close&lt;/b&gt;(Цена закрытия свечки) &lt;b&gt;&amp;lt; ma_1&lt;/b&gt;, то продаём по рынку(продажа по открытию следующей свечи).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:red"&gt;Алгоритм для выхода Продажа:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Если &lt;b&gt;Close&amp;gt;BBUp&lt;/b&gt;, то покупка по рынку(по открытию следующего бара).&lt;br /&gt;&lt;li&gt;&lt;b&gt;Стоплосс&lt;/b&gt;(определенный процент от точки входа).&lt;br /&gt;&lt;li&gt;&lt;b&gt;Тейкпрофит&lt;/b&gt;(определнный процент от точки входа)&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Код:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class='spoilertitle'&gt;&lt;input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_3e7dcb9f6ff7471787a7df27cab4f431');" title='Показать спойлер' /&gt;&lt;/div&gt;&lt;div class='spoilerbox' id='spolier_3e7dcb9f6ff7471787a7df27cab4f431' style='display:none'&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;

using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
/****************************************
Стратегия создана специально 
для обучения по Wealth-Lab от StockSharp
все подробности тут
÷ñÒ1809982386êÖ0õæ÷http://stocksharp.com/lesson/wealth.aspx
÷ñÒ1809982386êÖ1õæ÷

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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&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;b&gt;Описание&lt;/b&gt;&lt;br /&gt;KAMA - Адаптивная скользящая средняя была разработана Перри Кауфманом и впервые опубликована в его книге &amp;#171;Умный трейдинг&amp;#187; в 1995 году. Отличие адаптивной скользящей средней от ее сестер состоит в том, что период вычисления скользящей средней напрямую зависит от состояния рынка и динамики цен – при резких трендовых движениях период скользящей средней постепенно уменьшается для большей чувствительности, ну а в моменты затухания рынка и снижения активности период скользящей средней увеличивается, тем самым фильтруются незначительные колебания. В итоге, адаптивная скользящая средняя избавилась от извечных недостатков скользящих средних – запаздываний при увеличении периода и ложных срабатываний при его уменьшении.&lt;br /&gt;Filter вычисляет разброс значений KAMA за определенный период с помощью стандартного отклонения. Если этот разброс не превышает определённую величину то используется предыдущее значения фильтра, если же оно превышает заданный порог происходит присвоение новой величины.&lt;br /&gt;&lt;br /&gt;&lt;div class='spoilertitle'&gt;&lt;input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_b6d8ac5f791441b7a0c84b5c18e5b61d');" title='Показать спойлер' /&gt;&lt;/div&gt;&lt;div class='spoilerbox' id='spolier_b6d8ac5f791441b7a0c84b5c18e5b61d' style='display:none'&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush: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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&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;b&gt;&lt;span style="font-size:120%"&gt;ConnorsRSI&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102396/3.PNG' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102396/3.PNG?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;В этой статье я хотел бы рассказать вам о новом индикаторе, который был недавно реализован в &lt;b&gt;Wealth lab&lt;/b&gt;. Данный индикатор называется &lt;b&gt;ConnorsRSI&lt;/b&gt;. &lt;br /&gt;Данный индикатор был разработан Ларри Коннорсом из Connors Research его доклад вы легко сможете найти в интернете по запросу &lt;br /&gt;“Connors Research Trading Strategy Series An Introduction to ConnorsRSI”. И так давайте рассмотрим, что же из себя представляет индикатор &lt;b&gt;ConnorsRSI&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;ConnorsRSI&lt;/b&gt; состоит из трех компонентов. Два из них используют расчеты, проводимые индикатором &lt;b&gt;RSI&lt;/b&gt;. &lt;br /&gt;Третий компонент измеряет последние ценовые изменения по шкале от 0 до 100. В сочетании все эти три компонента формируют осциллятор, то есть индикатор, &lt;br /&gt;который колеблется в диапазоне от 0 до 100 и указывает на уровень перекупленности или перепроданности. А сейчас, давайте вспомним, что из себя представляет &lt;b&gt;RSI&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;Индикатор &lt;b&gt;RSI&lt;/b&gt;сравнивает величину подъемов цены актива за последнее время с величиной ее падений и предоставляет эту информацию в виде числа находящегося &lt;br /&gt;в диапазоне от 0 до 100. Единственный параметр данного индикатора это временной период, то есть количество свечек используемых в расчете индикатора. &lt;br /&gt;В индикатор заложена простая идея: &lt;br /&gt;Рост цены отражает силу быков, ее падение говорит о преимуществе медведей. Проше говоря, индикатор RSI считает долю бычьих белых свечей на выбранном интервале. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Если RSI&amp;gt;70%, то на рынке правят быки, цены растут. &lt;br /&gt;Если же RSI&amp;lt;30%, то настроение определяют медведи, цены падают.&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;Ну а теперь давайте вернемся к нашему индикатору &lt;b&gt;ConnorsRSI&lt;/b&gt;. Как я уже говорил, ConnorsRSI состоит из 3 компонентов. &lt;br /&gt;&lt;br /&gt;Ценовой Импульс &lt;b&gt;(Price Momentum)&lt;/b&gt; - использует индикатор RSI для измерения уровней перекупленности и перепроданности рынка.&lt;br /&gt;По умолчанию, &lt;b&gt;ConnorsRSI &lt;/b&gt;использует &lt;b&gt;RSI &lt;/b&gt;с периодом 3 применительно к ценам закрытия. Будем ссылаться на это значение как на RSI(Close,3).&lt;br /&gt;Длительность Бычьего/Медвежьего Тренда: Когда  текущая цена закрытия ниже предыдущей, это значит, что рынок закрылся с понижением. Если наоборот, &lt;br /&gt;то рынок закрылся с повышением. Исследования &lt;b&gt;Connors Research&lt;/b&gt; показали, что чем дольше длиться медвежий тренд (последовательность из нисходящих цен закрытия), &lt;br /&gt;тем более сильным будет рост, когда рынок развернется. То же самое можно сказать и о бычьем тренде. &lt;br /&gt;&lt;br /&gt;Иными словами, длительность тренда – это также индикатор перекупленности  и перепроданности рынка.&lt;br /&gt;Но проблема в том, что теоретически она неограниченна во времени. Хотя зачастую мы можем установить некоторые искусственные границы, основываясь на прошлом.&lt;br /&gt;К примеру, изучив исторические данные, можно заметить, что на определенном инструменте было очень мало случаев, &lt;br /&gt;когда последовательность из нисходящих или восходящих ценовых баров длилась больше 20 баров. &lt;br /&gt;Но это еще не дает нам значения индикатора, которое вписывается в диапазон от 0 до 100.&lt;br /&gt;&lt;br /&gt;Выход из данной ситуации состоит из двух шагов. Сначала мы подсчитываем количество последовательных баров, в течение которых цена двигалась в одном направлении. &lt;br /&gt;То есть используем положительные значения для бычьего тренда и отрицательные  - для медвежьего. К примеру давайте посмотрим на таблицу.&lt;br /&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102394/1.PNG' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102394/1.PNG?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Цена закрытия второго бара выше, чем цена закрытия первого бара, поэтому мы наблюдаем бычий тренд, который длится один бар. &lt;br /&gt;На третьем баре цена снова закрывается выше предыдущей. Теперь наш тренд длится уже два бара. На четвертом баре цена закрывается ниже цены предыдущего бара, &lt;br /&gt;давая нам медвежий тренд длительностью в один бар (тут мы указываем негативное значение: -1). Медвежий тренд продолжается на 5 и 6 баре (-2 и -3). &lt;br /&gt;На седьмом баре цена закрытия остается неизменной, поэтому показатель продолжительности тренда возвращается к 0. &lt;br /&gt;На восьмом баре цена закрытия снова растет, тем самым увеличивая показатель продолжительности тренда до 1.&lt;br /&gt;&lt;br /&gt;Следующая часть в решения проблемы заключается в способе применения расчетов RSI к последовательности значений длительности тренда (о которой только что шла речь). &lt;br /&gt;По умолчанию, для этой части расчетов для ConnorsRSI используется период 2. Будем обозначать его как RSI(Streak,2). &lt;br /&gt;В результате мы получаем следующую зависимость: &lt;br /&gt;чем больше продолжительность бычьего тренда, тем ближе к 100 будет значение RSI(Streak,2), и наоборот, чем больше продолжительность нисходящего тренда, &lt;br /&gt;тем ближе к 0 будет значение RSI(Streak,2). Теперь у нас есть два показателя: &lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;RSI(Close,3)&lt;br /&gt;&lt;li&gt;RSI(Streak,2) &lt;/ul&gt;&lt;br /&gt;Оба используют шкалу от 0 до 100. Которая указывает на перекупленность или перепроданность рынка. &lt;br /&gt;&lt;br /&gt;Относительная Величина Изменения Цены: Это последний компонент индикатора ConnorsRSI. Он измеряет размер текушего ценового изменения относительно предыдущих цен. &lt;br /&gt;Для этого используется градация в процентах (Percent Rank). Конкретное значение указывает на процент прошлых значений, которые меньше текущего значения. &lt;br /&gt;В данном случае мы измеряем расчеты не в рублях, а в процентах от цены предыдущего бара. &lt;br /&gt;Этот процентный показатель прибыли или убытка рассматривается как однодневный возврат средств.&lt;br /&gt;Если, цена закрытия предыдущего бара была 80.00, а цена закрытия текущего равна 81.60, то данный показатель составит: (81.60 ‐ 80.00) / 80.00 = 0.02 = 2.0%.&lt;br /&gt;Чтобы определить значение Percent Rank, нам нужно выбрать временной период.&lt;br /&gt;&lt;br /&gt;Значением Percent Rank – это сумма значений за выбранный период, которые меньше текущего значения, деленное на общее количество значений за данный период. &lt;br /&gt;Например, если мы выбрали период 20 баров, то нужно сравнивать текучее 2.0% значение с аналогичными значениями для всех 20 баров выбранного периода. &lt;br /&gt;Давайте предположим, что 3 из 20 значений меньше 2.0%. В этом случае  Percent Rank будет рассчитываться следующим образом:&lt;br /&gt;Percent Rank = 3 / 20 = 0.15 = 15%&lt;br /&gt;Временной период Percent Rank по умолчанию равен 100. Обозначается как PercentRank(100).&lt;br /&gt;&lt;br /&gt;Мы сравниваем текуший процентный показатель с аналогичными показателями для всех 100 баров.&lt;br /&gt;Конечный расчет индикатора ConnorsRSI заключается в простом вычислении среднего значения трех компонентов.&lt;br /&gt;Формула с параметрами по умолчанию выглядит следующим образом: &lt;b&gt;ConnorsRSI(3,2,100) = [ RSI(Close,3) + RSI(Streak,2) + PercentRank(100) ] / 3&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;В результате у нас получился индикатор, который эффективнее любого из трех компонентов, используемых отдельно.&lt;br /&gt;У &lt;b&gt;ConnorsRSI &lt;/b&gt;есть преимущество перед использованием трех его компонентов как 3 самостоятельных индикаторов. &lt;br /&gt;Когда мы используем 3 индикатора для генерации торговых сигналов, то обычно устанавливаем для каждого из них определенный целевой уровень. &lt;br /&gt;Чтобы появился сигнал, все три индикатора должны достичь этих уровней. &lt;br /&gt;Однако индикатор &lt;b&gt;ConnorsRSI &lt;/b&gt;основан на их усредненном значении. Тем самым он позволяет сильному сигналу от одного, частично компенсировать слабый сигнал от другого.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Доходность:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102395/2.PNG' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102395/2.PNG?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:120%"&gt;Характеристики:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Инструмент:обыкновенные акции Сбербанка (скачан с финама)&lt;br /&gt;&lt;li&gt;Таймфрейм: 1 час&lt;br /&gt;&lt;li&gt;Период тестирования: 14.05.2008 - 10.05.2013&lt;br /&gt;&lt;li&gt;Проскальзывание:не учитывалось. Комиссия 0.05 на сделку.&lt;br /&gt;&lt;li&gt;Комиссия 0.05 на сделку.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:120%"&gt;Настраиваемые параметры:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Oversold Level 29&lt;br /&gt;&lt;li&gt;Overbought Level 32&lt;br /&gt;&lt;li&gt;RSI Period 20&lt;br /&gt;&lt;li&gt;Streak Period 25&lt;br /&gt;&lt;li&gt;PercentRank Period 29&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:green"&gt;Алгоритм для открытия длинной позиции:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ecли ConnorsRSI(на текущем баре)пересекает уровень перепроданности снизу вверх, то покупаем по рынку(покупка по открытию следующей свечи).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:green"&gt;Алгоритм для закрытия длинной позиции:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Если на текушем баре обнаружен свечной паттерн LongBlackLine, то продаем по рынку(по открытию следующего бара).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:red"&gt;Алгоритм для входа в короткую позицию:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ecли ConnorsRSI(на текущем баре)пересекает уровень перекупленности сверху вниз, то продаем по рынку(по открытию следующего бара).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;&lt;span style="color:red"&gt;Алгоритм для закрытия короткой позиции:&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Если на текушем баре обнаружен свечной паттерн LongWhiteLine, то продаем по рынку(по открытию следующего бара).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;Код:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class='spoilertitle'&gt;&lt;input type='button' value='Показать спойлер' class='btn btn-primary' onclick="toggleSpoiler(this, 'spolier_a46296a9bd1e45e3991c4e71ff1d96ed');" title='Показать спойлер' /&gt;&lt;/div&gt;&lt;div class='spoilerbox' id='spolier_a46296a9bd1e45e3991c4e71ff1d96ed' style='display:none'&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush: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
все подробности тут
÷ñÒ1262176704êÖ0õæ÷http://stocksharp.com/lesson/wealth.aspx
÷ñÒ1262176704êÖ1õæ÷

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;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;&lt;b&gt;P.S.&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Цель данной статьи была в том что бы донести до вас сведения о существовании такого интересного индикатора как СonnorsRSI. &lt;br /&gt;В представленной стратегии есть большое пространство для манёвра по улучшению её характеристик. &lt;br /&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 align="left"&gt;Здравствуйте, в своей предыдущей &lt;a href="http://stocksharp.com/forum/323/Struktura-torghovoi-sistiemy-ili-anatomiia-robotov/" title="http://stocksharp.com/forum/323/Struktura-torghovoi-sistiemy-ili-anatomiia-robotov/"&gt;статье&lt;/a&gt;, я затронул тему создания торговых роботов из различных блоков, комбинируя которые между собой мы создаём робота. Сначала я хотел рассказать про уровни, но начав писать статью на эту тему, я столкнулся с вопросом, как определить истинный пробой или отскок от уровня и поэтому я решил сначала осветить именно эту тему, а уже потом приступить к уровням.&lt;br /&gt;&lt;br /&gt;В качестве сетапа для открытия позиции, мы будем использовать пробой вчерашней цены закрытия. Для выхода будем использовать выход люстры.&lt;br /&gt;В чистом виде стратегия выглядит так. &lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102658/1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102658/1.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Результаты:&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102663/2.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102663/2.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Тестировать методы пробоя уровня мы будем на сбербанке за последний год с таймфреймом в 15 минут. И в качестве комиссии выставим такие значения.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102659/0.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102659/0.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;И так существуют огромное число способов определения пробоя уровня.  Если вы знаете дополнительные способы определения пробоя или отбоя от уровня, пожалуйста оставляйте их в комментариях с удовольствием закодирую и протестирую. А также поделюсь результатами. Также каждая стратегия подвергнется оптимизации методом полного перебора для получения наиболее подходящий параметров.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Утверждение первое&lt;/span&gt;&lt;br /&gt;Истинность пробоя можно определить по объему, то есть, если пробой прошел на больших объемах нежели предыдущие бары, нужно считать его истинным. Тут конечно можно наколдовать массу кода. К примеру взять скользящую построенную на объёме или какой-либо другой индикатор. Но мы пойдём самым лёгким путём и просто будем сравнивать текущий объём с предыдущим, и если текущий объём меньше предыдущего то мы не входим в сделку считая такой сетап некорректным.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102661/volume.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102661/volume.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Результаты:&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102662/volume-per.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102662/volume-per.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Как вы видите результаты хуже чем у эталонной стратегии. Думаю если бы мы взяли иной способ работы с обьёмами результат был бы лучше. или же можно попробовать использовать несколько баров для сравнения, а не один.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Утверждение второе&lt;/span&gt;&lt;br /&gt;Обычно если пробой состоялся цена от уровня пробоя уходит на приличное расстояние. Здесь встает вопрос что считать значительным расстоянием? Будем считать, что свечка, которая пробила уровень должна быть больше двух предыдущих свечей.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102664/ver-2.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102664/ver-2.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Результаты:&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102665/ver-2-per.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102665/ver-2-per.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;У второго варианта дела тоже обстоят не очень. Хотя казалось бы здесь мы имеем дело по сути с импульсом. но видимо большинство крупных игроков просто гасят эти импульсы на корню и следовательно такой подход нужно использовать в отбойной стратегии. Или попробовать какой либо другой индикатор для определения импульса к примеру ADX.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Утверждение третье&lt;/span&gt;&lt;br /&gt;Консервативный вариант если цена пересекает не сам уровень а отложенный от него канал на заранее заданный процент.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102666/ver-3.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102666/ver-3.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Результаты:&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102667/ver-3-per.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102667/ver-3-per.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102668/ver-3-win.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102668/ver-3-win.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Данный способ обогнал эталонный вариант. Думаю это связано с тем что здесь происходит отсев большинства ложных пробоев. Которые гасятся крупными игроками и следовательно данный подход следует развивать и дальше, у меня есть пара идей как это сделать, возможно расскажу о них в следующих статьях.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Утверждение четвертое&lt;/span&gt;&lt;br /&gt;Можно определить пробой уровня, если произошло пересечение уровня и первая свеча и вторая закрылись выше уровня.&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102669/ver-4.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102669/ver-4.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Результаты:&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102670/ver-4-per.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102670/ver-4-per.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102671/ver-4-win.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102671/ver-4-win.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Ну эти результаты совсем не куда не годятся. даже затрудняюсь их объяснить. Может быть это связано с тем что современные рынки очень нестабильны и к моменту срабатывания сетапа его сила уже угасает. Возможно переход на меньший временной интервал поможет данному методу. Но на это могут ответить только тесты.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Утверждение пятое&lt;/span&gt;&lt;br /&gt;Пробоем считается касание уровня тенью свечи&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102672/ver-5.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102672/ver-5.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Результаты:&lt;/span&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102673/ver-5-per.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102673/ver-5-per.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102674/ver-5-win.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102674/ver-5-win.png?size=800x800" alt=""/&gt;&lt;/a&gt;&lt;br /&gt;Данный метод показал результаты чуть хуже эталонных. Но думаю введение дополнительного фильтра может существенно улучшить их. Как вы думаете какой фильтр можно было бы добавить?&lt;br /&gt;&lt;br /&gt;Как и всегда, все коды доступны у нас на сервере. Скачивайте, тестируйте, модифицируйте и делитесь результатами. Давайте соберём коллекцию, всех возможных методов пробоя уровня. Следующая статья будет посвящена работе с отбоем от уровня. Жду ваших комментариев и предложений. &lt;/div&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;span style="color:green"&gt;&lt;b&gt;&lt;span style="font-size:120%"&gt;Теория шаблона идеи торговой системы&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;em&gt;Собери своего робота из нужных пазлов!&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;По сути построение торговой системы практически всегда сводится к нахождению оптимального &lt;b&gt;входа&lt;/b&gt; и &lt;b&gt;выхода&lt;/b&gt;, конечно есть и более изящные системы, но в основном все сводиться к этому!&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Давайте выделим основные, самые важные блоки торговой систем:&lt;/b&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Блок входа в позицию&lt;br /&gt;&lt;li&gt;Блок выхода из позиции&lt;br /&gt;&lt;li&gt;Блок управления капиталом&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Задача алготрейдера всегда сводится к постоянному поиску наиболее подходящих комбинаций для этих трех основных блоков.&lt;br /&gt;В этом уроке собраны все самые популярные методы для перебора блоков.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe width="640" height="390" src="//www.youtube.com/embed/F5nRkoq4Iow" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:120%"&gt;Чтобы построить свою торговую систему, нужны только простейшие знания математики. Вы выделяете определенные блоки входа и выхода, который понравились Вам, а в дальнейшем отталкиваетесь от них, дорабатывая их до совершенства!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;А вот и наши блоки, которые мы упорядочили на нашем &lt;a href="http://stocksharp.com/forum/3885/Onlain-chaty--komandnaia-rabota--proiekty/" title="http://stocksharp.com/forum/3885/Onlain-chaty--komandnaia-rabota--proiekty/"&gt;сервере&lt;/a&gt; по обучению (для &lt;a href="http://stocksharp.com/lesson/wealth/" title="http://stocksharp.com/lesson/wealth/"&gt;учеников&lt;/a&gt; и подписка &lt;a href="http://stocksharp.com/lesson/bonus/" title="http://stocksharp.com/lesson/bonus/"&gt;EduLive&lt;/a&gt;). Блоки постоянно добавляются, расширяются и модернизируются:&lt;br /&gt;&lt;br /&gt;&lt;a href='https://stocksharp.ru/file/102638/1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'&gt;&lt;img src="https://stocksharp.ru/file/102638/1.png?size=800x800" alt="http://" title="http://" /&gt;&lt;/a&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 width="640" height="390" src="//www.youtube.com/embed/vcPtVrDjypo" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:140%"&gt;&lt;b&gt;Тема занятия &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;В данном видео-уроке, мы рассмотрим с вами, такой слабо освещённый визуалайзер для платформы &lt;a href="http://stocksharp.com/lesson/wealth.aspx" title="http://stocksharp.com/lesson/wealth.aspx"&gt;Wealth lab&lt;/a&gt; как &lt;a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAACAf055gYlUZrDBiDZ5UZ3iqeNWDV14I2vhU8aQT2hcc4DY7DeEyY4ZtXT8zasRihdceRsjP6_4UxUU6DW3tDIU" title="http://www2.wealth-lab.com/WL5Wiki/PVAnalysis.ashx"&gt;Analysis Series&lt;/a&gt;. Данный визуалайцзер поможет нам подобрать оптимальное значение фильтра, для нашей торговой системы. Не используя при этом большое количество вычислительных мощностей и не рискую нарваться при этом на переоптимизацию.&lt;/div&gt;</content>
  </entry>
</feed>