Стратегии
Система Turtle Trading Decision (FMZ #443132 от ChaoZhang, Pine от 李和邪): точный перенос на дневные бары бессрочного контракта LTCUSDT.BINANCE, длинные и короткие позиции, пробои канала Дончиана за 20/10, стоп 2-ATR, пирамидинг 0.5-ATR максимум до 4 единиц
Итог: Отменено
LtcTurtleTradingDecisionSystemLS
Сводка по итогам
Эта стратегия — построчный перенос системы Turtle Trading Decision FMZ #443132 на дневные бары бессрочного контракта LTCUSDT. Сохранены параметры по умолчанию из источника и комиссия 0.05% за сторону. За время 3 итераций (последняя исправила только согласованность конфигурации Layer -1.5) проверка так и не была пройдена: дымовой тест песочницы Layer 3 превысил лимит в 300 с на временном интервале 2400 дней. Работу прекратили без метрик бэктеста; до этапов проверки бэктеста, оптимизации, анализа и оценки риска дело не дошло.
Гипотеза
Пользователь запросил точное описание скрипта Turtle FMZ, поэтому сохранены все правила и значения по умолчанию. Инструмент переводится с BTC (доля превышает 15%) и с ETC (EtcTurtleDonchianBreakoutLS уже в конвейере) на LTCUSDT.BINANCE, для которого в каталоге есть дневные данные с 2020-01-10. Выбран USD-M, а не HL или COIN-M, согласно L168/L172: сигнал основан только на цене, нужна длинная история, а обратного обеспечения следует избегать. Длинные и короткие позиции увеличивают долю недостаточно представленного класса long_short (15%). Оптимизация ограничена структурными параметрами самого источника, значения по умолчанию служат базой.
verification_loop: sandbox_timeout: проверка не пройдена (Layer 3 — бэктест в песочнице): дымовой тест превысил лимит реального времени в 300 с на временном интервале примерно в 20000 баров (2400 дней инструмента LTCUSDT.BINANCE-1-DAY-LAST-EXTERNAL). Обычно это означает, что объём работы на каждом баре растёт вместе с длиной истории — например, из-за повторного сканирования всего ряда ставок финансирования/дополнительных данных либо повторного создания списка и вызова min()/sorted() внутри calculate_signal()/on_bar() на каждом баре. Заранее вычисли отсортированные массивы временных меток ONCE в __init__ и используй bisect либо кэшируй результаты поиска по временной метке, чтобы стоимость обработки бара составляла O(log n), а не O(n).
Реализация
Точный дневной перенос системы принятия решений Turtle Trading FMZ/Pine на бессрочном контракте LTCUSDT.BINANCE. Стратегия открывает длинные и короткие позиции при пробое канала Дончиана за 20 дней; в режиме 1 она пропускает следующий пробой после прибыльной сделки. Выход — при пробое канала за 10 дней; начальный стоп — 2-ATR. При дальнейшем движении цены на 0.5 ATR стратегия добавляет одну единицу риска ATR, максимум 4 единиц, и переносит стоп к цене последнего добавления -/+ 2 ATR. Единица = капитал*2%/(2*ATR), общий номинал ограничен значением 0.95*капитал*плечо.
Итерация 3 исправляет только несоответствие Layer -1.5. Теперь каждый фиксированный ключ конфигурации исследования optimization_plan объявлен в параметрах с точным значением и типом по плану: плечо 3.0, max_units 4, atr_period 14, enter_mode, risk_per_trade 0.02, длины режима 2, pyramid_atr_multiple 0.5 и значения baseline_*. config.leverage = 3.0, а ограничение маржи получает плечо из parameters.leverage. Настраиваемые параметры entry_length, exit_length и initial_stop_atr_multiple остаются на исходных значениях (20/10/2.0), заданных по умолчанию в рамках своих диапазонов плана. Код не ограничивает их, поэтому _param_bounds не объявлены. Параметры сверены с src.optimization.domains.validate_domains. Торговая логика не отличается от версии, прошедшей Layers 1-2. Адаптация платформы: стоп Pine stop= в заявке на вход обрабатывается как стоп по пересечению на закрытии — crossunder/crossover, который скрипт уже проверяет; заявки исполняются рыночными ордерами по цене закрытия бара.
Результаты верификации
sandbox_timeout: проверка не пройдена (Layer 3 — бэктест в песочнице): дымовой тест превысил лимит реального времени в 300 с на временном интервале примерно в 20000 баров (2400 дней инструмента LTCUSDT.BINANCE-1-DAY-LAST-EXTERNAL). Обычно это означает, что объём работы на каждом баре растёт вместе с длиной истории — например, из-за повторного сканирования всего ряда ставок финансирования/дополнительных данных либо повторного создания списка и вызова min()/sorted() внутри calculate_signal()/on_bar() на каждом баре. Заранее вычисли отсортированные массивы временных меток ONCE в __init__ и используй bisect либо кэшируй результаты поиска по временной метке, чтобы стоимость обработки бара составляла O(log n), а не O(n).
История итераций
Проверка не пройдена (слой 1.5 — согласованность гипотезы и конфигурации) [класс=hypothesis_mismatch]: - optimization_plan фиксирует плечо на уровне 3.0
Сводка по итогам
Сократи работу на каждом баре до O(1) или O(log n), используя инкрементальное состояние индикаторов или заранее рассчитанные массивы, чтобы стратегия укладывалась в лимит времени песочницы до перехода к исправлению согласованности конфигурации в следующих итерациях.
Работу прекратили на этапе проверки после 3 итераций. Бэктест в песочнице Layer 3 превысил лимит реального времени в 300 с на временном интервале примерно в 20,000 баров (2400 дней, по LTCUSDT баров длительностью 1 дней), и запуск завершился со статусом verification_loop / sandbox_timeout. Этапы проверки бэктеста, анализа и оценки риска не запускались.
Точный перенос системы Turtle Trading Decision FMZ/Pine на дневные бары бессрочного контракта LTCUSDT.BINANCE USD-M: длинные и короткие позиции при пробоях канала Дончиана за 20/10, начальный стоп 2-ATR, пирамидинг 0.5-ATR максимум до 4 единиц и риск 2% на сделку.
Данных о результатах нет. Стратегия не прошла бэктест (отчёт о бэктесте пуст, отчёта об оптимизации нет), поэтому отсутствуют показатели доходности, Шарпа и количество сделок.
Анализ
Система принятия торговых решений «Черепаха»|Система принятия торговых решений Turtle
Stratmill — это инструмент для исследований и бумажной торговли, а не финансовая консультация или брокер. Результаты бэктестов и бумажной торговли являются гипотетическими. Торговля сопряжена с риском убытков.