﻿<?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/2633/poluchenie-pozitsii/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-27T19:54:04Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=2633" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/20030/</id>
    <title type="text"> Position GetPosition() { Position result = Trader.GetPosition(Portfolio, Security); if (result != n...</title>
    <published>2012-06-26T18:10:29Z</published>
    <updated>2012-06-26T18:10:29Z</updated>
    <author>
      <name>FinDirector</name>
      <uri>https://stocksharp.com/users/473/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
		Position GetPosition()
		{
			Position result = Trader.GetPosition(Portfolio, Security);
			if (result != null)
				return result;
			ManualResetEvent manualResetEvent = new ManualResetEvent(false);
			Action&amp;lt;IEnumerable&amp;lt;Position&amp;gt;&amp;gt; onNewPositions = p =&amp;gt;
			{
				if (Trader.GetPosition(Portfolio, Security) != null)
					manualResetEvent.Set();
			};
			Trader.NewPositions += onNewPositions;
			manualResetEvent.WaitOne(TimeSpan.FromSeconds(30));
			Trader.NewPositions -= onNewPositions;
			result = Trader.GetPosition(Portfolio, Security);
			return result;
		}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20029/</id>
    <title type="text">Если вы подразумераете под размером позиции количество купленных или проданных вами контрактов по оп...</title>
    <published>2012-06-26T17:14:40Z</published>
    <updated>2012-06-26T17:18:37Z</updated>
    <author>
      <name>Доктор Сальватор</name>
      <uri>https://stocksharp.com/users/28547/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Если вы подразумераете под размером позиции количество купленных или проданных вами контрактов по определённому инструменту, значение которых отображается в таблице &amp;quot;Позиции по деривативам&amp;quot;, то это значение можно получить следующим образом:&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;

decimal PositionPoInstrumentu = _trader.GetPosition(portfolio, security).CurrentValue;&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Результатом будет число контрактов со знаком. Если &amp;quot;+&amp;quot; - значит куплено, а если &amp;quot;-&amp;quot; - значит продано.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18596/</id>
    <title type="text">Позиция равна 0 даже тогда, когда строчки нет. GetPosition возвращает null</title>
    <published>2012-04-25T13:11:01Z</published>
    <updated>2012-04-25T13:11:01Z</updated>
    <author>
      <name>freelancer</name>
      <uri>https://stocksharp.com/users/28572/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Позиция равна 0 даже тогда, когда строчки нет. GetPosition возвращает null</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18595/</id>
    <title type="text">_trader.NewPositions += positions =&amp;gt; this.GuiAsync(() =&amp;gt; { if (_position == null) _position = positi...</title>
    <published>2012-04-25T12:59:59Z</published>
    <updated>2012-04-25T12:59:59Z</updated>
    <author>
      <name>Maniac</name>
      <uri>https://stocksharp.com/users/613/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="code"&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;pre class="brush:csharp"&gt;
_trader.NewPositions += positions =&amp;gt; this.GuiAsync(() =&amp;gt;
{
	if (_position == null)
		_position = positions.FirstOrDefault(p =&amp;gt; p.Security == _sec);
});&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;_sec - не должна быть null, и в таблице Позиции по бумагам или Позиции по деривативам должна быть строчка с данной бумагой _sec.&lt;br /&gt;Если нужна позиция по RIM2, например, то да, нужно добавить для экспорта _trader.DerivativePortfoliosTable (как в примере).&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/18584/</id>
    <title type="text">У меня так: _trader.StartExport(new DdeTable { _trader.SecuritiesTable, _trader.DerivativePortfolios...</title>
    <published>2012-04-25T08:39:47Z</published>
    <updated>2012-04-25T08:39:47Z</updated>
    <author>
      <name>freelancer</name>
      <uri>https://stocksharp.com/users/28572/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">У меня так:&lt;br /&gt;_trader.StartExport(new DdeTable[] { _trader.SecuritiesTable, _trader.DerivativePortfoliosTable, _trader.DerivativePositionsTable, _trader.MyTradesTable, _trader.OrdersTable, _trader.StopOrdersTable, _trader.TradesTable });&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/18583/</id>
    <title type="text">) пробовал, выдает 0</title>
    <published>2012-04-25T08:37:36Z</published>
    <updated>2012-04-25T08:37:36Z</updated>
    <author>
      <name>finiss</name>
      <uri>https://stocksharp.com/users/363/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">) пробовал, выдает 0</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18576/</id>
    <title type="text">Trader.GetPosition</title>
    <published>2012-04-25T04:57:11Z</published>
    <updated>2012-04-25T04:57:11Z</updated>
    <author>
      <name>freelancer</name>
      <uri>https://stocksharp.com/users/28572/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Trader.GetPosition</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/18573/</id>
    <title type="text">Здравствуйте. Подскажите, как получить в quik размер позиции? пробовал на примере sample console доп...</title>
    <published>2012-04-24T22:56:20Z</published>
    <updated>2012-04-24T22:56:20Z</updated>
    <author>
      <name>finiss</name>
      <uri>https://stocksharp.com/users/363/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Здравствуйте. Подскажите, как получить в quik размер позиции? &lt;br /&gt;пробовал на примере sample console дописать следующее&lt;br /&gt;&lt;br /&gt;&lt;span class="highlight"&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 Positions _position

trader.NewPositions += positions =&amp;gt;
{
_position =positions.FirstOrDefault(p =&amp;gt; p.portfolio =_portfolio);
или
_position =positions.FirstOrDefault(p =&amp;gt; p.security =_lkoh);
}&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;br /&gt;но _position остается равен null&lt;br /&gt;&lt;br /&gt;что делать?&lt;br /&gt;и по аналогии как получить значения из &amp;quot;позиции по деривативам&amp;quot;?&lt;br /&gt;как я понимаю в StartExport(...) надо добавить (..., trader.DerivatePositionsTable), но как потом обращаться к этим значениям?&lt;br /&gt;&lt;br /&gt;если кто сталкивался, помогите пожалуйста с кодом</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>