← Zurück

Версия 4.1.5, перестает отрабатывать NewSecurities

Коллеги, при переходе на 4.1.5 (точнее проявилось на версии из ревизии 20971, но на 4.1.5 тоже не работает) перестал рабоатать код

    ```csharp

private void btnConnect_Click(object sender, EventArgs e) {

        if (trader == null || !trader.IsConnected)
        {
            if (trader == null)
            {
                trader = new QuikTrader(edtPathToQuik.Text);
                trader.Connected += trader_Connected;
            }

            if (!trader.IsConnected)
                trader.Connect();
            
        }
        else
            trader.Disconnect();

         waitHandle.WaitOne();

        // запускаем экспорт по DDE
        trader.StartExport(new[] { trader.SecuritiesTable, trader.MyTradesTable, trader.DerivativePositionsTable, trader.DerivativePortfoliosTable, trader.OrdersTable, trader.TradesTable });
        waitHandle.WaitOne();
        trader.RegisterTrades(security);

       

    void trader_NewSecurities(IEnumerable<Security> securities)
    {
        if (security==null)
            security = securities.FirstOrDefault(sec => sec.Code == "RIZ2");
        waitHandle.Set();
    }

    void trader_NewPortfolios(IEnumerable<Portfolio> portfolios)
    {
        if (portfolio == null)
            portfolio = portfolios.FirstOrDefault(p => p.Name == "SPBFUT00Q51");
    }

    void trader_Connected()
    {
        
        trader.NewPortfolios += trader_NewPortfolios;
        trader.NewSecurities += trader_NewSecurities;
        trader.NewTrades += trader_NewTrades;

        waitHandle.Set();
    }

Ни разу не вызывается обработчик trader_NewSecurities. В версии 4.1.4 все как часы.

War dieses Thema hilfreich?

Thema teilen

Kommentare (20)

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

Tauler
Tauler Autor

В Квике в стандартных таблицах надо что-то менять при переходе с 4.1.4 на 4.1.5?

Tauler
Tauler Autor

Но вот что сказал Verifier: Ошибка. Экспорт DDE. Инструмент с кодом RIZ2 для деривативной позиции не найден.

Но так как сейчас уже 23:51, то я не знаю - это его реально не хватает, или просто из-за остановки торгов невозможно из квика вытащить.

В самой таблице "Позиция по деривативам" RIZ2 есть.

Sergey Masyura
Sergey Masyura

Tauler: Но вот что сказал Verifier: Ошибка. Экспорт DDE. Инструмент с кодом RIZ2 для деривативной позиции не найден.

Но так как сейчас уже 23:51, то я не знаю - это его реально не хватает, или просто из-за остановки торгов невозможно из квика вытащить.

В самой таблице "Позиция по деривативам" RIZ2 есть.

Не найден инструмент, т.е. смотреть надо в таблицу Инструменты

Tauler
Tauler Autor

А в вересии 4.1.5 надо на событие подписываться ПОСЛЕ trader.Connect() и события Connected, а не ВНУТРИ обработчика события Connected, как раньше?

P.S. ВО все постах про CandleBuilder я видимо врал, что у меня версия 4.1.5, судя по всему, стояла у меня 4.1.4 :

Tauler
Tauler Autor

Сергей, Ни разу не вызывается обработчик trader_NewSecurities. В версии 4.1.4 все как часы.

Инструмент в таблице есть.

Mikhail Sukhov
Mikhail Sukhov

Tauler: В версии 4.1.4 все как часы.

Инструмент в таблице есть.

Sample так же не работает?

Tauler
Tauler Autor

Mikhail Sukhov:

Tauler: В версии 4.1.4 все как часы.

Инструмент в таблице есть.

Sample так же не работает?

Михаил, так же не работает. Коннект к квику проходит, новые бумаги , сделки не появляются.

Mikhail Sukhov
Mikhail Sukhov

Tauler: Михаил, так же не работает. Коннект к квику проходит, новые бумаги , сделки не появляются.

Запустил прямо из дистрибутива. Все нормально, показало. Наверное какие-то в Квике настройки поломались.

Tauler
Tauler Autor

Не успел я проверить - торги встали. Я говорю - есть подозрение, что я по старинке подписываюсь на события NewSecurities внутри обработчика trader_COnnected, а в документации в и в примерах подписка на события идет в основном коде, после вызова Connect. Сегодня буду проверять.

Tauler
Tauler Autor

в Sample только портфели подтянуло.

esper
esper

Проверил сейчас последний Sample с кодеплекса: инструменты, сделки, стаканы - все данные приходят. Может с конфигурацией что-то не так? Экспорт таблиц запускается? Ошибки в лог какие-нибудь выводятся?

Tauler
Tauler Autor

esper: Проверил сейчас последний Sample с кодеплекса: инструменты, сделки, стаканы - все данные приходят. Может с конфигурацией что-то не так? Экспорт таблиц запускается? Ошибки в лог какие-нибудь выводятся? DDE запускается, никаких исключений не выбрасывается.

Tauler
Tauler Autor

Пробовал на info.wnd из дистрибутива версии 4.1.5 Квик - финамовский. Магия - 4.1.4 то работает!

Alexander
Alexander

Verifier что выдаёт?

Tauler
Tauler Autor

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

P.S. На моем проекте Verifier не проходит - моя стратегия только под Forts, я для бумаг окна не открываю.

Tauler
Tauler Autor

Вообще ни хрена не пойму - файл info.wnd из дистрибутив 4.1.5

Сделок не видит, бумаги увидел. В моем проекте нет таблиц для бумаг - стратегия заточена на RI, так что верифайером не получится проверить.

P.S. Verifier только зеленым пишет: Предупреждение. Таблица мои сделки. В таблице 'мои сделки' по индексу 7 должна быть колонка 'Дата торгов' вместо колонки 'Дата сделки'.

Tauler
Tauler Autor

И сделки пошли в Sample. Все разбираюсь сам в своем творении

Блин, ну на 4.1.4 ведь работает :(

Tauler
Tauler Autor

ой-ёй-ёй, а что это за окошко такое не было найдено - инструменты(изменения) ?? Собака наверно тут зарыта!

Tauler
Tauler Autor

Все ,проблему решил. суть была в том, что когда я подменивал сборки в том месте, где у меня стокшарп, студия это видела, показывала что версия Stocksharp.Quik и остальных 4.1.5.

А запускалось приложение видимо со старыми сборками 4.1.4, скопированы в bin/debug в первый раз, так как у сборок Copy Local = false.

Все заработало, всем спасибо! Сказывается полтора года перерыв в программировании :)

Tauler
Tauler Autor

Еще надо было ручками удалить сборки на Stocksharp из проекта и заново добавить. Причем ,по моим ощущениям не из Recent, а из Browse