Котирование

Котирование
Atom
1/16/2015
Иван З.


Как я понимаю есть 2 варианта запустить котирования
1) из документации http://stocksharp.com/do...c-bc8b-4afde645e483.htm
Code
var strategy = new MarketQuotingStrategy(order, new Unit());
base.ChildStrategies.Add(strategy);

Работает нормально, по крайней мере позиции набирает.


2) из одного из обновления http://stocksharp.com/fo...285/Stock--4-0-Release/
Code

this.OpenPositionByQuoting(10);

Работает не нормально, либо не правильно использую
В стратегии просто набираю позицию

В тестовом КВИКе выдает ошибку

Лог приложу
Еще раз повторю, что 1й работает а 2й не работает
Вопрос: это я не правильно использую или это баг?
log.txt 72 KB (369)

Tags:


Thanks:


< 1 2 3 4  > >>
Иван З.

Avatar
Date: 1/24/2015
Reply


Перед стартом стратегии

После старта стратегии, MQS выставила заявку на 1227

Появилась заявка выше на 1230, MQS переставила заявку на 1231

Заявка что была на 1230 ушла, заявка MQS осталась на 1231, а должна была откатится 1227


код вызова MQS
Code

        void OpenPositionQuoting(Sides side, decimal volume)
        {
            
            var strat = new MarketQuotingStrategy(side, volume)
            {
                IsSupportAtomicReRegister = false,
                BestPriceOffset =Security.PriceStep, // Отступ от лучшей цены, на который может уйти котируемая заявка.
                PriceOffset = Security.PriceStep,     // котировки (для покупки прибавляется к цене, для продажи - вычитается).
                PriceType = MarketPriceTypes.Following,
                LogLevel = LogLevels.Debug,
            };
            base.ChildStrategies.Add(strat);
        }

Лог стратегии прилагается.

Если унаследоваться от MarketQuotingStrategy и переопределить BestPrice на код аналогичный сорцам на http://stocksharp.codepl...gies/QuotingStrategy.cs

Code

protected override decimal? BestPrice
         {
             get
             {
                 var quote = GetFilteredQuotes(QuotingDirection).FirstOrDefault();
                 if (quote != null) return quote.Price;
                 return (decimal)Security.GetCurrentPrice(Connector, QuotingDirection.Invert());
             }
         }

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

Смотреть всем!

Михаил, думаю полезно будет выложить актуальные сорцы адаптированны к последней версии S# на github, которые не имеют коммерческой ценности или уже выложены. Стратегии, индикаторы и др., они уже выложены codeplex но слегка устарели. Пользователю будет польза, и к вам меньше вопросов на подобие этого.
Народ выскажитесь кто что думает по этому поводу, может коллективом уговорим! [biggrin]
log.txt 12 KB (271)
Thanks:

Mikhail Sukhov

Avatar
Date: 1/24/2015
Reply


Я предлагаю все же не уходить сильно далеко от логов.

Они приложены. Анализ логов не увидел.
Thanks:

Иван З.

Avatar
Date: 1/24/2015
Reply



Первый раз выделено желтым, поведение MQS на появление заявки перед заявкой MQS. При этом изменилась лучшая цена и стакан конечно. Лог это показывает, на это реагирует стратегия.
Второй раз выделено желтым, поведение MQS на исчезновение заявки после заявки MQS. При этом изменился стакан, но лучшие цены не изменились. И MQS не реагирует на это изменение, хотя должно.

Вопрос об сорцах не технический, а скорее политический. И вполне подходит для флудилки в телеграмме.
Thanks:

Mikhail Sukhov

Avatar
Date: 1/24/2015
Reply


1. Лог обрезан.
2. Не понимаю вывода насчет должно. Не менялись лучшие цены - нет и изменения заявки.

Мне кажется лучше будет не пытаться поскорее написать на форуме, а все же потратить время, проанализировать лог, и уже затем написать на форуме. Вся эта переписка - это переливание из пустого в порожнее.

Сырцы - https://github.com/stocksharp/stocksharp Посмотрим как будет помощь. Будут коммитить - будут и стратегии в том числе. Не будут - ну значит никому особо и не нужно и достаточно бинарников.

Флудить в чате не нужно. Кросс постить так же не нужно. Ну да теперь только форум доступен, поэтому ошибиться сложно.[biggrin]
Thanks:

Иван З.

Avatar
Date: 1/27/2015
Reply


Михаил Сухов
1. Лог обрезан.

Лог не обрезан, такое поведение MQS

Thanks:

Иван З.

Avatar
Date: 2/4/2015
Reply


MarketQuotingStrategy все таки работает не верно.
Попытаюсь объяснить еще раз.
QUIK демо версия 6.16.1.15 качал здесь http://quik.ru/user/client/quik/how-to-start/
Инструмент выбран(security.Code == "HALS") с большим спредом, чтоб можно было переставлять заявки.
Пишу 2 лога. В logAll.txt пишу все логи от трейдера и стратегии, в logStratagy.txt только стратегию.
Загружаю программу, подключаюсь к QUIK, запускаю стратегию
Картинка

Лог стратегии

Открываю QUIK, выставляю руками заявку на 1260. MQS адекватно реагирует на изменение стакана и переставляет котировку на 1261
Картинка

Лог стратегии

Удаляю выставленную руками заявку на 1260, для MQS лучшей заявкой должна стать 1256. И MQS должна передвинуть заявку на 1257.

Лог стратегии

Лог стратегии + трейдер


Выставил руками еще одну заявку на 1258, на это раз лучшей ценой для MQS должна стать 1258. И соответственно переставить заявку на 1259.


Лог стратегии


Лог стратегии + трейдер


Лог стратегии не обрезан. Стратеги просто ничего не делает.
Прикрепляю логи, и стратегию.
Если MarketQuotingStrategy скопировать здесь http://stocksharp.codepl...arketQuotingStrategy.cs адаптировать под последнюю версию S#. То проблема уходит.
Thanks:

Mikhail Sukhov

Avatar
Date: 2/5/2015
Reply


Давайте еще раз. Покажите где в логе ошибка. Смотреть тонну логов ради непонятной ошибки (есть она или нет) нет возможности. Поберетиге наше время, потратьте пару дней на анализ лога и выложите его с комментариями.
Thanks:

Andrii

Avatar
Date: 2/5/2015
Reply


Михаил Сухов
Давайте еще раз. Покажите где в логе ошибка. Смотреть тонну логов ради непонятной ошибки (есть она или нет) нет возможности. Поберетиге наше время, потратьте пару дней на анализ лога и выложите его с комментариями.


Ошибка в QuotingStrategy.cs свойство BestPrice

Code
if (Direction == Sides.Buy)
{
   if(CurrentOrder.Price > Price)
      return CurrentOrder.Price;
}


Thanks:

RomSunZ

Avatar
Date: 2/5/2015
Reply


Михаил, MQS считает свою заявку лучшей, поэтому не откатывает эту заявку "назад" к краю спреда в стакане.
Thanks: Иван З.

Иван З.

Avatar
Date: 2/5/2015
Reply


В текущем варианте в лог стратегии пишет так


А должен написать так, именно так пишет вариант MQS с codeplex.
Thanks:
< 1 2 3 4  > >>

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy