Перейти к содержимому
Все стратегии

Стратегии

FengkieJ Jesse SMACrossover: LTC Hyperliquid 4H, фиксированная лонг-шорт стратегия SMA50/200

Итог: Отменено

FengkieJLtcHyperliquidSmaRelationship

Сводка по итогам

После четырёх итераций точный лонг-шорт перенос SMA50/200 прошёл к проверке бэктеста с исправленным отклонением размера позиции и сверенным учётом. Его 41 закрытых позиций дали доходность -89.68%, коэффициент Шарпа -0.966 и максимальную просадку 93.39%. Проверку прекратили, поскольку убытки сохранялись до учёта комиссий и смоделированного влияния на цену, а фиксированный контракт исходной стратегии не имел параметров для оптимизации. До этапов оптимизации и последующей проверки не дошли.

Гипотеза

Точный перенос SMACrossover из Jesse от FengkieJ по лицензии MIT: https://github.com/jesse-ai/example-strategies/blob/7c91e0a37bf62165790120d730442e4f6eb00364/SMACrossover/__init__.py. Сохрани простые скользящие средние цены закрытия за 50 и 200 баров и строгие неравенства. Несмотря на термин «пересечение», код проверяет текущее соотношение SMA, а не событие пересечения. В источнике не указаны ни инструмент, ни таймфрейм; для этого платформенного эксперимента выбраны LTCUSD.HYPERLIQUID и завершённые бары 4-HOUR. Преобразуй исходные входы по self.price в рыночные ордера по цене закрытия сигнального бара. Сохрани расчёт размера позиции от всего баланса за вычетом комиссий при экспозиции 1x и выход только при противоположном соотношении SMA. Не добавляй стоп-лосс, цель, трейлинг-стоп, фильтр финансирования или временной стоп. Все приведённые ниже ожидания по результатам — непроверенные прогнозы.

Предоставленный код задаёт конкретную стратегию, которую стоит проверить без отклонений от исходника, несмотря на насыщенность общего семейства стратегий следования за трендом. Hyperliquid представлен недостаточно: 10.3% при целевом значении 20%; правило лонг-шорт решает проблему концентрации портфеля исключительно в длинных позициях 80.8%. LTC позволяет избежать ещё одного эксперимента BTC; предоставленное значение corpus_concentration пусто, поэтому долю этого актива в истории отдельно установить нельзя. Четырёхчасовые бары дают существенно больше исторических данных Hyperliquid, чем бары короче часа. Сохраняется область применения к одному инструменту, поскольку добавление корзины активов или хеджа изменило бы исходную стратегию.

В этом фиксированном лонг-шорт переносе SMA50/200 на LTC Hyperliquid с таймфреймом 4H измерено отрицательное ожидание. Оптимизацию отклонить: убытки сохраняются до учёта комиссий и влияния на цену, а не из-за одной лишь просадки или прогнозируемого статистического провала. Вердикт относится к выбранным платформой инструменту и таймфрейму, а не ко всем применениям исходной стратегии FengkieJ.

Реализация

Точно перенесённая стратегия соотношения SMA50/200 для завершённых LTC Hyperliquid 4-часовых баров: открывай лонг, когда SMA50 выше SMA200, шорт — когда ниже, и выходи только при противоположном соотношении. Используй весь доступный баланс за вычетом комиссий при экспозиции 1x, без стопов и целей.

Минимальное исправление для previous_code накапливает last_qty.as_decimal() с арифметикой Decimal, хранит точное количество в строковом скалярном значении, сохраняемом при перезапуске, и сверяет его с точными кэшированными количествами при закрытии позиции, обнуляя экспозицию при полном закрытии. Это не позволяет остаткам округления при частичных исполнениях блокировать новые входы или начислять фиктивное финансирование. Расчёт SMA, строгие неравенства, последовательность ордеров и экономика размера позиции остаются без изменений. Одной убыточной сделки в песочнице недостаточно, чтобы отказаться от механизма. За проверку отвечает конвейер. Запрошенный файл outbox не удалось записать из-за доступа к файловой системе только для чтения в этой сессии; полная связанная версия JSON возвращена напрямую.

Результаты верификации

Песочница сообщает о 41 закрытых сделках, средней чистой доходности сделки -4.91% и просадке 93.39%. Эти данные требуют анализа экономики на полной истории, но не доказывают дефект корректности. Комиссия Hyperliquid для тейкера за полный цикл сделки составляет 0.09%, без учёта влияния на цену и финансирования.

Обзор бэктеста

Шарп
-0,97
Общая доходность
-89,68%
Максимальная просадка
93,39%
Всего сделок
41
Доля прибыльных
19,5%
Профит-фактор
0,21

Закрытые позиции (41) чередуются между длинными и короткими при смене соотношения SMA; выборочные развороты совпадают с предоставленными прогнозами.

Заявленное плечо входа составляет 0.90–1.00, что подтверждает исправление ранее замеченного отклонения размера позиции; учёт сходится.

Средняя чистая доходность сделки составляет -4.906% при минимальном пороге проверки Hyperliquid +0.15%; PF равен 0.208, а общая доходность — -89.68%. Опасения QA относительно экономики стратегии подтвердились.

Суммарный ценовой PnL составляет -$77,863, а финансирование добавляет убыток -$11,812. Без комиссий и смоделированного влияния на цену ожидание всё равно не стало бы положительным.

Обе стороны и каждый указанный календарный год убыточны. Просадка — 93.39%; стратегия «купи и держи» дала доходность -25.05% при просадке 62.72%.

Точный исходный контракт фиксирует SMA50/200 и не предоставляет настраиваемых параметров, поэтому оптимизировать нечего.

Анализ

Сверяй номинал входа с доступным капиталом за вычетом затрат при каждом развороте. Учитывай комиссии, начисленное финансирование и смоделированное влияние на цену в реестре расчёта размера позиции, не допуская входов после исчерпания капитала. Выясни, почему помощник фреймворка для расчёта капитала допускает наблюдаемое отклонение экспозиции; точная причина не подтверждена независимо. Сохрани SMA50/200, строгие неравенства и выходы при противоположном соотношении. Перед оптимизацией повторно запусти исправленный зафиксированный базовый вариант.

История итераций

Проверка не пройдена (слой 1.5 — согласованность гипотезы и конфигурации) [класс=hypothesis_mismatch]: - optimization_plan задаёт bar_interval как 4-HOUR

Проверка не пройдена (слой 4 — проверка QA) [класс=code_defect]: - [edge_concern] В песочнице всего одна закрытая сделка, результат которой составляет -1.276% от номинала. Этого недостаточно для оценки прибыльности, и это не причина провала. - [критично] Реестр исполнений накапливает знаковые количества как числа с плавающей точкой в строках 103–106, но position_size требует, чтобы перед следующим входом реестр был точно равен нулю. После закрытия фактической позиции из-за округления при частичных исполнениях……Показать большеСвернуть

Проверка не пройдена (слой 4 — проверка QA) [класс=code_defect]: - [edge_concern] В песочнице всего одна закрытая сделка, результат которой составляет -1.276% от номинала. Этого недостаточно для оценки прибыльности, и это не причина провала. - [критично] Реестр исполнений накапливает знаковые количества как числа с плавающей точкой в строках 103–106, но position_size требует, чтобы перед следующим входом реестр был точно равен нулю. После закрытия фактической позиции из-за округления при частичных исполнениях может остаться ненулевой остаток: BUY 0.1, BUY 0.2, SELL 0.3 оставляет 5.551115123125783e-17. Тогда каждый следующий вход получает нулевой размер, хотя кэш показывает отсутствие позиции. Финансирование также продолжает начисляться на это фиктивное количество. Дефект подтверждается арифметически; метрики песочницы не позволяют установить, вызвал ли он результат с одной сделкой. (строка 156) — исправление: накапливай объёмы исполнений с помощью Decimal из last_qty.as_decimal(), сохраняя точность, соответствующую инструменту. Сверяй реестр с фактической позицией при её закрытии и при полном закрытии точно обнуляй его.

Накапливай объёмы исполнений с помощью Decimal из last_qty.as_decimal(), сохраняя точность, соответствующую инструменту. Сверяй реестр с фактической позицией при её закрытии и при полном закрытии точно обнуляй его.

Реестр исполнений накапливает знаковые количества как числа с плавающей точкой в строках 103–106, но position_size требует, чтобы перед следующим входом реестр был точно равен нулю. После закрытия фактической позиции из-за округления при частичных исполнениях может остаться ненулевой остаток: BUY 0.1, BUY 0.2, SELL 0.3 оставляет 5.551115123125783e-17. Тогда каждый следующий вход получает нулевой размер, хотя кэш показывает отсутствие позиции. Финансирование также продолжает начисляться на это фиктивное количество. Дефект подтверждается арифметически; метрики песочницы не позволяют установить, вызвал ли он результат с одной сделкой.

Сводка по итогам

Отрицательный результат относится к выбранной реализации на Hyperliquid для LTC с таймфреймом 4 час, а не ко всем применениям исходной стратегии.

Проверку бэктеста решили прекратить, поскольку отрицательное ожидание сохранялось даже до учёта комиссий и смоделированного влияния на цену. В точном переносе не было настраиваемых параметров, поэтому до оптимизации и последующих этапов проверки не дошли.

Перенеси фиксированные правила соотношения SMA50/200 из стратегии FengkieJ на LTC Hyperliquid 4-часовые бары; открывай лонг и шорт при экспозиции 1x и выходи только при противоположном соотношении SMA.

По итогам бэктеста получено -89.68% при коэффициенте Шарпа -0.966 на 41 закрытых позициях. Максимальная просадка составила 93.39%, фактор прибыли — 0.208, средняя чистая доходность сделки — -4.906%.

Анализ

SMACrossover

Stratmill — это инструмент для исследований и бумажной торговли, а не финансовая консультация или брокер. Результаты бэктестов и бумажной торговли являются гипотетическими. Торговля сопряжена с риском убытков.