RealTimeEmulationTrader
Atom
11.02.2017
Prival


недостаточно денег для регистрации заявки.... Подскажите что может быть не так

  1. Создал трейдера и портфель

var quikMd = new LuaFixMarketDataMessageAdapter(new MillisecondIncrementalIdGenerator())
            {
                Login = "quik",
                Password = "quik".To<SecureString>(),
                Address = QuikTrader.DefaultLuaAddress,
                TargetCompId = "StockSharpMD",
                SenderCompId = "quik",
                RequestAllSecurities = true
            };

            _trader = new RealTimeEmulationTrader<IMessageAdapter>(quikMd);

            _portfolio = new Portfolio { Name = "test account", BeginValue = 1000000, CurrentValue = 1000000};

По кнопке запускаю стратегию

    class Strategy01:Strategy
    {
        protected override void OnStarted()
        {
            this.AddInfoLog("---Start---{0}---{1}---{2}---{3}---{4}---", Connector, Security, Portfolio, Portfolio.BeginValue, Portfolio.CurrentValue);
            var order = this.BuyAtMarket();
            RegisterOrder(order);
            base.OnStarted();

        }

В логе ошибка недостаточно средств ((( RealTimeEmulationTrader1 11.02.2017 18:32:47 Info Создан новый портфель Симулятор. RealTimeEmulationTrader1 11.02.2017 18:33:01 Info Инструмент SBER@QJSIM зарегистрирован на получение рыночных данных для MarketDepth. RealTimeEmulationTrader1 11.02.2017 18:33:01 Info Инструмент SBER@QJSIM зарегистрирован на получение рыночных данных для Level1. RealTimeEmulationTrader1 11.02.2017 18:33:01 Info Инструмент SBER@QJSIM зарегистрирован на получение рыночных данных для Trades. RealTimeEmulationTrader1 11.02.2017 18:33:01 Info RegisterOrder: 0/ Покупка Цена=0 Объем=1 Сост=None Бал=0 RealTimeEmulationTrader1 11.02.2017 18:33:01 Info New order: 66767638/ Покупка Цена=0 Объем=1 Сост=Pending Бал=1 S_SBER@QJSIM_test account 11.02.2017 18:33:01 Info Стратегия Запущена. [0,-1]. Позиция 0. S_SBER@QJSIM_test account 11.02.2017 18:33:01 Info ---Start---RealTimeEmulationTrader`1---SBER@QJSIM---test account---1000000---1000000--- S_SBER@QJSIM_test account 11.02.2017 18:33:01 Info Регистрация новой Market (0x65FB2A) заявки на Buy с ценой 0 и объемом 1. SecurityMarketEmulator 11.02.2017 18:33:01 Info Заявка 66767638 не зарегистрирована. Причина 'На счету test account недостаточно денег для регистрации заявки 66767638. Необходимо 131.92, имеется 0, заблокировано 0.00.'.




Спасибо:


< 1 2 3 4 5  >
Prival

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


Хотелось бы получить информацию, как и что делать (прошло уже больше недели). Сегодня обновилась версия квика, проверил на ней работу робота TestBag04.rar

Все ошибки сохранилось.

  1. Сделки проходят по неверным цена 19:14:18.8260759 Прошла сделка 7 RIM7 по цене 112180, объём 2, направление Buy. 19:14:18.8265779 Заявка Sell RIM7 полностью исполнена Volume=2. Позиция -1 AveragePrice=0 19:14:18.8266919 Прошла сделка 8 RIM7 по цене 112178, объём 1, направление Sell. 19:14:18.8268459 Прошла сделка 9 RIM7 по цене 112177, объём 1, направление Sell.

  2. AveragePrice=0 может я его както не так запрашиваю ?

  3. И снова нехватает денег (( уже на 9-м перевороте. Заявка 69154072 (0xF8B369) не была зарегистрирована по причине 'На счету Симулятор недостаточно денег для регистрации заявки 69154072. Необходимо 1026974.88, имеется 999992, заблокировано 998447.80.'.

Спасибо:

Support

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


Ошибки переданы, когда будут фиксы я не знаю..

Спасибо:

Prival

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


Вышла новая версия. 4.3.23 К сожалению все ошибки остались (((

19:29:04.1517536 Заявка Buy RIM7 полностью исполнена Volume=1. Позиция 1 AveragePrice=0 19:29:04.1685022 Прошла сделка 1 RIM7 по цене 111122, объём 1, направление Buy.

2017/04/07 19:29:08.871| |S_RIM7@FORTS_Симулятор|Регистрация новой Market (0x1E7434C) заявки на Sell с ценой 0 и объемом 2. 2017/04/07 19:29:08.872| |S_RIM7@FORTS_Симулятор|Новая позиция: (S#:RIM7@FORTS, Native:,Type:Future, Симулятор)=1. 2017/04/07 19:29:08.872| |S_RIM7@FORTS_Симулятор|Заявка 69934145 (0x1E7434C) больше не активна. 2017/04/07 19:29:08.969| |S_RIM7@FORTS_Симулятор|Регистрация новой Market (0xDF06CA) заявки на Sell с ценой 0 и объемом 2. 2017/04/07 19:29:08.969|Error |S_RIM7@FORTS_Симулятор|Заявка 69934146 (0xDF06CA) не была зарегистрирована по причине 'На счету Симулятор недостаточно денег для регистрации заявки 69934146. Необходимо 4667460, имеется 1000000, заблокировано 4445200.'. 2017/04/07 19:29:08.969| |S_RIM7@FORTS_Симулятор|Заявка 69934146 (0xDF06CA) больше не активна.

Пожалуйста обратите внимание разработчиков.

  1. RIM7 по цене 111122 такого не может быть, цена должна быть кратна 10
  2. order.GetAveragePrice(Connector) выдает ноль. Может я как то неправильно запрашиваю ? подскажите как правильно узнать среднюю цену позиции
  3. Несколько переворотов и снова нехватает денег (лог выше) .... (((
Спасибо:

Support

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


Сделайте следующую проверку с последней версией: посмотрите добавляются ли сделки в коллекцию strategy.MyTrades

Спасибо:

Support

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


См. также политику по ошибкам и исправлениям здесь: http://stocksharp.ru/articles/8204/faq-po-razrabatyvaemym-ficham/

Спасибо:

Prival

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


Support: Сделайте следующую проверку с последней версией: посмотрите добавляются ли сделки в коллекцию strategy.MyTrades

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

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

Спасибо:

Support

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


Воспроизводится 1 и 2 ошибки - это баг. Так в strategy.MyTrades сделки есть или нет?

Спасибо:

Prival

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


Если правильно понимаю вопрос то сделки приходят.

 
......         
Connector.NewMyTrades += Connector_NewMyTrades;
            base.OnStarted();
        }

        private void Connector_NewMyTrades(IEnumerable<MyTrade> trades)
        {
            foreach (var trade in trades)
            {
                this.AddInfoLog(@"{0} Прошла сделка №{5} {4} по цене {1}, объём {2}, направление {3}.",
                    TimeHelper.Now.TimeOfDay, trade.Trade.Price, trade.Trade.Volume, trade.Order.Direction,
                    trade.Trade.Security.Code, trade.Trade.Id);
            }
        }

Лог показывает что сюда сделки приходят 2017/04/11 21:24:54.378| |S_RIM7@FORTS_Симулятор|21:24:54.4203760 Прошла сделка №1 RIM7 по цене 108902, объём 1, направление Buy.

Спасибо:

Support

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


Не правильно... В коллекцию strategy.MyTrades записываются сделки, совершенные стратегией, а средняя цена считается на базе этой коллекции..

Спасибо:

Prival

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


Support: Воспроизводится 1 и 2 ошибки - это баг. Так в strategy.MyTrades сделки есть или нет?

Скажите описанные баги в этой ветке уже поправлены ?

Спасибо:
< 1 2 3 4 5  >

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

loading
clippy