ошибка эмуляционный plazaTrader
Atom
17.05.2012
fish


Версия 4.1 (beta)
Переписал, под новую версию, для отлаживания решил поработать через эмуляционый трейдер
Код
RealTimeEmulationTrader<PlazaTrader>

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

Вот стек трейс

---------------------------
Ошибка обработки данных
---------------------------
System.MissingMethodException: Method not found: 'Void StockSharp.BusinessEntities.MyTrade.set_PnL(System.Decimal)'.

at StockSharp.Algo.Strategies.Strategy.#=qkgZFPxGi$ECujYjIxJexEA==(IEnumerable`1 #=qcE736mub7VO2W6WF6_Ksjw==)

at StockSharp.Algo.Strategies.Strategy.#=qMsE_t0UvJbk5pl_d10bUg65YKxFVfxDw_sxPZZdceso=(IEnumerable`1 #=qAVYNiKdFDaWf7$E79yD9HA==)

at System.Action`1.Invoke(T obj)

at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)

at StockSharp.Algo.Testing.RealTimeEmulationTrader`1.#=q31tcw46kVie247LG7JC3rawsTV_4PPMiNb3nfHQhRAg=(IEnumerable`1 #=q1SB9HRPlt19vFFcTcgdNUA==)

at Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)

at StockSharp.Algo.Testing.MarketEmulator.#=quqtSnuGq5f5POgxeDleFXw==(Order #=qVYBEhfpbngiIldDzjfeNVw==, Decimal #=qB_q5TM5NqOVbmG8Sh_y0lA==, Decimal #=qJy$qJWxHkEld9IY5ASavhQ==)

at StockSharp.Algo.Testing.MarketEmulator.#=qf9CQicKzakD5vLTcalBhVaXvGMTvBHWEg0Z_wjOs9Fs=(Order #=qJ$avBfwd$514nCN7kM9DcA==, MarketDepth #=qOle93rDk3Vy4zS6UNYpYQw==, Boolean #=qt3rmFrcGsK2eVx1hmI0vXg==)

at StockSharp.Algo.Testing.MarketEmulator.#=qt9mNe1nnM0L_bVvVy_asHQ==(LinkedListNode`1 #=qn9ljsNq8MfAm9iGN4eGuGg==)
---------------------------
ОК


Теги:


Спасибо:


< 1 2 
Alexander

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


fish

Александр, эти сделки я скопировал с терминала (чтобы показать о проблеме набора лишней позиции), к сожалению лог работы самого робота не сохранил.
В алгоритме исключительно заменил событийную логику. Есть алгоритм написанный на сборке (16700 приблизительно), он работает без перебора позиции, в этом
алгоритме поменял в нескольких местах событийную логику в соответствии с новым синтаксисом ее написания. Т.е. логика самого алгоритма не поменялась.

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



Ещё раз.
Можете сами посчитать позицию по тем сделкам что вы дали в excel - там действительно достигает позиции равной 4 и 5.
Т.е. проблемы в подсчёте позиции нет. По сделкам ровно сколько отображает PositionManager, столько и получается.

Совместимость версий у нас полная, мы собираем релизы из одного места. Все исходники - up to date.


Чему равен MinStepPrice у инструмента? Уже в третий раз задаём вопрос.
Спасибо:

fish

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


Цитата:
Ещё раз.
Можете сами посчитать позицию по тем сделкам что вы дали в excel - там действительно достигает позиции равной 4 и 5.
Т.е. проблемы в подсчёте позиции нет. По сделкам ровно сколько отображает PositionManager, столько и получается.


прежде чем отправить отчет я посчитал позиции из отчета, по этому и отправил его, в подтверждения того, что ошибка есть.
данный отчет скопирован с терминала, т.е. это сделки не из логики робота, а именно сделки совершенный по факту!
сделки из логики робота я не сохранил.
проблему перебора как раз выявил наблюдая в квике за работой алгоритма подключенного по плазе, там и заметил перебор!
Может это из за асинхроности отправки заявок?

Цитата:
Чему равен MinStepPrice у инструмента? Уже в третий раз задаём вопрос.


шаг цены 5 пунктов
стоимость шага цены примерно 3.1 руб.
думаю это можно было узнать и из названия инструмента, я ведь написал RIM2





Спасибо:

Alexander

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


fish
Цитата:
Ещё раз.
Можете сами посчитать позицию по тем сделкам что вы дали в excel - там действительно достигает позиции равной 4 и 5.
Т.е. проблемы в подсчёте позиции нет. По сделкам ровно сколько отображает PositionManager, столько и получается.


прежде чем отправить отчет я посчитал позиции из отчета, по этому и отправил его, в подтверждения того, что ошибка есть.
данный отчет скопирован с терминала, т.е. это сделки не из логики робота, а именно сделки совершенный по факту!
сделки из логики робота я не сохранил.
проблему перебора как раз выявил наблюдая в квике за работой алгоритма подключенного по плазе, там и заметил перебор!
Может это из за асинхроности отправки заявок?

Цитата:
Чему равен MinStepPrice у инструмента? Уже в третий раз задаём вопрос.


шаг цены 5 пунктов
стоимость шага цены примерно 3.1 руб.
думаю это можно было узнать и из названия инструмента, я ведь написал RIM2



Давайте ещё раз.
По первому:
в чём заключается ошибка? В том, что неверно отображается позиция?
Или в том что совершаются сделки которые совершаться не должны?


По второму:
я прекрасно знаю шаг цены и стоимость шага цены по спецификации. Вопрос был чему они равны у данного инструмента в вашем роботе. Ведь эти значения при подсчёте PnL берутся именно из той информации что передаёт биржа. т.е. Security.MinStepPrice
Спасибо:

fish

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


Цитата:
Давайте ещё раз.
По первому:
в чём заключается ошибка? В том, что неверно отображается позиция?
Или в том что совершаются сделки которые совершаться не должны?


совершаются сделки которые совершаться не должны!
в сборке (16700 приблизительно) этого нет! работает как следует!
в новой версии заменил исключительно синтаксис, логика прежняя!

Цитата:
По второму:
я прекрасно знаю шаг цены и стоимость шага цены по спецификации. Вопрос был чему они равны у данного инструмента в вашем роботе. Ведь эти значения при подсчёте PnL берутся именно из той информации что передаёт биржа. т.е. Security.MinStepPrice


ответить не смогу, в понедельник посмотрю!
Спасибо:

Alexander

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


fish
совершаются сделки которые совершаться не должны!
в сборке (16700 приблизительно) этого нет! работает как следует!
в новой версии заменил исключительно синтаксис, логика прежняя!


Какая стратегия используется? Покажите код создания стратегии.
Спасибо:

fish

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


используется MQS в различных вариациях

создаю так:

Код
Quoting = new MarketQuotingStrategy(order, new Unit(X), new Unit(X))
{
    Volume = 1,
    Security = Y,
    Trader = Trader,
    Portfolio = Portfolio
};

base.ChildStrategies.Add(Quoting);






Спасибо:

Alexander

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


fish
используется MQS в различных вариациях

создаю так:

Код
Quoting = new MarketQuotingStrategy(order, new Unit(X), new Unit(X))
{
    Volume = 1,
    Security = Y,
    Trader = Trader,
    Portfolio = Portfolio
};

base.ChildStrategies.Add(Quoting);




Приведите дополнительный лог - по инциализации (чтоб точно понимать что она запускается 1 раз), ордерам, сделкам и изменению позиции стратегии.
С той версии что вы указываете у нас никаких изменений не было, пока совсем не ясно почему у вас такие проблемы.



У кого-нибудь ещё наблюдаются проблемы с перебором позиции?
Спасибо:
< 1 2 

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

loading
clippy