наблюдаю разницу в поведении RealTimeEmulationTrader от 4.1.6 к 4.1.8

наблюдаю разницу в поведении RealTimeEmulationTrader от 4.1.6 к 4.1.8
Atom
26.02.2013
kahuna


[b]В таблице заявок имеются две старые совершенные вручную сделки. Когда собираю проект с 4.1.6 то сразу при установлении соединения с Quik в журнал приходят два сообщения:[/b] [i]2013.02.26 18:28:33.745| |QuikTrader|New order: 56501936/10003651138 Продажа Цена=152740 Объем=1 Сост=Done Бал=0 2013.02.26 18:28:33.753| |QuikTrader|New order: 56501937/10003787314 Покупка Цена=152600 Объем=1 Сост=Done Бал=0 2013.02.26 18:28:50.035| |QuikTrader|Экспорт запущен.[/i]

[b]И далее программа работает нормально. Если то-же проделываю с библиотекой 4.1.8 то прилетает еще и ошибка:[/b] [i]2013/02/26 18:31:44.151| |QuikTrader|New order: 56501936/10003651138 Продажа Цена=152740 Объем=1 Сост=Done Бал=0 2013/02/26 18:31:44.174| |QuikTrader|New order: 56501937/10003787314 Покупка Цена=152600 Объем=1 Сост=Done Бал=0 2013/02/26 18:31:44.382|Error |QuikTrader|System.InvalidOperationException: Ордер с transactionId=56501936 не найден в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qoYen7SIGXXIHC5yDoBmtakvI8ajVk$YMRTG2hIXiflw=(Int64 #=qO9iU2Mv29dcXgUc$4EMffw==) в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qW_NOGPO8hUy5l8I2xNZCL$oRPjjivnoDpJ2KizA3TPo=(IEnumerable1 #=qA0Q6xXtG5Oyta7t6dDl7yg==) в System.Action1.Invoke(T obj) в Ecng.Common.DelegateHelper.SafeInvoke[T](Action1 handler, T arg) в Ecng.ComponentModel.EventsContainer1.Raise(IEnumerable`1 items) 2013/02/26 18:31:44.675| |QuikTrader|Экспорт запущен. [/i] [b]И далее ордера не выставляются. Может кто понимает что бы это значило? По моему разумению коннектор в версии 4.1.8 запрашивает из какой-то таблицы еще данные про ордер номер 56501936 и не получает. Как бы узнать из какой?[/b]


Теги:


Спасибо:


pyhta4og

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


[quote=kahuna;24252][b]В таблице заявок имеются две старые совершенные вручную сделки. Когда собираю проект с 4.1.6 то сразу при установлении соединения с Quik в журнал приходят два сообщения:[/b] [i]2013.02.26 18:28:33.745| |QuikTrader|New order: 56501936/10003651138 Продажа Цена=152740 Объем=1 Сост=Done Бал=0 2013.02.26 18:28:33.753| |QuikTrader|New order: 56501937/10003787314 Покупка Цена=152600 Объем=1 Сост=Done Бал=0 2013.02.26 18:28:50.035| |QuikTrader|Экспорт запущен.[/i]

[b]И далее программа работает нормально. Если то-же проделываю с библиотекой 4.1.8 то прилетает еще и ошибка:[/b] [i]2013/02/26 18:31:44.151| |QuikTrader|New order: 56501936/10003651138 Продажа Цена=152740 Объем=1 Сост=Done Бал=0 2013/02/26 18:31:44.174| |QuikTrader|New order: 56501937/10003787314 Покупка Цена=152600 Объем=1 Сост=Done Бал=0 2013/02/26 18:31:44.382|Error |QuikTrader|System.InvalidOperationException: Ордер с transactionId=56501936 не найден в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qoYen7SIGXXIHC5yDoBmtakvI8ajVk$YMRTG2hIXiflw=(Int64 #=qO9iU2Mv29dcXgUc$4EMffw==) в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qW_NOGPO8hUy5l8I2xNZCL$oRPjjivnoDpJ2KizA3TPo=(IEnumerable1 #=qA0Q6xXtG5Oyta7t6dDl7yg==) в System.Action1.Invoke(T obj) в Ecng.Common.DelegateHelper.SafeInvoke[T](Action1 handler, T arg) в Ecng.ComponentModel.EventsContainer1.Raise(IEnumerable`1 items) 2013/02/26 18:31:44.675| |QuikTrader|Экспорт запущен. [/i] [b]И далее ордера не выставляются. Может кто понимает что бы это значило? По моему разумению коннектор в версии 4.1.8 запрашивает из какой-то таблицы еще данные про ордер номер 56501936 и не получает. Как бы узнать из какой?[/b] [/quote] поставьте пожалуйста quikTrader.LogLevel=LogLevels.Debug и пришлите дебаг-лог эмулятора, воспроизводящий проблему. также было бы неплохо увидеть полный коллстек ошибки. Для этого можно поставить брекпойнт в обработчик ProcessError и посмотреть на InvalidOperationException call stack

Спасибо:

kahuna

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


[quote]Поставьте пожалуйста quikTrader.LogLevel=LogLevels.Debug и пришлите дебаг-лог эмулятора, воспроизводящий проблему. также было бы неплохо увидеть полный коллстек ошибки. Для этого можно поставить брекпойнт в обработчик ProcessError и посмотреть на InvalidOperationException call stack[/quote]

[b]очевидно вот это, (стек вызовов)[/b] tryBot1.exe!test.MainWindow..ctor.AnonymousMethod__1(System.Exception ex) Строка 72 C# Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<System.Exception>(System.Action<System.Exception> handler, System.Exception arg) + 0x39 байт StockSharp.Algo.dll!StockSharp.Algo.Testing.RealTimeEmulationTrader<StockSharp.Quik.QuikTrader>.#=qNHN4D9UbsthHTSGTNWi6$PZlIrGZFf9gC2mMJ8oqHqw=(System.Exception #=ql43C9O7pgKYIntyjdNWa9Q==) + 0x36 байт Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<System.Exception>(System.Action<System.Exception> handler, System.Exception arg) + 0x39 байт StockSharp.Algo.dll!StockSharp.Algo.BaseTrader.RaiseProcessDataError(System.Exception exception) + 0x94 байт StockSharp.Quik.dll!#=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qB09_IBYvsxLb_dLzMi2NWQ==(StockSharp.Quik.DdeTable #=qOgXoydWCvsq2gXlddKoo0w==, System.Collections.Generic.IList<System.Collections.Generic.IList> #=qMeYWUEb44NrXcAvbPuNfiQ==, System.Action<System.Collections.Generic.IList,System.Func<StockSharp.Quik.DdeTableColumn,object>> #=qolGBgTssErk3vXo538xxsQ==, System.Action<System.Exception> #=qIfmNdbFGgLtG9ybpXuosbQ==, bool #=qe3W9$GyIKMHUi59wvLuQeA==) + 0x33b байт StockSharp.Quik.dll!StockSharp.Quik.QuikTrader.#=qjrOBFov$lIae$ZMCQLx7P1fQAe2X2s16$DxZRnv$aqU=.#=qu4gTMGq$3yH4Axl_FWkd5w==() + 0x7db байт StockSharp.Algo.dll!StockSharp.Algo.BaseTrader.ProcessEvents(System.Action handler) + 0x8a байт StockSharp.Quik.dll!StockSharp.Quik.QuikTrader.#=qaeR2In9bHSqL$9RTYB7mZA==(string #=qBWEHmyjqnbDFkS_RzrY$OQ==, System.Collections.Generic.IList<System.Collections.Generic.IList> #=q5vWveEpgNMvDr0v17vxoxw==) + 0xdd байт Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<string,System.Collections.Generic.IList<System.Collections.Generic.IList>>(System.Action<string,System.Collections.Generic.IList<System.Collections.Generic.IList>> handler, string arg1, System.Collections.Generic.IList<System.Collections.Generic.IList> arg2) + 0x3c байт StockSharp.Quik.dll!#=qO4H$vUMUtJxte1FDOGqs6k1o3v9rH9VhPKcrarKCJ_E=.#=q69jrzP3kyHkClZEeDaigUAUJGm6I9zoC7WsTE1$ILs8=.#=q8A8iEPic6wzTjce69NwpoQ==() + 0x71 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventDispatcher.Add.AnonymousMethod__0() + 0x40 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventDispatcher.CreateNewThreadQueuePair.AnonymousMethod__3() + 0x49 байт Ecng.Common.dll!Ecng.Common.ThreadingHelper.Thread.AnonymousMethod__f() + 0x23 байт mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state) + 0x63 байт mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool ignoreSyncCtx) + 0xb0 байт mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) + 0x2c байт mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x44 байт

[b]вот Debug Log:[/b] 2013/02/27 17:34:31.690|Debug |RealTimeEmulationTrader1|Соединились 2013/02/27 17:34:33.489|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '15', индекс колонки '34'. в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qDJWMM5YENO97pQ4kvVrxSwXaehCKqmhRhAgzkT7Jsf8=.#=qhv7A9IuBu4a_njQh_JmFbSgY0uixyYvMCIXx7TWY5EQ=(DdeTableColumn #=q4pnTK3SfN8gkjMJpZFnaRw==) в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qV4zHdEkojhf6pdjo6vaz8w==[T](Func2 #=qy9KqBxWU5kgs33RYn7ZxjA==, DdeTableColumn #=qQWUnmuZ9JkNca$ApBYluAA==) в StockSharp.Quik.QuikTrader.#=qjrOBFov$lIae$ZMCQLx7P1fQAe2X2s16$DxZRnv$aqU=.#=q$lSEIT5LexsQlwc6F31I_w==(IList1 #=q$0V_COkA0ZnIxo4oiZ38PQ==, Func2 #=qlUb9wQhsWgLV82TCbkBodQ==) в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qB09_IBYvsxLb_dLzMi2NWQ==(DdeTable #=qOgXoydWCvsq2gXlddKoo0w==, IList1 #=qMeYWUEb44NrXcAvbPuNfiQ==, Action2 #=qolGBgTssErk3vXo538xxsQ==, Action1 #=qIfmNdbFGgLtG9ybpXuosbQ==, Boolean #=qe3W9$GyIKMHUi59wvLuQeA==) 2013/02/27 17:34:43.083|Debug |RealTimeEmulationTrader1|тут поставлена точка остановки по ошибке 2013/02/27 17:34:43.391| |QuikTrader|Экспорт запущен.

[b]В реальном режиме похожая картинка: [/b] [b]DebugLog:[/b] 2013/02/27 17:23:10.334|Debug |QuikTrader|Соединились 2013/02/27 17:23:27.664|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '15', индекс колонки '34'. в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qDJWMM5YENO97pQ4kvVrxSwXaehCKqmhRhAgzkT7Jsf8=.#=qhv7A9IuBu4a_njQh_JmFbSgY0uixyYvMCIXx7TWY5EQ=(DdeTableColumn #=q4pnTK3SfN8gkjMJpZFnaRw==) в#=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qV4zHdEkojhf6pdjo6vaz8w==[T](Func2 #=qy9KqBxWU5kgs33RYn7ZxjA==, DdeTableColumn #=qQWUnmuZ9JkNca$ApBYluAA==) в StockSharp.Quik.QuikTrader.#=qjrOBFov$lIae$ZMCQLx7P1fQAe2X2s16$DxZRnv$aqU=.#=q$lSEIT5LexsQlwc6F31I_w==(IList1 #=q$0V_COkA0ZnIxo4oiZ38PQ==, Func2 #=qlUb9wQhsWgLV82TCbkBodQ==) в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qB09_IBYvsxLb_dLzMi2NWQ==(DdeTable #=qOgXoydWCvsq2gXlddKoo0w==, IList1 #=qMeYWUEb44NrXcAvbPuNfiQ==, Action2 #=qolGBgTssErk3vXo538xxsQ==, Action1 #=qIfmNdbFGgLtG9ybpXuosbQ==, Boolean #=qe3W9$GyIKMHUi59wvLuQeA==) 2013/02/27 17:23:53.298|Debug |QuikTrader|тут поставлена точка остановки по ошибке

Спасибо:

kahuna

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


на всякий случай код:

[code=csharp] using System; using System.Collections.Generic; using System.ComponentModel; using System.Globalization; using System.Windows; using System.Windows.Controls; using System.Diagnostics; using MessageBox = System.Windows.MessageBox; using System.Threading; using System.Linq; using System.Xml; using Ecng.Common; using Ecng.Collections; using Ecng.Xaml; using Ecng.ComponentModel;

using StockSharp.BusinessEntities; using StockSharp.Algo.Reporting; using StockSharp.Quik; using StockSharp.Algo; using StockSharp.Xaml; using StockSharp.Logging; using StockSharp.Algo.Testing;

namespace test { ///

/// Логика взаимодействия для MainWindow.xaml ///

public partial class MainWindow : Window

{

    private RealTimeEmulationTrader<QuikTrader> _trader;

    //private QuikTrader _trader;
    private MonitorWindow monitor;
    private LogManager _logManager;

    public MainWindow()
    {

        InitializeComponent();

        monitor = new MonitorWindow();
       monitor.Show();
        _logManager = new LogManager();
        var fileListener = new FileLogListener("{0}_{1:00}_{2:00}.txt".Put(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day));
        _logManager.Listeners.Add(fileListener);
        _logManager.Listeners.Add(new GuiLogListener(monitor));
        _trader = new RealTimeEmulationTrader<QuikTrader>(new QuikTrader(QuikTerminal.GetDefaultPath()) { IsAsyncMode = true, SupportManualOrders = true });
        _trader.UnderlyingTrader.SupportManualOrders = true;
       _trader.UnderlyingTrader.IsAsyncMode = true;
        //_trader = new QuikTrader(QuikTerminal.GetDefaultPath()) { IsAsyncMode = true, SupportManualOrders = false };




        _trader.UnderlyingTrader.LogLevel = LogLevels.Debug;
        _logManager.Sources.Add(_trader.UnderlyingTrader);
        _trader.LogLevel = LogLevels.Debug;
        _logManager.Sources.Add(_trader);

        //_trader.LogLevel = LogLevels.Debug;
        //_logManager.Sources.Add(_trader);
        _trader.ProcessDataError += (ex) =>
        {
            _trader.AddDebugLog("тут поставлена точка остановки по ошибке");
        };

        _trader.Connected += () =>
        {
            _trader.AddDebugLog("Соединились");
        };
        // запускаем экспорт по DDE
        _trader.Connect();


        while (!_trader.IsConnected) { }
        _trader.StartExport();

    }
 }

} [/code]

Спасибо:

pyhta4og

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


мы же ищем колл-стек для ошибки 2013/02/26 18:31:44.382|Error |QuikTrader|System.InvalidOperationException: Ордер с transactionId=56501936 не найден

а не для ошибки 2013/02/27 17:34:33.489|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '15', индекс колонки '34'.

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

Однако я подозреваю что эмулятор не находил заявки потому что у вас неправильно настроен квик - нет колонки ID Транзакции.

Запустите Verifier.

[quote=kahuna;24288][quote]Поставьте пожалуйста quikTrader.LogLevel=LogLevels.Debug и пришлите дебаг-лог эмулятора, воспроизводящий проблему. также было бы неплохо увидеть полный коллстек ошибки. Для этого можно поставить брекпойнт в обработчик ProcessError и посмотреть на InvalidOperationException call stack[/quote]

[b]очевидно вот это, (стек вызовов)[/b] tryBot1.exe!test.MainWindow..ctor.AnonymousMethod__1(System.Exception ex) Строка 72 C# Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<System.Exception>(System.Action<System.Exception> handler, System.Exception arg) + 0x39 байт StockSharp.Algo.dll!StockSharp.Algo.Testing.RealTimeEmulationTrader<StockSharp.Quik.QuikTrader>.#=qNHN4D9UbsthHTSGTNWi6$PZlIrGZFf9gC2mMJ8oqHqw=(System.Exception #=ql43C9O7pgKYIntyjdNWa9Q==) + 0x36 байт Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<System.Exception>(System.Action<System.Exception> handler, System.Exception arg) + 0x39 байт StockSharp.Algo.dll!StockSharp.Algo.BaseTrader.RaiseProcessDataError(System.Exception exception) + 0x94 байт StockSharp.Quik.dll!#=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qB09_IBYvsxLb_dLzMi2NWQ==(StockSharp.Quik.DdeTable #=qOgXoydWCvsq2gXlddKoo0w==, System.Collections.Generic.IList<System.Collections.Generic.IList> #=qMeYWUEb44NrXcAvbPuNfiQ==, System.Action<System.Collections.Generic.IList,System.Func<StockSharp.Quik.DdeTableColumn,object>> #=qolGBgTssErk3vXo538xxsQ==, System.Action<System.Exception> #=qIfmNdbFGgLtG9ybpXuosbQ==, bool #=qe3W9$GyIKMHUi59wvLuQeA==) + 0x33b байт StockSharp.Quik.dll!StockSharp.Quik.QuikTrader.#=qjrOBFov$lIae$ZMCQLx7P1fQAe2X2s16$DxZRnv$aqU=.#=qu4gTMGq$3yH4Axl_FWkd5w==() + 0x7db байт StockSharp.Algo.dll!StockSharp.Algo.BaseTrader.ProcessEvents(System.Action handler) + 0x8a байт StockSharp.Quik.dll!StockSharp.Quik.QuikTrader.#=qaeR2In9bHSqL$9RTYB7mZA==(string #=qBWEHmyjqnbDFkS_RzrY$OQ==, System.Collections.Generic.IList<System.Collections.Generic.IList> #=q5vWveEpgNMvDr0v17vxoxw==) + 0xdd байт Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<string,System.Collections.Generic.IList<System.Collections.Generic.IList>>(System.Action<string,System.Collections.Generic.IList<System.Collections.Generic.IList>> handler, string arg1, System.Collections.Generic.IList<System.Collections.Generic.IList> arg2) + 0x3c байт StockSharp.Quik.dll!#=qO4H$vUMUtJxte1FDOGqs6k1o3v9rH9VhPKcrarKCJ_E=.#=q69jrzP3kyHkClZEeDaigUAUJGm6I9zoC7WsTE1$ILs8=.#=q8A8iEPic6wzTjce69NwpoQ==() + 0x71 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventDispatcher.Add.AnonymousMethod__0() + 0x40 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventDispatcher.CreateNewThreadQueuePair.AnonymousMethod__3() + 0x49 байт Ecng.Common.dll!Ecng.Common.ThreadingHelper.Thread.AnonymousMethod__f() + 0x23 байт mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state) + 0x63 байт mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool ignoreSyncCtx) + 0xb0 байт mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) + 0x2c байт mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x44 байт

[b]вот Debug Log:[/b] 2013/02/27 17:34:31.690|Debug |RealTimeEmulationTrader1|Соединились 2013/02/27 17:34:33.489|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '15', индекс колонки '34'. в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qDJWMM5YENO97pQ4kvVrxSwXaehCKqmhRhAgzkT7Jsf8=.#=qhv7A9IuBu4a_njQh_JmFbSgY0uixyYvMCIXx7TWY5EQ=(DdeTableColumn #=q4pnTK3SfN8gkjMJpZFnaRw==) в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qV4zHdEkojhf6pdjo6vaz8w==[T](Func2 #=qy9KqBxWU5kgs33RYn7ZxjA==, DdeTableColumn #=qQWUnmuZ9JkNca$ApBYluAA==) в StockSharp.Quik.QuikTrader.#=qjrOBFov$lIae$ZMCQLx7P1fQAe2X2s16$DxZRnv$aqU=.#=q$lSEIT5LexsQlwc6F31I_w==(IList1 #=q$0V_COkA0ZnIxo4oiZ38PQ==, Func2 #=qlUb9wQhsWgLV82TCbkBodQ==) в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qB09_IBYvsxLb_dLzMi2NWQ==(DdeTable #=qOgXoydWCvsq2gXlddKoo0w==, IList1 #=qMeYWUEb44NrXcAvbPuNfiQ==, Action2 #=qolGBgTssErk3vXo538xxsQ==, Action1 #=qIfmNdbFGgLtG9ybpXuosbQ==, Boolean #=qe3W9$GyIKMHUi59wvLuQeA==) 2013/02/27 17:34:43.083|Debug |RealTimeEmulationTrader1|тут поставлена точка остановки по ошибке 2013/02/27 17:34:43.391| |QuikTrader|Экспорт запущен.

[b]В реальном режиме похожая картинка: [/b] [b]DebugLog:[/b] 2013/02/27 17:23:10.334|Debug |QuikTrader|Соединились 2013/02/27 17:23:27.664|Error |QuikTrader|System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '15', индекс колонки '34'. в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qDJWMM5YENO97pQ4kvVrxSwXaehCKqmhRhAgzkT7Jsf8=.#=qhv7A9IuBu4a_njQh_JmFbSgY0uixyYvMCIXx7TWY5EQ=(DdeTableColumn #=q4pnTK3SfN8gkjMJpZFnaRw==) в#=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qV4zHdEkojhf6pdjo6vaz8w==[T](Func2 #=qy9KqBxWU5kgs33RYn7ZxjA==, DdeTableColumn #=qQWUnmuZ9JkNca$ApBYluAA==) в StockSharp.Quik.QuikTrader.#=qjrOBFov$lIae$ZMCQLx7P1fQAe2X2s16$DxZRnv$aqU=.#=q$lSEIT5LexsQlwc6F31I_w==(IList1 #=q$0V_COkA0ZnIxo4oiZ38PQ==, Func2 #=qlUb9wQhsWgLV82TCbkBodQ==) в #=qU8C8kAMUmJ0kPIeEJrF68f3NMymXDukMNgL4Dc7ffmr7PRgVzknJ3atY_n0PucT4.#=qB09_IBYvsxLb_dLzMi2NWQ==(DdeTable #=qOgXoydWCvsq2gXlddKoo0w==, IList1 #=qMeYWUEb44NrXcAvbPuNfiQ==, Action2 #=qolGBgTssErk3vXo538xxsQ==, Action1 #=qIfmNdbFGgLtG9ybpXuosbQ==, Boolean #=qe3W9$GyIKMHUi59wvLuQeA==) 2013/02/27 17:23:53.298|Debug |QuikTrader|тут поставлена точка остановки по ошибке[/quote]

Спасибо:

kahuna

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


[quote=pyhta4og;24290]мы же ищем колл-стек для ошибки 2013/02/26 18:31:44.382|Error |QuikTrader|System.InvalidOperationException: Ордер с transactionId=56501936 не найден [/quote]

Да, но это было вчера. Сегодня такого ордера уже нет. ( С verifier-ом странная штука. Первый раз запускаю тоже показывает что не хватает колонок в таблице стоп-ордеров. Иду в Quik изумленно считаю количество полей оно равно 38 как и требуется. Снова и снова пускаю verifier пишет: "Все настроено правильно". Программа по прежнему выдает ошибку. Однако уже что-то новенькое: [i]2013/02/27 23:55:36.585|Debug |RealTimeEmulationTrader1|Соединились 2013/02/27 23:55:38.915| |QuikTrader|New order: 0/10019781965 Продажа Цена=153520 Объем=1 Сост=Done Бал=0 2013/02/27 23:55:38.922| |QuikTrader|New order: 0/11852461 Продажа Цена=146000 Объем=1 Сост=Done Бал=1 2013/02/27 23:55:38.939|Error |QuikTrader|System.InvalidOperationException: Ордер с transactionId=0 не найден в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qoYen7SIGXXIHC5yDoBmtakvI8ajVk$YMRTG2hIXiflw=(Int64 #=qO9iU2Mv29dcXgUc$4EMffw==) в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qW_NOGPO8hUy5l8I2xNZCL$oRPjjivnoDpJ2KizA3TPo=(IEnumerable1 #=qA0Q6xXtG5Oyta7t6dDl7yg==) в Ecng.Common.DelegateHelper.SafeInvoke[T](Action1 handler, T arg) в Ecng.ComponentModel.EventsContainer1.Raise(IEnumerable1 items) 2013/02/27 23:55:38.940|Debug |RealTimeEmulationTrader1|тут поставлена точка остановки по ошибке 2013/02/27 23:55:39.092| |QuikTrader|Экспорт запущен.[/i] Какой-то плавающий глюк (.

Спасибо:

kahuna

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


Пардон, это уже после закрытия рынка. Завтра перепроверю.

Спасибо:

Moadip

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


[quote]Иду в Quik изумленно считаю количество полей оно равно 38 как и требуется.[/quote] Таблицу стоп ордеров как настраивали? Вручную или с помощью wnd?

Проверьте последовательность колонок как [url=http://stocksharp.com/doc/html/5c13da7b-b6e4-4fd4-958a-66c93c58b941.htm]здесь[/url].

Спасибо:

kahuna

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


[quote=kahuna;24293]Пардон, это уже после закрытия рынка. Завтра перепроверю.[/quote]

Проверил. Verifier- Все настроено правильно. [b]Стек вызовов[/b]

tryBot1.exe!test.MainWindow..ctor.AnonymousMethod__1(System.Exception ex) Строка 72 C# Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<System.Exception>(System.Action<System.Exception> handler, System.Exception arg) + 0x39 байт StockSharp.Algo.dll!StockSharp.Algo.Testing.RealTimeEmulationTrader<StockSharp.Quik.QuikTrader>.#=qNHN4D9UbsthHTSGTNWi6$PZlIrGZFf9gC2mMJ8oqHqw=(System.Exception #=ql43C9O7pgKYIntyjdNWa9Q==) + 0x36 байт Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<System.Exception>(System.Action<System.Exception> handler, System.Exception arg) + 0x39 байт StockSharp.Algo.dll!StockSharp.Algo.BaseTrader.RaiseProcessDataError(System.Exception exception) + 0x94 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventsContainer<StockSharp.BusinessEntities.MyTrade>.Raise(System.Collections.Generic.IEnumerable<StockSharp.BusinessEntities.MyTrade> items) + 0x76 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventsContainer<StockSharp.BusinessEntities.MyTrade>.Flush() + 0x98 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventsContainer.EndSuspend.AnonymousMethod__0(Ecng.ComponentModel.EventsContainer c) + 0x20 байт mscorlib.dll!System.Collections.Generic.List<Ecng.ComponentModel.EventsContainer>.ForEach(System.Action<Ecng.ComponentModel.EventsContainer> action) + 0x92 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventsContainer.EndSuspend() + 0xb9 байт StockSharp.Algo.dll!StockSharp.Algo.BaseTrader.ProcessEvents(System.Action handler) + 0xc7 байт StockSharp.Quik.dll!StockSharp.Quik.QuikTrader.#=qaeR2In9bHSqL$9RTYB7mZA==(string #=qBWEHmyjqnbDFkS_RzrY$OQ==, System.Collections.Generic.IList<System.Collections.Generic.IList> #=q5vWveEpgNMvDr0v17vxoxw==) + 0xdd байт Ecng.Common.dll!Ecng.Common.DelegateHelper.SafeInvoke<string,System.Collections.Generic.IList<System.Collections.Generic.IList>>(System.Action<string,System.Collections.Generic.IList<System.Collections.Generic.IList>> handler, string arg1, System.Collections.Generic.IList<System.Collections.Generic.IList> arg2) + 0x3c байт StockSharp.Quik.dll!#=qO4H$vUMUtJxte1FDOGqs6k1o3v9rH9VhPKcrarKCJ_E=.#=q69jrzP3kyHkClZEeDaigUAUJGm6I9zoC7WsTE1$ILs8=.#=q8A8iEPic6wzTjce69NwpoQ==() + 0x71 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventDispatcher.Add.AnonymousMethod__0() + 0x40 байт Ecng.ComponentModel.dll!Ecng.ComponentModel.EventDispatcher.CreateNewThreadQueuePair.AnonymousMethod__3() + 0x49 байт Ecng.Common.dll!Ecng.Common.ThreadingHelper.Thread.AnonymousMethod__f() + 0x23 байт mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state) + 0x63 байт mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool ignoreSyncCtx) + 0xb0 байт mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) + 0x2c байт mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x44 байт [b]Debug Log: [/b] 2013/02/28 17:49:34.553|Debug |RealTimeEmulationTrader1|Соединились 2013/02/28 17:49:36.339| |QuikTrader|New order: 0/10024824729 Покупка Цена=153080 Объем=1 Сост=Done Бал=0 2013/02/28 17:49:36.455| |QuikTrader|New order: 0/11854037 Продажа Цена=147000 Объем=1 Сост=Active Бал=1 2013/02/28 17:49:36.619|Error |QuikTrader|System.InvalidOperationException: Ордер с transactionId=0 не найден в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qoYen7SIGXXIHC5yDoBmtakvI8ajVk$YMRTG2hIXiflw=(Int64 #=qO9iU2Mv29dcXgUc$4EMffw==) в StockSharp.Algo.Testing.RealTimeEmulationTrader1.#=qW_NOGPO8hUy5l8I2xNZCL$oRPjjivnoDpJ2KizA3TPo=(IEnumerable1 #=qA0Q6xXtG5Oyta7t6dDl7yg==) в Ecng.Common.DelegateHelper.SafeInvoke[T](Action1 handler, T arg) в Ecng.ComponentModel.EventsContainer1.Raise(IEnumerable1 items) 2013/02/28 17:49:53.304|Debug |RealTimeEmulationTrader1|тут поставлена точка остановки по ошибке 2013/02/28 17:49:53.614| |QuikTrader|Экспорт запущен.

Спасибо:

kahuna

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


[quote=Moadip;24294][quote]Иду в Quik изумленно считаю количество полей оно равно 38 как и требуется.[/quote] Таблицу стоп ордеров как настраивали? Вручную или с помощью wnd?

Проверьте последовательность колонок как [url=http://stocksharp.com/doc/html/5c13da7b-b6e4-4fd4-958a-66c93c58b941.htm]здесь[/url].[/quote]

Настраивал вручную на отдельной вкладке, так как тренируюсь на рабочем Quik-е и жалко терять рабочии настройки на других вкладках. Проверил глазками - последовательность колонок совпадает. Verifier говорит все настроено правильно.

Спасибо:


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

loading
clippy