﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Изменение Order.StopCondition.Parameters в стоп-заявке, после Order.State == Done</title>
  <id>~/topic/2417/izmenenie-order_stopcondition_parameters-v-stop-zayavke-posle-order_state--done/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-25T15:27:38Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=2417" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/16563/</id>
    <title type="text">Сенкс. Сори, а как редактировать документацию? Открыть в любом текстовом редакторе aml файл в папке ...</title>
    <published>2012-02-17T11:11:16Z</published>
    <updated>2012-02-17T11:11:16Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Maxim &lt;a href="https://stocksharp.com/posts/m/16562/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Сенкс.&lt;br /&gt;&lt;br /&gt;Сори, а как редактировать документацию?&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Открыть в любом текстовом редакторе aml файл в папке Topics.&lt;br /&gt;Более правильно и структурно - через программу &lt;a target="_blank" rel="nofollow" href="https://stocksharp.com/away/?u=AQAAAAAAAACJhfnz7xLUA2_rSqZoyGW0JGlPibnw4wa8yLuu9bMs9A" title="http://sandcastle.codeplex.com/"&gt;SandCastle&lt;/a&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16562/</id>
    <title type="text">Сенкс. Сори, а как редактировать документацию?</title>
    <published>2012-02-17T11:08:26Z</published>
    <updated>2012-02-17T11:08:26Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.com/users/6182/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Сенкс.&lt;br /&gt;&lt;br /&gt;Сори, а как редактировать документацию?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16559/</id>
    <title type="text">Ник goricap добавил</title>
    <published>2012-02-17T09:38:03Z</published>
    <updated>2012-02-17T09:38:03Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Maxim &lt;a href="https://stocksharp.com/posts/m/16557/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Ник goricap&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;добавил</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16557/</id>
    <title type="text">Ник goricap</title>
    <published>2012-02-17T08:48:31Z</published>
    <updated>2012-02-17T08:48:31Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.com/users/6182/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Ник goricap</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16555/</id>
    <title type="text">Доступа на кодплекс нет. Насчет дебагера, не совсем представляю как ловить изменение Order.StopCondi...</title>
    <published>2012-02-17T08:31:32Z</published>
    <updated>2012-02-17T08:31:32Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Maxim &lt;a href="https://stocksharp.com/posts/m/16554/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Доступа на кодплекс нет.&lt;br /&gt;&lt;br /&gt;Насчет дебагера, не совсем представляю как ловить изменение Order.StopCondition.Parameters, не имея сорсов стокшарпа.&lt;br /&gt;Со своей стороны кода я этого не словлю.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Какой ник на codeplex? Если нет - надо зарегаться и написать мне ник&lt;br /&gt;&lt;br /&gt;Отследить по order.Changed&lt;br /&gt;Сорсы S# в данном случае никак не помогут :)</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16554/</id>
    <title type="text">Доступа на кодплекс нет. Насчет дебагера, не совсем представляю как ловить изменение Order.StopCondi...</title>
    <published>2012-02-17T08:29:20Z</published>
    <updated>2012-02-17T08:29:20Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.com/users/6182/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Доступа на кодплекс нет.&lt;br /&gt;&lt;br /&gt;Насчет дебагера, не совсем представляю как ловить изменение Order.StopCondition.Parameters, не имея сорсов стокшарпа.&lt;br /&gt;Со своей стороны кода я этого не словлю.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16553/</id>
    <title type="text">Тогда надо исправить документацию. В ней написано следующее: «Done - заявка более не активна на бирж...</title>
    <published>2012-02-17T08:18:05Z</published>
    <updated>2012-02-17T08:18:05Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Maxim &lt;a href="https://stocksharp.com/posts/m/16550/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Тогда надо исправить документацию. В ней написано следующее:&lt;br /&gt;&amp;#171;Done - заявка более не активна на бирже, и по ней не может прийти ни одно изменение.&amp;#187;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Касательно моего вопроса. А что может измениться в Order.StopCondition.Parameters?&lt;br /&gt;Там же вроде данные, которые не меняются после создания заявки.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Поправите доку? Если нет доступа на codeplex - дам.&lt;br /&gt;&lt;br /&gt;По вашему вопросу - проще под дебагером посмотреть что конкретно там меняется.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16550/</id>
    <title type="text">Тогда надо исправить документацию. В ней написано следующее: «Done - заявка более не активна на бирж...</title>
    <published>2012-02-17T07:49:22Z</published>
    <updated>2012-02-17T07:49:22Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.com/users/6182/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Тогда надо исправить документацию. В ней написано следующее:&lt;br /&gt;&amp;#171;Done - заявка более не активна на бирже, и по ней не может прийти ни одно изменение.&amp;#187;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Касательно моего вопроса. А что может измениться в Order.StopCondition.Parameters?&lt;br /&gt;Там же вроде данные, которые не меняются после создания заявки.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16549/</id>
    <title type="text">Есть несколько таблиц, которые выводятся по DDE. И по которым можно понять что заявка перешла в сост...</title>
    <published>2012-02-17T07:45:14Z</published>
    <updated>2012-02-17T07:45:14Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Есть несколько таблиц, которые выводятся по DDE. И по которым можно понять что заявка перешла в состояние Done.&lt;br /&gt;Меняем на Done по той, по которой данные пришли первой. Затем по другой, к примеру, узнаём о времени исполнения - заполняем его.&lt;br /&gt;&lt;br /&gt;Так что всё возможно с квиком.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/16548/</id>
    <title type="text">Добрый день. Я создаю стоп-завку StopLimit типа. В методе, который подписан к событию Quik.StopOrder...</title>
    <published>2012-02-17T07:25:37Z</published>
    <updated>2012-02-17T07:25:37Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.com/users/6182/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Добрый день.&lt;br /&gt;Я создаю стоп-завку StopLimit типа.&lt;br /&gt;В методе, который подписан к событию Quik.StopOrdersChanged, я проверяю условие Order.State == OrderStates.Done.&lt;br /&gt;Если это условие выполнилось, то я записываю ордер в SQL.&lt;br /&gt;При формировании данных для SQL я пробегаю циклом foreach по словарю  Order.StopCondition.Parameters.&lt;br /&gt;Но во время этого пробега, появляется ошибка &amp;#171;Collection was modified; enumeration operation may not execute.&amp;#187;&lt;br /&gt;Правильно ли я понимаю, что после того, как заявка стала Done, в ней ничего уже не должно изменяться?&lt;br /&gt;&lt;br /&gt;Помогите, пожалуйста, разобраться это баг или фича?&lt;br /&gt;Возможно я что-то понимаю и делаю не так?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Код формирования стоп-заявки&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;

Order _newOrder = new Order
{
	Type = OrderTypes.Conditional,
	Volume = __volume,
	Price =  Price,
	Security = paperSecurity,
	Direction = __direct,
	ExpiryDate = DateTime.MaxValue,
	Portfolio = PortfolioStock,
	StopCondition = new QuikStopCondition
	{
		Type = QuikStopConditionTypes.StopLimit,
		StopPrice = PriceHSignal,
		ActiveTime = null
	}
};
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Код записи заявки в SQL&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;

private static void writeOrdersToSql(IEnumerable&amp;lt;Order&amp;gt; __orders)
{
	using (SqlConnection _sqlConn = new SqlConnection(SqlQuik.SqlConnStr))
	{
		_sqlConn.Open();

		foreach (Order _order in __orders)
			if (_order.State == OrderStates.Done)
			{
				// Узнаем условие стоп заявки, если это стоп заявка
				String _stopCondition = String.Empty;
				if (_order.StopCondition != null)                        
					foreach (var _param in _order.StopCondition.Parameters)
						if (_param.Value != null)
							_stopCondition += _param.Key + &amp;quot; : &amp;quot; + _param.Value.ToString() + &amp;quot;; &amp;quot;;

				if (_stopCondition == String.Empty)
					_stopCondition = &amp;quot;NULL&amp;quot;;
				else
					_stopCondition = &amp;quot;&amp;#39;&amp;quot; + _stopCondition + &amp;quot;&amp;#39;&amp;quot;;
				
			        // Формирование строки SQL и запись в SQL
			        // ..................................
			}
	}
} 
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Message&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;

&amp;quot;Collection was modified; enumeration operation may not execute.&amp;quot;
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;StackTrace&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:plain"&gt;

at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Enumerator.MoveNext()
at FirmName.ProgrammName.SqlQuik.writeOrdersToSql(IEnumerable`1 __orders) in D:\C\FirmName\FirmNameSolution\ProgrammName\SqlQuik\SqlQuik.cs:line 376
at FirmName.ProgrammName.SqlQuik.&amp;lt;&amp;gt;c__DisplayClass8.&amp;lt;quik_OrdersChanged&amp;gt;b__7() in D:\C\FirmName\FirmNameSolution\ProgrammName\SqlQuik\SqlQuik.cs:line 335
at System.Threading.Tasks.Task.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>