У нас есть данные из двух источников: FutureSource и Technical Tools. Наши данные Technical Tools поступили вместе с программным обеспечением для создания наших собственных продолжительных (или другого рода) контрактов. Если вы обладаете несколькими различными пакетами аналитического программного обеспечения, Quote Butler от Technical Tools является отличным способом перебрасывания данных из одного пакета в другой без необходимости покупать данные отдельно для каждого приложения. Мы давно не общались с другими поставщиками данных, но существует еще несколько надежных источников недорогих и достоверных данных.
Проскальзывания и комиссионные
Не доверяйте результатам тестирования, которые не включают некоторой свободы для проскальзываний и комиссионных. Эти составляющие очень существенно изменят ваши результаты. Множество торговых систем дают небольшой стабильный доход при тестировании без допуска на Проскальзывания и комиссионные и оказываются убыточными, когда включается стоимость трансакций. Это особенно верно для систем краткосрочной дневной торговли. Чем чаще торгует система, тем более важной становится стоимость трансакций.
Ярким примером являются недавние публикации в прессе. В статье описывался индикатор, который должен был откликаться на внутридневные повороты фьючерсов
на фондовые индексы. Несмотря на то, что объем торгов был большим, не было сделано скидки на стоимость трансакций. Мы подсчитали, что при учете очень небольших комиссионных и только редких проскальзываний, система будет в лучшем случае безубыточной, а в худшем - постоянно убыточной.
У каждого есть свои любимые числа для стоимости трансакций. Мы отводим $75 на проскальзывания и $50 на комиссионные за оборот контракта, что в общей сложности составляет $ 125 на торговлю. Эти цифры могут показаться высокими, но мы предпочитаем ошибаться в худшую сторону. Когда мы тестируем части торговой системы, мы можем умышленно закрыть глаза на проскальзывания и комиссионные для упрощения операций, но мы обязательно убедимся, что они участвуют в итоговом тестировании.
Типы тестирования *
Мы разъясним несколько наиболее общих схем оптимизации и тестирования.
Простая оптимизация
Она так же проста, как звучит. Вы создаете торговую систему, затем оптимизируете ее на полном объеме значений параметров до тех пор, пока не находите тот набор, который дает лучшую отдачу. С нашей точки зрения, это наименее продуктивный метод тестирования системы. Это подстраивание под кривую в своем худшем проявлении.
Совокупное опережающее тестирование
Это также называется "прогонной" оптимизацией. Совокупное опережающее тестирование требует, чтобы вы оптимизировали систему на периоде в начале ваших данных, а затем тестировали результаты на относительно небольшом последующем участке. Затем вы должны переоптимизировать на периоде, включающем оба набора данных, и повторить цикл. Например, если у вас есть 10-летние данные по казначейским обязательствам, вы могли бы оптимизировать на первых 3 годах, а затем тестировать на следующем за ними году. Если результаты все еще хороши, вы должны затем оптимизировать на всех четырех годах и тестировать на пятом году, и так далее. Это одна из форм оптимизации, которая была протестирована Лукасом и Брорсеном, и которую они нашли не лучшей, чем простая оптимизация (смотрите выше).
Простое опережаюшее тестирование *
Этот способ называют также "слепым моделированием" или "тестированием за пределами выборки". Вы разрабатываете вашу систему на начальных данных (скажем, первые 5 лет 10-летнего набора данных) и затем тестируете без изменения то, что вы считаете вашей лучшей комбинацией параметров и правил на более свежем временном периоде. Если результат не устраивает-процесс повторяется. Оптимизируете вы или нет в первой фазе тестирования, это не так важно, как удерживание количества переменных на небольшом уровне. Самое важное, что любая торговая система, подвергаемая простому тестированию или оптимизации без опережающего тестирования, скорее всего будет обречена на провал.
Опережающее тестирование является наиболее элегантным тестированием системы. Если ваша система не доказала свою прибыльность на процедуре опережающего тестирования, выбросьте ее.
Измерение производительности
Очевидной целью торговой системы является прибыльность. Сколько денег делает ваша модель? Другим способом вычисления этого фактора является процент отдачи, который является годовой отдачей, основанной на количестве средств, требуемых для торгового счета. Процент отдачи следует искать на всем периоде тестирования, а затем разбить его на небольшие отрезки для изолирования негативных периодов. Помните, что процент отдачи - это просто функция от объема используемого капитала. Вы можете удвоить процент отдачи, если начнете торговать только с половиной капитала, но систему вы при этом не улучшите. Вы можете улучшить систему, начав торговать с большим капиталом, но процент отдачи соответственно уменьшится. Несерьезные и бессмысленные торговые соревнования выигрываются путем получения большой отдачи при небольших размерах начального капитала. Эти переоцениваемые торговые соревнования дают в результате нежизнеспособные или наигранные исторические записи, что становится очевидным, когда мы наблюдаем низкую производительность товарных паевых фондов, управляемых некоторыми известными победителями подобных соревнований.
Читать дальше