Форум трейдеров » Торговые роботы, советники, индикаторы » Механические торговые системы: проектирование и применение
+ Подписаться
Страница 16 из 52 ПерваяПервая ... 6141516171826 ... ПоследняяПоследняя
  1. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    4.5.2. Диалог выбора данных для проведения теста

    Если это первый запуск тестера, то окно диалога со списком отобранных финансовых инструментов, скорее всего, будет пустым (рис.4.16).



    Рис.4.16.

    Нажимаем клавишу добавления финансовых инструментов «Add Secutities» и переходим к диалогу проводника Windows, показанному на рисунке рис.4.17, в котором нам необходимо указать на компьютере путь к файлам, в которых хранятся исторические данные по котировкам финансовых инструментов в формате Метасток, и выбрать необходимый файл или группу файлов.
    Примечание. Если программа используется в режиме с автоматической подкачкой данных, да пожалуй, и во всех остальных случаях тоже, целесообразно создать отдельный каталог для файлов с историческими данными в формате Метасток, предназначенными для использования в тестах систем. Такую копию можно создать с помощью средств Downloader.



    Рис.4.17.

    Выбираем для примера файл D_EURUSD, в котором в предлагаемом примере хранятся данные графика дневного масштаба для инструмента EURUSD, и нажимаем клавишу «Open» диалога проводника, возращаясь к диалогу выбора и добавления финансовых инструментов.
  2. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    Теперь основное окно диалога (рис.4.18) уже не пустое, в нем находится файл с отобранными длшя теста данными по EURUSD.



    Рис.4.18.

    Проверяем правильность выбора инструментов.
    Клавишей «Add Secutities» мы можем добавить дополнительные файлы с данными для теста, клавишей «Remove All» удалить все инструменты из окна, а клавишей «Remove» удалить выделенные.
    Однако нам более важна клавиша «Dates», с помощью которой мы можем настроить диапазон данных для проведения теста (настройка диапазона важна для секционирования данных при проведении оптимизации систем).
  3. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    4.5.3. Задание диапазона данных.

    Нажимаем клавишу «Dates».



    Рис.4.19

    Нажимаем клавишу «Dates».
    В появившемся диалоге «Simulation Dates» (см. рис.4.19) можно по выбору пользователя задать начальную и конечную точку диапазона данных, которые будут использоваться для тестирования, либо количество используемых доступных данных в конце диапазона (Метасток разрешает допустимый размер диапазона данных для тестирования не более 50000).
    Выбираем последнюю опцию, задаем диапазон 1000 периодов, нажимаем «ОК» и возвращаемся к предыдущему диалогу, но с уже заданным диапазоном данных для тестированияв количестве 1000 последних периодов (рис.4.20).



    Рис.4.20.

    Если все остальные опции были уже установлены, то на этом этапе можно было бы нажать клавишу «Start» и приступить к тестированию. Но мы еще завершили установку опций, поэтому продолжим настройку тестера и нажмем клавишу «Далее».
  4. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    4.5.3. Диалог установки опций тестирования.

    Нажимаем клавишу «Далее» в диалоге рис.4.20 и переходим к диалогу настройки опций тестирования (рис.4.21).



    Рис.4.21.

    Первая опция касается метода учета торговых сделок (Trading).
    Здесь можно активировать режим «Points Only Test» и считать результаты торговли в пунктах.
    Если режим «Points Only Test» не выбран, то учет сделок ведется по денежному балансу.
    Необходимо отметить, что режим «Points Only Test» более объективен и универсален, поскольку показывает результат торговли в чистом виде, в пунктах, без эффектов кредитного плеча. Кроме того, этот метод позволяет проводить тесты не только прибыльных, но и убыточных систем, так как растущий убыток не прекращает работу тестера в режиме «Points Only Test».

    Следующая опция - «Portfolio», касается вида торговой стратегии.
    Некоторые стратегии предназначены для использования только при торговле длинными позициями (особенно это характерно для фондового рынка), другие только короткими, а третьи допускают использование и покупок и продаж. Мы на этом этапе выберем опцию «Both», допускающую использование, как покупок, так и продаж инструмента, и поставим галочку, активируя опцию «Close all positions on the last bar» (закрыть все позиции на последнем баре тестируемого временного интервала).

    И последняя опция диалога «Results» касается вида тестирования и объема хранимых результатов.
    Выбирая «Quick Test» мы будем проводить «быстрый тест» с сохранением для последующего анализа только результатов сделок. Если опция «Quick Test» не выбирается, то компьютер сохраняет подробный резульат проведения теста с состоянием сторговой системы и баланса для каждого бара тестируемого временного интервала. Это требует больше времени для проведения теста и больше памяти для хранения результатов.
    Кроме того, в поле этой опции можно задать количество наиболее прибыльных результатов, которые будут храниться в памяти для каждой из оптимизируемых систем. Запишем в это поле значение 1000 и закончим настройку опций в рамках этого диалога.

    Из этого диалога таже можно перейти к режиму тестирования, нажав клавишу «Start», но мы еще закончили установку всех опций. Нажимаем клавишу «More…».
  5. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    Через 1-2 дня подготовительная часть заканчивается и можно будет приступить к собственно торговым системам.

    Формат форума, однако... Уже 143 поста на то, что в аудитории занимало 4 лекции по вводной части и программе Метасток, и это еще не всё.
    Я восхищаюсь людьми, которые успевали переварить всю эту информацию за те четыре 2-х часовых лекции и свободно пользовались материалом в следующих частях курса.
    Кстати лица лица некоторых из них попадаются среди победителей турниров в Минске. :)
  6. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    4.5.4. Задание спреда, комиссий и условий исполнения ордеров

    После нажатия клавиши «More…» мы переходим к диалогу, показанному на рисунке 4.22.



    Рис.4.22

    В диалоге две закладки, «Broker» и «Trade Execution».
    В первой из них нас будет интересовать опция «Comissions», с помощью которой можно задать комиссионные и спред при открытии и закрытии позиции. Комиссию и спред можно задавать в процентах или в пунктах, в зависимости от того, какой вариант нам более подходит. Если тестирование идет на одном инструменте, то лучше использовать абсолютные величины. Если на группе инструментов с разной абсолютной величиной пункта, то придетя использовать процентный способ задания комиссий и спреда с усреднными по группе инструментов параметрами.
    В частности, если мы тестируем стратегию на EURUSD со спредом 2пп, то вариант заполнения полей опции «Comissions» может быть таким, как показано на рисунке 4.23.



    Рис.4.23.

    Поля «Interest Rates» и «Margin Requirements» становятся активными, если мы выбрали режим тестирования и учето сделок по денежному балансу. Поскольку мы этот метод не используем, то нас эти поля в дальнейшем интересовать не будут.
  7. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    В закладке «Trade Execution» (рис.4.24) мы можем задать проскальзывание при исполнении ордеров, чтобы более приблизить тест к реальной торговле, а также цены и по которым будут открываться позиции и задержку исполнения ордера.



    Рис.4.24.

    Типовой вариант – это цена закрытия бара, на котором сформировано торговое условие (в поле задержки ставится нуль), или цена открытия следующего, после формирования торгового условия, бара (в поле задержки в этом случае нужно поставить 1).

    Дело в том, что условие открытия позиции на текущем баре будет считаться сформированным только в момент, когда известна цена закрытия, до этого момента величины OHLC могут изменяться. Поэтому позицию можно открывать псоле того, как зафиксированы величины OHLC, т.е. в момент формирования цены закрытия интервала или непосредственно после него.

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

    Задав все необходимые параметры, нажимаем клавишу «ОК» и возвращаемся к диалогу рисунка 4.21.
    Теперь мы можем нажать клавишу «Start» и приступить к выполнению теста системы.
  8. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    Итак, все опции заданы, параметры тестирования установлены.
    Нажимаем клавишу «Start».
    В правом нижнем углу окна Метсаток появляется маленькое окошко, показанное на рисунке 4.25, в котором указано имя тестируемой в настоящее время системы и ход процесса тестирования.



    Рис.4.25.

    После завершения теста в правом нижнем углу окна программы (см. рис.4.26) появляется сообщение о том, что тест завершен и предлагается посмотреть результаты теста «View Results».
    Мы обязательно посмотрим их, но уже в следующем разделе курса.



    Рис.4.26.
  9. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    4.6. Начинаем строить свои системы

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

    Откроем в Метасток график какого либо инструмента, для определенности EURUSD дневного масштаба, и настроим отображение злементов графика в виде японских свечей (рис.4.27).



    Рис.4.27. График EURUSD с отображением в виде японских свечей

    С чего начинается построение торговой системы? Как мы помним, с торговой идеи, с того, что мы начинаем отвечать на вопрос: «А что если…?».
    График у нас чист, никаких аналитических линий и индикаторов на нем нет, глазу не за что зацепиться, кроме самого графика. С графика и начнем.
  10. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    4.6.1.1. Торговая модель (идея):
    При восходящем тренде цена рынка в среднем растет, при нисходящем - падает.
    В качестве признака роста примем следующее:
    - если цена закрытия текущей свечи выше цены закрытия предыдущей, то это и будет признаком восходящего тренда;
    - если цена закрытия текущей свечи ниже цены закрытия предыдущей, то это будет признаком нисходящего тренда.
    Это и будет нашей торговой идеей.
    Теперь нужно перейти к формальной записи этого условия, что легко сделать, воспользовавшись оператором сдвига:

    C>ref(C,-1) - восходящий тренд
    C<ref(C,-1) - нисходящий тренд

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

Вверх
РегистрацияX

чтобы писать, читать, комментировать