Форум » Статьи Advance Tools » Тестирование на реальной истории » Ответить

Тестирование на реальной истории

Scriptong: Тестирование на реальной истории. Описана работа скрипта FXTFileMaker, который позволяет конвертировать тиковую историю из TKS-файлов в FXT-файлы и подставлять ее в папку тестера стратегий Meta Trader 4.

Ответов - 86, стр: 1 2 3 4 5 6 All

Sergey: Офигенный материал. Теперь бы не иметь пробелов в сборщике тиков. Цитата "Таким образом, важны и символ, и период текущего графика." Нет времени все проверить, а потому вопрос. Маркируется ли FXT-файл таймфреймом. Если советник использует данные с разных ТФ, то надо ли создавать несколько FXT-файлов. И далее "...При запуске процесса тестирования следует выбрать тот символ, для которого создавался FXT-файл, и тот же период графика. В противном случае тестер создаст свой тиковый файл на основании моделирования тикового потока." Можно ли создать FXT-файл на М1, а тестер сформирует соответствующие файлы на остальные периоды?

Scriptong: Sergey пишет: Теперь бы не иметь пробелов в сборщике тиков. На данный момент пробел лишь в истории тиков по Аdmiral Markets - торговая неделя с 30.06.14 по 04.07.14. Причем пробел был допущен по моей вине - недосмотр. В будущем пробелы могут возникнуть только по техническим причинам, т. к. пока все сервера в единственном экземпляре, без дублеров. Над поиском решений для запуска дублеров сейчас тоже ведется работа. Sergey пишет: Цитата "Таким образом, важны и символ, и период текущего графика." Они важны только с точки зрения обращения тестера к правильному файлу. Так, если FXT-файл был создан для М15, а в настройках тестера установлен ТФ Н1, то тестер не обратится к сгенерированному FXT-файлу, создав свой тиковый файл. Sergey пишет: Если советник использует данные с разных ТФ, то надо ли создавать несколько FXT-файлов. Нет, не нужно. В пределах истории, которая существует в FXT-файле тестер может обращаться к данным любого ТФ. Ведь FXT-файл - это тиковый файл, из которого можно получить любой ТФ, что тестер и делает. P. S. Для успокоения совести проверил этот момент в двух опытах: 1. На М1 FXT-файле правильно прочитаны данные со всех старших ТФ. 2. На D1 FXT-файле правильно прочитаны данные со всех младших ТФ.

Sergey: Огромное спасибо за разъяснения. Точность тестирования пробойных стратегий всегда вызывало сомнения из-за невозможности учета проскальзываний во время выхода новостей. Созданный механизм тестирования на реальной тиковой истории трудно переоценить.


Scriptong: Да, тиковая история помогает снять розовые очки при взгляде на графики цен во время новостей. Большинство гепов в такие периоды остаются незамеченными (они внутри минутных свечей). Остается лишь одна неточность в таком тестировании - использование фиксированного спреда тестером. Ведь информация по ценам Ask в тиковой истории имеется, но ее невозможно подставить в тестер легальным путем. Нужно только патчить терминал - некрасивое действие.

Sergey: Scriptong пишет: Нужно только патчить терминал - некрасивое действие. Мы видим, что терминал со временем проходит модернизацию. Может есть смысл сделать запрос? Глядишь в будущем и этот момент утрясется. Ведь встроили в тестер настройки по спреду, когда-то и такого не было. Еще раз огромный респект за проделанную работу.

Scriptong: Sergey пишет: Мы видим, что терминал со временем проходит модернизацию. Может есть смысл сделать запрос? На форумах MQL4/5 об это сломано немало копий. Разработчики серьезно упираются. Базой для отказов является их категорическая позиция по тиковой истории - не нужна. Их вполне можно понять, т. к. широковещательная передача тиковой истории сервером - дело затратное. С другой стороны, даже этот момент можно решить, значительно уменьшив трафик тиковой истории. Но, опять же, возвращаемся к тому, что позиция категорическая - это не нужно. Хотя вода камень точит.

Sergey: Мне не удается сформировать файл *.FXT TKS взят с 4.08 по 19.09 Alpari GBPUSD Вот настройки Скрипт ничего не выдает. Ни ошибок, ни результата. При смешении даты за пределы диапазона выдается ошибка, все работает.

Sergey: И еще....Уточняю.. Настройка спреда в пунктах. Это применительно к разрядности котировки (то есть в тиках как в тестере терминала)?

Scriptong: Sergey пишет: Скрипт ничего не выдает. Ни ошибок, ни результата. В любом случае должны быть хоть какие-то записи в журнале экспертов (окно "Терминал", вкладка "Эксперты"). Как минимум, о том, что скрипт был присоединен к графику, а потом закончил свое выполнение. Приведите, пожалуйста, эти сведения. Со своей стороны только что проверил запуск скрипта на чистом терминале с указанными настройками - файл создан в папке tester\history. Sergey пишет: Это применительно к разрядности котировки (то есть в тиках как в тестере терминала)? Будет использована величина пунктов, используемая тем счетом, на котором ведется тестирование. У Альпари на большинстве типов счетов (возможно даже на всех) у символа GBPUSD величина пункта равна 0.00001 (пятизначная котировка).

Sergey: Спасибо за напоминание о журнале. В описании к настройкам не было сказано об обязательном подключении DDL. В этом и оказалась проблема. После установки соответствующей галочки все получилось.

Scriptong: Sergey пишет: Спасибо за напоминание о журнале. И Вам спасибо. Добавил проверку разрешения на запуск DLL в код скрипта. Теперь подобных казусов быть не должно.

Sergey: Игорь, у меня опять вопросы! После переустановки терминала не могу сформировать файл *.FXT Ошибка "FXTFileMaker_Script_AD: количество баров в истории, предшествующее началу теста, недостаточно. Скрипт отключен." Раньше эта ошибка устранялась путем предварительной загрузки истории из архива брокера. Теперь не получается. Пробовал менять даты - не помогает. Даже при выставлении запредельных дат выпадает эта же ошибка.

Scriptong: Sergey пишет: Ошибка "FXTFileMaker_Script_AD: количество баров в истории, предшествующее началу теста, недостаточно. Начнем с самого простого и очевидного варианта. У скрипта есть такой настроечный параметр как "Количество баров до начала тестирования". Его можно установить в 0 (используйте новую версию скрипта, в которой убрано ограничение на значение 0). В итоге Вы не будете зависеть от текущей имеющейся истории брокера.

Sergey: Спасибо! Переустановка скрипта помогла.

Scriptong: Sergey пишет: Спасибо! Переустановка скрипта помогла. Вчера долго пытался вспомнить, по какой такой причине я запретил устанавливать предысторию, равную нулю. Для этого специально проверил, может ли быть создан подобный FXT-файл. Оказалось, что можно создавать файл тестера без предыстории. То есть я просто не рассмотрел такую возможность при создании скрипта. В итоге код скрипта похудел на 4 строки.



полная версия страницы