Stock# 3.2 beta
Atom
11.06.2011


Выложил на бокс.

Изменения:

  1. Существенно изменилась модель тестирования. Остался только EmulationTrader (отвечает и за историю, и за случайные данные).
  2. Событийная модель для стратегий стала основной. И теперь она работает чисто на событиях.
  3. Strategy.OnProcess переехал в TimeFrameStrategy.
  4. Исчез StrategyManager. Из-за пункта 2 он стал не нужен, так как каждое действие активируется в том потоке, в котором пришло событие.
  5. Order.InitializationTime исчез, но появился Order.Latency. Поддерживается высокая точность замера round trip заявок, актуально для HFT шлюзов.
  6. Ecng.Trading был переименован в StockSharp.
  7. Класс для расчета кривой эквити и графический контрол для отображения.
  8. В дистрибутив вошли Alfa + Plaza.
  9. http://stocksharp.com/fo...pusk-tierminala-Launch/


Баги:

  1. http://stocksharp.com/posts/m/8336/
  2. http://stocksharp.com/fo...entOutOfRangeException/
  3. http://stocksharp.com/posts/m/8701/
  4. http://stocksharp.com/posts/m/8794/

Теги:


Спасибо:


1 2 3  > >>
esper

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


Код
Событийная модель для стратегий стала основной. И теперь она работает чисто на событиях.

Т.е. теперь нет ActionStrategy и необходимо наследоваться от Strategy?

Посмотрел класс Strategy, в нем нет When, т.е. ActionStrategy должен быть, но где он?
Спасибо:

hobo

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


When из Ecng.Trading.Algo.Strategies в Stocksharp.Algo.TraderHelper переместился.

Спасибо:

President

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


а где задается TimeFrame для эмуляции?

вот этого кода недостаточно:
Код
            var trader = new EmulationTrader(
                new[] { securityA, securityB },
                new[] { portfolio }, storage
                );

            trader.StartTime = new DateTime(2009, 6, 1);
            trader.StopTime = new DateTime(2009, 9, 1);

            trader.StartExport();

            _strategy.Trader = trader;
            _strategy.Start();


у стратегии вызывается OnRunning()
но не вызывается OnProcess()
при этом приложение что-то код что-то продолжает делать.
Спасибо:

Mikhail Sukhov

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


President Перейти
а где задается TimeFrame для эмуляции?


В примере SampleHistoryTesting показана инициализация.
Спасибо:

President

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


спасибо, заработало

PS. а проблема была в том что я не вызывал у стратегии base.OnRunning().
и мне кажется тут есть небольшая логическая недоработка - нужно либо у всех перегруженных методов обязывать вызывать базовый (у OnProcess, например, тоже) либо ни у кого (вся унаследованная логика может вызываеться сама перед или после вызова этих виртуальных методов).
Спасибо:

Mikhail Sukhov

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


President Перейти
нужно либо у всех перегруженных методов обязывать вызывать базовый


Это неправильно с точки зрения ООП. Мы вызываем базовый класс если хотим применить базовую реализацию + свою. Если не вызывать базовый метод, то только свою.
Спасибо:

VladOA

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


При запуске примера SimpleHistoryTesting появляется ошибка:

er.png 48 KB (224)
Спасибо:

Mikhail Sukhov

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


VladOA Перейти
При запуске примера SimpleHistoryTesting появляется ошибка:



Попробуйте напрямую сборку System.Windows.Forms.DataVisualization.dll подключить. Она почему то у вас не компируется при компиляции.
Спасибо:

VladOA

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


Если заново собрать пример SimpleHistoryTesting под FW 3.5 , то он запускается. Однако, во время тестирования стратегии вылетает. Пробовал менять период тестирования, если указать меньше то работает.

Сборка System.Windows.Forms.DataVisualization.dll поддерживается FW 4.0, то есть нужно собирать проект под FW 4.0?
Спасибо:

Mikhail Sukhov

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


VladOA Перейти
Если заново собрать пример SimpleHistoryTesting под FW 3.5 , то он запускается. Однако, во время тестирования стратегии вылетает. Пробовал менять период тестирования, если указать меньше то работает.

Сборка System.Windows.Forms.DataVisualization.dll поддерживается FW 4.0, то есть нужно собирать проект под FW 4.0?


Точно не связанные вещи. Смотрите ошибку в стратегии, к предыдущей ошибке не имеет отношения.
Спасибо:
1 2 3  > >>

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

loading
clippy