как отлавливать свои глюки?

как отлавливать свои глюки?
Atom
2/27/2010
denis


переделал алгоритм SMA на свой, все работает, но как-то не так :) нужно посмотреть какие значения в буфере private readonly List _buffer = new List();

сделал вывод в файл, там формат разделителя разный :) он меняется с точки на запятую и обратно при следующем вызове вот лои пятиминуток лука ----- первый вызов -------- L 1577,4 L 1577,02 L 1577,13 L 1577,03 L 1578,08 L 1578,08 L 1578,94 L 1578,94 L 1579,2 L 1579,2 L 1578,08 L 1578,08 L 1579,4 L 1579,4 ----- второй вызов -------- L 1577.4 L 1577.02 L 1577.13 L 1577.03 L 1578.08 L 1578.08 L 1578.94 L 1578.94 L 1579.2 L 1579.2 L 1578.08 L 1578.08 L 1579.4 L 1579.4 L 1580 ----- дальше опять будут запятые :( --------

в какую сторону надо копать?


Tags:


Thanks:


1 2  >
Mikhail Sukhov

Avatar
Date: 2/28/2010
Reply


Thanks:

denis

Avatar
Date: 3/2/2010
Reply


спасибо. вылечил через var cci2 = new CultureInfo(Thread.CurrentThread.CurrentCulture.Name); cci2.NumberFormat.NumberDecimalSeparator = "."; Thread.CurrentThread.CurrentCulture = cci2; код робота выполняется в другом потоке, вот и выставил на другой поток.

правильно я понял, что Strategy.OnProcess() вызывается когда истечет время отрисовки свечи? на примере SampleSMA. заморочка в том что хочу при выходе из канала запустить чилдСтратеги лучший бид, а не лупить в рынок стоп приказом. Как нужно сделать, чтобы проверять каждый тик и рассчитывать уровень по свечкам?

Thanks:

Mikhail Sukhov

Avatar
Date: 3/2/2010
Reply


Вот тут я ответил, когда вызывается onProcess

http://groups.google.co.uk/group/stocksharp/browse_thread/thread/5d141bfd66e1b38d?hl=en

Thanks:

denis

Avatar
Date: 3/3/2010
Reply


ага, спасибо. еще вопрос: public partial class MainWindow { private readonly TimeSpan _timeFrame = TimeSpan.FromMinutes(5); private readonly TimeSpan _timeFrameTS = TimeSpan.FromSeconds(1); а в protected override bool OnProcess() пишу это var lt = this.Security.LastTrade.Price;

       using (StreamWriter sw = File.AppendText("debug.txt"))
        {
            sw.WriteLine("  lt = {0} ", lt);
        }

фаром смотрел лог, там последняя сделка притормаживает от трех сек до десяти - это нормально? при том что свечки рисуются мгновенно, а вот стратеги думает. если смотреть через "type debug.txt", то все аналогично. не пойму где накосячил и куда копать

Thanks:

denis

Avatar
Date: 3/3/2010
Reply


правильно я понимаю что значение Security.LastTrade.Price берется из таблицы "Инструменты"? которая сама тормозит относительно таблицы "Все сделки" и как взять из всех сделок? Trade.Price ? ща проверю

Thanks:

Mikhail Sukhov

Avatar
Date: 3/3/2010
Reply


Да, таблица инструмент чуть тормознее, чем все сделки, и еще более тормознее, чем стакан. Только уж 3 секунды совсем много. Квиковцы декларируют около 1 сек. Видимо брокер шалит...

Thanks:

denis

Avatar
Date: 3/4/2010
Reply


Смотрю на загрузку проца в таск менеджере и никак не могу понять "чего там сложного такого считать?". Запущен пример симплСМА. От того вопрос: что нужно вырезать, чтобы избавится от лишней нагрузки? в порядке ресурсоемкости.

Thanks:

Mikhail Sukhov

Avatar
Date: 3/5/2010
Reply


Загрузка только на SampleSma? Вообще, большая нагрузка при экспорте всех сделок. Но это происходит только в первые моменты - когда робот стартует и сделок набралось порядочно. Что касается SampleSma - то это графика =) Компонент для графиков я брал сhttp://www.visifire.com/У них он не совсем в релиз стадии. Но другого тогда я не нашел - потому что мне нужно и под WPF и под Sliverlight. Вот он у меня тормозит. Может быть обновить версию. Я давно не слежу за новыми версиями этой компоненты. А вообще мне больше понравился вот этот компонент

http://wpf.amcharts.com/По скорости его не смотрел, но в отличии от ВисиФаер он ориентирован на трейдинг. С удовольствием вставлю в дистрибутив исходники (можно не исходники) замену для ChartWindow что есть сейчас в S#.

Thanks:

denis

Avatar
Date: 3/5/2010
Reply


еще на SampleCandles, поставил 20 сек свечи на фуче ГП и через час ядро нагружено по полной рисованием :) разовая нагрузка при старте - это понятно, вопрос в постоянной и увеличивающейся нагрузке. ладно, ща попробую вырезать рисовалку, но оставить _candleManager, о нагрузке отпишусь. про впф пока ничего не скажу, в книге это следующая глава :) прочу - наковыряю.

Thanks:

denis

Avatar
Date: 3/5/2010
Reply


сделал так private void DrawCandles(IEnumerable candles) { //this.Sync(() => _chart.DrawCandles(candles)); } все летает :) даже при старте нет эпических тормозов, а при работе почти простой на проце амд х2 5200

Thanks:
1 2  >

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

loading
clippy