Пробои на основе цен закрытия





Тест 1. Система на основе пробоя канала. Используются только цены закрытия; вход по рыночной цене при открытии биржи на следующий день и стоимость сделок (комиссия, проскальзывание) не учитываются.
Правила системы таковы: Если текущая позиция короткая или нейтральная, а рынок поднимается выше максимальной цены закрытия за последние n дней, то при завтрашнем открытии следует покупать, или же, соответственно, Если текущая позиция длинная или нейтральная, а рынок опускается ниже минимальной цены закрытия за последние n дней, то при завтрашнем открытии следует продавать (открывать короткую позицию). У этой системы только один параметр — период n, количество анализируемых дней. Количество контрактов для покупки или продажи (ncontracts) было выбрано таким, чтобы для данного рынка сохранялась долларовая волатильность, примерно соответствующая двум новым контрактам S&P 500 на конец 1998 г.
Выходы производятся, когда случается пробой в направлении, противоположном текущей открытой позиции, или срабатывает стандартный выход (например, защитная остановка, целевая прибыль или выход по рыночной цене, если позиция была открыта дольше указанного количества дней). Защитная остановка определяется как входная цена плюс (для коротких) или минус (для длинных позиций) параметр mmstp, величина которого линейно зависит от размеров среднего истинного ценового диапазона последних 50 дней. Границы целевой прибыли представляют собой входную цену плюс (для длинных) или минус (для коротких позиций) еще один параметр — ptlim, также связанный с величиной среднего истинного диапазона последних 50 дней. Выход при закрытии (вид рыночного приказа) представляет собой приказ, который отдается, если позиция удерживалась определенное количество дней (maxhold). Все выходные приказы исполняются только при закрытии; это ограничение позволяет избежать исполнения приказа при случайном внутридневном движении цены. Если бы выходы осуществлялись внутри ценового бара (дня), то существовала бы возможность отдать несколько приказов в одном баре.
Моделирование такой ситуации невозможно, поскольку движение цен в пределаходного бара неизвестно, и, следовательно, порядок исполнения отданных приказов оказывается неопределенным.
Средний истинный диапазон (мера волатильности) рассчитывается как среднее значение истинного диапазона за несколько предыдущих дней (в данном случае 50 дней). Истинный диапазон представляет собой наибольшую из следующих трех величин: разность между максимальной и минимальной ценами за день, разность между максимумом и ценой закрытия предыдущего дня и разность между ценой закрытия предыдущего дня и минимальной ценой текущего дня.
Ниже приводится компьютерный код на C++ для системы пробоя канала по ценам закрытия со стандартной стратегией выхода. При расчете количества контрактов сплит S&P 500 отдельно не учитывался. Новый контракт считается идентичным предыдущему. Моделирование, тем не менее, корректно, если считать, что трейдер (а не симулятор) продает или покупает два новых контракта вместо одного старого: симулятор настроен так, что он продает вдвое меньше новых контрактов, чем следовало бы, но считает их размер удвоенным. На фьючерсных рынках иногда имеет место административная остановка торгов (запрет на дальнейший рост или падение цены), вызванная чрезмерным изменением цены, превышающим максимально допустимое изменение, установленное правилами данной торговой площадки. Наша программа определяет эти дни проверкой диапазона: нулевой диапазон (максимум равен минимуму) позволяет предположить малую ликвидность и, возможно, остановленные торги.
Хотя эта схема не идеальна, при ее использовании в моделировании получаются результаты, похожие на реальную торговлю. Сбор точной информации о днях с ограниченной торговлей со всех бирж — задача практически непосильная, поэтому мы использовали метод нулевого диапазона.


Содержание раздела