﻿<?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">Форум. StockSharp</title>
  <id>https://stocksharp.ru/handlers/atom.ashx?category=forum&amp;page=232</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-30T17:23:48Z</updated>
  <logo>https://stocksharp.ru/images/logo.png</logo>
  <link href="https://stocksharp.ru/handlers/atom.ashx?category=forum&amp;page=232" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.ru/topic/1421/</id>
    <title type="text">Exception при генераци XML отчёта [3.0.11]</title>
    <published>2011-03-04T16:52:02Z</published>
    <updated>2011-03-04T16:52:02Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.ru/users/2826/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">На 3.0.11 следующий exception (стакан экспортируется):&lt;br /&gt;&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;System.ArgumentException was unhandled&lt;br /&gt;  Message=Котировка для направления Sell отсутствует.&lt;br /&gt;Parameter name: bestPair&lt;br /&gt;  Source=Ecng.Trading.Algo&lt;br /&gt;  ParamName=bestPair&lt;br /&gt;  StackTrace:&lt;br /&gt;       at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepthPair bestPair, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)&lt;br /&gt;       at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepth depth, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)&lt;br /&gt;       at Ecng.Trading.Algo.TraderHelper.GetMarketPrice(Security security, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)&lt;br /&gt;       at Ecng.Trading.Algo.TraderHelper.GetPnL(Security security, Int64 position)&lt;br /&gt;       at Ecng.Trading.Algo.PnL.BasePnLManager.#=q836kuXrCbvnCKEJj5Cbj2g==(KeyValuePair`2 #=qhm9jo7HetgxyijS5fWjtCA==)&lt;br /&gt;       at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()&lt;br /&gt;       at System.Linq.Enumerable.Sum(IEnumerable`1 source)&lt;br /&gt;       at Ecng.Trading.Algo.PnL.BasePnLManager.#=q2do1oc9dZRDiwTtYLiYssg==(SynchronizedDictionary`2 #=qWPvwsgC0Ugb3v9rxLZzh4w==)&lt;br /&gt;       at Ecng.Collections.CollectionHelper.SyncGet[TCollection,TResult](TCollection collection, Func`2 func)&lt;br /&gt;       at Ecng.Trading.Algo.PnL.BasePnLManager.get_PnL()&lt;br /&gt;       at Ecng.Trading.Algo.Reporting.XmlStrategyReport.Generate()&lt;br /&gt;       at Robots.MainWindow.MainWindow.GenerateStrategyReports(Strategy strategy) in c:\Users\Alexander\Documents\Visual Studio 2010\Projects\Robots\Robots\MainWindow\MainWindow.xaml.cs:line 65&lt;br /&gt;       at Robots.MainWindow.MainWindow.OnClosing(CancelEventArgs e) in c:\Users\Alexander\Documents\Visual Studio 2010\Projects\Robots\Robots\MainWindow\MainWindow.xaml.cs:line 130&lt;br /&gt;.......&lt;br /&gt;  InnerException: &lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1420/</id>
    <title type="text">QuikTerminal.OpenQuotes</title>
    <published>2011-03-04T13:05:26Z</published>
    <updated>2011-03-04T13:05:26Z</updated>
    <author>
      <name>skuvv</name>
      <uri>https://stocksharp.ru/users/28621/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">При использовании OpenQuotes не отркывается стакан.&lt;br /&gt;Проверялось на версиях 3.0.5 и 3.0.11</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1419/</id>
    <title type="text">стоп заявки</title>
    <published>2011-03-04T12:03:47Z</published>
    <updated>2011-03-04T12:03:47Z</updated>
    <author>
      <name>speculiantru</name>
      <uri>https://stocksharp.ru/users/109/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="клуб алготрейдеров" />
    <content type="html">Скачал поставил с ошибками все понятно (надо менять названия окон квиковского стакана).&lt;br /&gt;Насколько Я понимаю вот в начальном виде стоп и стоп трэлинг не поставить.Это нужно реализовывать через стратегии, если так то может уже есть готовые.&lt;br /&gt;Поймите правильно Я не лентяй просто нет опыта программирования.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1418/</id>
    <title type="text">Управление временем работы</title>
    <published>2011-03-03T23:28:31Z</published>
    <updated>2011-03-03T23:28:31Z</updated>
    <author>
      <name>igork</name>
      <uri>https://stocksharp.ru/users/6303/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Касаемо времени, существует следующие возможности:&lt;br /&gt;&lt;br /&gt;BaseTrader.MarketTime - биржевое время, исключительно для информации, насколько я понимаю. &lt;br /&gt;BaseTrader.ReconnectionSettings.WorkingTime - структура из трех диапазонов. &lt;br /&gt;Собственно вопросы:&lt;br /&gt;&lt;br /&gt;0. ReconnectionSettings.WorkingTime - это только для ReconnectionSettings, или это влияет и на обычный Connection?&lt;br /&gt;&lt;br /&gt;1. Нет ли примера аккуратной работы с конструкторами времени? Например, мне не нравится начало торгов в {10:00:00}, я хочу {10:00:02}. imho как то не очень удачно конструировать объект с нуля. &lt;br /&gt;&lt;br /&gt;2. Каким образом реализовано внутри? Правильно ли я понимаю, что после установки Recon...WorkingTime.Timers[0].Max = TimeSpan(13:59) BaseTrader прекращает торги в 13:59 и начинает в 14:03? Если да, то генерируются ли события типа connect/reconnect, либо молча прекращаются торги на время паузы?&lt;br /&gt;&lt;br /&gt;3. Каким образом реализовать разные диапазоны для разных стратегий? Например, одна из стратегий должна работать с 10:01 до упора, а вторая - с 10:40, уже после открытия ММВБ? Инструменты одни и те же, поэтому удобно лить котировки в едином потоке, не создавая нового робота под новую стратегию. Насколько я понял, простого решения нет, и придется делать собственную надстройку и самому контролировать время включения той или иной стратегии? &lt;br /&gt;&lt;br /&gt;Опасаюсь, что слишком много таймеров и проверок времени (внутри StockSharp и в самом роботе) не добавляют красоты проекту. &lt;br /&gt;&lt;br /&gt;Спасибо. </content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1417/</id>
    <title type="text">[3.0.11] History Testing</title>
    <published>2011-03-03T21:10:18Z</published>
    <updated>2011-03-03T21:10:18Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.ru/users/497/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="тестирование" />
    <content type="html">1)&lt;br /&gt;В Trader.NewTrades сделки приходят в прямом порядке, а в&lt;br /&gt;MarketDepthGenerator.Generate(MarketDepth data, Security security, IEnumerable&amp;lt;Trade&amp;gt; trades)&lt;br /&gt;сделки в trades записаны в обратном порядке. &lt;br /&gt;&lt;br /&gt;Возможно фича, но по-моему баг.&lt;br /&gt;&lt;br /&gt;2) При сведении сделки допустим стакана&lt;br /&gt;&lt;br /&gt;OFFER 200&lt;br /&gt;BID 100&lt;br /&gt;&lt;br /&gt;c виртуальной заявкой SELL 50 сделка будет по цене TRADE=100&lt;br /&gt;&lt;br /&gt;Таким образом перекос засчитывается в пользу заявки стратегии.&lt;br /&gt;&lt;br /&gt;Нельзя переделать чтобы сделка засчитывалась по цене 100 (т.е. на худший для стратегии случай)?&lt;br /&gt;&lt;br /&gt;Иначе получаются слишком оптимистичные результаты тестирования.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1416/</id>
    <title type="text">ArgumentOutOfRangeException в ThreadSafeObservableCollection</title>
    <published>2011-03-03T17:35:39Z</published>
    <updated>2011-03-03T17:35:39Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">Михаил, подскажите, пожалуйста, отчего может возникать эта ошибка? Что-то связанное с добавлением новых ордеров или трейдов.. Откуда возникает, никак не пойму.&lt;br /&gt;&lt;br /&gt;03.03.2011 20:24:48 [OpenWealth.App.Application_DispatcherUnhandledException] ERROR: System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---&amp;gt; System.ArgumentOutOfRangeException: Индекс должен находиться в границах этого списка.&lt;br /&gt;Имя параметра: index&lt;br /&gt;   в System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)&lt;br /&gt;   в System.Collections.Generic.List`1.Insert(Int32 index, T item)&lt;br /&gt;   в System.Collections.ObjectModel.Collection`1.InsertItem(Int32 index, T item)&lt;br /&gt;   в System.Collections.ObjectModel.ObservableCollection`1.InsertItem(Int32 index, T item)&lt;br /&gt;   в Ecng.Xaml.ThreadSafeObservableCollection`1.InsertItem(Int32 index, T item)&lt;br /&gt;   в Ecng.Xaml.ThreadSafeObservableCollection`1.&amp;lt;&amp;gt;c__DisplayClass2.&amp;lt;InsertItem&amp;gt;b__0()</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1415/</id>
    <title type="text">Иногда не создается текущая свеча</title>
    <published>2011-03-03T14:47:41Z</published>
    <updated>2011-03-03T14:47:41Z</updated>
    <author>
      <name>dart</name>
      <uri>https://stocksharp.ru/users/28358/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Собственно сабж. Обычно всё работает нормально. Но иногда случаются затыки, например, сегодня с 16:31 до 16:54 не создавалась текущая свечка (выдавало null), gettrades тоже не работал в это время.&lt;br /&gt;Иногда само проходит, иногда перезапускаю робота.&lt;br /&gt;Может кто сталкивался с этим?&lt;br /&gt;Версия 2.6.2.&lt;br /&gt;Самое интересное что сегодня это произошло практически в одно время на двух компах с разными брокерами.</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1414/</id>
    <title type="text">проверка на время биржи при загрузке истории</title>
    <published>2011-03-03T09:32:50Z</published>
    <updated>2011-03-03T09:32:50Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">Робот крутится на виртуальной машинке, у которой часы идут медленно, часто начинают запаздывать. Вы в SmartTrader.RegisterHistoryData сравниваете MarketTime (которое на самом деле не время биржи, а время на машине) с датой конца истории. Можно ее убрать? Если нет, то в чем ее смысл? Она реально мешает.&lt;br /&gt;&lt;br /&gt;03.03.2011 11:57:44 [OpenWealth.HeadRealTrade.OnNewCandle] Свечка сформирована: 03.03.2011 11:59:00&lt;br /&gt;03.03.2011 11:58:00 [OpenWealth.DataProviders.History.Bars] Надо подгрузить дополнительные бары со стороны окончания.&lt;br /&gt;03.03.2011 11:58:00 [OpenWealth.StockSharp.TraderLoadHistory.Load] Затребовано получение истории: RTS-3.11 1min 03.03.2011 11:56:01 - 03.03.2011 11:59:01&lt;br /&gt;03.03.2011 11:58:00 [OpenWealth.HeadRealTrade.OnLog] ERROR: ЛОГ стратегии SA errorStates: Error str: System.ArgumentOutOfRangeException: Параметр from не может быть больше текущего времени биржи.&lt;br /&gt;Имя параметра: from&lt;br /&gt;Фактическое значение было 03.03.2011 11:58:01.&lt;br /&gt;   в Ecng.Trading.Smart.SmartTrader.RegisterHistoryData(Security security, SmartTimeFrames timeFrame, DateTime from, Int32 count, SmartHistoryDirections direction)&lt;br /&gt;   в OpenWealth.StockSharp.TraderLoadHistory.Load(String symbolName, BarDataScale scale, DateTime startDate, DateTime endDate)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1413/</id>
    <title type="text">Ручное изменение Order.State</title>
    <published>2011-03-03T06:27:52Z</published>
    <updated>2011-03-03T06:27:52Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.ru/users/6182/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Михаил, добрый день.&lt;br /&gt;Если вручную изменить Order.State, будет ли вызвано событие QuikTrader.OrdersChanged  ?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1412/</id>
    <title type="text">извещение о потере соединения</title>
    <published>2011-03-02T20:40:32Z</published>
    <updated>2011-03-02T20:40:32Z</updated>
    <author>
      <name>igork</name>
      <uri>https://stocksharp.ru/users/6303/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">Извиняюсь, если не дочитал документацию. &lt;br /&gt;&lt;br /&gt;Есть метод ReConnectionSettings.ConnectionRestored += () =&amp;gt; .....&lt;br /&gt;&lt;br /&gt;очень удобно, можно подписаться на уведомление об успешном переподключении. Нельзя ли добавить&lt;br /&gt;&lt;br /&gt;ReConnectionSettings.ConnectionMissed += error =&amp;gt; .....&lt;br /&gt;, которое делегировалось бы при потере соединения и начале попыток переподключения? В примерах корректной обработки не нашел. По хорошему, в это время неплохо было бы и робота перевести в пассивное состояние. &lt;br /&gt;&lt;br /&gt;Спасибо. &lt;br /&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1411/</id>
    <title type="text">Выставление заявок [3.0.9]</title>
    <published>2011-03-02T20:05:11Z</published>
    <updated>2011-03-02T20:05:11Z</updated>
    <author>
      <name>vvt</name>
      <uri>https://stocksharp.ru/users/34/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Quik Junior 5.17.0.139&lt;br /&gt;При выставлении новой заявки из примера Sample версии [3.0.9] получаю ошибку:&lt;br /&gt;&lt;br /&gt;&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Цитата:&lt;/span&gt;&lt;div class="innerquote"&gt;Ecng.Trading.Quik.ApiException: Код ошибки WrongSyntax Сообщение ACCOUNT=SPBFUT00835; CLIENT_CODE=S#; TRANS_ID=80516132; CLASSCODE=SPBFUT; SECCODE=RIH1; QUANTITY=1; OPERATION=S; TYPE=L; ACTION=NEW_ORDER; PRICE=199275; EXECUTION_CONDITION=PUT_IN_QUEUE;&lt;br /&gt;&lt;br /&gt;   в #=qac0nNAJEGBw62vOjJ9yeaj58IL_ktqeS2mifN_IoeGk9EhOFYtiaglaK95x2THWB.#=q7yWqpeFYntAApd9e8mWD6g==(Int32 #=qIUrYyaXumrpTKzCH0$1iQA==, StringBuilder #=qXeb3xrfWJSgZG2iDGbk0jA==)&lt;br /&gt;&lt;br /&gt;   в #=qQdDXPJNmOZkUharo7Q3899hftZvE_jes52N$a7jPf20=.#=qm138Xpa3NkDK4rZ3cHlq8PJirWoVuLi_or7nTMLGf$Y=(String #=qG3qYfxe9sl6d1pdF4HEolg==, OrderStatus&amp;amp; #=qGSYg5yDF0dQXI374mDC0oA==, UInt32&amp;amp; #=q$lUpb$l03HK7ud9DnWASJA==, Int64&amp;amp; #=qny2mzthcTI5DnWb0qKYcnw==, String&amp;amp; #=qQFyc5u0EPSJTjHoNsMO2OQ==)&lt;br /&gt;&lt;br /&gt;   в Ecng.Trading.Quik.QuikTrader.#=qgVcKFnnJAtzgXabGrYAS6sEPxkR9hqkQ0xsGeH_qGqo=(Order #=qJVm9bOTXARJNPXXDe0FhtA==, TransactionBuilder #=qdhCZqwJUC1AJIYjmYMTbQA==)&lt;br /&gt;&lt;br /&gt;   в Ecng.Trading.Quik.QuikTrader.OnRegisterOrder(Order order)&lt;br /&gt;&lt;br /&gt;   в Ecng.Trading.Algo.BaseTrader.RegisterOrder(Order order)&lt;br /&gt;&lt;br /&gt;   в Sample.NewOrderWindow.Send_Click(Object sender, RoutedEventArgs e) в E:\StockSharpReleases\StockSharp_3.0.9\Sources\Sample\NewOrderWindow.xaml.cs:строка 29&lt;br /&gt;&lt;br /&gt;   в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)&lt;br /&gt;&lt;br /&gt;   в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Controls.Primitives.ButtonBase.OnClick()&lt;br /&gt;&lt;br /&gt;   в System.Windows.Controls.Button.OnClick()&lt;br /&gt;&lt;br /&gt;   в System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)&lt;br /&gt;&lt;br /&gt;   в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)&lt;br /&gt;&lt;br /&gt;   в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)&lt;br /&gt;&lt;br /&gt;   в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.CrackMouseButtonEventAndReRaiseEvent(DependencyObject sender, MouseButtonEventArgs e)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)&lt;br /&gt;&lt;br /&gt;   в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)&lt;br /&gt;&lt;br /&gt;   в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)&lt;br /&gt;&lt;br /&gt;   в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)&lt;br /&gt;&lt;br /&gt;   в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Input.InputManager.ProcessStagingArea()&lt;br /&gt;&lt;br /&gt;   в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&amp;amp; handled)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&amp;amp; handled)&lt;br /&gt;&lt;br /&gt;   в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&amp;amp; handled)&lt;br /&gt;&lt;br /&gt;   в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)&lt;br /&gt;&lt;br /&gt;   в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1410/</id>
    <title type="text">Как сделать собственную реализацию ITrader?</title>
    <published>2011-03-02T19:57:30Z</published>
    <updated>2011-03-02T19:57:30Z</updated>
    <author>
      <name>aleksey</name>
      <uri>https://stocksharp.ru/users/28490/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">&lt;br /&gt;Хочу реализовать интерфейс ITrader, для биржи электронной валюты, как лучше это сделать, наследоваться от BaseTrader и реализовывать его абстрактные методы, что делает этот класс? Есть ли какие нибудь примеры, или может можно посмотреть исходники готовых Trader-ов? Почитал Документацию, там только общие описания этих классов, а хотелось бы понять как устроен трейдер, и алгоритм его работы?&lt;br /&gt;Заранее спасибо за любую информацию!</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1409/</id>
    <title type="text">перерегистрация частично исполненных заявок</title>
    <published>2011-03-02T17:01:22Z</published>
    <updated>2011-03-02T17:01:22Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="SmartCom" />
    <content type="html">Подскажите, пожалуйста. В мануале есть пример перерегистрации заявки:&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;&lt;br /&gt;// registeredOrder - это ранее зарегистрированная заявка.&lt;br /&gt;var newOrder = registeredOrder.Clone();&lt;br /&gt;&lt;br /&gt;// изменяем цену на лучшую&lt;br /&gt;newOrder.Price = (registeredOrder.Direction == OrderDirections.Buy ? registeredOrder.Security.BestBid : registeredOrder.Security.BestAsk).Price;&lt;br /&gt;&lt;br /&gt;// заменяем заявку на бирже&lt;br /&gt;trader.ReRegisterOrder(registeredOrder, newOrder);&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Что будет, если до этого вызывалось base.RegisterOrder(registeredOrder) и уже было частично исполнено? Новая заявка выставится с первоначальным объемом или с остатком?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1408/</id>
    <title type="text">Проверка лимитов по бумагам в Квике.</title>
    <published>2011-03-02T15:16:08Z</published>
    <updated>2011-03-02T15:16:08Z</updated>
    <author>
      <name>Maxim</name>
      <uri>https://stocksharp.ru/users/6182/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Уважаемые, а кто как проверяет лимиты на покупку и продажу бумаг?&lt;br /&gt;Имею ввиду сколько максимум можно купить или продать бумаг на текущий момент.&lt;br /&gt;&lt;br /&gt;Экспериментирую, пробую брать эту информацию из колонок &amp;#171;Покупка&amp;#187; и &amp;#171;Продажа&amp;#187; в таблице &amp;#171;Купить/Продать&amp;#187;.&lt;br /&gt;&lt;br /&gt;Но текущие результаты показывают, что данный подход использовать напрямую нельзя.&lt;br /&gt;Во-первых, есть задержка  между тем, как прошла сделка и тем, когда эти данные обновились.&lt;br /&gt;Во-вторых, иногда из этой таблицы приходят неадекватные результаты.&lt;br /&gt;&lt;br /&gt;Может кто сталкивался с данным вопросом? Поделитесь опытом?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1407/</id>
    <title type="text">System.ArgumentException: Котировка для направления Sell отсутствует</title>
    <published>2011-03-02T14:29:13Z</published>
    <updated>2011-03-02T14:29:13Z</updated>
    <author>
      <name>Greene-nsk</name>
      <uri>https://stocksharp.ru/users/27932/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="StockSharp" />
    <content type="html">Михаил, подскажите, пожалуйста, как исправить ошибку ниже. Возникает, когда пытаюсь вывести Strategy.PnLManager.PnL для стратегии с открытой позицией. ITrader.RegisterTrades(sec) и ITrader.RegisterSecurity(sec) включены.&lt;br /&gt;&lt;br /&gt;02.03.2011 17:18:14 [OpenWealth.App.Application_DispatcherUnhandledException] ERROR: System.ArgumentException: Котировка для направления Sell отсутствует.&lt;br /&gt;Имя параметра: bestPair&lt;br /&gt;   в Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepthPair bestPair, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)&lt;br /&gt;   в Ecng.Trading.Algo.TraderHelper.GetMarketPrice(MarketDepth depth, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)&lt;br /&gt;   в Ecng.Trading.Algo.TraderHelper.GetMarketPrice(Security security, OrderDirections direction, Unit priceDelta, MarketPriceTypes priceType)&lt;br /&gt;   в Ecng.Trading.Algo.TraderHelper.GetPnL(Security security, Int64 position)&lt;br /&gt;   в Ecng.Trading.Algo.PnL.BasePnLManager.#=qJB5HDVQMjIWyaTsSR8dl5w==(KeyValuePair`2 #=qJ8PTB48xQQh2AcJExKLQBw==)&lt;br /&gt;   в System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()&lt;br /&gt;   в System.Linq.Enumerable.Sum(IEnumerable`1 source)&lt;br /&gt;   в System.Linq.Enumerable.Sum[TSource](IEnumerable`1 source, Func`2 selector)&lt;br /&gt;   в Ecng.Trading.Algo.PnL.BasePnLManager.#=qU1sTEx5tVceTuo6N31mHjw==(SynchronizedDictionary`2 #=qrzpe0NbHwmroErBMq8cIiQ==)&lt;br /&gt;   в Ecng.Collections.CollectionHelper.SyncGet[TCollection,TResult](TCollection collection, Func`2 func)&lt;br /&gt;   в Ecng.Trading.Algo.PnL.BasePnLManager.get_PnL()&lt;br /&gt;   в OpenWealth.GUI.RTMainWindow.UpdateStrategyProperties(StrategyAdapter sAdapter)</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1406/</id>
    <title type="text">SecurityBasket</title>
    <published>2011-03-01T21:47:19Z</published>
    <updated>2011-03-01T21:47:19Z</updated>
    <author>
      <name>vvt</name>
      <uri>https://stocksharp.ru/users/34/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Создаем корзину инструментов:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;_securityBasket = new SecurityBasket();&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;добавляем в нее инструменты:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;_securityBasket.Securities.Add(_sec1);&lt;br /&gt;_securityBasket.Securities.Add(_sec2);&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;регистрируем стратегию:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;_manager.Register(_strategy, _portfolio, _securityBasket);&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;код реализации:&lt;br /&gt;&lt;div class="code"&gt;&lt;strong&gt;Код&lt;/strong&gt;&lt;div class="innercode"&gt;class TestStrategy : ActionStrategy&lt;br /&gt;{&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;protected override StrategyProcessResults OnProcess()&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// создаем заявку&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;var order = base.CreateOrder(OrderDirections.Buy, base.Security.GetMarketPrice(OrderDirections.Buy), base.Volume);&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// регистрируем заявку (через котирование)&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;var strategy = new MarketQuotingStrategy(order, new Unit(), new Unit());&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;base.ChildStrategies.Add(strategy);&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;return StrategyProcessResults.Continue;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;естественно ругается на base.Security.GetMarketPrice()&lt;br /&gt;&lt;br /&gt;Вопрос: как в коде реализации стратегии получить рыночную цену по инструменту _sec1 (или BestAsk) из корзины инструментов _securityBasket?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1405/</id>
    <title type="text">Security.MaxPrice и Security.MinPrice</title>
    <published>2011-03-01T14:32:57Z</published>
    <updated>2011-03-01T14:32:57Z</updated>
    <author>
      <name>Артем</name>
      <uri>https://stocksharp.ru/users/16716/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Добрый день!&lt;br /&gt;При появлении Security через SecuritiesChanged значения &lt;br /&gt;Security.MaxPrice и Security.MinPrice все время равны 0. Биржа РТС. Пробовал запускать Verifier не помогает. Последовательность колонок 100000 раз перепроверял. Чего может быть?&lt;br /&gt;Заранее спасибо!</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1404/</id>
    <title type="text">Портфель по деривативам (Ограничения по клиентским счетам)</title>
    <published>2011-02-28T13:38:28Z</published>
    <updated>2011-02-28T13:38:28Z</updated>
    <author>
      <name>freelancer</name>
      <uri>https://stocksharp.ru/users/28572/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Здравствуйте. Пытаюсь выгрузить по DDE эту таблицу - не идут данные. Делаю как в примере SampleDdeCustomTable. Может с ней надо как-то по особенному поступать ?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1403/</id>
    <title type="text">Вопрос по архитектуре библиотеки</title>
    <published>2011-02-28T08:29:38Z</published>
    <updated>2011-02-28T08:29:38Z</updated>
    <author>
      <name>esper</name>
      <uri>https://stocksharp.ru/users/5990/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Добрый день.&lt;br /&gt;&lt;br /&gt;Предположим, что необходимо получать данные по инструментам, для этого мы добавляем нужные столбцы в квике и в программе, подписываемся на событие новой записи и изменения данных в таблице Secirities и в обработчике Trader.Connected запускаем экспорт по DDE этой таблицы.&lt;br /&gt;Данные поступают, мы их видим как в обработчиках событий, так и в таблице Trader.Securities. Далее есть два варианта:&lt;br /&gt;1. в любой момент времени мы можем обратиться к данной таблице из кода стратегии и прочитать нужные нам данные;&lt;br /&gt;2. в обработчиках событий копировать поступившие данные в свои структуры и в стратегии работать со своими данными.&lt;br /&gt;&lt;br /&gt;Интересует такой вот момент, во втором случае разработчик сам занимается вопросом согласованности данных, т.е. любая запись и доступ к данным заключены в блок синхронизации и в любой момент времени данные у нас согласованы. Каким образом обстоит дело в первом случае?</content>
  </entry>
  <entry>
    <id>https://stocksharp.ru/topic/1402/</id>
    <title type="text">SlippageManager</title>
    <published>2011-02-28T06:44:24Z</published>
    <updated>2011-02-28T06:44:24Z</updated>
    <author>
      <name>Артем</name>
      <uri>https://stocksharp.ru/users/16716/</uri>
      <email>info@stocksharp.ru</email>
    </author>
    <category term="Quik" />
    <content type="html">Доброго времени суток!&lt;br /&gt;Помогите, пожалуйста, разобраться с механизмом SlippageManager... Сталкнулся со следующей проблемой:&lt;br /&gt;Имеются базовая и дочерня стратегии, в дочерней стратегии создается дочерняя стратегия котирования:&lt;br /&gt;&lt;br /&gt;Ecng.Trading.Algo.Strategies.MarketQuotingStrategy strategy = new Ecng.Trading.Algo.Strategies.MarketQuotingStrategy(&lt;br /&gt;                    order,&lt;br /&gt;                    new Ecng.Trading.BusinessEntities.Unit(),&lt;br /&gt;                    new Ecng.Trading.BusinessEntities.Unit());&lt;br /&gt;                strategy.IsForts = true;&lt;br /&gt;                strategy.Interval = TimeSpan.FromTicks(1);&lt;br /&gt;                strategy.PriceType = Ecng.Trading.Algo.MarketPriceTypes.Following;&lt;br /&gt;                strategy.PriceDelta = 0;&lt;br /&gt; &lt;br /&gt;                ChildStrategies.Add(strategy);&lt;br /&gt;                //регистрация проскальзывания&lt;br /&gt;                strategy.NewOrder += (new_order) =&amp;gt;&lt;br /&gt;                {&lt;br /&gt;                    strategy.SlippageManager.RegisterSlippage(new_order);&lt;br /&gt;                };&lt;br /&gt;&lt;br /&gt;                strategy.Start();&lt;br /&gt;&lt;br /&gt;Далее при опросе SlippageManager.Slippage для самой верхней базовой стратегии всегда возвращается 0, хотя заявки выполняются по ценам, отличным от заданных в order при создании стратегии квотирования. Вопрос в том, почему не считается проскальзывание?&lt;br /&gt;&lt;br /&gt;Заранее спасибо!&lt;br /&gt;&lt;br /&gt;P.S.&lt;br /&gt;Попробовал сразу регистрировать Order для базовой стратегии без котирования, все равно проскальзывание не считается. Непонятно как для фьючерсов раработает механизм</content>
  </entry>
</feed>