﻿<?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">Дочерние стратегии StopLoss и TakeProfit. </title>
  <id>~/topic/9186/dochernie-strategii-stoploss-i-takeprofit_-/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-10T11:52:42Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=9186" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/44153/</id>
    <title type="text">Спасибо. Разобрался[laugh] </title>
    <published>2018-06-16T11:32:53Z</published>
    <updated>2018-06-16T11:32:53Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Спасибо. Разобрался[laugh]&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/44080/</id>
    <title type="text">Ниже код метода расширения static class PainterExtensions { public static void TryDraw(this DrawHand...</title>
    <published>2018-06-09T18:28:52Z</published>
    <updated>2018-06-09T18:28:52Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Ниже код метода расширения&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;static class PainterExtensions
	{
		public static void TryDraw(this DrawHandler draw, ChartIndicatorElement elem, int index, params IIndicatorValue[] values)
		{
			draw(elem, index, values.Select(v =&amp;gt; v.IsEmpty ? double.NaN : v.GetValue&amp;lt;double&amp;gt;()).ToArray());
		}
	}
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/44074/</id>
    <title type="text">Здравствуйте! В какой сборке определен метод TryDraw? Ошибка: Ошибка CS1061 &amp;apos;DrawHandler&amp;quot; не содержи...</title>
    <published>2018-06-09T16:06:56Z</published>
    <updated>2018-06-09T16:07:36Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Здравствуйте! В какой сборке определен метод TryDraw?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ошибка:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ошибка	CS1061	'DrawHandler&amp;quot; не содержит определения для &amp;quot;TryDraw&amp;quot; и не удалось найти метод расширения &amp;quot;TryDraw&amp;quot;, принимающий тип &amp;quot;DrawHandler&amp;quot; в качестве первого аргумента (возможно, пропущена директива using или ссылка на сборку).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Подключенные сборки:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Windows.Media;
using Ecng.Serialization;
using Ecng.Xaml;
using StockSharp.Algo.Indicators;
using StockSharp.Localization;
using StockSharp.Xaml.Charting;
using StockSharp.Xaml.Charting.IndicatorPainters;&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/44048/</id>
    <title type="text">Добрый день Ниже реализация отрисовщика для индикатора Ишимоку namespace StockSharp.Xaml.Charting.In...</title>
    <published>2018-06-08T10:00:14Z</published>
    <updated>2018-06-08T10:00:14Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Ниже реализация отрисовщика для индикатора Ишимоку&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;namespace StockSharp.Xaml.Charting.IndicatorPainters
{
	using System;
	using System.Collections.Generic;
	using System.ComponentModel.DataAnnotations;
	using System.Windows.Media;

	using Ecng.Serialization;
	using Ecng.Xaml;

	using StockSharp.Algo.Indicators;
	using StockSharp.Localization;

	/// &amp;lt;summary&amp;gt;
	/// The renderer for &amp;lt;see cref=&amp;quot;Ichimoku&amp;quot;/&amp;gt;.
	/// &amp;lt;/summary&amp;gt;
	[Indicator(typeof(Ichimoku))]
	public class IchimokuPainter : BaseChartIndicatorPainter
	{
		private ChartIndicatorElement _tenkan;
		private ChartIndicatorElement _kijun;
		private ChartIndicatorElement _senkouA;
		private ChartIndicatorElement _chinkou;

		/// &amp;lt;summary&amp;gt;
		/// &amp;lt;see cref=&amp;quot;Ichimoku.Tenkan&amp;quot;/&amp;gt; line color.
		/// &amp;lt;/summary&amp;gt;
		[Display(
			ResourceType = typeof(LocalizedStrings),
			Name = LocalizedStrings.Str2039Key,
			Description = LocalizedStrings.Str2040Key)]
		public Color TenkanColor { get; set; } = Colors.Red;

		/// &amp;lt;summary&amp;gt;
		/// &amp;lt;see cref=&amp;quot;Ichimoku.Kijun&amp;quot;/&amp;gt; line color.
		/// &amp;lt;/summary&amp;gt;
		[Display(
			ResourceType = typeof(LocalizedStrings),
			Name = LocalizedStrings.Str2041Key,
			Description = LocalizedStrings.Str2042Key)]
		public Color KijunColor { get; set; } = Colors.Blue;

		/// &amp;lt;summary&amp;gt;
		/// &amp;lt;see cref=&amp;quot;Ichimoku.SenkouA&amp;quot;/&amp;gt; line color.
		/// &amp;lt;/summary&amp;gt;
		[Display(
			ResourceType = typeof(LocalizedStrings),
			Name = LocalizedStrings.Str2043Key,
			Description = LocalizedStrings.Str2044Key)]
		public Color SenkouAColor { get; set; } = Colors.SandyBrown;

		/// &amp;lt;summary&amp;gt;
		/// &amp;lt;see cref=&amp;quot;Ichimoku.SenkouB&amp;quot;/&amp;gt; line color.
		/// &amp;lt;/summary&amp;gt;
		[Display(
			ResourceType = typeof(LocalizedStrings),
			Name = LocalizedStrings.Str2045Key,
			Description = LocalizedStrings.Str2046Key)]
		public Color SenkouBColor { get; set; } = Colors.Thistle;

		/// &amp;lt;summary&amp;gt;
		/// &amp;lt;see cref=&amp;quot;Ichimoku.Chinkou&amp;quot;/&amp;gt; line color.
		/// &amp;lt;/summary&amp;gt;
		[Display(
			ResourceType = typeof(LocalizedStrings),
			Name = LocalizedStrings.Str2047Key,
			Description = LocalizedStrings.Str2048Key)]
		public Color ChinkouColor { get; set; } = Colors.Green;

		/// &amp;lt;summary&amp;gt;
		/// To initialize renderer.
		/// &amp;lt;/summary&amp;gt;
		/// &amp;lt;returns&amp;gt;Graphical data.&amp;lt;/returns&amp;gt;
		public override IEnumerable&amp;lt;ChartIndicatorElement&amp;gt; Init()
		{
			InnerElements.Clear();

			InnerElements.Add(_tenkan = new ChartIndicatorElement
			{
				DrawStyle = ChartIndicatorDrawStyles.Line,
				Color = TenkanColor,
				StrokeThickness = BaseElement.StrokeThickness,
				Title = LocalizedStrings.Str764
			});

			InnerElements.Add(_kijun = new ChartIndicatorElement
			{
				DrawStyle = ChartIndicatorDrawStyles.Line,
				Color = KijunColor,
				StrokeThickness = BaseElement.StrokeThickness,
				Title = LocalizedStrings.Str765
			});

			InnerElements.Add(_senkouA = new ChartIndicatorElement
			{
				DrawStyle = ChartIndicatorDrawStyles.Band,
				Color = SenkouAColor,
				AdditionalColor = SenkouBColor,
				StrokeThickness = BaseElement.StrokeThickness,
				Title = LocalizedStrings.Str767
			});

			InnerElements.Add(_chinkou = new ChartIndicatorElement
			{
				DrawStyle = ChartIndicatorDrawStyles.Line,
				Color = ChinkouColor,
				StrokeThickness = BaseElement.StrokeThickness,
				Title = LocalizedStrings.Str768
			});

			return InnerElements;
		}

		/// &amp;lt;summary&amp;gt;
		/// To process new values.
		/// &amp;lt;/summary&amp;gt;
		/// &amp;lt;param name=&amp;quot;time&amp;quot;&amp;gt;The time stamp of the new data generation.&amp;lt;/param&amp;gt;
		/// &amp;lt;param name=&amp;quot;value&amp;quot;&amp;gt;Indicator values.&amp;lt;/param&amp;gt;
		/// &amp;lt;param name=&amp;quot;draw&amp;quot;&amp;gt;The method of value drawing on the chart.&amp;lt;/param&amp;gt;
		public override void ProcessValues(DateTimeOffset time, IIndicatorValue value, DrawHandler draw)
		{
			if (!value.IsFormed)
			{
				draw(_tenkan, 0, double.NaN);
				draw(_kijun, 0, double.NaN);
				draw(_senkouA, 0, double.NaN, double.NaN);
				draw(_chinkou, 0, double.NaN);
			}
			else
			{
				var values = value.GetSimpleValues();
				var ind = (Ichimoku)value.Indicator;

				draw.TryDraw(_tenkan, 0, values[ind.Tenkan]);
				draw.TryDraw(_kijun, 0, values[ind.Kijun]);
				draw.TryDraw(_senkouA, 0, values[ind.SenkouA], values[ind.SenkouB]);
				draw(_chinkou, 0, double.NaN);
				draw.TryDraw(_chinkou, ind.Kijun.Length, values[ind.Chinkou]);
			}
		}

		#region IPersistable

		/// &amp;lt;summary&amp;gt;
		/// Load settings.
		/// &amp;lt;/summary&amp;gt;
		/// &amp;lt;param name=&amp;quot;storage&amp;quot;&amp;gt;Settings storage.&amp;lt;/param&amp;gt;
		public override void Load(SettingsStorage storage)
		{
			TenkanColor = storage.GetValue&amp;lt;SettingsStorage&amp;gt;(nameof(TenkanColor)).ToColor();
			KijunColor = storage.GetValue&amp;lt;SettingsStorage&amp;gt;(nameof(KijunColor)).ToColor();
			SenkouAColor = storage.GetValue&amp;lt;SettingsStorage&amp;gt;(nameof(SenkouAColor)).ToColor();
			SenkouBColor = storage.GetValue&amp;lt;SettingsStorage&amp;gt;(nameof(SenkouBColor)).ToColor();
			ChinkouColor = storage.GetValue&amp;lt;SettingsStorage&amp;gt;(nameof(ChinkouColor)).ToColor();
		}

		/// &amp;lt;summary&amp;gt;
		/// Save settings.
		/// &amp;lt;/summary&amp;gt;
		/// &amp;lt;param name=&amp;quot;storage&amp;quot;&amp;gt;Settings storage.&amp;lt;/param&amp;gt;
		public override void Save(SettingsStorage storage)
		{
			storage.SetValue(nameof(TenkanColor), TenkanColor.ToStorage());
			storage.SetValue(nameof(KijunColor), KijunColor.ToStorage());
			storage.SetValue(nameof(SenkouAColor), SenkouAColor.ToStorage());
			storage.SetValue(nameof(SenkouBColor), SenkouBColor.ToStorage());
			storage.SetValue(nameof(ChinkouColor), ChinkouColor.ToStorage());
		}

		#endregion
	}
}
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/44044/</id>
    <title type="text">Про IIndicatorPainter не понял. Как можно переопределить интерфейс? Да и интерфейса такого я не наше...</title>
    <published>2018-06-07T20:39:04Z</published>
    <updated>2018-06-07T20:39:04Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Про IIndicatorPainter не понял. Как можно переопределить интерфейс? Да и интерфейса такого я не нашел. Есть IChartIndicatorPainter. Вы его имели в виду? То есть для того что бы рисовать индикатор так, как мне нужно мне надо создать класс реализующий IChartIndicatorPainter, а затем экземпляр этого класса передать в ChartIndicatorElement.IndicatorPainter? Верно? Если да то можно ли где то посмотреть реализацию такого класса? Не очень понятно как реализовывать методы этого интерфейса.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/44028/</id>
    <title type="text">Добрый день Есть два варианта: 1) Подобрать подходящий графически индикатор и передавать в него знач...</title>
    <published>2018-06-06T17:08:01Z</published>
    <updated>2018-06-06T17:08:01Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Есть два варианта: 1) Подобрать подходящий графически индикатор и передавать в него значения.  В этом варианте вы контролируете что именно рисовать. 2) Изменить существующий индикатор путём переопределение интерфейса IIndicatorPainter. В этом варианте вы контролируете как именно рисовать данные.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43989/</id>
    <title type="text">Добрый день! Я не понимаю как можно рисовать в произвольном стиле. Метод добавления данных на график...</title>
    <published>2018-06-03T13:29:58Z</published>
    <updated>2018-06-03T13:29:58Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день! Я не понимаю как можно рисовать в произвольном стиле. Метод добавления данных на график (ChartDrawData.Add();) принимает аргумент типа IIndicatorValue. Перегрузки с аргументом типа decimal нет. При попытке передать decimal выбрасывает исключение, при чем ошибки уровня компиляции нет.
Скрин: &lt;a href="https://yadi.sk/i/UCLUsVhF3WxFnE" rel="nofollow" target="_blank"&gt;https://yadi.sk/i/UCLUsVhF3WxFnE&lt;/a&gt;
Пробовал создать класс реализующий интерфейс IIndicatorValue, но так и не понял куда передать нужное значение.
Код:&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code&gt;public partial class MainWindow : Window
    {
        private readonly QuikTrader _trader;
        private Security _security;
        public static CandleManager CandleManager { get; private set; }
        public static CandleSeries Series { get; private set; }
        public CandleSeries CandleSeries { get; private set; }
        public ChartCandleElement ChartCandleElement { get; private set; }
        public ChartIndicatorElement Line { get; private set; }
        public bool IsRealtiem { get; private set; }
        public TimeSpan TimeFrame =&amp;gt; TimeSpan.FromMinutes(1);
        public MainWindow()
        {
            InitializeComponent();
            _trader = new QuikTrader();
            _trader.NewSecurity += security =&amp;gt;
            {
                if (security.Id == &amp;quot;SBER@QJSIM&amp;quot; &amp;amp;&amp;amp; _security == null)
                {
                    _security = security;
                    Start();
                }
            };
            _trader.Connect();

        }

        private void Start()
        {
            if (CandleManager == null) CandleManager = new CandleManager(_trader);
            if (CandleSeries == null) CandleSeries = new CandleSeries(typeof(TimeFrameCandle), _security, TimeFrame);

            this.GuiAsync(() =&amp;gt;
            {
                InitCart();
                StartButton.IsEnabled = StopButton.IsEnabled = true;
            });
        }

        public void InitCart()
        {
            Chart.ClearAreas();

            var area = new ChartArea();
            var yAxis = area.YAxises.First();
            yAxis.AutoRange = true;
            Chart.IsAutoScroll = true;
            Chart.ShowOverview = true;
            Chart.AddArea(area);
            ChartCandleElement = new ChartCandleElement();
            Chart.AddElement(area, ChartCandleElement);
            Line = new ChartIndicatorElement(){DrawStyle = ChartIndicatorDrawStyles.Line};
            Chart.AddElement(area, Line);
        }

        private void DisplayNewMarketData(CandleSeries candleSeries, Candle candle)
        {
            IsRealtiem = candle.OpenTime + TimeFrame &amp;gt;= DateTimeOffset.Now || IsRealtiem;

            var chartDrawData = new ChartDrawData();
            var group = chartDrawData.Group(candle.OpenTime);
            group.Add(ChartCandleElement, candle);
            group.Add(Line, 221.1m); // Добавляем данные для отрисовки 
            if (IsRealtiem || candle.State == CandleStates.Finished)
                Chart.Draw(chartDrawData);
        }

        private void StartButton_Click(object sender, RoutedEventArgs e)
        {
            CandleManager.Processing += DisplayNewMarketData;
            CandleManager.Start(CandleSeries);
        }

        private void StopButton_Click(object sender, RoutedEventArgs e)
        {
            CandleManager.Processing -= DisplayNewMarketData;
            CandleManager.Stop(CandleSeries);
            IsRealtiem = false;
            InitCart();
        }
    }
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43265/</id>
    <title type="text">Все элементы графика не привязаны к торговым объектам. Вы можете выбрать подходящий элемент и рисова...</title>
    <published>2018-04-13T09:05:06Z</published>
    <updated>2018-04-13T09:05:06Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Все элементы графика не привязаны к торговым объектам. Вы можете выбрать подходящий элемент и рисовать на графике в произвольном стиле.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43252/</id>
    <title type="text">Здравствуйте! Я смотрел этот пример. Я же написал что это немного не то. Если я буду использовать тр...</title>
    <published>2018-04-12T13:25:43Z</published>
    <updated>2018-04-12T13:25:43Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Здравствуйте! Я смотрел этот пример. Я же написал что это немного не то. Если я буду использовать трейлинг то на истории я не смогу видеть как он смещался. SampleChartActiveOrders показывает просто уровни. На скрине выше видно как стоп смещается. Может можно использовать значения не привязанные к ордерам? Рисовать ломаную линию на графике указав координаты оси X (время) и оси Y (цена).&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43246/</id>
    <title type="text">Добрый день Вы можете использовать маркер заявок. Пример использования показан в SampleChartActiveOr...</title>
    <published>2018-04-12T10:24:20Z</published>
    <updated>2018-04-12T10:24:20Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Вы можете использовать маркер заявок. Пример использования показан в SampleChartActiveOrders&lt;/p&gt;
&lt;p&gt;&lt;img src="/file/106497/79f0ac5f8fd5d57e2febe73ccdd8e5fd.png" alt="79f0ac5f8fd5d57e2febe73ccdd8e5fd.png" /&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43234/</id>
    <title type="text">SampleActiveOrders это немного не то. Вот так можно ли как то рисовать? </title>
    <published>2018-04-11T19:51:09Z</published>
    <updated>2018-04-11T19:51:09Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;SampleActiveOrders это немного не то. Вот так можно ли как то рисовать?
&lt;img src="https://i.ytimg.com/vi/fSWguUhKe-E/maxresdefault.jpg" alt="" /&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43067/</id>
    <title type="text">Добрый день График не зависит от типов торговых данных. Вы можете изобразить ваши заявки любым подхо...</title>
    <published>2018-03-27T12:21:47Z</published>
    <updated>2018-03-27T12:21:47Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;График не зависит от типов торговых данных. Вы можете изобразить ваши заявки любым подходящим элементом графика. Например уровнями &lt;a href="http://doc.stocksharp.ru/html/T_StockSharp_Xaml_Charting_ChartOrderElement.htm"&gt;http://doc.stocksharp.ru/html/T_StockSharp_Xaml_Charting_ChartOrderElement.htm&lt;/a&gt; Наш пример SampleActiveOrders демонстрирует работу с данным элементом.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43061/</id>
    <title type="text">Для стопов и тейков есть элемент для отрисовки на графике? </title>
    <published>2018-03-26T13:27:50Z</published>
    <updated>2018-03-26T18:08:46Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Для стопов и тейков есть элемент для отрисовки на графике?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/43025/</id>
    <title type="text">Добрый день Защитные стратегии выставляют лимитные заявки. Если вам нужны сто заявки то их необходим...</title>
    <published>2018-03-21T19:58:52Z</published>
    <updated>2018-03-21T19:58:52Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Защитные стратегии выставляют лимитные заявки. Если вам нужны сто заявки то их необходимо выставлять в коде как обычные заявки.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/42982/</id>
    <title type="text">Вот проект Wpf - https://github.com/Constalgo/StopLossAndTakeProfit. Вместо стоп заявок стратегия вы...</title>
    <published>2018-03-15T21:08:14Z</published>
    <updated>2018-03-15T21:08:14Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Вот проект Wpf - &lt;a href="https://github.com/Constalgo/StopLossAndTakeProfit" target="_blank"&gt;https://github.com/Constalgo/StopLossAndTakeProfit&lt;/a&gt;.
Вместо стоп заявок стратегия выставляет лимитку с ценой сделки. Потому она сразу же исполняется. Таблица стоп заявок в квике пуста. Так же обратите внимание что при клике по кнопке автовыравнивание приложение зависает вместе с квиком.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/42978/</id>
    <title type="text">Защитная стратегия активируется при пересечении цены. В вашем логе нет отладочной информации с указа...</title>
    <published>2018-03-15T11:26:18Z</published>
    <updated>2018-03-15T11:26:18Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Защитная стратегия активируется при пересечении цены. В вашем логе нет отладочной информации с указанием цен стакана или тиковой сделки. Вероятно было пробитие стаканом или сделкой защитного уровня.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/42934/</id>
    <title type="text">Support: Добрый день Если вы хотите чтобы позиция закрывалась одной заявкой то необходимо выставить ...</title>
    <published>2018-03-12T11:42:27Z</published>
    <updated>2018-03-12T11:42:27Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(42931)" rel="nofollow" target="_blank"&gt;Support&lt;/a&gt;:&lt;/strong&gt;
Добрый день&lt;/p&gt;
&lt;p&gt;Если вы хотите чтобы позиция закрывалась одной заявкой то необходимо выставить свойство QuotingVolume
Здравствуйте.
Меня больше волнует почему стоп срабатывает сразу после получения сделки, и как отрисовать стоп и тейк на графике.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/42931/</id>
    <title type="text">Добрый день Если вы хотите чтобы позиция закрывалась одной заявкой то необходимо выставить свойство ...</title>
    <published>2018-03-12T11:24:53Z</published>
    <updated>2018-03-12T11:24:53Z</updated>
    <author>
      <name>Support</name>
      <uri>https://stocksharp.ru/users/97869/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день&lt;/p&gt;
&lt;p&gt;Если вы хотите чтобы позиция закрывалась одной заявкой то необходимо выставить свойство QuotingVolume&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/42918/</id>
    <title type="text">Думал что разобрался, но еще больше запутался. Такое ощущение что стратегия бросает заявку в стакан ...</title>
    <published>2018-03-10T21:29:16Z</published>
    <updated>2018-03-10T21:29:16Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Думал что разобрался, но еще больше запутался.
Такое ощущение что стратегия бросает заявку в стакан по цене сделки. Закрывает не весь объем позиции, а только часть. В основном только 1 лот. Таблица стоп заявок в квике не отображает стоп заявки установленные стратегией.
В примере используется OrderConditionalGrid, но он закрыт и как там все работает посмотреть нельзя. Из примера заявки выставляются вроде как нормально. И квик отображает стоп заявки в таблице.
Код:&lt;/p&gt;
&lt;div class="spoiler"&gt;
&lt;pre&gt;&lt;code&gt;        private void CandleManagerOnProcessing(CandleSeries candleSeries, Candle candle)
        {
            if (IsRealTime &amp;amp;&amp;amp; Position == 0 &amp;amp;&amp;amp; candle.State == CandleStates.Finished)
            {
                var order = new Order()
                {
                    Type = OrderTypes.Market,
                    Volume = Volume,
                    Direction = Sides.Buy
                };
                order.WhenNewTrade(Connector).Do((trade) =&amp;gt;
                {
                    // для сделки добавляем защитную пару стратегии
                    // выставляет тейк-профит в 40 пунктов
                    var takeProfit = new TakeProfitStrategy(trade, 0.5);

                    // выставляет стоп-лосс в 20 пунктов
                    var stopLoss = new StopLossStrategy(trade, 0.5);

                    var protectiveStrategies = new TakeProfitStopLossStrategy(takeProfit, stopLoss);
                    ChildStrategies.Add(protectiveStrategies);
                }).Apply(this);
                RegisterOrder(order);
            }
        }

&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Лог:&lt;/p&gt;
&lt;details&gt;&lt;summary&gt;2018/03/10 21:12:00.693|       |BuySellStrategy|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=10.
2018/03/10 21:12:00.693|       |BuySellStrategy|Заявка 76313444 (0x23EA4AA) больше не активна.
2018/03/10 21:12:00.693|       |BuySellStrategy|Новая Buy сделка 2478978512 по цене 272.36 на 10 заявки 76313444.
2018/03/10 21:12:00.693|       |TPS_SBER@QJSIM_NL0011100043|Стратегия Запущена. [0,2]. Позиция 0.
2018/03/10 21:12:00.693|       |TPS_SBER@QJSIM_NL0011100043|Защита позиции Buy/272.36 с объемом 10. Уровень=0.5, Скользящий=False, Маркет-заявки=False, Котирование=False, Проскальзывание=0
2018/03/10 21:12:00.693|       |TPS_SBER@QJSIM_NL0011100043|Котирование на Sell объема 10.
2018/03/10 21:12:00.693|       |SLS_SBER@QJSIM_NL0011100043|Стратегия Запущена. [0,2]. Позиция 0.
2018/03/10 21:12:00.693|       |SLS_SBER@QJSIM_NL0011100043|Защита позиции Buy/272.36 с объемом 10. Уровень=0.5, Скользящий=False, Маркет-заявки=False, Котирование=False, Проскальзывание=0
2018/03/10 21:12:00.693|       |SLS_SBER@QJSIM_NL0011100043|Котирование на Sell объема 10.
2018/03/10 21:12:00.693|       |TPSLS_SBER@QJSIM_NL0011100043|Стратегия Запущена. [2,1]. Позиция 0.
2018/03/10 21:12:00.804|       |TPS_SBER@QJSIM_NL0011100043|Защита активирована. Закрытие позиции по 272.36.
2018/03/10 21:12:00.804|       |TPS_SBER@QJSIM_NL0011100043|Цена текущей NULL и лучшей 272.36.
2018/03/10 21:12:00.804|       |TPS_SBER@QJSIM_NL0011100043|Лучший бид 272.35 и лучший аск 272.36.
2018/03/10 21:12:00.804|       |TPS_SBER@QJSIM_NL0011100043|Регистрация новой  (0x38F75DF) заявки на Sell с ценой 272.36 и объемом 1.
2018/03/10 21:12:00.804|       |QuikTrader|RegisterOrder: 0/ SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=None Бал=0
2018/03/10 21:12:00.804|       |SLS_SBER@QJSIM_NL0011100043|Стратегия останавливается. [0,2]. Позиция 0.
2018/03/10 21:12:00.804|       |SLS_SBER@QJSIM_NL0011100043|Правило 'Новые сделки инструмента SBER@QJSIM (0x38B3767)'. Приостановлено.
2018/03/10 21:12:00.804|Warning|SLS_SBER@QJSIM_NL0011100043|Заканчиваем котирование с неисполненным объемом равный 10.
2018/03/10 21:12:00.804|       |SLS_SBER@QJSIM_NL0011100043|Ожидание снятия всех активных заявок.
2018/03/10 21:12:00.804|       |SLS_SBER@QJSIM_NL0011100043|Стратегия остановлена. [0,2]. Позиция 0.
2018/03/10 21:12:00.804|       |QuikTrader|New order: 76313449/ SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=Pending Бал=1
2018/03/10 21:12:14.245|Warning|QuikTrader|Заявка 3648755200 не найдена.
2018/03/10 21:12:14.245|       |QuikTrader|Order changed: 76313449/3648755200 SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=Active Бал=1
2018/03/10 21:12:14.245|       |BuySellStrategy|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=10.
2018/03/10 21:12:14.245|       |TPSLS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:14.245|       |TPS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:14.245|       |TPS_SBER@QJSIM_NL0011100043|Позиция изменилась на 0. Оставшийся объем 10.
2018/03/10 21:12:14.245|       |TPS_SBER@QJSIM_NL0011100043|Заявка 76313449 (0x38F75DF) принята биржей.
2018/03/10 21:12:14.245|       |TPS_SBER@QJSIM_NL0011100043|Сброс счетчика ошибок регистрации с 0 до нуля.
2018/03/10 21:12:17.637|       |QuikTrader|Инструмент SBER@QJSIM зарегистрирован на получение рыночных данных для Trades.
2018/03/10 21:12:18.704|       |QuikTrader|Order changed: 76313449/3648755200 SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=Active Бал=1
2018/03/10 21:12:18.704|       |BuySellStrategy|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=10.
2018/03/10 21:12:18.704|       |TPSLS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:18.704|       |TPS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:18.704|       |TPS_SBER@QJSIM_NL0011100043|Позиция изменилась на 0. Оставшийся объем 10.
2018/03/10 21:12:18.704|       |BuySellStrategy|Новая Sell сделка 2478978684 по цене 272.36 на 1 заявки 76313449.
2018/03/10 21:12:18.704|       |TPSLS_SBER@QJSIM_NL0011100043|Новая Sell сделка 2478978684 по цене 272.36 на 1 заявки 76313449.
2018/03/10 21:12:18.704|       |TPS_SBER@QJSIM_NL0011100043|Новая Sell сделка 2478978684 по цене 272.36 на 1 заявки 76313449.
2018/03/10 21:12:18.713|       |QuikTrader|Order changed: 76313449/3648755200 SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=Active Бал=1
2018/03/10 21:12:18.713|       |BuySellStrategy|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=10.
2018/03/10 21:12:18.713|       |TPSLS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:18.713|       |TPS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:18.713|       |TPS_SBER@QJSIM_NL0011100043|Позиция изменилась на 0. Оставшийся объем 10.
2018/03/10 21:12:18.713|       |QuikTrader|Order changed: 76313449/3648755200 SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=Active Бал=1
2018/03/10 21:12:18.713|       |BuySellStrategy|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=10.
2018/03/10 21:12:18.713|       |TPSLS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:18.713|       |TPS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=0.
2018/03/10 21:12:18.713|       |TPS_SBER@QJSIM_NL0011100043|Позиция изменилась на 0. Оставшийся объем 10.
2018/03/10 21:12:18.723|       |QuikTrader|Order changed: 76313449/3648755200 SBER@QJSIM NL0011100043 Продажа Цена=272.36 Объем=1 Сост=Done Бал=0
2018/03/10 21:12:18.723|       |BuySellStrategy|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=9.
2018/03/10 21:12:18.723|       |TPSLS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=-1.
2018/03/10 21:12:18.723|       |TPS_SBER@QJSIM_NL0011100043|Новая позиция: (S#:SBER@QJSIM, Native:,Type:Stock, NL0011100043)=-1.
2018/03/10 21:12:18.723|       |TPS_SBER@QJSIM_NL0011100043|Позиция изменилась на -1. Оставшийся объем 9.
2018/03/10 21:12:18.723|       |TPS_SBER@QJSIM_NL0011100043|Заявка 76313449 (0x38F75DF) полностью исполнилась. Оставшийся объем 9.
2018/03/10 21:12:18.723|       |TPS_SBER@QJSIM_NL0011100043|Заявка 76313449 (0x38F75DF) больше не активна.&lt;/summary&gt;
&lt;/details&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/42916/</id>
    <title type="text">Здравствуйте! С данной проблемой вроде разобрался. Скажите пожалуйста как можно отрисовывать стоп-ло...</title>
    <published>2018-03-10T17:22:51Z</published>
    <updated>2018-03-10T17:22:51Z</updated>
    <author>
      <name>Константин</name>
      <uri>https://stocksharp.ru/users/98279/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Здравствуйте! С данной проблемой вроде разобрался.
Скажите пожалуйста как можно отрисовывать стоп-лосс и тейк-профит на графике?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>