﻿<?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/4520/poluchenie-razmera-pozitsii/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-14T01:29:53Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=4520" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/30591/</id>
    <title type="text">poison: Скорее всего стратегия останавливается до того, как получает всю инфомрацию. Надо использова...</title>
    <published>2014-05-23T08:40:28Z</published>
    <updated>2014-05-23T08:40: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(30587)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Скорее всего стратегия останавливается до того, как получает всю инфомрацию. Надо использовать Strategy.WaitAllTrades&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/30587/</id>
    <title type="text">Никак не получается получить трейды для второго инструмента. У меня дочерняя стратегия pairOrderStra...</title>
    <published>2014-05-22T18:14:00Z</published>
    <updated>2014-05-22T22:36:34Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.com/users/38961/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Никак не получается получить трейды для второго инструмента. У меня дочерняя стратегия pairOrderStrategy, которая сама содержит 2 дочерних стратегии, каждая их которых посылает ордер для своего инструмента. После остановки стратегий получаю трейды вот так:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
var security1AvgPrice = pairOrderStrategy.FastOrderStrategy1.MyTrades
                                        .Where(t =&amp;gt; t.Trade.Security == Security1).GetAveragePrice() * _s1PriceCoef;
var security2AvgPrice = pairOrderStrategy.FastOrderStrategy2.MyTrades
                                        .Where(t =&amp;gt; t.Trade.Security == Security2).GetAveragePrice() * _s2PriceCoef;

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Второй инструмент всегда возвращает 0 в MyTrades, хотя там есть и ордера и позиции. Я пробую вручную задавать Strategy.Security при инициализации стратегии, но это не помогает.
Подозреваю, что так как эти стратегии дочерние, то Security у них такой же как и у родительской и поэтому трейды для второго инструмента игнорируются.&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.com/posts/m/30573/</id>
    <title type="text">poison: А как быть, если в стратегии используется 2 инструмента и нужно учитывать изменения позиций ...</title>
    <published>2014-05-21T15:12:25Z</published>
    <updated>2014-05-21T15:12:25Z</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(30568)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;
А как быть, если в стратегии используется 2 инструмента и нужно учитывать изменения позиций по ним?&lt;/p&gt;
&lt;p&gt;Правильно ли я понял, что в стратегии учитываются все позиции, ордера которых были сгенерированы с помощью это стратегии?
То есть, не важно какой инструмент выбран в Strategy.Security, если я буду из этой стратегии проводить сделки и по другим инструментам, они тоже будут учитываться?&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/30568/</id>
    <title type="text">А как быть, если в стратегии используется 2 инструмента и нужно учитывать изменения позиций по ним? ...</title>
    <published>2014-05-20T20:48:07Z</published>
    <updated>2014-05-20T21:23:52Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.com/users/38961/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;А как быть, если в стратегии используется 2 инструмента и нужно учитывать изменения позиций по ним?&lt;/p&gt;
&lt;p&gt;Правильно ли я понял, что в стратегии учитываются все позиции, ордера которых были сгенерированы с помощью это стратегии?
То есть, не важно какой инструмент выбран в Strategy.Security, если я буду из этой стратегии проводить сделки и по другим инструментам, они тоже будут учитываться?&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/30566/</id>
    <title type="text">poison: по каким то конкретным инструментам? Strategy.Security конечно же. Дочерние позиции &amp;quot;на верх...</title>
    <published>2014-05-20T20:11:44Z</published>
    <updated>2014-05-20T20:11:44Z</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(30564)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;
по каким то конкретным инструментам?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Strategy.Security конечно же. Дочерние позиции &amp;quot;на верх&amp;quot; не пробрасываются по понятным причинам.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(30564)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;
Из какой таблицы берутся данные?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Расчет по заявка (баланс).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(30564)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;
Что если по счету будут открыты другие позиции, не относящиеся к этой стратегии?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Пользовательские действия игнорируются стратегией.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(30564)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;
Или если будут параллельно работать другие стратегии по другим инструментам?
Как в данном случае корректно получить наличие позиций?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Стратегии работают независимо друг от друга.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(30564)" rel="nofollow" target="_blank"&gt;poison&lt;/a&gt;:&lt;/strong&gt;
Вот так будет правильнее или то же самое?&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/30564/</id>
    <title type="text">В стратегии ArbitrageStrategy проверка открытых позиций по паре осуществляется вот так: private bool...</title>
    <published>2014-05-20T18:24:28Z</published>
    <updated>2014-05-20T18:24:28Z</updated>
    <author>
      <name>poison</name>
      <uri>https://stocksharp.com/users/38961/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;В стратегии ArbitrageStrategy проверка открытых позиций по паре осуществляется вот так:&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
private bool NoPositions
{
   get { return PositionManager.Positions.All(p =&amp;gt; p.CurrentValue == 0); }
}

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Это перебор по всем открытым позициям в quik или по всем позициям по каким то конкретным инструментам?
Из какой таблицы берутся данные?&lt;/p&gt;
&lt;p&gt;Что если по счету будут открыты другие позиции, не относящиеся к этой стратегии?
Или если будут параллельно работать другие стратегии по другим инструментам?
Как в данном случае корректно получить наличие позиций?&lt;/p&gt;
&lt;p&gt;Вот так будет правильнее или то же самое?&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-csharp"&gt;
private bool NoPositions
{
    get {
       return (PositionManager.Positions.FirstOrDefault(p =&amp;gt; p.Security == Security1).CurrentValue == 0 &amp;amp;&amp;amp;
             PositionManager.Positions.FirstOrDefault(p =&amp;gt; p.Security == Security2).CurrentValue == 0);
    }
 }

&lt;/code&gt;&lt;/pre&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>