Идея коротко
Лонг открывается, когда цена обновляет максимум последних четырёх недель (20 дневных баров). Стоп и выход одновременно: пробой минимума последних двух недель (10 баров). Больше правил нет. Brent Penfold называет это системой черепах и подчёркивает родословную: черепахи учились в 1983 году, а сама идея опирается на правило четырёх недель Richard Donchian из 1960-х.
Penfold не предлагает торговать её как есть. Он предлагает держать её эталоном. Любая своя трендовая система должна обогнать черепах на том же портфеле и периоде. По его словам, большинство разработчиков, если честны с собой, этого не могут.
Kevin Davey приводит почти ту же конструкцию как пример простоты: пробой максимума 20 баров в лонг, пробой минимума в шорт, без фильтров. Это вариант B.
Почему это может работать
Penfold объясняет живучесть системы тем, что под поверхностью рынки не меняются. Меняются названия кризисов и технологии, а цикл остаётся прежним: спокойные периоды с узкими диапазонами сменяются нервными с широкими. Пробой четырёхнедельного максимума ловит выход из спокойной фазы в направленную. Правило, опубликованное 60 лет назад, само по себе даёт длинный отрезок вне выборки, и это аргумент против подгонки.
Второй довод касается эффективности. На один контракт пересечение средних 50/200 даёт более гладкую кривую и больше денег. Но его стоп огромен, и при фиксированном риске на сделку позиция получается маленькой. У черепах стоп по двухнедельному минимуму заметно ближе, и при том же риске в деньгах можно взять в несколько раз больше контрактов. Когда тренд пошёл, выигрыш растёт пропорционально. Поэтому сравнивать системы автор предлагает с учётом управления капиталом, а не по кривой на один контракт.
Davey добавляет честную сторону. Простой пробой может зарабатывать на разных рынках, но по дороге много боли: большинство пробоев ложные. Желание отфильтровать их приводит к идеальному бэктесту на прошлом и к переподгонке. Он выбирает простую систему и живёт с её просадками.
Правила
Основная система: черепахи 20/10 (автор)
// дневные бары, каждый рынок отдельно
Entry20 = максимум High за 20 последних закрытых баров // автор: 4 недели
Exit10 = минимум Low за 10 последних закрытых баров // автор: 2 недели
// Finetiq: 4 недели = 20 баров, 2 недели = 10 баров. Уровни пересчитываются на закрытии каждого бара
IF position = FLAT
BUY STOP at Entry20 // автор: пробой 4-недельного максимума
IF position = LONG
SELL STOP at Exit10 // автор: стоп и выход, отдельной цели нет
// стоп подтягивается сам: 10-барный минимум растёт вместе с ценой
// шорт зеркально
ShortEntry20 = минимум Low за 20 последних закрытых баров
ShortExit10 = максимум High за 10 последних закрытых баров
IF position = FLAT
SELL SHORT STOP at ShortEntry20 // Finetiq: в видео проговорён пример лонга
IF position = SHORT
BUY STOP at ShortExit10 // Finetiq
// Finetiq: после выхода новый вход только по новому пробою 20-барного канала
Размер позиции (логика автора, процент Finetiq)
// автор: риск в деньгах одинаков, число контрактов задаёт расстояние до стопа
RiskMoney = Equity * 0.5% // Finetiq: в примере автора просто $100
StopDistance = Entry20 - Exit10 // для лонга, на момент входа
Contracts = floor(RiskMoney / (StopDistance * PointValue))
// пример автора: риск $100 при стопе $25 на контракт = 4 контракта
// автор: одинаковый риск на каждый рынок портфеля
Вариант B. Davey: пробой 20 баров без фильтров
// таймфрейм автор не назвал. Сам Davey торгует фьючерсы, в том числе на 1440-минутных барах
Upper = максимум High за 20 последних закрытых баров
Lower = минимум Low за 20 последних закрытых баров
BUY STOP at Upper // автор: пробой вверх, лонг
SELL SHORT STOP at Lower // автор: пробой вниз, шорт
// Finetiq: выход автор не назвал. Противоположный пробой переворачивает позицию
// фильтров ложных пробоев нет сознательно (автор)
Параметры
| Параметр | Значение | Откуда |
|---|---|---|
| Вход | пробой максимума 4 недель (20 баров) | автор |
| Стоп и выход | пробой минимума 2 недель (10 баров) | автор |
| Цель | нет | автор |
| Шорт | зеркально | Finetiq |
| Портфель для сравнения | диверсифицированные фьючерсы, у автора P24 | автор |
| Риск на сделку | одинаковый в деньгах, число контрактов по стопу | автор |
| Процент риска | 0.5% капитала | Finetiq |
| Вариант B: вход | пробой 20 баров в обе стороны | автор |
| Вариант B: выход | переворот на противоположном пробое | Finetiq |
| Вариант B: фильтры | нет | автор |
Что проверить
- Эталон для своих систем. Прогоните 20/10 на своём наборе рынков и периоде с теми же издержками, что и свою стратегию. Сравнивайте при одинаковом риске на сделку, а не кривые на один контракт. Это главный совет автора.
- Опыт с 50/200. Повторите сравнение Penfold: пересечение SMA 50 и 200 против 20/10 на одном портфеле. Сначала по одному контракту, затем с одинаковым риском в деньгах. Автор утверждает, что победитель при этом меняется.
- Окрестность длин. Вход 15, 20, 30, 40 баров, выход 5, 10, 15, 20 баров. Название сайта 40in20out.com, который упоминает автор, указывает на пару 40/20 (прочтение Finetiq). Сравните её с 20/10.
- Лонг и шорт отдельно. На фондовых индексах шортовая сторона может отнимать результат. Разделите статистику по направлениям и по секторам.
- Выход по 10 барам против переворота. Основная система против варианта B. Ближний стоп даёт больше контрактов при том же риске, но и больше выбиваний перед продолжением тренда.
- Один фильтр по правилам Davey. Добавьте один фильтр ложных пробоев, подберите его на первой половине истории и проверьте только на второй. Если на второй половине фильтр не помогает, Davey прав.
- Вид дневного бара. Для фьючерсов в TradeStation сравните settlement-бары и 1440-минутные на одном периоде. Davey показывает, что пробои на них срабатывают в разные дни.
Особенности платформ
TradingView (Pine Script)
ta.highest(high, 20), посчитанный на закрытии бара, уже включает этот бар. Для стоп-ордера на следующий бар это правильный уровень. Сдвиг[1]нужен только при сравнении сhighтекущего бара, иначе канал отстаёт на день.- Выход:
strategy.exit("X", "L", stop = ta.lowest(low, 10)). Уровень пересчитывается на каждом баре, стоп подтягивается сам. - Без позиции висят два стоп-ордера, в лонг и в шорт. На широком баре могут сработать оба, порядок тестер не знает. Включите
use_bar_magnifier = true(платные планы) или проверьте такие дни отдельно. - Размер из риска считайте сами:
strategy.equity, расстояние до стопа и стоимость пунктаsyminfo.pointvalue.
MultiCharts и TradeStation (EasyLanguage)
Buy next bar at Highest(High, 20) stop: на закрытии бараHighestвключает текущий бар, для ордера на следующий бар это верно. Ордер живёт один бар, отправляйте его на каждом баре.- Выход задавайте ценой:
Sell next bar at Lowest(Low, 10) stop.SetStopLossработает в деньгах и не подтягивается за 10-барным минимумом. - Kevin Davey в этом же выпуске: у фьючерсов в TradeStation дневной бар закрывается по settlement, 1440-минутный по последней сделке. Пробой может появиться на одном и не появиться на другом, а после прихода settlement сделка в истории может исчезнуть. Бэктест и торговлю ведите на одном виде бара.
- Портфель вроде P24 тестируется в Portfolio Trader (MultiCharts) или Portfolio Maestro (TradeStation).
MetaTrader 5 (MQL5)
- На новом дневном баре закрыты бары с индексом 1 и дальше. Уровень входа:
iHighпо индексу изiHighest(_Symbol, PERIOD_D1, MODE_HIGH, 20, 1). ОтложенныеBuyStopиSellStopчерезCTradeпересчитывайте раз в день. - У части брокеров есть короткие воскресные бары. Они сдвигают окно: 20 баров перестают быть четырьмя неделями.
- Стоп задаётся ценой. У CFD на индексы
_Pointне равен пункту индекса, расстояние до 10-барного минимума берите в цене. - Лот из риска:
SYMBOL_TRADE_TICK_VALUE,SYMBOL_TRADE_TICK_SIZE, округление доSYMBOL_VOLUME_STEP. На небольшом счёте округление вниз часто даёт ноль лотов на рынках с широким стопом, и часть сигналов пропадает.
Где идея может сломаться
- Цифры автора получены на его портфеле P24 и его данных. Без того же набора рынков и периода их не повторить.
- Сравнение $1.7 млн и $1.4 млн сделано на один контракт. Превосходство черепах при одинаковом риске автор объясняет логикой примера, итоговых цифр такого сравнения в видео нет.
- Кривая у системы тяжёлая, это признают оба автора. Длинные серии мелких убытков на ложных пробоях неизбежны.
- На одном рынке 20/10 даёт немного сделок в год. Статистика появляется только на портфеле из десятков рынков.
- Шортовая сторона, процент риска и выход в варианте B заданы нами.
- В названии выпуска фигурируют 30% годовых. Это вопрос ведущего к теме, а не заявленный результат этой системы.