﻿<?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">Получение размера позиции</title>
  <id>~/topic/3920/poluchenie-razmera-pozitsii/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-14T14:31:27Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=3920" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/47872/</id>
    <title type="text">Всё ещё актуально </title>
    <published>2019-06-21T16:00:59Z</published>
    <updated>2019-06-21T16:00:59Z</updated>
    <author>
      <name>ljob</name>
      <uri>https://stocksharp.com/users/104632/</uri>
      <email>info@stocksharp.com</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.com/posts/m/38965/</id>
    <title type="text">Вставлю свои 5 копеек по теме. Как раз сегодня разбирался с данной штукой. Выводы сделал следующие. ...</title>
    <published>2017-01-25T23:43:27Z</published>
    <updated>2017-01-26T15:42:27Z</updated>
    <author>
      <name>Slepoy</name>
      <uri>https://stocksharp.com/users/820/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Вставлю свои 5 копеек по теме. Как раз сегодня разбирался с данной штукой. Выводы сделал следующие.
&lt;u&gt;Есть два способа грузануть открытые позиции Квика в бота: &lt;/u&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Перебрать коллекцию  Connector.Positions&lt;/li&gt;
&lt;li&gt;Использовать метод Connector.GetPosition()&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;По второму способу скажу следующее: никогда не пользуйтесь им ))). Никогда не пользуйтесь методом GetPosition(), вообще забудьте про него, т.к. метод очень хитрый. Если по каким-либо причинам, он не найдёт вам нужную позицию, то он тупо сам создаст новую! То есть, он на основе переданной ему инфы: портфель, инструмент и т.д. - создаст новый полупустой объект-позицию, и засунет его в коллекцию Connector.Positions. Итого у вас в коллекции появится левая полупустая позиция ))). И если у вас такой метод используется в нескольких стратегиях, то он вам везде создаст кучу таких полупустых объектов. Он захламит коллекцию Connector.Positions. Вы полностью запутайтесь, и запросто ваш код может из коллекции вынуть такой полупустой объект, в котором позиция нулевая, и на её основе принять неверное фатальное решение. Это реальная опасность! Так что забудьте про этот метод, лучше его не применять. Если хотите создать объект-позицию сами? Без проблем - воспользуйтесь обычным конструктором класса Позишен. Кстати, на акциях данный метод в демо-Квике не пашет, возвращет новый созданный полупустой объект ))). Почему не пашет? Ну скорей всего из-за того, что коннектор Квика путает названия у инструментов при создании объектов-позиций, об этом чуть ниже пойдёт речь.&lt;/p&gt;
&lt;p&gt;В общем, лучше использовать способ номер 1, т.е. перебирать коллецию коннектора Connector.Positions:
this.Position = Connector.Positions.FirstOrDefault(p =&amp;gt; p.Security == Security) == null ? 0 : (Connector.Positions.FirstOrDefault(p =&amp;gt; p.Security == Security).CurrentValue ?? 0);&lt;/p&gt;
&lt;p&gt;Для фьючей - работает замечательно! А вот с акциями - беда! Коннектор Квика - путает инструменты. Например, возьмём сбер. Если запросить вручную инструмент сбер, код SBER, то в бота в коллекцию Connector.Securities подгрузятся следующие объекты:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;{SBER@MICEX}&lt;/li&gt;
&lt;li&gt;{SBER@QJSIM}&lt;/li&gt;
&lt;li&gt;{SBER-ME@EQRP_INFO}&lt;/li&gt;
&lt;li&gt;{SBER@EQRP_INFO}&lt;/li&gt;
&lt;li&gt;{SBERP@EQRP_INFO}&lt;/li&gt;
&lt;li&gt;{SBERP@QJSIM}
Из 6 объектов-инструментов, мы к примеру торгуем по {SBER@QJSIM}. К примеру, мы по данному инструменту откроем в демо-квике 19 лотов лонга. Далее, запустим бота и попытаемся их подгрузить в нашу стратегию. Поставим точку остановки после строки  &amp;quot;this.Position = Connector.Positions.FirstOrDefault(p =&amp;gt; p.Security == Security) == null ? 0 : (Connector.Positions.FirstOrDefault(p =&amp;gt; p.Security == Security).CurrentValue ?? 0);&amp;quot; и поглядим чего у нас находится в переменных и коллекциях. А будет следующее: метод  FirstOrDefault() не найдёт совпадений в коллекции Connector.Positions и выдаст нам нулл. Если мы глянем коллекцию Connector.Positions, то в ней мы не найдём объект-позицию с инструментом {SBER@QJSIM}. Мы там найдём другой объект-позицию, с инструментом {SBER@MICEX} по которому как раз и будут висеть наши открытые 19 лотов. То есть, произошла путаница инструментов! Кстати, у обоих инструментов один и тот же код. Я не знаю счем это связано, возможно Квик так присылает инфу, а может так инфу заполняем коннектор СтокШарпа. Ведь объекты-позиции он создаёт сам, и возможно путает инструменты именно по коду. Короче, я не знаю на чьей стороне баг. С другими акциями, где встречается несколько одинаковых кодов, такая же хрень, с лукойлом например. А вот с фьючами - всё нормально, т.к. нет одноимённых названий, там нечего перепутать ))). В общем, я акциями не торгую т.е. мне данный баг по барабану ))) А фьючи работают нормально и так. Будут ли разработчики править данный баг - я не знаю, просто сегодня я на него случайно напоролся и решил что лучше сообщить о сей находке. Ниже скрин с демонстрацией проблемы.
&lt;a href="http://stocksharp.ru/file/104117"&gt;http://stocksharp.ru/file/104117&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29730/</id>
    <title type="text">Похоже я разобрался, при вызове метода GetPosition() нужно ОБЯЗАТЕЛЬНО указывать счёт depoName, инач...</title>
    <published>2014-02-21T11:11:11Z</published>
    <updated>2016-08-16T00:16:55Z</updated>
    <author>
      <name>Axell</name>
      <uri>https://stocksharp.com/users/373/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Похоже я разобрался, при вызове метода GetPosition() нужно ОБЯЗАТЕЛЬНО указывать счёт depoName, иначе выводится 0. Наверное надо метод или документацию подправить.&lt;/p&gt;
&lt;p&gt;К сожалению только сейчас нашёл &lt;a href="http://stocksharp.com/forum/3143/Trader-GetPosition-nie-rabotaiet/"&gt;http://stocksharp.com/forum/3143/Trader-GetPosition-nie-rabotaiet/&lt;/a&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29735/</id>
    <title type="text">Михаил Сухов: Документация все верно отражает. Вы видимо не понимаете смысл депозитария и что это та...</title>
    <published>2014-02-21T12:55:06Z</published>
    <updated>2014-02-21T12:55:06Z</updated>
    <author>
      <name>Axell</name>
      <uri>https://stocksharp.com/users/373/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(29731)" rel="nofollow" target="_blank"&gt;Михаил Сухов&lt;/a&gt;:&lt;/strong&gt;
Документация все верно отражает. Вы видимо не понимаете смысл депозитария и что это такое.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Возможно я хуже вас понимаю смысл депозитария, но позвольте возразить.
В документации написано к методу ITrader.GetPosition написано:
&amp;quot;&lt;em&gt;depoName (&lt;strong&gt;Optional&lt;/strong&gt;)
Тип: В сетиSystem.String
Название депозитария, где находится физически ценная бумага. &lt;strong&gt;По-умолчанию передается пустая строка&lt;/strong&gt;, что означает суммарную позицию по &lt;strong&gt;всем депозитариям&lt;/strong&gt;.&lt;/em&gt;&amp;quot;
Тогда почему при передаче пустой строки или &amp;quot;&amp;quot;, метод не возвращает суммарную позицию по всем депозитариям? Брокер Церих.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29731/</id>
    <title type="text">Axell: Похоже я разобрался, при вызове метода GetPosition() нужно ОБЯЗАТЕЛЬНО указывать счёт depoNam...</title>
    <published>2014-02-21T11:56:28Z</published>
    <updated>2014-02-21T11:56:28Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(29730)" rel="nofollow" target="_blank"&gt;Axell&lt;/a&gt;:&lt;/strong&gt;
Похоже я разобрался, при вызове метода GetPosition() нужно ОБЯЗАТЕЛЬНО указывать счёт depoName, иначе выводится 0. Наверное надо метод или документацию подправить.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Документация все верно отражает. Вы видимо не понимаете смысл депозитария и что это такое.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29724/</id>
    <title type="text">Axell: Исключения не выбрасывает, выводит 0, хотя позиция есть. Приходится по прежнему использовать ...</title>
    <published>2014-02-21T08:57:00Z</published>
    <updated>2014-02-21T08:57:00Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(29723)" rel="nofollow" target="_blank"&gt;Axell&lt;/a&gt;:&lt;/strong&gt;
Исключения не выбрасывает, выводит 0, хотя позиция есть. Приходится по прежнему использовать Connector.Positions.FirstOrDefault(p =&amp;gt; p.Security == s).CurrentValue&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Так может там портфели разные? В GetPosition вы передаете портфель. А в LINQ запросы вы портфель не используете.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29723/</id>
    <title type="text">Исключения не выбрасывает, выводит 0, хотя позиция есть. Приходится по прежнему использовать Connect...</title>
    <published>2014-02-21T08:39:41Z</published>
    <updated>2014-02-21T08:39:41Z</updated>
    <author>
      <name>Axell</name>
      <uri>https://stocksharp.com/users/373/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Исключения не выбрасывает, выводит 0, хотя позиция есть. Приходится по прежнему использовать Connector.Positions.FirstOrDefault(p =&amp;gt; p.Security == s).CurrentValue&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29722/</id>
    <title type="text">Axell: В 4.2.2.6 метод ITrader.GetPosition()(Получить позицию по портфелю и инструменту) как и прежд...</title>
    <published>2014-02-21T08:31:43Z</published>
    <updated>2014-02-21T08:31:43Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(29721)" rel="nofollow" target="_blank"&gt;Axell&lt;/a&gt;:&lt;/strong&gt;
В 4.2.2.6 метод ITrader.GetPosition()(Получить позицию по портфелю и инструменту) как и прежде не работает :(&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Выбрасывает исключение? Приведите текст.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29721/</id>
    <title type="text">В 4.2.2.6 метод ITrader.GetPosition()(Получить позицию по портфелю и инструменту) как и прежде не ра...</title>
    <published>2014-02-21T08:19:27Z</published>
    <updated>2014-02-21T08:19:27Z</updated>
    <author>
      <name>Axell</name>
      <uri>https://stocksharp.com/users/373/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;В 4.2.2.6 метод ITrader.GetPosition()(Получить позицию по портфелю и инструменту) как и прежде не работает :(&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/29120/</id>
    <title type="text">Первый возвращает 0, второй &amp;quot;Текущий остаток&amp;quot; из таблицы &amp;quot;Позиции по бумагам&amp;quot; в Квике. В 4.2.2.2 нич...</title>
    <published>2014-01-17T13:57:28Z</published>
    <updated>2014-01-17T13:57:28Z</updated>
    <author>
      <name>Axell</name>
      <uri>https://stocksharp.com/users/373/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Первый возвращает 0, второй &amp;quot;Текущий остаток&amp;quot; из таблицы &amp;quot;Позиции по бумагам&amp;quot; в Квике.
В 4.2.2.2 ничего не поменялось :(&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27227/</id>
    <title type="text">Axell: У меня тоже не работает Trader.GetPosition(Portfolio, Security)[cursing] Достаю позу с помощь...</title>
    <published>2013-08-29T13:01:33Z</published>
    <updated>2013-08-29T13:01:33Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27223)" rel="nofollow" target="_blank"&gt;Axell&lt;/a&gt;:&lt;/strong&gt;
У меня тоже не работает Trader.GetPosition(Portfolio, Security)[cursing]
Достаю позу с помощью Trader.Positions.FirstOrDefault(s =&amp;gt; s.Security == Security).CurrentValue&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Первый способ что возвращает в вашей ситуации? И что возвращает второй?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27223/</id>
    <title type="text">У меня тоже не работает Trader.GetPosition(Portfolio, Security)[cursing] Достаю позу с помощью Trade...</title>
    <published>2013-08-29T09:06:42Z</published>
    <updated>2013-08-29T09:06:42Z</updated>
    <author>
      <name>Axell</name>
      <uri>https://stocksharp.com/users/373/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;У меня тоже не работает Trader.GetPosition(Portfolio, Security)[cursing]
Достаю позу с помощью Trader.Positions.FirstOrDefault(s =&amp;gt; s.Security == Security).CurrentValue&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27211/</id>
    <title type="text">Buratino: Я этот код поставил непосредственно перед созданием стратегии. Точка остановки показывает ...</title>
    <published>2013-08-29T06:54:46Z</published>
    <updated>2013-08-29T06:54:46Z</updated>
    <author>
      <name>IvanB</name>
      <uri>https://stocksharp.com/users/26984/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27179)" rel="nofollow" target="_blank"&gt;Buratino&lt;/a&gt;:&lt;/strong&gt;
Я этот код поставил непосредственно перед созданием стратегии. Точка остановки показывает верную позицию в переменной. Может эту конструкцию резоннее переносить во внутрь, в метод OnStarted?
Можно, конечно, но тем не менее, позиции из трейдера должны адекватно приниматься и внутри стратегии.
Один и тот-же трейдер, к которому обращаетесь в стратегии (позиции не верны) и вне стратегии (позиции верны)? Можно проверить простым сравнением.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27179/</id>
    <title type="text">IvanB: Buratino: На брейкпоинте Trader показывает корректные позиции, но в стратегию они не передают...</title>
    <published>2013-08-27T16:55:34Z</published>
    <updated>2013-08-27T16:55:34Z</updated>
    <author>
      <name>Buratino</name>
      <uri>https://stocksharp.com/users/451/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27163)" rel="nofollow" target="_blank"&gt;IvanB&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27138)" rel="nofollow" target="_blank"&gt;Buratino&lt;/a&gt;:&lt;/strong&gt;
На брейкпоинте Trader показывает корректные позиции, но в стратегию они не передаются. Следуя структуре Трейдера, передаю позицию следующим образом:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Position = ConnectionInterFace.SafeConnection.Trader.Positions.FirstOrDefault(p =&amp;gt; p.Security == ConnectionInterFace.SelectedSecurity).CurrentValue;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Однако Position всё разно инициализируется нулём.
Может быть код:&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Position = ConnectionInterFace.SafeConnection.Trader.Positions.FirstOrDefault(p =&amp;gt; p.Security == ConnectionInterFace.SelectedSecurity).CurrentValue;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;gt; 
&amp;gt; выполняется до того, как получены позиции с сервера? Попробуйте на этом коде поставить точку останова и проверьте позиции Трейдера и убедитесь что все верно с проверкой инструмента, может быть по проверке инструмента позиция не проходит...

Я этот код поставил непосредственно перед созданием стратегии. Точка остановки показывает верную позицию в переменной. Может эту конструкцию резоннее переносить во внутрь, в метод OnStarted?
&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27163/</id>
    <title type="text">Buratino: На брейкпоинте Trader показывает корректные позиции, но в стратегию они не передаются. Сле...</title>
    <published>2013-08-27T07:49:16Z</published>
    <updated>2013-08-27T07:49:16Z</updated>
    <author>
      <name>IvanB</name>
      <uri>https://stocksharp.com/users/26984/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27138)" rel="nofollow" target="_blank"&gt;Buratino&lt;/a&gt;:&lt;/strong&gt;
На брейкпоинте Trader показывает корректные позиции, но в стратегию они не передаются. Следуя структуре Трейдера, передаю позицию следующим образом:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Position = ConnectionInterFace.SafeConnection.Trader.Positions.FirstOrDefault(p =&amp;gt; p.Security == ConnectionInterFace.SelectedSecurity).CurrentValue;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Однако Position всё разно инициализируется нулём.
Может быть код:&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
Position = ConnectionInterFace.SafeConnection.Trader.Positions.FirstOrDefault(p =&amp;gt; p.Security == ConnectionInterFace.SelectedSecurity).CurrentValue;

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;выполняется до того, как получены позиции с сервера? Попробуйте на этом коде поставить точку останова и проверьте позиции Трейдера и убедитесь что все верно с проверкой инструмента, может быть по проверке инструмента позиция не проходит...&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27138/</id>
    <title type="text">IvanB: Buratino: Как получить позу по бумаге при инициализации стратегии? Пример на базе 2-го урока....</title>
    <published>2013-08-26T07:58:46Z</published>
    <updated>2013-08-26T07:58:46Z</updated>
    <author>
      <name>Buratino</name>
      <uri>https://stocksharp.com/users/451/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27128)" rel="nofollow" target="_blank"&gt;IvanB&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27121)" rel="nofollow" target="_blank"&gt;Buratino&lt;/a&gt;:&lt;/strong&gt;
Как получить позу по бумаге при инициализации стратегии? Пример на базе 2-го урока. В таком случае суммируются все позиции по всему содержимому портфеля:
&lt;em&gt;Position = ConnectionInterFace.SelectedPortfolio.GetPosition(),&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Этот замороченный, да и не работает:
&lt;em&gt;Position = ConnectionInterFace.SelectedSecurity.Trader.GetPosition(ConnectionInterFace.SelectedPortfolio, ConnectionInterFace.SelectedSecurity)&lt;/em&gt;
Попробуйте просмотреть все значения в коллекции свойства Positions объекта ConnectionInterFace.SelectedSecurity.Trader, разумеется, после подключения к терминалу/платформе.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;
&lt;p&gt;На брейкпоинте Trader показывает корректные позиции, но в стратегию они не передаются. Следуя структуре Трейдера, передаю позицию следующим образом:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Position = ConnectionInterFace.SafeConnection.Trader.Positions.FirstOrDefault(p =&amp;gt; p.Security == ConnectionInterFace.SelectedSecurity).CurrentValue;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Однако Position всё разно инициализируется нулём.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27128/</id>
    <title type="text">Buratino: Как получить позу по бумаге при инициализации стратегии? Пример на базе 2-го урока. В тако...</title>
    <published>2013-08-25T15:29:06Z</published>
    <updated>2013-08-25T15:29:06Z</updated>
    <author>
      <name>IvanB</name>
      <uri>https://stocksharp.com/users/26984/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(27121)" rel="nofollow" target="_blank"&gt;Buratino&lt;/a&gt;:&lt;/strong&gt;
Как получить позу по бумаге при инициализации стратегии? Пример на базе 2-го урока. В таком случае суммируются все позиции по всему содержимому портфеля:
&lt;em&gt;Position = ConnectionInterFace.SelectedPortfolio.GetPosition(),&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Этот замороченный, да и не работает:
&lt;em&gt;Position = ConnectionInterFace.SelectedSecurity.Trader.GetPosition(ConnectionInterFace.SelectedPortfolio, ConnectionInterFace.SelectedSecurity)&lt;/em&gt;
Попробуйте просмотреть все значения в коллекции свойства Positions объекта ConnectionInterFace.SelectedSecurity.Trader, разумеется, после подключения к терминалу/платформе.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27122/</id>
    <title type="text">Вот такая запись возвращает ноль, хотя открытые позиции на момент инициализации стратегии есть: Posi...</title>
    <published>2013-08-25T08:46:48Z</published>
    <updated>2013-08-25T08:47:40Z</updated>
    <author>
      <name>Buratino</name>
      <uri>https://stocksharp.com/users/451/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Вот такая запись возвращает ноль, хотя открытые позиции на момент инициализации стратегии есть:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Position = ConnectionInterFace.SafeConnection.Trader.GetPosition(ConnectionInterFace.SelectedPortfolio, ConnectionInterFace.SelectedSecurity).CurrentValue,&lt;/em&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/27121/</id>
    <title type="text">Как получить позу по бумаге при инициализации стратегии? Пример на базе 2-го урока. В таком случае с...</title>
    <published>2013-08-25T06:27:14Z</published>
    <updated>2013-08-25T06:27:14Z</updated>
    <author>
      <name>Buratino</name>
      <uri>https://stocksharp.com/users/451/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Как получить позу по бумаге при инициализации стратегии? Пример на базе 2-го урока. В таком случае суммируются все позиции по всему содержимому портфеля:
&lt;em&gt;Position = ConnectionInterFace.SelectedPortfolio.GetPosition(),&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Этот замороченный, да и не работает:
&lt;em&gt;Position = ConnectionInterFace.SelectedSecurity.Trader.GetPosition(ConnectionInterFace.SelectedPortfolio, ConnectionInterFace.SelectedSecurity)&lt;/em&gt;&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>