Программирование - это просто
Advertisement
Главная arrow Биржевые роботы arrow Тесты торговых стратегий на C# (платный раздел) arrow Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"
24.04.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3" Печать E-mail
Автор megabax   
17.05.2023 г.
New Page 1

Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"

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

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

Исходники к уроку можно скачать в платном разделе.


На уроке Тесты торговых стратегий на C#. Урок 33. Индикатор цикличности мы с вами разработали, а на уроке  "Дневник разработчика торговой стратегии. Шаг 38. Исследование индикатора цикличности" мы с вами исследовали индикатор цикличности. Сегодня будем разрабатывать стратегию "Архея-3", в которой как раз и будет использоваться этот индикатор.

Для начала создадим класс TradeFilter, который будет отвечать за фильтрацию по индикатору:...

...

...Для реализации алгоритма торговли (Объект "Трейдер") используем класс NeuroTrader, только лишь слегка поменяв у него метод start и добавив в класса поле filter:

        /// <summary>

        /// Торговый фильтр, основанный, в основном, нам индикаторе SineDeviation

        /// </summary>

        public TradeFilter filter;

 

       /// <summary>

        /// Старт торговой стратегии. При реальной торговле отрабатывается на каждом тике,

        /// при тестирвоании - на каждой свече

        /// </summary>

        /// <returns>true - отработано успешно, false - были ошибки</returns>

        public override bool start()

        {

            ITerminalDriver driver = manager.strategy.driver;

            string account = manager.strategy.account;

            string market = manager.strategy.market;

            string ticker = manager.strategy.ticker;

 

            if(filter!=null)

            {

                filter.start();

                if (!filter.can_trade)

                {

                    close_position(driver,account,market,ticker);

                    return true;

                }

            }

 

...

...Все, теперь можно тестировать:

Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"

Идеальную синусоиду робот проходит так же идеально, как и Архея-1:

Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"

Белый шум тоже:

Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"

А вот на длинных волнах видно, что работает фильтр:

Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"

Сравните с графиком Археи-1:

Тесты торговых стратегий на C#. Урок 35. Разработка стратегии "Архея-3"

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

Последнее обновление ( 17.05.2023 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги