← Zurück

SampleConsole проблема [QUIK]

Почему не генерися событие NewSecurities ?

trader.NewSecurities += securities => { Console.WriteLine("NewSecurities");

output:<пусто>

Хотя настроено в таблице wrapper(сервер) и security(книга). Таблица не пуста.

War dieses Thema hilfreich?

Thema teilen

Kommentare (7)

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

Mikhail Sukhov
Mikhail Sukhov

Скорее всего, проблема обычная - в правильности настройки таблицы. Все как в руководстве настроено? trader.ProcessDataError что нибудь выводит?

takanaev
takanaev Autor

Точно. Одно поле не в том порядке записал. Спасибо!

takanaev
takanaev Autor

А вот ещё вопрос по логике. Почему у меня срабатывает trader.SecuritiesChanged, но trader.NewSecurities - нет?

takanaev
takanaev Autor

При этом SecurittiesChanged вываливает ошибку

в Ecng.Trading.Quik.QuikTrader(Object ☻, DdeTableColumn ♥) в Ecng.Trading.Quik.QuikTrader.☻(Func2 ☻, DdeTableColumn ♥) в Ecng.Trading.Quik.QuikTrader?.☻(Func2 ☻) в Ecng.Trading.Quik.DdeTable.☻(IList1 ☻, Action1 ♥) в Ecng.Trading.Quik.QuikTrader.☻(String ☻, IList1 ♥) в Ecng.Common.DelegateHelper.SafeInvoke[T1,T2](Action2 handler, T1 arg1, T2 arg2) в.♥() trader.SecurityChanged SIBN System.ArgumentException: Невозможно для колонки LastTradeVolume привести значен ие '' к типу Int32. Имя параметра: value ---> System.FormatException: Входная строка имела неверный формат. в System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer & number, NumberFormatInfo info, Boolean parseDecimal) в System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo inf o) в System.String.System.IConvertible.ToInt32(IFormatProvider provider) в System.Convert.ChangeType(Object value, Type conversionType, IFormatProvide r provider) в Ecng.Common.Converter.To(Object value, Type destinationType) в Ecng.Common.Converter.To(Object value) в Ecng.Trading.Quik.QuikTrader(Object ☻, DdeTableColumn ♥) --- Конец трассировки внутреннего стека исключений --- в Ecng.Trading.Quik.QuikTrader(Object ☻, DdeTableColumn ♥) в Ecng.Trading.Quik.QuikTrader.☻(Func2 ☻, DdeTableColumn ♥) в Ecng.Trading.Quik.QuikTrader?.☻(Func2 ☻) в Ecng.Trading.Quik.DdeTable.☻(IList1 ☻, Action1 ♥) в Ecng.Trading.Quik.QuikTrader.☻(String ☻, IList1 ♥) в Ecng.Common.DelegateHelper.SafeInvoke[T1,T2](Action2 handler, T1 arg1, T2 arg2) в.♥() System.ArgumentException: Невозможно для колонки LastTradeVolume привести значен ие '' к типу Int32. Имя параметра: value ---> System.FormatException: Входная строка имела неверный формат. в System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer & number, NumberFormatInfo info, Boolean parseDecimal) в System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo inf o) в System.String.System.IConvertible.ToInt32(IFormatProvider provider) в System.Convert.ChangeType(Object value, Type conversionType, IFormatProvide r provider) в Ecng.Common.Converter.To(Object value, Type destinationType) в Ecng.Common.Converter.To(Object value) в Ecng.Trading.Quik.QuikTrader(Object ☻, DdeTableColumn ♥) --- Конец трассировки внутреннего стека исключений ---

Mikhail Sukhov
Mikhail Sukhov

Так, а что за инструмент, у которого последняя сделка отсутствует?

takanaev
takanaev Autor

Я даже не знаю как отловить какой это инструмент? В примере просто выбрал все доступные инструменты. Или порядок инструментов в таблице "Инструменты" совпадает с порядком полученных строк DDE?

Mikhail Sukhov
Mikhail Sukhov

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