Роботы

Поиск по ключевым словам

Общее описание тестера стратегий

Первое, что необходимо для тестирования стратегии, это иметь правила покупки и продажи, записанные с помощью языка AmiBroker Formula Language (AFL). Примером может служить самая простая система:

Покупка, когда цена закрытия поднялась выше 45-ти периодной скользящей средней и продажа (выход из позиции) когда цена закрытия опустилась ниже 45-ти периодной скользящей средней.

Buy = Cross( Close, EMA(Close, 45));

Sell = Cross( EMA(Close, 45), Close);

Откройте окно «Formula Editor» (Редактор формул) и поместите в него код. Далее необходимо передать его в «Auto-Analyser» (Автоматический анализатор). Для этого воспользуйтесь командой меню Tools «Send to Auto-analysis» либо специальной кнопкой на панели задач Formula Editor:

AmiBroker - Formula Editor

Откроется окно Auto-Analyser (АА):

AmiBroker - Automatic Analysis

Этот инструмент предназначен для тестирования стратегий. Он может проводить различные по своей функциональности и назначению тесты.

Варианты тестов

В зависимости от поставленных задач, можно сделать несколько вариантов тестов:

Индивидуальный тест на одном инструменте базы данных

Необходимо выбрать «current symbol» в поле «Apply to». Правила совершения сделок будут применены только к выбранному (видимому в данный момент в активном окне) символу.

AmiBroker - Individual Backtest

Этот тест позволяет выявить поведение и параметры системы только на одном, выбранном в настоящий момент символе.

Индивидуальный тест на нескольких инструментах базы данных

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

Для использования фильтра активизируйте опцию «use filter» и кнопкой «Define» вызовите окно настроек фильтра, в котором можно задать, какие символы базы данных должны быть протестированы:

AmiBroker - Automatic Analysis - Filter setting

Это могут быть символы только одного рынка (Market), входящие в определенную группу (Group), сектор (Sector), индустрию (Industry), лист (Watch list), фавориты (Favourites) и индексы (Indexes) и различные комбинации этих условий.

Тест проходит сначала полностью на Символ 1, затем на Символ 2 и так далее. Такой тест позволяет визуально оценить эквити для каждого символа и посмотреть для них индивидуальный отчет. Фактически такой тест равен нескольким, последовательно проведенным индивидуальным тестам для каждого символа. Для просмотра отчетов по символам необходимо сначала запустить «Report explorer», так как при нажатии кнопки «Report» будет доступен отчет только для последнего символа в тесте.

AmiBroker - Automatic Analysis - Report Explorer

Тест портфеля (Portfolio Backtest) установлен по умолчанию

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

Граница теста

Часто требуется проведение теста стратегии не на всех исторических данных, а только на некотором интервале. Интервал теста задается в блоке «Range». Доступны следующие варианты:

  • all quotations – все данные;
  • n last quotations – N последних баров;
  • n last days – N последних дней;
  • from: to: — интервал, ограниченный датами.

AmiBroker - Automatic Analysis - Range

Параметры

Если в коде AFL вашей стратегии имеются изменяемые параметры, задаваемые функцией «Param ( )», то их можно изменять. Для доступа к диалогу изменения параметров необходимо воспользоваться кнопкой «Parameters»:

AmiBroker - Automatic Analysis - Parameters

Кроме этого, для проведения теста необходимо сообщить множество других параметров, которые можно задать в настройках тестера. Для получения доступа к этим настройкам необходимо воспользоваться кнопкой «Settings»:

AmiBroker - Automatic Analysis - Settings

Подробнее о настройках в следующей главе.



Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *