.
Тесты торговых стратегий на C#. Урок 9. Тестируем стратегию на исторических данных
Автор megabax   
11.08.2013 г.
New Page 1

Тесты торговых стратегий на C#. Урок 9. Тестируем стратегию на исторических данных

Что бы смотреть урок полностью, а так же скачать исходники к уроку, подпишитесь на платный раздел.

В платном разделе статья находиться здесь.


Прежде чем приступить к тестированию торговой стратегии на реальных котировках, добавим к тестеру стратегий еще одну немаловажнуж фишку - логирование стоимости портфеля. Для этого слегка доработаем метод simulation...

....

....Сразу же исправим вызов метода симуляции в модульном тесте, добавим еще один параметр - пустой стринг:

...

            MACrossTradeSystem system = new MACrossTradeSystem();

            system.count_trade = 1;

            system.MAFast = MAShort;

            system.MASlow = MALong;

 

            TradeSystemTester tester = new TradeSystemTester(source);

            tester.system = system;

            tester.simulation(1000, "","");

 

            //тестируем cash

 

...

 

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

 

....

 

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

Тесты торговых стратегий на C#. Урок 9. Тестируем стратегию на исторических данных

 

Теперь можно приступить к тестированию торговых стратегий на реальных исторических котировках....

 

И так, кидаем на форму еще одну кнопочку*:

 

Тесты торговых стратегий на C#. Урок 9. Тестируем стратегию на исторических данных

 

И делаем у нее обработчик событий...

 

...

 

....Теперь качаем из Интернета историю котировок, в формате, понятном для PriceSource (лично я скачиваю с Финама), в исходниках есть пример такого файла котировок.  И тестим нашу торговую стратегию.  Ниже приведен графики стоимости портфеля для начального депозита 1000 руб.  и торговли по системе 1 акцией в период с 2009 года по 22.02.2013 на часовиках:

 

Тесты торговых стратегий на C#. Урок 9. Тестируем стратегию на исторических данных

 

При торговле 10 акциями (для депозита в 1000 руб.)  мы имеем вот такой график:

Тесты торговых стратегий на C#. Урок 9. Тестируем стратегию на исторических данных

 

Получается, что за 3 года и 3 месяца доходность без учета технических расходов составила 270% (примерно 49% годовых). Однако, с учетом комиссии она окажется гораздо меньше, но этим мы займемся на следующих уроках.

 


Скриншоты, помеченные знаком *, являются цитатами и иллюстрациями  программного продукта "Microsoft Visual Studio 2010 Professional", авторское право на который принадлежит корпорации Microsoft.. 

Скриншоты, помеченные знаком **, являются цитатами и иллюстрациями  программного продукта "Блокнот", авторское право на который принадлежит корпорации Microsoft.. 


 

 

 

Последнее обновление ( 11.08.2013 г. )