← Zurück

SampleSma виснет

Не пойму в чем дело, подскажите. На основе SampleSma сделал свой проект, поменял бумагу на Сбер, да взял вместо скользящих SMA - экспоненту EMA. Стоит фильтр на все сделки, выдает все сделки по Сберу. При этом все виснет, из-за чего может быть? Ясно дело что это с экспортом по ДДЕ, потому что как только отрубаю QUIK от сети все проходит мгновенно. Таблицы проверял VERIFIRом говорит все в норме.

War dieses Thema hilfreich?

Thema teilen

Kommentare (50)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

Начнем с простого - Sample по сберу нормально сделки экспортирует? Не виснет?

E G
E G Autor

Давайте с простого. Sample экспортирует отлично, ничего не виснет.

Mikhail Sukhov
Mikhail Sukhov

Ок, на какой операции виснет в SampleSma? При старте? При нажатие на кнопку? Если да, то какую? Вистен - значит приложение не дает нажать ни на одну кнопку?

E G
E G Autor

При старте все отлично. А вот при нажатии Экспорт ДДЕ все подвисает, в QUIKe таблицы видно, как начинают экспортироваться, загружаются данные из текстового файла, появляется график и .... все, здесь мы подвисаем... "Вистен" :) - то есть вообще ничто не реагирует, ни кнопки, ни график, ничто.

E G
E G Autor

И еще из S# 2.2 у меня не работает пример SampleSma. Все подключает, ничего не виснет, но данные из файла LKOH_history.txt не загружает и график не появляется. В S# 2.1 я такого не наблюдал. Это баг или у меня что-то не работает?

E G
E G Autor

SampleSmartSma для S# 2.2 отлично работает, может ну его, QUIK этот, притомил он меня.

Mikhail Sukhov
Mikhail Sukhov

Пока нет времени посмотреть, что там со скользящими в сбере... На смарте много не построить. Нет информации по инструментам достаточной.

E G
E G Autor

Ну учитывая, сколько вы делаете, я поражен, что вы мне еще отвечаете. Неужели вы програмите один или у вас 4-ре руки и две головы?? Нет, на фото не похоже. :)

Mikhail Sukhov
Mikhail Sukhov

От помощи не откажусь =)

E G
E G Autor

Помочь бы рад, но я только-только начинаю разбираться с С#. А учитывая, как быстро вы вносите изменения в свои библиотеки, то здесь просто засада. :) Но если помощь будет мне по силам помогу.

Нашел причину зависаний SampleSma, проблема была в версии QUIK. У меня был 5.15, обновил до 5.17 и все прошло.

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

SampleSma из S# 2.2 так и не заработал.

E G
E G Autor

А почему в следующих строках кода S# 2.2 для SampleSma стоит NL

// выбираем портфель для ММВБ (так как работаем с LKOH) _micex = portfolios.First(p => p.Name.Contains("NL"));

Mikhail Sukhov
Mikhail Sukhov

Смотрю портфель для Мамбы. Замените его своим фильтром.

Mikhail Sukhov
Mikhail Sukhov

Ну помощь бывает не только в программировании. Например, особо остро ощущается в популизации проекта.

E G
E G Autor

Про Мамбу понятно, непонятно почему буквы "NL". Где их можно уточнить? Я тоже подключаюсь к Мамбе, поэтому если нет разницы, то ладно.

Пытаюсь разобраться, почему не идет прога.

Mikhail Sukhov
Mikhail Sukhov

На демо квике счет содержит такие символы.

E G
E G Autor

Я правильно понимаю, что у меня тогда должен быть такой счет L01-00000F00?

Не грузит данные из текстового файла никак и ошибок не говорит.

E G
E G Autor

Данные загрузились из файла, но пришлось изменить вместо условия где должно быть и счет на бирже и бумага, поставил или то или другое. В общем проблема со счетом тот, что я пишу он не принимает. Почему?

E G
E G Autor

Пишет: Инструмент с кодом AFLTG для бумажной позиции не найден.

E G
E G Autor

Для S# 2.1 SampleSma получаю ошибку: "Элемент с тем же ключом уже был добавлен". Поток: EventDispatcher thread #[стакан]GAZP-EQNE

Mikhail Sukhov
Mikhail Sukhov

Это значит пришла позиция по отсутствующему инструменту. Такого нет в таблице инструментов?

Mikhail Sukhov
Mikhail Sukhov

Лучше полный текст ошибки.

E G
E G Autor

Да все инструменты (Лукойл, Сбер, Газпром) есть в таблице Инструменты

  • у каждого есть стакан и график в QUIK.

Ни один не работает. Отправил скрин файла с ошибкой SampleSma_error.jpg

E G
E G Autor

Короче ваши ответы перемешались с моими вопросами.

То что я запостил выше (SampleSma_error.jpg) - это для S# 2.1 SampleSma

Сейчас отправлю скрин для ошибки по S# 2.2 SampleSma

E G
E G Autor

По S#2.2 SampleSma, закачал сюда же файл S#2.2_SampleSma_error.JPG

Mikhail Sukhov
Mikhail Sukhov
  1. По бумажной позиции. Инструмент AFLTG присутствует в таблице инструментов?
  2. По стакану. Он обычный? Никаких расширений нет?

On 28 июл, 12:45, E G <ego...@gmail.com> wrote:

E G
E G Autor
  1. Что за инструмент AFLTG? Это Аэрофлот на РТС? Нет такого инструмента
  2. Стакан обычный, но приложил скрин на всякий пожарный. (SampleSma_stakan.jpg)

On 28 июл, 16:16, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov
  1. По нему у Вас приходит поза. А инструмента нет. Может Квик что прикупил, пока Вы от компа отходили? =)
  2. Необычный. Обычный - это как здесь

http://stocksharp.com/doc/help/html/ad145f75-a2d4-4766-af60-79489b848...

А чтобы обрабатывать такой, как у Вас, надо сделать как показано здесь

http://stocksharp.com/doc/help/html/4261879e-9bb3-482c-9fc5-27ecb07bd...

On 28 июл, 13:35, E G <ego...@gmail.com> wrote:

E G
E G Autor
  1. Нет бумаги такой. Я приложил скрин таблицы Позиции по бумагам (SampleSma_AFLTG.jpg). Там есть код такой бумаги, но он по нулям.
  2. Поправлю.

On 28 июл, 16:57, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov
  1. А почему так получилось? В таблице позиции инструмент указан, а в Квике его нет.

On 28 июл, 14:10, E G <ego...@gmail.com> wrote:

E G
E G Autor

Да, такое часто бывает, не знаю из-за чего. Бывает, что показывает код бумаги которой нет, особенно если изначально все по нулям. Если чего- то куплю, то поменяет. Наверно, так надо сделать?

On 28 июл, 17:27, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

А может просто фильтр стоит на таблице Инструменты?

On 28 июл, 14:34, E G <ego...@gmail.com> wrote:

E G
E G Autor

А разве там можно поставить фильтр? Я не нашел.

On 28 июл, 17:36, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

Конечно можно. Иначе, если у Вас все площадки, такая таблица высветится, что ничего в ней найти нельзя будет.

On 28 июл, 14:46, E G <ego...@gmail.com> wrote:

E G
E G Autor

Понятно, я не про то просто понял. Я вывожу только нужные мне инструменты, а не все, конечно

Подключил инструмент AFLTG и получил новую ошибку, файл Sample_AFLTG_error.jpg

On 28 июл, 18:02, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

Сложно разобраться. Судя по всем дважды добавлен одинаковый инструмент... А может научиться копировать текстом ошибки? Студия это позволяет.

On 28 июл, 15:19, E G <ego...@gmail.com> wrote:

E G
E G Autor

Ну вы мертвого уговорите :) Вот все исключения, что есть в IntelliTrace. Неплохо накопировал. :))

Исключение:Вызвано: "Файл "C:\Download\МТС\StockSharp_2.2_Full \StockSharp_2.2\Sources\SampleSMA\bin\Debug \SampleSMA.vshost.exe.config" не найден." (System.IO.FileNotFoundException) Возникло System.IO.FileNotFoundException: "Файл "C:\Download\МТС \StockSharp_2.2_Full\StockSharp_2.2\Sources\SampleSMA\bin\Debug \SampleSMA.vshost.exe.config" не найден."

Исключение:Перехвачено: "Файл "C:\Download\МТС\StockSharp_2.2_Full \StockSharp_2.2\Sources\SampleSMA\bin\Debug \SampleSMA.vshost.exe.config" не найден." (System.IO.FileNotFoundException) Перехвачено System.IO.FileNotFoundException: "Файл "C:\Download\МТС \StockSharp_2.2_Full\StockSharp_2.2\Sources\SampleSMA\bin\Debug \SampleSMA.vshost.exe.config" не найден."

Исключение:Вызвано: "Удостоверение приложения не задано." (System.Deployment.Application.InvalidDeploymentException) Возникло System.Deployment.Application.InvalidDeploymentException: "Удостоверение приложения не задано."

Исключение:Перехвачено: "Удостоверение приложения не задано." (System.Deployment.Application.InvalidDeploymentException) Перехвачено System.Deployment.Application.InvalidDeploymentException: "Удостоверение приложения не задано."

Исключение:Вызвано: "Входная строка имела неверный формат." (System.FormatException) Возникло System.FormatException: "Входная строка имела неверный формат."

Исключение:Перехвачено: "Входная строка имела неверный формат." (System.FormatException) Перехвачено System.FormatException: "Входная строка имела неверный формат."

Жест:Нажато "Подключиться" (System.Windows.Controls.Button) Пользователь щелкнул элемент управления ConnectBtn типа System.Windows.Controls.Button с содержимым "Подключиться".

Жест:Нажато "Экспорт DDE" (System.Windows.Controls.Button) Пользователь щелкнул элемент управления ExportDde типа System.Windows.Controls.Button с содержимым "Экспорт DDE".

Исключение:Вызвано: "Инструмент с кодом AFLTG для бумажной позиции не найден." (System.InvalidOperationException) Возникло System.InvalidOperationException: "Инструмент с кодом AFLTG для бумажной позиции не найден."

Исключение:Перехвачено: "Инструмент с кодом AFLTG для бумажной позиции не найден." (System.InvalidOperationException) Перехвачено System.InvalidOperationException: "Инструмент с кодом AFLTG для бумажной позиции не найден."

Исключение:Вызвано: "Элемент не связан в настоящий момент с каким-либо контекстом" (System.Configuration.ConfigurationErrorsException) Возникло System.Configuration.ConfigurationErrorsException: "Элемент не связан в настоящий момент с каким-либо контекстом"

Исключение:Перехвачено: "Элемент не связан в настоящий момент с каким- либо контекстом" (System.Configuration.ConfigurationErrorsException) Перехвачено System.Configuration.ConfigurationErrorsException: "Элемент не связан в настоящий момент с каким-либо контекстом"

Исключение:Вызвано: "Элемент не связан в настоящий момент с каким-либо контекстом" (System.Configuration.ConfigurationErrorsException) Возникло System.Configuration.ConfigurationErrorsException: "Элемент не связан в настоящий момент с каким-либо контекстом"

Исключение:Перехвачено: "Элемент не связан в настоящий момент с каким- либо контекстом" (System.Configuration.ConfigurationErrorsException) Перехвачено System.Configuration.ConfigurationErrorsException: "Элемент не связан в настоящий момент с каким-либо контекстом"

Запрос к пользователю:Отображен "" (MessageBox) Был отображен MessageBox с текстом "System.InvalidOperationException: Инструмент с кодом AFLTG для бумажной позиции не найден. в Ecng.Trading.Quik.QuikTrader.  . (IList1 , Func2 ) в Ecng.Trading.Quik.DdeTable. (IList1 , Action2 , Action`1 )" и подписью "".

Запрос к пользователю:Выполнен щелчок "OK" Пользователь нажал кнопку "OK" в MessageBox.

Отладчик:Останов отладчика Прерывание сеанса отладчика вызвано приостановкой этого сеанса пользователем.

On 28 июл, 18:46, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

=) Посмотрите на ошибку. Не найден инструмент. Вы еог опять убрали из таблицу Инструменты? Зачем?

On 28 июл, 17:18, E G <ego...@gmail.com> wrote:

E G
E G Autor

Ну надо же как-то двигаться, пока туда-сюда.... а то уже приустал я за сегодня. :)

On 28 июл, 20:32, Mikhail Sukhov <msou...@gmail.com> wrote:

E G
E G Autor

При добавленной бумаге AFTLG

Жест:Нажато "Экспорт DDE" (System.Windows.Controls.Button) Пользователь щелкнул элемент управления ExportDde типа System.Windows.Controls.Button с содержимым "Экспорт DDE".

Исключение:Вызвано: "Элемент с тем же ключом уже был добавлен." (System.ArgumentException) Возникло System.ArgumentException: "Элемент с тем же ключом уже был добавлен."

Исключение:Перехвачено: "Элемент с тем же ключом уже был добавлен." (System.ArgumentException) Перехвачено System.ArgumentException: "Элемент с тем же ключом уже был добавлен."

Запрос к пользователю:Отображен "" (MessageBox) Был отображен MessageBox с текстом "System.ArgumentException: Элемент с тем же ключом уже был добавлен. в System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) в System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) в System.Collectio" и подписью "".

Запрос к пользователю:Выполнен щелчок "OK" Пользователь нажал кнопку "OK" в MessageBox.

On 28 июл, 21:18, E G <ego...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

Вот это выражение "в System.Collectio" и подписью "". " говорит о том, что у Вас идет обрезание самой ценной информации. Как Вы компируете текст ошибок?

On 28 июл, 18:31, E G <ego...@gmail.com> wrote:

E G
E G Autor

Копирую текст ошибок через Ctrl+C. Обрезанию информации идет в самом IntelliTrace, чтобы не быть голословным приложил скрин файл S#2.2_SampleSma_IntelliTrace.JPG

на 1) рисунке, то как я получаю MessageBox на 2) как та же информация выглядит в IntelliTrace

Может для IntelliTrace как то настраивается отображение информации, я просто не знаю, как это сделать.

On 28 июл, 22:04, Mikhail Sukhov <msou...@gmail.com> wrote:

E G
E G Autor

Извините, называется файл IntelliTrace_error.JPG

On 28 июл, 23:57, E G <ego...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

Уже яснее... Точно правильно стакан настроили? Он у Вас стандартно оформлен или кастомизирован? Если второе, QuikTrader.QuotesTable настраивали? Ошибка говорит о том, что дважды пришла одна и та же котировка. Такое может быть, если неправильно стакан интерпретируется.

On 28 июл, 20:58, E G <ego...@gmail.com> wrote:

E G
E G Autor

Стакан оформлен стандартно, как вы сказали. Приложил скрин Stakan_LKOH.jpg

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

Обнаружено событие ContextSwitchDeadlock Message: CLR не удалось перейти из COM-контекста 0x18acc50 в COM- контекст 0x18acdc0 за 60 секунд. Наиболее вероятно, что поток, владеющий контекстом/апартаментом назначения, находится в режиме ожидания или выполнения очень длительной операции без прокачки сообщений Windows. Обычно эта ситуация отрицательно влияет на производительность и даже может привести к зависанию приложения или чрезмерному расходованию памяти. Чтобы избежать этой проблемы, все потоки однопоточного апартамента (STA) должны использовать примитивы ожидания для прокачки (например, CoWaitForMultipleHandles) и периодически прокачивать сообщения во время длительных операций.

On 29 июл, 01:28, Mikhail Sukhov <msou...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

А на какой строчке кода такое происходит?

On 29 июл, 11:39, E G <ego...@gmail.com> wrote:

E G
E G Autor

Несколько раз перезапускал программу, но такой ошибки не возникло, поэтому не могу сказать на какой строчке кода она возникала.

По заказу не работает :)))

On 29 июл, 18:19, Mikhail Sukhov <msou...@gmail.com> wrote:

E G
E G Autor

Несколько раз перезапускал программу, но такой ошибки не возникло, поэтому не могу сказать на какой строчке кода она возникала.

По заказу не работает :)))

On 29 июл, 18:19, Mikhail Sukhov <msou...@gmail.com> wrote:

E G
E G Autor

Из этих нескольких дней "боданий" с SampleSMA, сделал вывод, что робот должен быть консольным. Ну эту всю красоту, толку от нее, если может может возникнуть ошибка, которую даже разработчик Stock# не в силах быстро отловить. Что уж говорить, про меня, я буду искать ее вечность.... :)))

Так, что Михаил, если вы пытаетесь решить эту проблему, только ради меня и никого больше она не волнует оставте ее.

Буду писать на консоли.

On 29 июл, 20:47, E G <ego...@gmail.com> wrote:

Mikhail Sukhov
Mikhail Sukhov

Я думаю там банальная проблема, что обсуждалась здесь

http://groups.google.ru/group/stocksharp/browse_thread/thread/34db018...

On 29 июл, 20:40, E G <ego...@gmail.com> wrote:

E G
E G Autor

Спасибо, Михаил, но именно банальные проблемы и отнимают, больше всего времени на их поиск (знаю по опыту). Проблему я решил, SampleSMA S#2.2 у меня запустился на Win 7, Win XP почему-то ссылался "Элемент с тем же ключом уже был добавлен." (System.ArgumentException)

Михаил, как я понял вы тестите все на Win 7, поэтому надо оговорку делать, что с Win XP могут быть сложности.

На XP так ошибку и пишет, не знаю что там.

On 30 июл, 00:09, Mikhail Sukhov <msou...@gmail.com> wrote: