Форум. StockSharphttps://stocksharp.ru/handlers/atom.ashx?category=forum&page=85Copyright @ StockSharp Platform LLC 2010 - 20242024-03-29T14:57:16Zhttps://stocksharp.ru/images/logo.pnghttps://stocksharp.ru/topic/4639/Ищу данные2014-07-18T15:13:29Z2014-07-18T15:13:29Zskuvvhttps://stocksharp.ru/users/28621/info@stocksharp.ruИщу данные за промежуток с 2014.07.07 по 2014.07.17 включительно по стаканам(всем) forts.<br />Могу предложить что-нибудь из актуальных данных взамен(есть немного Trades/Quotes с Nyse,Nasdaq)https://stocksharp.ru/topic/4638/API 4.2.8. Ошибка №4 при чтении изменений инструментов из хранилища2014-07-17T14:55:41Z2014-07-17T14:55:41Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
System.OverflowException: Value was either too large or too small for an Int32.
at System.Decimal.ToInt32(Decimal d)
at System.Decimal.op_Explicit(Decimal value)
at #=qZ104p5z2eov1_mYO_k1HL3qd433raEyXKQiRbsnKmNglEOVZ4DA3_64Cm5Ht5TpL.#=qIXf66HzCEmtO1Wdjhp9WUw==(#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA= #=qdAmiLVrcUhz6m_nNxImNqQ==)
at #=q5EdaFwPV1ERNKALP2WC1eH4yJqcY9G4z0Sq7Lv5xjXCmEqb6p_7ia$WJJRFMkJfwI3eez87iQcNEy8XasBGtRQ==.#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA=.MoveNext()
at System.Linq.Enumerable.<SelectManyIterator>d__14`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at StorageResave.Resavers.SecurityChangeResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\SecurityChangeResaver.cs:line 79</pre>
</div></div><br />Маркет данные с изменениями инструмента для воспроизведения ошибки прилагаю. Инструмент: FEES@TQNL, дата: 06.01.2014, записано через Смартком.https://stocksharp.ru/topic/4637/API 4.2.8. Ошибка №3 при чтении изменений инструментов из хранилища2014-07-17T14:52:54Z2014-07-17T14:52:54Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
System.ArgumentException: Decimal byte array constructor requires an array of length four containing valid decimal bytes.
at System.Decimal.SetBits(Int32[] bits)
at #=q7hbTCONvIO4muPuc2eMrnaMieTHfWWwAqKMgNtaGvW0rMY4sOXFfNR53eoGxLVfcrl_efCSw291uSuOv6cNuRg==.#=qhWibxfqJAv212d1e6qnM3vkcSVgiY772TRtJqTO3Jqk=(BitArrayReader #=q6QpFnl8OvFEEJikOGoD5_Q==, Decimal #=qt7Urm8KiV6PAhnGjy5djog==)
at #=q7hbTCONvIO4muPuc2eMrnaMieTHfWWwAqKMgNtaGvW0rMY4sOXFfNR53eoGxLVfcrl_efCSw291uSuOv6cNuRg==.#=qh5FLVCQ5dIRJc0BphWDyM0m_BBjh$nReKXvfuc9o5go=[T](BitArrayReader #=qHCKz9fHxXoknhhWwNqSJSg==, #=qek3V_aKLd71R0$hcSuVtT7ZCVQB71cVJlM93QvvrAA6blcWdRdJogknlwwv7sX0E #=qI$GePiDpmN0KYiz6EeUdTQ==)
at #=qZ104p5z2eov1_mYO_k1HL3qd433raEyXKQiRbsnKmNglEOVZ4DA3_64Cm5Ht5TpL.#=qIXf66HzCEmtO1Wdjhp9WUw==(#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA= #=qdAmiLVrcUhz6m_nNxImNqQ==)
at #=q5EdaFwPV1ERNKALP2WC1eH4yJqcY9G4z0Sq7Lv5xjXCmEqb6p_7ia$WJJRFMkJfwI3eez87iQcNEy8XasBGtRQ==.#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA=.MoveNext()
at System.Linq.Enumerable.<SelectManyIterator>d__14`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at StorageResave.Resavers.SecurityChangeResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\SecurityChangeResaver.cs:line 79</pre>
</div></div><br />Маркет данные с изменениями инструмента для воспроизведения ошибки прилагаю. Инструмент: GMKN@TQBS, дата: 27.12.2013, записано через Смартком.https://stocksharp.ru/topic/4636/API 4.2.8. Ошибка №2 при чтении изменений инструментов из хранилища2014-07-17T14:49:44Z2014-07-17T14:49:44Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
System.ArgumentException: Поле для кода 0 не найдено.
at #=qZ104p5z2eov1_mYO_k1HL3qd433raEyXKQiRbsnKmNglEOVZ4DA3_64Cm5Ht5TpL.#=qheoz9sYupuN9QbbAibSfZA==(#=qUWCbw99GO2K4UY9lwMnfETli5zX9M7v44RC64qzmb0RRi3zYlZMNqw8bou1PRpzF #=qxy2e9U8j_Kn13z1qunwnew==, Int32 #=qCOKqhO5T$9HB5fRcvhN5rw==)
at #=qZ104p5z2eov1_mYO_k1HL3qd433raEyXKQiRbsnKmNglEOVZ4DA3_64Cm5Ht5TpL.#=qIXf66HzCEmtO1Wdjhp9WUw==(#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA= #=qdAmiLVrcUhz6m_nNxImNqQ==)
at #=q5EdaFwPV1ERNKALP2WC1eH4yJqcY9G4z0Sq7Lv5xjXCmEqb6p_7ia$WJJRFMkJfwI3eez87iQcNEy8XasBGtRQ==.#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA=.MoveNext()
at System.Linq.Enumerable.<SelectManyIterator>d__14`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at StorageResave.Resavers.SecurityChangeResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\SecurityChangeResaver.cs:line 79</pre>
</div></div><br />Маркет данные с изменениями инструмента для воспроизведения ошибки прилагаю. Инструмент: FEES@TQNL, дата: 18.06.2013, записано через Смартком.https://stocksharp.ru/topic/4635/API 4.2.8. Ошибка №1 при чтении изменений инструментов из хранилища2014-07-17T14:46:14Z2014-07-17T14:46:14Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
System.InvalidOperationException: Неизвестное изменение 1028783254 инструмента.
at #=qZ104p5z2eov1_mYO_k1HL3qd433raEyXKQiRbsnKmNglEOVZ4DA3_64Cm5Ht5TpL.#=qIXf66HzCEmtO1Wdjhp9WUw==(#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA= #=qdAmiLVrcUhz6m_nNxImNqQ==)
at #=q5EdaFwPV1ERNKALP2WC1eH4yJqcY9G4z0Sq7Lv5xjXCmEqb6p_7ia$WJJRFMkJfwI3eez87iQcNEy8XasBGtRQ==.#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA=.MoveNext()
at System.Linq.Enumerable.<SelectManyIterator>d__14`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at StorageResave.Resavers.SecurityChangeResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\SecurityChangeResaver.cs:line 79</pre>
</div></div><br />Встречается наиболее часто. Изменения по 18 инструментам записывались около 1,5 лет. Эта ошибка встречается в примерно 50 раз. Маркет данные с изменениями инструмента для воспроизведения ошибки прилагаю. Инструмент: FEES@TQNL, дата: 24.12.2013, записано через Смартком.https://stocksharp.ru/topic/4634/API 4.2.8. Ошибка при чтении сделок из хранилища2014-07-17T14:07:07Z2014-07-17T14:07:07Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
System.NotSupportedException: Дробный объем не поддерживается.
at #=q7hbTCONvIO4muPuc2eMrnaMieTHfWWwAqKMgNtaGvW0rMY4sOXFfNR53eoGxLVfcrl_efCSw291uSuOv6cNuRg==.#=qh5FLVCQ5dIRJc0BphWDyM0m_BBjh$nReKXvfuc9o5go=[T](BitArrayReader #=qHCKz9fHxXoknhhWwNqSJSg==, #=qek3V_aKLd71R0$hcSuVtT7ZCVQB71cVJlM93QvvrAA6blcWdRdJogknlwwv7sX0E #=qI$GePiDpmN0KYiz6EeUdTQ==)
at #=q7hbTCONvIO4muPuc2eMrnbBm4ev$cPQy5X$dmJ8XYnfADUufPeSVMuvDEz3nh_1$.#=qIXf66HzCEmtO1Wdjhp9WUw==(#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA= #=qMxJoFFjaxj2cUZSg6sTgZQ==)
at #=q5EdaFwPV1ERNKALP2WC1eH4yJqcY9G4z0Sq7Lv5xjXCmEqb6p_7ia$WJJRFMkJfwI3eez87iQcNEy8XasBGtRQ==.#=qQ$9pKiVYmuQlxy1UDxDyklIy7h1WI$VD32oe4WzImoA=.MoveNext()
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at StorageResave.Resavers.TradeResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\TradeResaver.cs:line 49</pre>
</div></div><br />Маркет данные со сделками прилагаю. Инструмент: FEES@TQNL, дата: 04.04.2013, записано через Смартком.https://stocksharp.ru/topic/4633/Работа с несколькими квиками2014-07-17T14:02:38Z2014-07-17T14:02:38Zbeasthttps://stocksharp.ru/users/50008/info@stocksharp.ruВсем доброго времени суток!<br />Я совсем недавно начал изучать S# API и столкнулся с проблемой недостаточного описания в документации.<br />Если разработчики S# API читают этот пост, то примите, пожалуйста, какие-нибудь меры для того, чтобы рядовой программист, не знакомый с вашим API, изучив вашу документацию и примеры, смог самостоятельно написать приложение без прохождения обучения и обращения на форум.<br />В данный момент я не разобрался с тем, каким образом работать с несколькими квиками.<br />Во время прочтения документации возникло много вопросов, на которые, на мой взгляд, должен быть ответ в документации и примерах.<br />Вот отрывок документации:<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
1) В папку с программой необходимо поместить два файла TRANS2QUIK.dll (пример работает с 2-мя Quik-ами). Например, один будет иметь оригинальное название, а второй будет переименован TRANS2QUIK_2.dll. Это обязательное требование работы с несколькими Quik-ами из одной программы: один Quik - одна dll.
2) После этого, идет создание нескольких QuikTrader. Через свойство QuikTrader.DdeServer передается уникальное имя для DDE сервера, а через QuikTrader.DllName путь к TRANS2QUIK.dll:
var quikTrader1 = new QuikTrader { Path = path1, DdeServer = "quik1" };
var quikTrader2 = new QuikTrader { Path = path2, DdeServer = "quik2", DllName = @"TRANS2QUIK_2.dll" };
// если вторая dll находится в другой папке, то можно создать шлюз, указав путь к dll
// var quikTrader2 = new QuikTrader { Path = path2, DdeServer = "quik2", DllName = @"Folder1\TRANS2QUIK_2.dll" };
</pre>
</div></div><br /><br />Что за файл TRANS2QUIK.dll? В папке квика его нет, в папке References в S# API этого файла тоже нет. В примере, который демонстрирует работу с несколькими квиками (StockSharp_4.2.3.14\Samples\Quik\SampleFewQuiks) этого файла тоже нет.<br /><br />Допустим, этот файл есть. Куда его нужно копировать? Варианты:<br />- в корень проекта Visual Studio, где лежит файл типа Microsoft Visual Studio Solution;<br />- в папку, где код робота и папки bin и obj;<br />- в папку, где лежит исполняемый файл робота (bin\Debug);<br />- в папку с квиком.<br /><br />Нужно ли этот файл добавлять в свойствах проекта в разделе "References"?<br /><br />Какое правило указания пути к этому файлу? В примере написано @"TRANS2QUIK_2.dll". Это значит, что этот файл лежит там же, где и exe-шник? Ещё в примере написано @"Folder1\TRANS2QUIK_2.dll". Это означает, что файл лежит в папке, а папка там же, где и exe-шник? А если этот файл на другом диске, то как нужно это прописывать?<br /><br /><br />Разъясните мне, пожалуйста, эти вопросы.https://stocksharp.ru/topic/4632/API 4.2.3.13. Ошибка при чтении стаканов из хранилища2014-07-16T20:57:06Z2014-07-16T20:57:06Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
System.NullReferenceException: Object reference not set to an instance of an object.
at #=qdzUcc9G60rgLTpsRTwxQ57YkCj478_CGUf$i7e2bziym3HhGvYsJyun$ZEW9aZov.#=q6NsT3Yd6_Fbp9iPLS_THbw==(#=qnIZTzlrlnBDxMJO30NWwBtKceweJUgowii86VFk7klw= #=qnkUtzGIMfUU3RS$v2q38Sg==)
at #=q01Bhsf3pAS4Q8bWs6PW8tKB_LG3QlqCFD95DaqBJBGTy4j2kqg6sujFB3kNsfmYD6o0Wgp$VClsui8ShWH51QA==.#=qnIZTzlrlnBDxMJO30NWwBtKceweJUgowii86VFk7klw=.MoveNext()
at MoreLinq.MoreEnumerable.<BatchImpl>d__68`2.MoveNext()
at StorageResave.Resavers.MarketDepthResaver.Resave(String sourcePath, String destinationPath, DateTime from, DateTime to) in c:\Projects\StockSharpTests\trunk\StorageResave\StorageResave\Resavers\MarketDepthResaver.cs:line 75</pre>
</div></div>Маркет данные со стаканом прилагаю. Инструмент: FEES@TQNL, дата: 04.04.2013, записано через Смартком.https://stocksharp.ru/topic/4631/API 4.2.8 Security.Name в нижнем регистре2014-07-16T11:02:47Z2014-07-16T11:02:47Zpoisonhttps://stocksharp.ru/users/38961/info@stocksharp.ruAPI 4.2.8 при использовании lua коннектора Security.Name приходит в нижнем регистре. <br />Если IsDDE = true, то приходит в верхнем.<br />Непорядок..https://stocksharp.ru/topic/4629/Не работает событие появление свечки2014-07-15T19:17:33Z2014-07-15T19:17:33Zbukerhttps://stocksharp.ru/users/50556/info@stocksharp.ruДобрый день!<br />Не срабатывает событие Processing для Менеджера Свечей<br /><br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
_candleManager.Processing += (s, candle) =>
{
// если дата свечки больше даты последней отрисованной, а состояние свечки завершено
if (candle.State == CandleStates.Finished && candle.OpenTime > _lastHistoryCandleToCheck)
this.GuiAsync(() => DrawCandle(s,candle));
};</pre>
</div></div><br /><br />а также правило на появление завершенной свечки в стратегии<br /><br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
_spreadCandleSeries
.WhenCandlesFinished()
.Do(ProcessSpreadCandle)
.Apply(this);</pre>
</div></div><br /><br />соответственно нет никакой отрисовки графика. Пример SampleCandles также не может отрисовать свечки, из чего делаю вывод, что проблема не в коде. <br /><br />Сам квик настраивал по всем правилам и комментариям в ветках форума - а именно таблица всех сделок полна тиканий по моим инструментам (для свечки задаю индекс из двух акций, работаю на демке)<br /><br />версия библиотеки 4.2.3.21<br />Заранее большое спасибо!https://stocksharp.ru/topic/4628/Ошибка с временем в HistoryEmulationConnector2014-07-15T10:21:05Z2014-07-15T10:21:05Zwednesdayhttps://stocksharp.ru/users/38935/info@stocksharp.ruДобрый день [smile] <br />Подскажите пожалуйста почему при тестировании на истории, на временных интервалах включающих в себя 31 марта, может возникать данная ошибка.<br /><div class="quote"><span class="quotetitle">Цитата:</span><div class="innerquote">HistoryEmulationConnector 31.03.2013 3:00:00 Error System.ArgumentException: Полученное значение DateTime не соответствует допустимому значению времени. Например, при переводе часов вперед любое время, приходящееся на пропущенный период, считается недействительным.<br />Имя параметра: dateTime<br /> в System.TimeZoneInfo.ConvertTime(DateTime dateTime, TimeZoneInfo sourceTimeZone, TimeZoneInfo destinationTimeZone, TimeZoneInfoOptions flags, CachedData cachedData)<br /> в System.TimeZoneInfo.ConvertTime(DateTime dateTime, TimeZoneInfo sourceTimeZone, TimeZoneInfo destinationTimeZone)<br /> в StockSharp.Algo.TraderHelper.ToExchangeTime(Exchange exchange, DateTime time, TimeZoneInfo sourceZone)<br /> в StockSharp.Algo.TraderHelper.ToExchangeTime(Exchange exchange, DateTime time)<br /> в StockSharp.Algo.TraderHelper.ToExchangeTime(Security security, DateTime localTime)<br /> в StockSharp.Algo.TraderHelper.GetMarketTime(Security security)<br /> в StockSharp.Algo.Strategies.Strategy.get_CurrentTime()<br /> в StockSharp.Algo.Strategies.StrategyHelper.IsTradeTime(Strategy strategy)<br /> в StockSharp.Algo.Strategies.Strategy.#=qxdcmix6Yt3vNn7FTildS2RiGPsqSxsMZFb2ckCKUYp8=(TimeSpan #=qCdPJIq2RJXHLF$CkyhQoOg==)<br /> в System.Action`1.Invoke(T obj)<br /> в Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)<br /> в StockSharp.Algo.Connector.#=qyZBfUUSM4onnfQ$9MuxukDko_3F6qNOdwtO9hmuyWm0=(TimeSpan #=qhLVGNCMGdxX9Ur4pUz60VQ==)<br /> в StockSharp.Algo.Connector.#=qcxr_QEMxh$YcQgzX80oDdHIKs5eisSWh1$_PFpeShsQ=()<br /> в StockSharp.Algo.Connector.OnProcessMessage(Message message, MessageAdapterTypes adapterType, MessageDirections direction)<br /> в StockSharp.Algo.Testing.BaseEmulationConnector.OnProcessMessage(Message message, MessageAdapterTypes adapterType, MessageDirections direction)<br /> в StockSharp.Algo.Testing.HistoryEmulationConnector.OnProcessMessage(Message message, MessageAdapterTypes adapterType, MessageDirections direction)<br /></div></div><br />https://stocksharp.ru/topic/4627/API 4.2.6.0. Ошибки при чтении изменений инструментов2014-07-15T07:22:39Z2014-07-15T07:22:39Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ruХранилище записывалось разными версиями S# API с конца 2012 г через SmartCom. Изменения инструментов за некоторые даты из хранилищ не читаются. Решил перегнать те изменения инструментов что читаются в новое хранилище. Для информации разработчикам библиотеки привожу ошибки, которые появляются при чтении: <div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
"Поле для кода 0 не найдено",
"Неизвестное изменение инструмента",
"Value was either too large or too small for an Int32",
"Specified argument was out of the range of valid values",
"Decimal byte array constructor requires an array of length four containing valid decimal bytes",</pre>
</div></div>Полную информацию об ошибке со стекттрейсом прилагаю к сообщениюhttps://stocksharp.ru/topic/4626/API 4.2.6.0. Проблема при конвертации хранилища2014-07-14T15:59:59Z2014-07-14T15:59:59Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ruПробую пересохранить изменения по инструментам, которые были записаны разными версиями API через SmartCOM. В некоторые дни в хранилище отсутствует информация о шаге цены. В результате получаю ошибку "Минимальный шаг цены 0,01 инструмента не соответствует самой цене". Что сделать чтобы пересохранить записанные ранее данные?https://stocksharp.ru/topic/4625/Проблема с импортом тиковых сделок2014-07-14T15:30:16Z2014-07-14T15:30:16Zdevrusshttps://stocksharp.ru/users/50604/info@stocksharp.ruЕсть файл с такой вот структурой (экспорт из Reuters):<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
#RIC,Date[L],Time[L],Type,Price,Volume
NQH4,01/12/2013,17:00:01.365,Trade,3483.5,1
</pre>
</div></div><br /><br />В настройках Гидры я выставил следующие настройки:<br /><a target="_blank" rel="nofollow" href="https://stocksharp.ru/away/?u=AQAAAAAAAADyMdwVgy40oA0PybopSJgUJv-v_byb2_Y6CPICLkbEHNVGaauca0YAm2NwJH7Av_0AMM7KTO1iL0DgESi3zTp5" title="http://gyazo.com/213b0538333d05e16aa16e88aefb6bdf
">http://gyazo.com/213b0538333d05e16aa16e88aefb6bdf
</a><br /><br />При старте импорта вылетает следующая ошибка:<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
Имя Время Тип Сообщение
S#.Data 14.07.2014 19:22:50 Error System.InvalidCastException: Unable to cast object of type 'StockSharp.BusinessEntities.Trade' to type 'StockSharp.Messages.ExecutionMessage'.
at System.Linq.Enumerable.<CastIterator>d__b1`1.MoveNext()
at System.Linq.Lookup`2.Create[TSource](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
at System.Linq.GroupedEnumerable`3.GetEnumerator()
at #=qdevgz$mYyME7AhRuDmDMugq7ZYFJ8CrzhnZqovJGnEM5msnaoUJMKIMfLrCq8l2I.Save(IEnumerable`1 #=qYOTr01LNDNMCv8_4Aw$f0g==)
at StockSharp.Hydra.Panes.ImportPane.FlushBuffer(IEnumerable`1 buffer, IMarketDataDrive drive)
at StockSharp.Hydra.Panes.ImportPane.<>c__DisplayClass169.<OnDoWork>b__168()
at Ecng.Common.Converter.<>c__DisplayClassf.<DoInCulture>b__e()
at Ecng.Common.Converter.DoInCulture[T](CultureInfo cultureInfo, Func`1 func)
at StockSharp.Hydra.Panes.ImportPane.OnDoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
</pre>
</div></div><br /><br />Свечки 1сек импортируются нормально, проблема только с тикамиhttps://stocksharp.ru/topic/4624/Connector MarketTimeChanged2014-07-14T14:48:19Z2014-07-14T14:48:19Zwednesdayhttps://stocksharp.ru/users/38935/info@stocksharp.ruДоброго дня.<br /> В HistoryEmulationConnector при задании <div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
connector.MarketDataAdapter.SessionHolder.MarketTimeChangedInterval = timeFrame</pre>
</div></div><br /> событие MarketTimeChanged приходит с интервалом исключительно в два timeFrame.(версия Api 4.2.6,хотя в 4.2.3.21 тоже самое) Данный факт наблюдается в том числе и в SampleHistoryTest https://stocksharp.ru/topic/4622/API 4.2.4.0 - Пропало свойство Connector в классе SecurityPicker2014-07-14T10:02:34Z2014-07-14T10:02:34ZJaguarFXhttps://stocksharp.ru/users/49779/info@stocksharp.ruНа новой версии API 4.2.4.0 пропало свойство Connector в классе SecurityPicker,<br />и соответственно в старом коде появляется ошибка:<br />"StockSharp.Xaml.SecurityPicker" не содержит определение для "Connector". Не удалось найти метод расширения "Connector", принимающий первый аргумент типа "StockSharp.Xaml.SecurityPicker" (пропущена директива using или ссылка на сборку?)...."<br /><br />Соответственно данный код пришлось закомментить для обеспечения непрерывности работы робота,<br />но теперь естественно окно выбора инструмента не отображает возможные инструменты.<br /><br />Прошу подсказать как теперь для объекта класса SecurityPicker необходимо указывать подключение к терминалу? https://stocksharp.ru/topic/4621/API 4.2.5 SampleHistoryTesting не работает с дочерними стратегиями2014-07-14T08:24:46Z2014-07-14T08:24:46ZAndriihttps://stocksharp.ru/users/27996/info@stocksharp.ruТестирование на истории не работает при создании дочерних стратегия:<br /><br /><b>SmaStrategy.cs:</b><br /><br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
if (!SafeGetConnector().RegisteredMarketDepths.Contains(Security))
{
// регистрируем псевдо-маркетную заявку - лимитная заявка с ценой гарантирующей немедленное исполнение.
RegisterOrder(this.CreateOrder(direction, Security.GetMarketPrice(direction), volume));
}
else
{
// переворачиваем позицию через котирование
var strategy = new MarketQuotingStrategy(direction, volume)
{
WaitAllTrades = true,
};
ChildStrategies.Add(strategy);
}</pre>
</div></div><br />не особо понятно почему написано<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
!SafeGetConnector().RegisteredMarketDepths.Contains(Security)</pre>
</div></div><br />если Strategy класс инкапсулирует в себя коннектор в свойстве Connector,<br />должно быть <div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
Connector.RegisteredMarketDepths.Contains(Security)</pre>
</div></div><br /> но не в этом суть, при тестировании со стаканом тест проходит без сделок<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
var strategy = new MarketQuotingStrategy(direction, volume)
{
WaitAllTrades = true,
};
ChildStrategies.Add(strategy);</pre>
</div></div><br />создается дочерняя стратегия, но результат работы отсутствует/никакой<br /><br /><a href='http://i.imgur.com/PFZnQB1.png' class='lightview' data-lightview-options="skin: 'mac'" data-lightview-group='mixed'><img src="http://i.imgur.com/PFZnQB1.png" style='max-width: 600px;' alt="Strategy results" title="Strategy results" /></a>https://stocksharp.ru/topic/4620/Гидра 4.2.3.21 Ошибка2014-07-13T10:30:26Z2014-07-13T10:30:26ZVassilSanychhttps://stocksharp.ru/users/6491/info@stocksharp.ru<div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:plain">
14:22:38.441|Error |S#.Data |Microsoft.Practices.ServiceLocation.ActivationException: Activation error occured while trying to get instance of type IConnector, key "" ---> Microsoft.Practices.Unity.ResolutionFailedException: Resolution of the dependency failed, type = "StockSharp.BusinessEntities.IConnector", name = "(none)".
Exception occurred while: while resolving.
Exception is: InvalidOperationException - The current type, StockSharp.BusinessEntities.IConnector, is an interface and cannot be constructed. Are you missing a type mapping?
-----------------------------------------------
At the time of the exception, the container was:
Resolving StockSharp.BusinessEntities.IConnector,(none)
---> System.InvalidOperationException: The current type, StockSharp.BusinessEntities.IConnector, is an interface and cannot be constructed. Are you missing a type mapping?
в Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForAttemptingToConstructInterface(IBuilderContext context)
в BuildUp_StockSharp.BusinessEntities.IConnector(IBuilderContext )
в Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext context)
в Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context)
в Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides)
--- Конец трассировки внутреннего стека исключений ---
в Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides)
в Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, String name, IEnumerable`1 resolverOverrides)
в Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType, String key)
--- Конец трассировки внутреннего стека исключений ---
в Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType, String key)
в Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance[TService]()
в StockSharp.Hydra.Panes.GluingDataPane.CreateContinuousSecurity_OnClick(Object sender, RoutedEventArgs e)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.Controls.Button.OnClick()
в System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
в System.Windows.Input.InputManager.ProcessStagingArea()
в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
в MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)</pre>
</div></div><br />https://stocksharp.ru/topic/4619/API 4.2.4.0. Скорость чтения стаканов из хранилища2014-07-12T10:00:28Z2014-07-12T10:00:28Zvk37https://stocksharp.ru/users/6296/info@stocksharp.ruСкорость загрузки стаканов из хранилища стала существенно медленнее на новой версии.<br /><br />4.2.3.13: Время на исполнение: 00:00:01.0192103<br />4.2.4.0 : Время на исполнение: 00:00:32.7287738<br /><div class="code"><strong>Код</strong><div class="innercode"><pre class="brush:csharp">
using StockSharp.Algo.Storages;
using StockSharp.BusinessEntities;
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
var storageRegistry = new StorageRegistry();
var defaultDrive = (LocalMarketDataDrive)storageRegistry.DefaultDrive;
defaultDrive.Path = Path.GetFullPath(@"D:\AlgoTrading\MarketData\Storage\PlazaForts");
var security = new Security() { Id = "RIU4@FORTS" };
var marketDepthStorage = storageRegistry.GetMarketDepthStorage(security, defaultDrive);
var date = new DateTime(2014, 07, 9);
var start = DateTime.Now;
foreach (var depth in marketDepthStorage.Load(date)) { }
Console.WriteLine("Время на исполнение: {0}", DateTime.Now - start);
}
}</pre>
</div></div><br />Итого медленнее в 32 раза.https://stocksharp.ru/topic/4618/Гидра 4.2.3.21 Ошибка2014-07-12T08:07:59Z2014-07-12T08:07:59ZVassilSanychhttps://stocksharp.ru/users/6491/info@stocksharp.ru11:22:28.449|Error |S#.Data |System.NotSupportedException: Указанный метод не поддерживается.<br /> в Ecng.Data.HierarchicalPageLoadList`1.OnClear()<br /> в StockSharp.Algo.Storages.BaseStorageEntityList`1.OnClear()<br /> в Ecng.Serialization.DelayAction.BatchFlushAndClear(ICollection`1 actions)<br />