Рассматривая области открытия позиции, можно заметить, что часто бывает, например, такая ситуация: цена закрытия пересекла сверху вниз верхнюю границу диапазона Боллинджера, была открыта «короткая» позиция, но далеко вниз цена не пошла, а развернулась и пошла вверх. Разумно было бы в этом случае закрыть «короткую» позицию. Аналогичные рассуждения можно привести и для «длинной» позиции.
Чтобы это учесть, введем в правила для закрытия позиции добавочные условия:
* «длинная» позиция закрывается и в том случае, когда цена закрытия пересекает нижнюю границу Боллинджера сверху вниз;
* «короткая» позиция закрывается и в том случае, когда цена закрытия пересекает верхнюю границу Боллинджера снизу вверх.
В MetaStock эти правила открытия и закрытия позиций записываются так.
Enter Long: Cross(C, BBandBot(C, opt1, S, opt2))
Close Long: Cross(BBandTop(C, opt1, S, opt2),C) or
Cross(BBandBot(C, opt1, S, opt2),C)
Enter Short: Cross(BbandTop(C, opt1, S, opt2),C)
Close Short: Cross(C, BbandBot(C, opt1, S, opt2)) or
Cross(C, BBandTop(C, opt1, S, opt2))
Обратите внимание, что в этом случае торговая система уже не будет оборотной, так как, например, правила закрытия «короткой» позиции не совпадают с правилами открытия «длинной» позиции.
Мы не будем приводить результаты тестирования этого и других вариантов торговой системы, предоставляя это Вам в качестве упражнения.