Баги в новой гидре
Atom Ответить
01.02.2013


Последняя версия текущего дня. При выключении коннектора к финаму вылетает без каких-либо сообщений.

Также был замечен баг, при включении новой гидры с параметром автостарт и неудаленной бд с прошлой версии, дальше загрузки коннекторов дело не идет, на обработке UX встает намертво.

Теги:


Спасибо:



Скидка 15% на все обучение до 5 апреля (осталось 5 дней).

24 Ответов
Moadip

Фотография
Автор статей Программист
Дата: 03.02.2013
Ответить


Цитата:
При выключении коннектора к финаму вылетает без каких-либо сообщений.

Проверил, останавливается нормально, не вылетает.
Опишите по шагам что и как вы делаете, чтобы воспроизвести ошибку.

Цитата:
Также был замечен баг, при включении новой гидры с параметром автостарт и неудаленной бд с прошлой версии, дальше загрузки коннекторов дело не идет, на обработке UX встает намертво.

Не понял как это у вас получилось сделать.

До этого все настройки хранились в config файле. Допустим у вас был включен автостарт.
Изменилась БД - все настройки были перенесены в БД. Изменился и код в Гидре. Соответственно при запуске Гидра ищет настройки в БД, а не в config файле.
А раз БД была старая, в ней не было настроек, то и автозапуск невозможен.
Спасибо:

yammm

Фотография
Дата: 04.02.2013
Ответить


Включаю гидру:
Включаю гидру.png

Перетаскиваю ползунок на коннекторе финама в положение I.

Гидра вылетает:
Переношу ползунок на финамовском коннекторе..png

Настройки финама:
Настройки финама.png

Общие настройки:
Общие настройки.png

Ось Win 7 ultimate 64 eng
Автор топика
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 04.02.2013
Ответить


Попробовал еще раз на чистой Гидре. Выставил точно такие же настройки.
Включаю источник Финам, предлагает обновить справочник. Ничего не вылетает.

[IMG]http://i51.fastpic.ru/thumb/2013/0204/3d/8eac09cf35428d7baf25774496d4143d.jpeg[/IMG]

Ось: Win 7 ultimate 64 ru.

Берите исходники, ставьте бряки и смотрите из за чего вылетает.
Спасибо:

yammm

Фотография
Дата: 04.02.2013
Ответить


На чистой win 8 русской идет, на чистой win 7 eng не идет. Кстати не первый раз такое замечаю, что под англ версиями все работает немного иначе :)
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 04.02.2013
Ответить


yammm Перейти
На чистой win 8 русской идет, на чистой win 7 eng не идет. Кстати не первый раз такое замечаю, что под англ версиями все работает немного иначе :)


Если Гидра вылетает молча, то это какой-то баг во фреймворке. Потому что обработчик ошибок есть, и он не может не сработать. Не срабатывает только если что-то критическое произошло (нехватка памяти, ее перезапись и прочее). Так что тут только дебаг.
Спасибо:

VassilSanych

Фотография
Дата: 05.02.2013
Ответить


Mikhail Sukhov Перейти
Если Гидра вылетает молча, то это какой-то баг во фреймворке.

Это маловероятно
Mikhail Sukhov Перейти
Потому что обработчик ошибок есть, и он не может не сработать.

Стартовый файл Гидры выглядит так

Код

namespace StockSharp.Hydra
{
 public partial class App
	{
	}
}


Обработки неотловленных ошибок потоков как-то не заметно. Любые другие обработчики обрабатывают только отдельные куски кода.
Так что обработчик может и не сработать.

Спасибо:

VassilSanych

Фотография
Дата: 05.02.2013
Ответить


yammm Перейти
На чистой win 8 русской идет, на чистой win 7 eng не идет. Кстати не первый раз такое замечаю, что под англ версиями все работает немного иначе :)

Под англ. версиями иначе работает то, что разрабатывалось под русской версией. Особенно если никто толком продукт не тестировал.
Точнее с русскими настройками, потому что локальных версий уже вобщем-то уже и нет. Последняя моя "локальная" версия ОС была Win 98 SE. Все остальные изначально были многоязычными, но везде кнопка Пуск называлась "Пуск". Даже в Win 8 ;)
Настройте параметры данных и интерфейса на русский язык, иначе у вас и Quik нормально работать не будет.
Я не имею в виду даже Local pack, настройте хотя бы формат данных и шрифты по-умолчанию.

Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 05.02.2013
Ответить


VassilSanych Перейти

Обработки неотловленных ошибок потоков как-то не заметно.


Это достаточно легко проверить.
Спасибо:

Jeta

Фотография
Дата: 08.02.2013
Ответить


Собрал гидру из транка (22848)
Скачал тики с Финама. При генерации нестандартных свечек из тиков (например 4 мин) происходит следующее:
Генерация свечек

Время первой сделки получается, происходит 10.28, цена соответствует первой сделки в 10.30 (цена 11250).
По идее, время открытия свечек д.б. 10.30,10.34, 10.38 и т.д?!
При генерации 1мин,5мин свечек время и цена правильная 10.30(11250)...
Спасибо:

MenDel

Фотография
Дата: 09.02.2013
Ответить


Гидра 4.1.7 выкидывает при запуске вот такую ошибку, а 4.1.6 запускается без проблем

А 4.1.6 когда нажимаю стоп, загрузка данных не останавливается
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 09.02.2013
Ответить


MenDel Перейти
Гидра 4.1.7 выкидывает при запуске вот такую ошибку, а 4.1.6 запускается без проблем


Попробуйте последнюю версию с codeplex, вроде как это проблема была решена.
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 09.02.2013
Ответить


jTr Перейти
Собрал гидру из транка (22848)
Скачал тики с Финама. При генерации нестандартных свечек из тиков (например 4 мин) происходит следующее:
Генерация свечек

Время первой сделки получается, происходит 10.28, цена соответствует первой сделки в 10.30 (цена 11250).
По идее, время открытия свечек д.б. 10.30,10.34, 10.38 и т.д?!
При генерации 1мин,5мин свечек время и цена правильная 10.30(11250)...


Гидра скорее всего не причем, бага в самом S#. Посмотрим.
Спасибо:

MenDel

Фотография
Дата: 09.02.2013
Ответить


Moadip Перейти

Попробуйте последнюю версию с codeplex, вроде как это проблема была решена.


Она там не скомпилирована? Я не могу ее на 2010 студии запустить, точнее запускаю, а она просит ссылку StockSharp.Hydra.Core.dll, я чет ее не найду
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 09.02.2013
Ответить


Commit 22603

Михаил фиксил проблему. Вроде как больше не появлялась. Сейчас последний коммит 22879 - codeplex

Цитата:
Она там не скомпилирована? Я не могу ее на 2010 студии запустить, точнее запускаю, а она просит ссылку StockSharp.Hydra.Core.dll, я чет ее не найду


Нет, там лежат исходники. StockSharp.Hydra.Core.dll - это скомпиленный проект Core в Гидре.

[IMG]http://i51.fastpic.ru/thumb/2013/0209/c7/73b2508fafa337ec85f4d12b44e067c7.jpeg[/IMG]

Запускайте проект целиком trunk\StockSharp.sln и собирайте его полностью. Так точно соберется все что нужно.
Спасибо: MenDel

Jeta

Фотография
Дата: 09.02.2013
Ответить


Не понятно, как работает гидра в случае, когда гидра останавливается по причине нехватки места на диске. Как в этом случае происходит дальнейшее скачивание?
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 09.02.2013
Ответить


Хм. Интересный вопрос, надо будет проэкспериментировать.
Думаю при нехватке места в логи будет писаться сообщение об ошибке, и при наборе определенного количества exceptions, источник будет остановлен.
По крайней мере сейчас так.
Спасибо:

Jeta

Фотография
Дата: 09.02.2013
Ответить


Собрал некоторое количество exceptions)) Запустить гидру на скачивание не получалось. Интересный момент в том, что гидра с каждым разом "пробегает" "все с начала" и дальше выход на эксепшн.
Метод тыка)))
Скачался полностью другой инструмент...Скачивание прерванного инструмента возобновилась...
- такое чувство, что гидра "не знает" что скачала ранее.(проход по логам?)

Спасибо:

Jeta

Фотография
Дата: 09.02.2013
Ответить


Moadip Перейти

...Думаю при нехватке места в логи будет писаться сообщение об ошибке, и при наборе определенного количества exceptions, источник будет остановлен.
По крайней мере сейчас так.

Сейчас так и есть, ничего фатального не происходит, но как в таком случае продолжить скачивание?
Спасибо:

Jeta

Фотография
Дата: 09.02.2013
Ответить


jTr Перейти
[quote=Moadip;23919]
Сейчас так и есть, ничего фатального не происходит, но как в таком случае продолжить скачивание?

Ан нет, поторопился. При нехватке места на диске, все-таки выход по ексепшен, с выбором отладчика...

Спасибо:

Jeta

Фотография
Дата: 10.02.2013
Ответить


Идем дальше!
Выгрузка свечек в .txt формат, через раз.Не думаю что ограничение .txt формата 12-16 мб...
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 11.02.2013
Ответить


Цитата:
Собрал некоторое количество exceptions)) Запустить гидру на скачивание не получалось. Интересный момент в том, что гидра с каждым разом "пробегает" "все с начала" и дальше выход на эксепшн.
Метод тыка)))
Скачался полностью другой инструмент...Скачивание прерванного инструмента возобновилась...
- такое чувство, что гидра "не знает" что скачала ранее.(проход по логам?)

Какой источник? Что значит "пробегает все с начала"? Какая ошибка при скачивании?

Цитата:
Сейчас так и есть, ничего фатального не происходит, но как в таком случае продолжить скачивание?

Да вроде как ответ очевиден. Если не хватает места, то наверное его надо освободить. Или вопрос в другом?

Цитата:
Идем дальше!
Выгрузка свечек в .txt формат, через раз.Не думаю что ограничение .txt формата 12-16 мб...

Приведите пошаговые действия, когда появляется данная ошибка.
Спасибо:

Jeta

Фотография
Дата: 11.02.2013
Ответить


Одна из последних ошибок Гидры...
Задача: скачать данные за период 01.01.2009-08.02.2013 по SPFB.RTS@RTS.
Скачивание прекращается (довольно продолжительное). Версия из транка (22848)

Код
00:05:13.437|Error  |Finam     |System.Net.WebException: Сервер нарушил протокол. Section=ResponseStatusLine
   в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   в System.Net.WebClient.DownloadString(Uri address)
   в StockSharp.Algo.History.Finam.FinamHistorySource.#=qJs$6$bo78j0D5KtkZiF2xA==(Uri #=qnS2IEguL$xmTNxXhz2pdMw==)
   в StockSharp.Algo.History.Finam.FinamHistorySource.#=qYY4_54y1TtpX1q44diOy0mOxY24_tsYSTKuZGgJLO8Q=.#=qKXc6$JrTvx4ucZEkz7PEuFNVrrpIRMJEMMmkj$NR67k=()
   в StockSharp.Algo.History.Finam.FinamHistorySource.#=qD9oAKJ$GEARGfcJzgMhM$g==[T](String #=qnO0Ips9PCGTHpJZLYngtIw==, Func`1 #=q4QaBVWbRJ6OXHOSbMPTJcQ==, Func`2 #=qMN_MvtLc_r$VTLD4lBmVbA==)
   в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
   в StockSharp.Hydra.Finam.FinamSource.LoadTrades(Security security, List`1 allDates) в M:\My Download\stocksharp-22848\trunk\Hydra\Plugins\Finam\FinamSource.cs:строка 195
   в StockSharp.Hydra.Finam.FinamSource.Load() в M:\My Download\stocksharp-22848\trunk\Hydra\Plugins\Finam\FinamSource.cs:строка 164
   в StockSharp.Hydra.Worker.Downloader.Download() в M:\My Download\stocksharp-22848\trunk\Hydra\Hydra\Worker.cs:строка 175

При последующем старте Гидры происходит следующее:
- Гидра начинает "скачивание", с указанной даты в настройках источника (Finam), т.е. все сначала, . с 01.01.2009. По факту, происходит "верификация" данных с самого начала!?
- как только гидра доходит до последнего скачанного дня, наблюдается следующее:
Код
02:18:33.656|Error  |Finam     |System.OutOfMemoryException: Выдано исключение типа "System.OutOfMemoryException".
   в System.String.Split(String[] separator, Int32 count, StringSplitOptions options)
   в Ecng.Common.StringHelper.Split(String str, String separator)
   в StockSharp.Algo.History.Finam.FinamHistorySource.#=qJs$6$bo78j0D5KtkZiF2xA==(Uri #=qnS2IEguL$xmTNxXhz2pdMw==)
   в StockSharp.Algo.History.Finam.FinamHistorySource.#=qYY4_54y1TtpX1q44diOy0mOxY24_tsYSTKuZGgJLO8Q=.#=qKXc6$JrTvx4ucZEkz7PEuFNVrrpIRMJEMMmkj$NR67k=()
   в StockSharp.Algo.History.Finam.FinamHistorySource.#=qD9oAKJ$GEARGfcJzgMhM$g==[T](String #=qnO0Ips9PCGTHpJZLYngtIw==, Func`1 #=q4QaBVWbRJ6OXHOSbMPTJcQ==, Func`2 #=qMN_MvtLc_r$VTLD4lBmVbA==)
   в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
   в StockSharp.Hydra.Finam.FinamSource.LoadTrades(Security security, List`1 allDates) в M:\My Download\stocksharp-22848\trunk\Hydra\Plugins\Finam\FinamSource.cs:строка 195
   в StockSharp.Hydra.Finam.FinamSource.Load() в M:\My Download\stocksharp-22848\trunk\Hydra\Plugins\Finam\FinamSource.cs:строка 164
   в StockSharp.Hydra.Worker.Downloader.Download() в M:\My Download\stocksharp-22848\trunk\Hydra\Hydra\Worker.cs:строка 175

Дальше все сначала.
Вопросы:
- как в таком случае продолжить скачивание?
- как Гидра запоминает текущий таск, т.е что уже скачано и что еще предстоит скачать?
С чем это связано и как можно это решить?
Спасибо:

Moadip

Фотография
Автор статей Программист
Дата: 12.02.2013
Ответить


Цитата:
как Гидра запоминает текущий таск, т.е что уже скачано и что еще предстоит скачать?

С финама выкачиваются "сырцы" в формате txt(в папке с данными появляется папка TemporaryFiles, куда они складываются), затем сохраняются в формате bin.
При новом старте, гидра проверяет, за какой период/по каким дням есть данные, если есть дырки в сохраненных данных, то по этим дням будет идти закачка.

К примеру стоит дата скачки по SPFB.RTS@RTS с 01.01.2009, но данные начинаются только с 11 числа, до этого приходят "пустые" txt.
Соответственно и сохранятся данные в формате bin будут с 11 числа. Поэтому при следующем старте и проверке по каким дням нет данных, гидра посчитает что с 1 по 10 нет данных, и опять будут выкачиваться данные по этим дням.


Цитата:
Задача: скачать данные за период 01.01.2009-12.02.2013 по SPFB.RTS@RTS.

При скачивании с финама надо знать несколько нюансов:
Финам не дает скачивать большой объем тиков в торговое время.
Данные с финама нередко "кривые", надо делать "верификацию", хотя бы визуальную по графику.
Серваки финама не всегда доступны. И если не получается скачать, это не значит что проблема именно в Гидре.

Сегодня на ночь, для теста, поставил выкачивать SPFB.RTS@RTS за 01.01.2009-08.02.2013
В итоге выкачалось 3 года из 4. Была одна ошибка - сервер не доступен.
"Сырцов" выкачалось 7,6 Гига. Это к тому, что надо заранее освобождать место на винте, если планируется выкачивать большой объем.
[IMG]http://i52.fastpic.ru/thumb/2013/0212/a8/998a634bdc7bbf06a29cba16f3b166a8.jpeg[/IMG]

[IMG]http://i53.fastpic.ru/thumb/2013/0212/30/3a66730153072178c9e0f61b8067b630.jpeg[/IMG]

[IMG]http://i51.fastpic.ru/thumb/2013/0212/52/57335369499b86fef2b95f2017a03952.jpeg[/IMG]

Цитата:
как только гидра доходит до последнего скачанного дня, наблюдается следующее:

Попробуйте удалить папку TemporaryFiles.

Спасибо: Jeta

Moadip

Фотография
Автор статей Программист
Дата: 12.02.2013
Ответить


Пофиксил баг.
Наличие данных по дням проверялось не в алфавитных папках.
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy