﻿<?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">Банальная задача, но непонятно как решать.</title>
  <id>~/topic/2578/banalnaya-zadacha-no-neponyatno-kak-reshat_/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-19T03:54:47Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=topic&amp;id=2578" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/posts/m/18120/</id>
    <title type="text">igork: to ra81: не очень понял, при чем тут терминал. Какой бы не использовался (SmartTrade), данные...</title>
    <published>2012-04-09T10:55:56Z</published>
    <updated>2012-04-09T10:55:56Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(18117)" rel="nofollow" target="_blank"&gt;igork&lt;/a&gt;:&lt;/strong&gt;
to ra81: не очень понял, при чем тут терминал. Какой бы не использовался (SmartTrade), данные нужно брать все равно с сервера и не через терминальное API. А вот Ваша идея нравится на счет того, чтобы просыпаться на пару минут раньше и ждать назначенного времени, чтобы сразу снять последнюю информацию.&lt;/p&gt;
&lt;p&gt;Спасибо.
Суть в том что разные терминалы по разному получают информацию и тут могут быть ньюансы :).&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/18117/</id>
    <title type="text">to OvcharenkoVI: я тоже так сделал сначала, но получил Positions и Securities, в которых все поля ну...</title>
    <published>2012-04-09T10:09:38Z</published>
    <updated>2012-04-09T10:09:38Z</updated>
    <author>
      <name>igork</name>
      <uri>https://stocksharp.ru/users/6303/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;to OvcharenkoVI:&lt;/p&gt;
&lt;p&gt;я тоже так сделал сначала, но получил Positions и Securities, в которых все поля нулевые (MarginBy, MarginSell, BestAskPrice и т.д. и т.д.). Без этих данных невозможно посчитать ГО, а также (предполагаемую) ликвидационную стоимость. Вот поэтому пришлось подписываться на все эти события, что очень удивило. Возможно, проблема крылась в том, что я гонял проект только в отладочном режиме VS2010. До тех пор, пока не подписался на обновление информации по позиция и инструметам, не смог получить актуальную информацию по ним.&lt;/p&gt;
&lt;p&gt;to ra81: не очень понял, при чем тут терминал. Какой бы не использовался (SmartTrade), данные нужно брать все равно с сервера и не через терминальное API. А вот Ваша идея нравится на счет того, чтобы просыпаться на пару минут раньше и ждать назначенного времени, чтобы сразу снять последнюю информацию.&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/18109/</id>
    <title type="text">Во первых не мешало бы казать что за платформа используется, то есть терминал. Это роляет как говори...</title>
    <published>2012-04-09T00:35:12Z</published>
    <updated>2012-04-09T00:35:12Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.ru/users/16581/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Во первых не мешало бы казать что за платформа используется, то есть терминал. Это роляет как говорится. Во вторых почему бы не запускать экспорт за 5 минут до нужного времени, считывать данные тогда когда нужно и отключаться? Возможности знать точно что пришли все данные нет :). Для этого надо знать какие данные должны прийти, а коннектор этого в общем не знает.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.ru/posts/m/18107/</id>
    <title type="text">Не понятно зачем 3 пункт. Зачем подписываться на NewProtfilios и New Positions. Можно сделать таймер...</title>
    <published>2012-04-08T19:29:09Z</published>
    <updated>2012-04-08T19:29:09Z</updated>
    <author>
      <name>OvcharenkoVI</name>
      <uri>https://stocksharp.ru/users/390/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Не понятно зачем 3 пункт. Зачем подписываться на NewProtfilios и New Positions. Можно сделать таймер, например, при Trader.MarketTime = 18:45 запросить Trader.Positions. Дальше Trader.Disconnect();, а таймер Stop();&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/18081/</id>
    <title type="text">Задача - написать отдельный сервис, который бы срабатывал в моменты 18:45:20 и 23:45:20, снимал бы с...</title>
    <published>2012-04-06T00:45:14Z</published>
    <updated>2012-04-06T00:45:14Z</updated>
    <author>
      <name>igork</name>
      <uri>https://stocksharp.ru/users/6303/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <content type="html">&lt;p&gt;Задача - написать отдельный сервис, который бы срабатывал в моменты 18:45:20 и 23:45:20, снимал бы статус всех счетов (балансы, открытые позиции) и отключался. В связи с асинхронной моделью задача кажется некрасиво реализуемой.&lt;/p&gt;
&lt;p&gt;Что делаем:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Подписываемся на .NewPortfolios += portfolios =&amp;gt; .... Trader.RegisterPortfolio() здесь.
Подписываемся на .NewPositions += positions =&amp;gt; ... (хотя наверное этого можно и не делать).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Запускаем StartExport&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Тупо в цикле делаем Thread.Sleep(1000) 20-30 раз, за это время приходят события по портфелям и по позициям. Подозреваю, что в моменты клиринга и ночью этого времени достаточно, но если времени не хватит - как понять, что вся инфомация пришла? Использовать вариант waitHandle нереально, так как кол-во портфелей может поменяться (в теории) и позиции точно каждый день разные, и сколько их - заранее неизвестно.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;После паузы делаем
Trader.portfolios.ForEach(снять данные портфеля)
Trader.positions.ForEach(снять позиции по портфелям).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Далее проще - регистрируем акции/фюьчи из портфеля, смотрим их котировки/ГО и все считаем.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Отключаемся.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Господа авторы, подскажите пожалуйста правильный путь. Есть ли какие-то варианты того, как убедиться в том, что
(1) пришла / актуализировалась информация по всем портфелям
(2) прошла информация по всем позициям?&lt;/p&gt;
&lt;p&gt;Заранее благодарю.&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>