← Назад

Гидра и Finam

Установил себе гидру-база встала нормально. Запросил бумаги с Finam-все нормально, но число сделок стоит равное 0, решил запросить сделки за последние дни-ничего, как будто бы не было. Нажал старт экспорта-тоже молчок.

Комментарии (67)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

Mikhail Sukhov
Mikhail Sukhov

Андрей Ефимов: Установил себе гидру-база встала нормально. Запросил бумаги с Finam-все нормально, но число сделок стоит равное 0, решил запросить сделки за последние дни-ничего, как будто бы не было. Нажал старт экспорта-тоже молчок.

А лог файл что пишет?

anothar
anothar Автор

А ничего не пишет(( Снес базу прогнал скрипт еще раз та же история-правда добавился еще один баг:посмотрите на последнюю строчку: вместо Gazp стоит АО)-опять же везде число сделок стоит равное 0. релиз последний-3.1.10

Mikhail Sukhov
Mikhail Sukhov

Андрей Ефимов: А ничего не пишет((

Запустите Гидру под отладчиком. Что-то с логом. Он как минимум должен написать пару строчек.

anothar
anothar Автор

Вот лог с парой строчек-после запуска экспорта:

Mikhail Sukhov
Mikhail Sukhov

Андрей Ефимов: Вот лог с парой строчек-после запуска экспорта:

Что за инструмент?

anothar
anothar Автор

А и еще-копался в коде, искал где и как гидра получает данные с финама-потому что косяк то явно где-то тут, но так и не нашел, если подскажете, то может я и сам найду причину багов. А и еще вопрос в догонку: гидра скачивает сделки, а почему не скачивает свечки?

Mikhail Sukhov
Mikhail Sukhov

Андрей Ефимов: А и еще-копался в коде, искал где и как гидра получает данные с финама-потому что косяк то явно где-то тут, но так и не нашел, если подскажете, то может я и сам найду причину багов. А и еще вопрос в догонку: гидра скачивает сделки, а почему не скачивает свечки?

Все сосредоточено в одном месте - Worker.

anothar
anothar Автор

SBER

Mikhail Sukhov
Mikhail Sukhov

Андрей Ефимов: SBER

Под отладчиком можете вывести его поля? Особенно интересно значение свойства ExtensionInfo.

Dmitriy Klimov
Dmitriy Klimov

У меня тоже не качает, и в логе не пишутся сообщения. Из-за чего такое может быть?

Еще вопрос: не смог в списке инструменов найти индекс на фьючерс РТС. Через Гидру инструменты ФОРТС можно подгрузить?

hobo
hobo

Dmitriy Klimov: Еще вопрос: не смог в списке инструменов найти индекс на фьючерс РТС. Через Гидру инструменты ФОРТС можно подгрузить?Можно. Не через финам только, а через РТС. Загрузятся сделки по всем инструментам, отдельно фьюч какой-либо не загрузить.

Dmitriy Klimov
Dmitriy Klimov

hobo: Можно. Не через финам только, а через РТС. Загрузятся сделки по всем инструментам, отдельно фьюч какой-либо не загрузить.

Для РТС не отображается ни один инструмент. При попытке обновить инструменты вылетает ошибка: http://screencast.com/t/xfxz89NNqU Но для Finam инструменты показывает...

Mikhail Sukhov
Mikhail Sukhov

Dmitriy Klimov:

hobo: Можно. Не через финам только, а через РТС. Загрузятся сделки по всем инструментам, отдельно фьюч какой-либо не загрузить.

Для РТС не отображается ни один инструмент. При попытке обновить инструменты вылетает ошибка: http://screencast.com/t/xfxz89NNqU Но для Finam инструменты показывает...

Потому что РТС-ный провайдер сам подтягивает инструменты. Для него не нужно выбирать инструменты.

Dmitriy Klimov
Dmitriy Klimov

Mikhail Sukhov: Потому что РТС-ный провайдер сам подтягивает инструменты. Для него не нужно выбирать инструменты.

Михаил, а как тогда начать загрузку истории с РТС, не указав инструмента?

Dmitriy Klimov
Dmitriy Klimov

Ребята, выручайте! Как загрузить историю фьючерса на индекс РТС? Что где выбрать и нажать, чтобы началась загрузка?

Mikhail Sukhov
Mikhail Sukhov

Dmitriy Klimov: Ребята, выручайте! Как загрузить историю фьючерса на индекс РТС? Что где выбрать и нажать, чтобы началась загрузка?

В том то и дело, что для РТС выбирать ничего не нужно. Только кнопка Старт.

Dmitriy Klimov
Dmitriy Klimov

Mikhail Sukhov: В том то и дело, что для РТС выбирать ничего не нужно. Только кнопка Старт.

Нажал кнопку старт. В логе появились строчки:

Finam 13:12:37.0923676 Стартовал для 0 инструментов. RTS 13:12:37.1763724 Стартовал. RTS 13:12:41.1345988 Загружено 0 сделок.

И все! Все стоит, и ничего не происходит...

Mikhail Sukhov
Mikhail Sukhov

Mikhail Sukhov: В том то и дело, что для РТС выбирать ничего не нужно. Только кнопка Старт.

Нажал кнопку старт. В логе появились строчки:

Finam 13:12:37.0923676 Стартовал для 0 инструментов. RTS 13:12:37.1763724 Стартовал. RTS 13:12:41.1345988 Загружено 0 сделок.

И все! Все стоит, и ничего не происходит...

Настройки такие. В доке написано про время работы и интервал у источников.

Dmitriy Klimov
Dmitriy Klimov

Mikhail Sukhov: Настройки такие. В доке написано про время работы и интервал у источников.

Вот скрин окна настроек: http://screencast.com/t/l6JqPrtk

Что-то не так?

AlexK2
AlexK2

у меня такая же проблема, свечи качаются а сделки - нет. (финам (квик) + ртс). как-то решилась у Вас данная проблема?

foRs
foRs

Хелп!

Finam 21:43:24.2421754 System.InvalidOperationException: Файл '7_MINISANDP500\2011_01_01.txt' не был успешно распарсен и будет удален. ---> System.IndexOutOfRangeException: Индекс находился вне границ массива. в StockSharp.Algo.History.Finam.FinamHistorySource.#=qlB0M9uQDPwVAIXz5AbQc65LSarl5M0QezLqHZLo$55E=.#=q8fwjV7716bC2HEuYKVeXiXgPBDTA0javJnhIQdjOMFs=(String[] #=qntuF$Wc9jhDoYbgoFnPHLg==) в System.Linq.Enumerable.<>c__DisplayClass123.<CombineSelectors>b__11(TSource x) в System.Linq.Enumerable.WhereSelectArrayIterator2.MoveNext() в System.Linq.Buffer1..ctor(IEnumerable1 source) в System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source) в StockSharp.Algo.History.Finam.FinamHistorySource.#=qm3V9Kfo72M8TE2px_zLo91NUNwX1DFHZXooim2Xfrb4=.#=qSgEbel5tmQf9uxhh2RLotg==() в Ecng.Common.Converter.DoInCulture(CultureInfo cultureInfo, Func1 func) в StockSharp.Algo.History.Finam.FinamHistorySource.#=q6BlK78NbMWT5va2jgD3c1w==(String #=qeFGr0rUvPsRTAEsilaxrAw==, Func1 #=qPgI9IanAZbPzdneS8Dmo$Q==, Func2 #=quNBr9F2HX1FjRdXv3fo9cg==) --- Конец трассировки внутреннего стека исключений --- в StockSharp.Algo.History.Finam.FinamHistorySource.#=q6BlK78NbMWT5va2jgD3c1w==(String #=qeFGr0rUvPsRTAEsilaxrAw==, Func1 #=qPgI9IanAZbPzdneS8Dmo$Q==, Func2 #=quNBr9F2HX1FjRdXv3fo9cg==) в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time) в StockSharp.Hydra.Finam.FinamTradeSource.Load(IDictionary2 trades) в F:\Sources\StockSharpReleases\StockSharp_4.0.5\Hydra\Plugins\Finam\FinamTradeSource.cs:строка 201 в StockSharp.Hydra.Worker.Load[TData](IMarketDataSource source, IEnumerable1 securities, Func3 getStorage, Func2 getLog, Func2 orderBy, Action2 updateCount) в F:\Sources\StockSharpReleases\StockSharp_4.0.5\Hydra\Hydra\Worker.cs:строка 242 в StockSharp.Hydra.Worker.<>c__DisplayClass19.<Download>b__e(IMarketDataSource source) в F:\Sources\StockSharpReleases\StockSharp_4.0.5\Hydra\Hydra\Worker.cs:строка 177

Mikhail Sukhov
Mikhail Sukhov

foRs: Finam 21:43:24.2421754 System.InvalidOperationException: Файл '7_MINISANDP500\2011_01_01.txt' не был успешно распарсен и будет удален. --->

Пришлите этот файл.

foRs
foRs

Mikhail Sukhov:

foRs: Finam 21:43:24.2421754 System.InvalidOperationException: Файл '7_MINISANDP500\2011_01_01.txt' не был успешно распарсен и будет удален. --->

Пришлите этот файл. А файла и нету, только папка есть 7_MINISANDP500. Сделки не качаются с финама ((

Mikhail Sukhov
Mikhail Sukhov

foRs: А файла и нету, только папка есть 7_MINISANDP500. Сделки не качаются с финама ((

А вы пробовали скачать с сайта Финам сделки?

foRs
foRs

А если SP500 убираю то, Finam 21:49:48.3551454 Инициализируется. Finam 21:49:48.3561454 Стартовал для 2 инструментов. Finam 21:49:48.3561454 Старт с 02.01.2011 для MXZ1@RTS. Finam 21:49:48.3651459 Старт с 02.01.2011 для RIZ1@RTS. Finam 21:49:48.3721463 Для инструмента 'MXZ1@RTS' загружено 0. Finam 21:49:48.3721463 Для инструмента 'RIZ1@RTS' загружено 0.

не качается, где искать ошибку? в настройках все как справке

AlexK2
AlexK2

Народ, если у кого-то качались сделки по квику, скиньте пожалуйста мне файлик настроек (*.wnd) для акций и фьючерсов. (или может кто ковырялся в исходниках сток шарпа и знает где копать?)

Mikhail Sukhov
Mikhail Sukhov

AlexK2: Народ, если у кого-то качались сделки по квику

А в Гидре вообще есть такая функциональность? Сделки, вроде как, из Финама и РТс качаются.

AlexK2
AlexK2

меня интресует вопрос - как через DDE из таблицы квика "все сделки" закачать данные по сделкам?

судя по UI, когда выбирается инструмент, то в качестве источника по стаканам можно выбрать (quik, plaza, smart), а по сделкам можно выбрать (finam, plaza, quik, smart, rts, ux). стаканы закачиваются нормально, а вот сделки только по ртс и ux кажется. в коде гидры для сделок используется метод _storage.GetTradeStorage а для стаканов _storage.GetMarketDepthStorage. я правильно понимаю, что и стаканы и сделки закачиваются через DDE?

Mikhail Sukhov
Mikhail Sukhov

AlexK2: меня интресует вопрос - как через DDE из таблицы квика "все сделки" закачать данные по сделкам?

В документации про это написано куча разделов. А уж сколько примеров.

AlexK2: я правильно понимаю, что и стаканы и сделки закачиваются через DDE?

Квик работает только через ДДЕ

foRs
foRs

Скачал новую версию для sqlite, скачал к нему sqllite.dll. запустил, настройках выставил нужные параметры, минутки, начало даты поставил 1 ноября 2011. время с 10:10 до 18:20 обновил инструменты, выбрал нужный RIZ1 , выставил параметры класс WIDX шаг 0,0001 лот 1 биржа РТС (тестовая биржа) и так пробовал Сделки Финам.

Вот в графе сделки и стаканы там нули стоят. После старта файлы создаются но пустые сделок нету. С финама пробовал качать - все качается на данном промежутке.

Скажите где я что упустил и почему сделки не качаются?

Alexander
Alexander

foRs: Скачал новую версию для sqlite, скачал к нему sqllite.dll. запустил, настройках выставил нужные параметры, минутки, начало даты поставил 1 ноября 2011. время с 10:10 до 18:20 обновил инструменты, выбрал нужный RIZ1 , выставил параметры класс WIDX шаг 0,0001 лот 1 биржа РТС (тестовая биржа) и так пробовал Сделки Финам.

Вот в графе сделки и стаканы там нули стоят. После старта файлы создаются но пустые сделок нету. С финама пробовал качать - все качается на данном промежутке.

Скажите где я что упустил и почему сделки не качаются?

Класс SPBFUT Шаг 5 Лот 1

Почему гидра закачивает новые инструменты, если я выбрал нужные(см. скрин). И в конце вылетает опять ошибка про шаг цены для MICEX@RTSIND..(я же его не просил закачивать). Во временной директории создаются папки для нужных интсрументов (из источника Finam), но все файлы пустые.

Finam 19:31:16.1670868 Инициализируется. Quik 19:31:16.1680868 Инициализируется. Finam 12:32:06.7649808 Старт с 11.01.2001 для SBER1@Finam. Finam 12:32:07.3740157 Старт с 11.01.2001 для SBERP1@Finam. Finam 12:32:07.5510258 Старт с 06.01.2001 для АО)@Finam. Quik 12:32:08.4450769 Получены новые инструменты: Quik 12:32:08.4450769 MICEX@RTSIND Quik 12:32:08.4450769 RTS2@RTSIDX

... ...

Quik 12:32:08.4700783 SR10500BO2@RTS Quik 12:32:08.4710784 RI155000BM2@RTS Quik 12:32:08.4710784 RU000A0JQ9U9@EQOB Quik 12:32:08.4710784 Si35000BC2@RTS Quik 12:32:08.4710784 RU000A0JR4J2@EQOB Quik 12:32:08.4710784 KLNA@EQNL Quik 12:32:08.4710784 RU000A0JQ136@EQNO Quik 12:32:08.4710784 SR8250BC2@RTS Quik 12:32:08.4710784 TGKN@EQNL Quik 12:32:08.4710784 RU000A0JQ177@EQNO Quik 12:32:08.4710784 RU000A0JQ5E1@EQOB Quik 12:32:08.4710784 NKNC@EQBS Quik 12:32:08.4710784 GZ18000BB2@RTS Quik 12:32:08.4710784 RU000A0JR1F6@EQNO Quik 12:32:08.4710784 DLVB@EQNE Quik 12:32:08.4710784 RU000A0JPAZ0@EQNB Quik 12:32:08.4710784 RU000A0JP799@EQNE Quik 12:32:08.4710784 Si34000BC2@RTS Quik 12:32:08.4710784 Si33250BC2@RTS Quik 12:32:08.4710784 PBSBP@EQNE Quik 12:32:08.4710784 ARSB@EQNE Quik 12:32:08.4710784 RU000A0JR7S6@EQNB Quik 12:32:08.4710784 RU000A0JR5K7@EQOV Quik 12:32:08.4710784 SR7250BC2@RTS Quik 12:32:08.4710784 RU000A0JRYP7@EQNB Quik 12:32:08.4720785 PLSM@EQNE Quik 12:32:08.4720785 RU000A0JR9A0@EQOB Quik 12:32:08.4720785 RU000A0JRVZ2@EQNB Quik 12:32:08.4720785 RU000A0JQ656@EQNO Quik 12:32:08.4720785 MGNT-006D@EQNE Quik 12:32:08.4720785 RI170000BF2@RTS Quik 12:32:08.4720785 PHOR@EQLV Quik 12:32:08.4720785 RI180000BF2@RTS Quik 12:32:08.4720785 RI165000BC2@RTS Quik 12:32:08.4720785 MICEXEQRRON@INDX Quik 12:32:08.4720785 MICEXBORRON@INDX Quik 12:32:08.4720785 5449_101@FNT Quik 12:32:08.4720785 27026_101@FNT Quik 12:32:08.4720785 RU000A0JNPK5@EQOB Quik 12:32:08.4720785 59048_101@FNT Quik 12:32:08.4720785 GUMM@EQNE Quik 12:32:08.4720785 RU000A0JRN78@EQNO Quik 12:32:08.4720785 RU000A0JPTM8@EQOB Quik 12:32:08.4720785 24849_101@FNT Quik 12:32:08.4720785 IRKT@EQNE Quik 12:32:08.4720785 MTSS@RTS Quik 12:32:08.4720785 26911_101@FNT Quik 12:32:08.4730785 RU000A0JNYN1@EQOB Quik 12:32:08.4730785 RU000A0JNGU3@EQNB Quik 12:32:08.4730785 KZBE@EQNL Quik 12:32:08.4730785 RI125000BA2@RTS Quik 12:32:08.4730785 RI115000BO2@RTS Quik 12:32:08.4730785 RU000A0JNYP6@EQOB Quik 12:32:08.4730785 LK17500BB2@RTS Quik 12:32:08.4730785 RI135000BB2@RTS Quik 12:32:08.4730785 RU000A0E6TK0@EQOB Quik 12:32:08.4730785 RI185000BB2@RTS Quik 12:32:08.4730785 RU000A0JP6L5@EQNB Quik 12:32:08.4730785 RU000A0JPTS5@EQOB Quik 12:32:08.4730785 BEGYP@EQNE Quik 12:32:08.4730785 RU000A0JQ6S9@EQNO Quik 12:32:08.4730785 RI160000BM2@RTS Quik 12:32:08.4730785 VSMZ@EQNE Quik 12:32:08.4730785 RU000A0JQS74@EQOB Quik 12:32:08.4730785 RU000A0JQ6U5@EQOB Quik 12:32:08.4730785 RU000A0JR894@EQNB Quik 12:32:08.4730785 RU000A0JRJQ6@EQNO Quik 12:32:08.4730785 CHEP@EQNL Quik 12:32:08.4730785 RU000A0JR2H0@EQOB Quik 12:32:08.4730785 GZ15500BO2@RTS Quik 12:32:08.4730785 29937_101@FNT Quik 12:32:08.4740786 27039_101@FNT Quik 12:32:08.4740786 RU000A0JRKP6@EQOB Quik 12:32:08.4740786 59810_101@FNT Quik 12:32:08.4740786 FEES@RTS Quik 12:32:08.4740786 RU000A0JRJN3@EQNO Quik 12:32:08.4740786 RU000A0JRJP8@EQNO Quik 12:32:08.4740786 RU000A0JP1V5@EQOB Quik 12:32:08.4740786 RUGR@EQNE Quik 12:32:08.4740786 SR9000BB2@RTS Quik 12:32:08.4740786 RU000A0JRER5@EQOB Quik 12:32:08.4740786 MGNZ@EQNE Quik 12:32:08.4740786 RI90000BO2@RTS Quik 12:32:08.4740786 RU000A0JRUS9@EQNO Quik 12:32:08.4740786 DSF2@RTS Quik 12:32:08.4740786 UTAR@EQNE Quik 12:32:08.4740786 RU000A0JRK63@EQOV Quik 12:32:08.4740786 TZUM@EQNE Quik 12:32:08.4740786 RU000A0JRDR7@EQOB Quik 12:32:08.4740786 RU000A0JR209@EQNO Quik 12:32:08.4740786 RU000A0JQX85@EQNB Quik 12:32:08.4740786 RU000A0JRKL5@EQOB Quik 12:32:08.4740786 64971_101@FNT Quik 12:32:08.4740786 HIMCP@EQNE Quik 12:32:08.4750786 RU000A0JQT99@EQNB Quik 12:32:08.8210984 System.ArgumentException: Инструмент MICEX@RTSIND имеет нулевой шаг цены. Имя параметра: security в #=qsUVx8aLRZW_nZe5D2rHIDjSWtx8H21JA7pGfZaXzUs_1iM1dUtisk$bY5jcDdUgh..ctor(Security #=qlBP6yupZZVSXLkctl7rUhA==, String #=qCzo3nMW_JlV0IJEJaPSvPA==, String #=qCbtBugjG4cqjFPLcBYV0IA==, Int32 #=qlZczL7$jbEEEYJBYOmfQeg==, Func2 #=qoX6rrEX9k$zlmRnh44PzAQ==, Func2 #=qgK9EmHRMYnYAzQjELoCcpQ==, Func2 #=qjnQG2I6QVa6B9z174OOqyQ==) в #=q6FkNnwf6H5FK5pt8qPDKoNnFstKkC9oJpTePvzIyh3$XLQ0GDrA76BGwqDx_9O_p..ctor(Security #=q66j52dUChjMl7_$KByWHjQ==, String #=qYntznu1VHANwKtSOnlxy3g==) в StockSharp.Algo.Storages.TradingStorage.#=qPoqAmXL0e2JM_uhdJ0Lpi$yBZxNBOoNdnECVIwMCPsU=(Tuple2 #=qJOb7Ksnw3ptpN1E_lUot3w==) в Ecng.Collections.CollectionHelper.SafeAdd[TKey,TValue](IDictionary2 dictionary, TKey key, Func2 handler) в StockSharp.Algo.Storages.TradingStorage.GetTradeStorage(Security security, String basePath) в StockSharp.Hydra.Core.BaseMarketDataSource.SaveTrades(Security security, IEnumerable1 trades) в D:\work\Economic\S#\TradeMaxProject\Hydra\Core\BaseMarketDataSource.cs:строка 185 в StockSharp.Hydra.Core.BaseMarketDataSource.SaveTrades(IDictionary2 allTrades) в D:\work\Economic\S#\TradeMaxProject\Hydra\Core\BaseMarketDataSource.cs:строка 174 в StockSharp.Hydra.Core.TraderMarketDataSource.Load() в D:\work\Economic\S#\TradeMaxProject\Hydra\Core\TraderMarketDataSource.cs:строка 68 в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в D:\work\Economic\S#\TradeMaxProject\Hydra\Hydra\Worker.cs:строка 187 Finam 19:33:31.8308463 Останавливается. Finam 19:33:31.8308463 Остановлен. Quik 19:33:31.8308463 Останавливается. Quik 19:33:32.1178627 Остановлен. Finam 19:47:29.5557614 Инициализируется. Quik 19:47:29.5557614 Инициализируется.

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Почему гидра закачивает новые инструменты, если я выбрал нужные(см. скрин).

Посмотрите настройки источника внимательнее.

Все так??

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Все так??

Да, фильтр включен. Надо посмотреть под отладчиком почему так.

Поменял свою базу SQL Server на стандартную обратно(видимо какие то ошибки в моей). Загрузка не нужных инструментов пропала. Загрузка с Quik работает.. С finama нет. В логе пишет :

Finam 20:23:38.7239858 Старт с 07.01.2006 для NKEL@Finam. - и все..данные не поступают. Запускал после 19 00. Есть разница во сколько запускать Гидру для источника Finam ??

NKEL@Finam - единственный интсрумент, который я выбрал и вручную для него прописал шаг цены 1 и размер лота. Может кто подскажет куда посмотреть в коде, чтобы проверить роботоспособность загрузки данных.??

	}

Поменял инструмент на LKOH@EQBR.. и все заработало.. Почему тогда интересно не качаются с финама инструменты с индексом @Finam ??

Может кто объяснить, почему когда я переключаюсь с БД SQLLite на БД SQL Server с QUIK начинают загружаться "левые" инструменты: (Я начал отладку после того как был запущен экспорт данных из таблиц "Инструменты" и "Сделки"). Так вот по событию OnNewTrades (см. скрин 1) начинают добавляться новые инструменты (хотя фильтр на источнике QUIK выставлен).Появляются новые инструменты (это все пишется в лог) и гидра выдает исключение, когда натыкается на первый инструмент у которого не выставлен шаг цены(список инструментов - скрин 2)..

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Может кто объяснить, почему когда я переключаюсь с БД SQLLite на БД SQL Server с QUIK начинают загружаться "левые" инструменты: (Я начал отладку после того как был запущен экспорт данных из таблиц "Инструменты" и "Сделки"). Так вот по событию OnNewTrades (см. скрин 1) начинают добавляться новые инструменты (хотя фильтр на источнике QUIK выставлен).Появляются новые инструменты (это все пишется в лог) и гидра выдает исключение, когда натыкается на первый инструмент у которого не выставлен шаг цены(список инструментов - скрин 2)..

А если попытаться прогнать Гидру под отладчиком? Понять очень сложно. Могу лишь сказать, что дело точно не в базе данных.

VladOA
VladOA

Закачивал GAZP. До 31.05.2010 все было нормально. Теперь пишет:

Finam 13:39:10.2871000 Старт с 31.05.2010 для GAZP@EQNE. Finam 13:39:10.7371000 System.NotImplementedException: Сохранение дробного объема 157,90000 не реализовано. в #=qIvfb0KaoLZHJwbwdmyUYG0aYBGwmZUZpaA8XWd7TzmFZlIvGXBdcGcbQ_azEKiMv.#=qPLZ4Br16ROnPUsLhEbyWJeb8asqLR_khBRwIVWuxdlc=(List1 #=qHaHP4WZSVdKz53Hwzy$ekw==, Decimal #=qhu4vhr1MHD80bbKU0aTtKg==) в #=qBqzAfx4eX6jbAhjwSd62HO7JRaSexID1AIl5WmXAy3S7x063IslpJU6PSmAY4K6e.OnSave(List1 #=qqyKsrFDqPQNf7clHmU6QKA==, IEnumerable1 #=qK6EdLnUkgp_KJy$hJ11a_w==, DateTime #=qSFAC$scRA4mWTzTNQChuoA==, #=qYNjvRXHQghRb5cWAIiLMPxObT5A_ll0ShaDoWeOCPo40g7vTN_D9$sRoNYtawAKR #=qCq$dYyBeVA4pLz$2xUo$IA==) в #=qIvfb0KaoLZHJwbwdmyUYG0aYBGwmZUZpaA8XWd7TzmFZlIvGXBdcGcbQ_azEKiMv.#=qbxwQorhTEVBrDX_KQPOpHQ==(DateTime #=quT0U3ebFiCvxBFlCJ5FPaw==, IEnumerable1 #=qcOtJ7PQfvVQNrynCnb33UA==, Boolean #=q2qnj8xtZHEt7km9X5YENcQ==) в #=qIvfb0KaoLZHJwbwdmyUYG0aYBGwmZUZpaA8XWd7TzmFZlIvGXBdcGcbQ_azEKiMv.Save(IEnumerable1 #=qnHQMv3JcZ9cSYcyXHIl8XQ==) в StockSharp.Hydra.Core.BaseMarketDataSource.SaveTrades(Security security, IEnumerable1 trades) в F:\Sources\StockSharpReleases\StockSharp_4.0.16\Hydra\Core\BaseMarketDataSource.cs:строка 185 в StockSharp.Hydra.Finam.FinamSource.Load() в F:\Sources\StockSharpReleases\StockSharp_4.0.16\Hydra\Plugins\Finam\FinamSource.cs:строка 151 в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в F:\Sources\StockSharpReleases\StockSharp_4.0.16\Hydra\Hydra\Worker.cs:строка 187

Что не так?

Mikhail Sukhov
Mikhail Sukhov

А какой у него минимальный шаг? Плюс покажите скаченный файл для этого тикера Гидрой (складывается во временную директорию).

VladOA
VladOA

Mikhail Sukhov: А какой у него минимальный шаг? Плюс покажите скаченный файл для этого тикера Гидрой (складывается во временную директорию).

Шаг установлен 0.01.

Mikhail Sukhov
Mikhail Sukhov

Что-то вы не то прислали.

VladOA
VladOA

Mikhail Sukhov: Что-то вы не то прислали.

Вот файл из временного каталога.

Mikhail Sukhov
Mikhail Sukhov

VladOA:

Mikhail Sukhov: Что-то вы не то прислали.

Вот файл из временного каталога.

Сейчас ошибка воспроизводиться?

VladOA
VladOA

Mikhail Sukhov:

VladOA:

Mikhail Sukhov: Что-то вы не то прислали.

Вот файл из временного каталога.

Сейчас ошибка воспроизводиться?

Скачал последнею версию, удалил временный файл и теперь закачка идет.

FiNick
FiNick

У меня вообще инструменты по Finam и RTS не обновляются. Нажимаю обновить, минут 10 жду, потом ошибка "Ожидание подключения превысило максимально допустимый интервал". В лог ничего не пишет. С квиком все нормально работает. А что за источник Stock#? C ним та же ерунда правда, обновляется бесконечное время

Mikhail Sukhov
Mikhail Sukhov

FiNick: У меня вообще инструменты по Finam и RTS не обновляются. Нажимаю обновить, минут 10 жду, потом ошибка "Ожидание подключения превысило максимально допустимый интервал".

По РТС обновлять не нужно инструменты. И да, в последней версии была бага для РТС источника. Залечена в 4.0.17.

FiNick
FiNick

Так а что на счет финама? Как с него тики RIH2 скачать? Или со Stock#? При попытке обновить инструменты Stock# вылетает: "There was no endpoint listening at http://stocksharp.com:8000/ that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 87.236.31.85:8000"

Mikhail Sukhov
Mikhail Sukhov

FiNick: Так а что на счет финама? Как с него тики RIH2 скачать?

У всех проблема с обновлением инструментов через Финам? У меня все ок.

FiNick: Или со Stock#? При попытке обновить инструменты Stock# вылетает:

Это вообще недоступно пока всем желающим.

FiNick
FiNick

Плохо, что в TradingStorage нельзя подать котировки, скачанные с финама вручную, например. Придется свой тестер писать

Mikhail Sukhov
Mikhail Sukhov

FiNick: Плохо, что в TradingStorage нельзя подать котировки, скачанные с финама вручную, например.

Можно.

FiNick: Придется свой тестер писать

Да, было бы интересно взглянуть на реализацию.

Mikhail Sukhov
Mikhail Sukhov

FiNick: Плохо, что в TradingStorage нельзя подать котировки, скачанные с финама вручную, например.

Подумал. Есть предложение. Если сделаете поддержку в Гидре скачивания готовых свечек ( http://stocksharp.com/doc/html/M_StockSharp_Algo_History_Finam_FinamHistorySource_GetCandles.htm ), то я сделаю поддержку тестирования по этим свечкам.

Версия Гидры 4.0.17. При попытке обновить инструменты вылетает ошибка.

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Версия Гидры 4.0.17. При попытке обновить инструменты вылетает ошибка.

Можете посмотреть под отладчиком, что за инструмент такой и какие у него поля заполнены?

В каком объекте посмотреть текущий инструмент?? в newSecurities загружено 9037 объектов RTS.

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Могу, где мне поставить breakpoint ??

По скрину не виден стек трейд весь. Ниже пролистайте, там будет написано.

Гидра выдает исключение после того как получила около 1000 новых инструментов и после этого пытается сохранить в storage ...

Этот код возвращает для _nonSavedSecurities ноль :

public Security[] GetNonSavedSecurities()
		{
			return _nonSavedSecurities.SyncGet(c => c.CopyAndClear());
		}

Затем этот ноль идет сюда :

using (var batch = _storage.Storage.BeginBatch())
			{
_securityStorage.GetNonSavedSecurities().ForEach(_storage.Securities.Save);
					batch.Commit();
				}

И вылетает вот такое исключение :

Instance value for field 'Class' is null. Имя параметра: instance.

Mikhail Sukhov
Mikhail Sukhov

Гидра выдает исключение после того как получила около 1000 новых инструментов и после этого пытается выполнить код...

using (var batch = _storage.Storage.BeginBatch()) { _securityStorage.GetNonSavedSecurities().ForEach(_storage.Securities.Save); batch.Commit(); }

Я это понял... Вот понять бы какой именно инструмент приводит к ошибке. Сделайте цикл вместо ForEach. И внутри него try catch

Метод _securityStorage.GetNonSavedSecurities() возвращает нулевой масссив инструментов.

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Метод _securityStorage.GetNonSavedSecurities() возвращает нулевой масссив инструментов.

Тогда в какой момент ошибка?

Когда пытаемся сохранить нулевой элемент security массива:

_storage.Securities.Save(masssec[j]);

Могу прислать конфиг QUIK ... может получится воспроизвести??

Mikhail Sukhov
Mikhail Sukhov

Максим Пыж: Когда пытаемся сохранить нулевой элемент security массива:

_storage.Securities.Save(masssec[j]);

Так массив же пустой. Там не может быть нулевого элемента.

JackSparrow
JackSparrow

Для данных с Финама время от времени происходит ошибка см рис.1 и рис.2 Почему происходит непонятно а как лечить понятно - либо текстовый дамп руками поправить либо то что на рис 3 поменять на рис 4. Последний вариант вроде как не правильный т.к уменьшать шаг принудутельно не айс. Предложение - может вставить проверку и округлять данные до размерность шага? Проверка то уже есть раз в лог пишется, осталось только округление вставить.

Alexander
Alexander

Лучше напишите финаму, что у них косяк в данных. Помогает как показывает практика.

JackSparrow
JackSparrow

Alexander Mukhanchikov: Лучше напишите финаму, что у них косяк в данных. Помогает как показывает практика. Я конечно напишу. Но пожалуйста объясните мне на будущее, чего стоит ожидать от гидры и от S#, потому что не совсем понятен весь смысл Вашего ответа. Я могу использовать только лабораторно чистые проверенные данные и если они имею некую кривизну то выносить этот вопрос на обсуждение не стоит? Глядя на Ваш ответ со стороны он выглядит просто как - это не наши проблемы. Попрявьте если не прав.

Alexander
Alexander

JackSparrow:

Alexander Mukhanchikov: Лучше напишите финаму, что у них косяк в данных. Помогает как показывает практика. Я конечно напишу. Но пожалуйста объясните мне на будущее, чего стоит ожидать от гидры и от S#, потому что не совсем понятен весь смысл Вашего ответа. Я могу использовать только лабораторно чистые проверенные данные и если они имею некую кривизну то выносить этот вопрос на обсуждение не стоит? Глядя на Ваш ответ со стороны он выглядит просто как - это не наши проблемы. Попрявьте если не прав.

Можете выносить всё что угодно на обсуждение, но мы не можем закладываться и подстраиваться под любые кривые данные, которые будут подсунуты. Если косяк на стороне - лучше править там, где он возник.

Чего ждать от гидры - см. исходники. Чего ждать от S# - см. документацию.

Собственно держите в курсе. Мы пытаемся исправлять всё что находится.