Публичный бета тестинг
Atom
17.05.2011


Выложил PlazaTrader на http://box.net/plaza Исходники самого PlazaTrader, исходники примера, Plaza dll и Plaza + S# dll (последнее не нужно, если уже используется S#).

В следствие бета тестирования буду обновлять только библиотеку Ecng.Trading.Plaza.dll. В релиз войдет все. Налетаем.[smile]

upd Теперь PlazaTrader часть дистрибутива S#, поэтому просто качайте последнюю версию http://box.net/stocksharp/ . Сборка называется StockSharp.Plaza.dll

Теги:


Спасибо:


<< < 4 5 6 7  >
frontman

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


Я обычно рядом с такими вещами если они в коде пишу "It's magic" :D
Спасибо:

Alexander

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


frontman Перейти
Я обычно рядом с такими вещами если они в коде пишу "It's magic" :D


Как вы определяете тормоза \ задержки? Дайте конкретные цифры и логгирование событий, чтоб понимать о чём речь.
Спасибо:

frontman

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


Александр. Я просто запускаю SampleGUI для версии 4.0 и более позних версий.
И открываю окно заявок.
И вот если в версии 4.0 новые заявки приходят даже раньше чем в квике(в программе) они появляются, то в версиях более поздних они приходям через несколько минут! Что для плазы вообще не приемлемо...
Я и тот и тот проект профайлером просматривал. В версиях позднее 4.0 40% времени тратиться на строчку
сonnection.ProcessMessage(...);
Спасибо:

Alexander

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


frontman Перейти
Александр. Я просто запускаю SampleGUI для версии 4.0 и более позних версий.
И открываю окно заявок.
И вот если в версии 4.0 новые заявки приходят даже раньше чем в квике(в программе) они появляются, то в версиях более поздних они приходям через несколько минут! Что для плазы вообще не приемлемо...
Я и тот и тот проект профайлером просматривал. В версиях позднее 4.0 40% времени тратиться на строчку
сonnection.ProcessMessage(...);


естественно ProcessMessage стал вызываться чаще, т.к. таймаут снизился.
1) добавьте логирование прихода заявок чтоб было понятно. посмотрите сколько времени тратится от подачи заявки до её регистрации.
2) попробуйте StreamTimeout установить не в 100мс, а побольше.
Спасибо:

frontman

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


1) Заявки регистрируются вне программы. Он не то что новые он старые не качает норм.
2) А зачем? Код то не меняется. Я все го лишь заменяю библиотеку. Со старой библиотекой(на самом деле библиотека вроде та же на вид))) и 100 мс все норм работает , а с новой и 10мс не.
Спасибо:

Alexander

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


frontman Перейти
1) Заявки регистрируются вне программы. Он не то что новые он старые не качает норм.
2) А зачем? Код то не меняется. Я все го лишь заменяю библиотеку. Со старой библиотекой(на самом деле библиотека вроде та же на вид))) и 100 мс все норм работает , а с новой и 10мс не.


Interop.P2ClientGateMTA32.dll не менялся ни разу с тех пор как положили в TFS. Посмотрите по хистори.
Без логгирования и реальных результатов - пока лишь разговоры.

Нет тестов и логов - нет проблемы в данном случае :)
Спасибо:

frontman

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


Согласен. И вашу позицию понимаю.
Ну мне достаточно того что я теперь знаю как это испр и я если у кого то еще это будет то я написал как испр)
Спасибо:

frontman

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


Тестировал плазу с утра. И заметил странное явление.
При выполнении следующего кода
Код
 _trader.StreamTimeOut = TimeSpan.FromMilliseconds(50);

            //_trader.ReConnectionSettings.Interval = TimeSpan.FromSeconds(10);

            _trader.NewSecurities +=
                securities => this.GuiAsync(() =>
                _context.Post(obj => _securities.AddRange(obj as IEnumerable<Security>), securities.Where(sec => sec.Code == "...")));

            _trader.NewPortfolios +=
                portfolios => this.GuiAsync(() =>
                     _context.Post(obj => _portfolios.AddRange(obj as IEnumerable<Portfolio>), portfolios.Where(sec => sec.Name == "...")));
            
            _trader.NewOrders += orders => this.GuiSync(() => textBox1.Text = orders.Last().Id.ToString());

            _trader.Connected += () => _trader.StartFutureExport();
           
            _trader.Connect();



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

Alexander

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


Происходит подключение и прогрузка всей поступившей информации.

Цитата:
Причем даже после того как все портфели и инструменты загрузились

как отслеживаете?
Спасибо:

frontman

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


Просто смотрю изменяется ли название портфеля в текстовом поле куда я вывожу один из портфелей или инструментов поступивших при вызове события
NewPortfolios или NewSecurities.
И так же вижу что новые заявки начали поступать, а загрузка еще приличная. Потом проходит еще какое то время и нагрузка падает...
Спасибо:
<< < 4 5 6 7  >

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

loading
clippy