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

Стратегии

Спотовая корзина крупнейших криптоактивов с целевой волатильностью, только длинные позиции (4 BINANCE_SPOT активов: BTC/ETH/SOL/BNB, дневные бары, удерживать равновзвешенную корзину активов выше их долгосрочного тренда, но масштабировать SCALE TOTAL DEPLOYED EXPOSURE обратно пропорционально реализованной волатильности портфеля, чтобы достичь постоянной целевой волатильности; низкий оборот, 3 параметров)

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

SpotVolatilityTargetedMajorsBasketLong

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

Стратегия пыталась перенести премию Moreira-Muir от управления волатильностью в фабрику стратегий: удерживать растущие крупные активы, одновременно масштабируя общую экспозицию обратно пропорционально реализованной волатильности, чтобы поддерживать постоянную волатильность. Но бэктест оказался внутренне искажён: физически невозможная общая доходность +8,697%, однодневный рост выше 240% и колебания капитала 26-29x на счёте в $100k — при отрицательном фактическом преимуществе (коэффициент Шарпа -0.087, avg_trade_return_pct -0.785%). В итерации 2 был переработан учёт выхода после флага QA, однако результат оказался ещё более ошибочным, а расчёт размера позиции и ребалансировка явно приводили к чрезмерному вложению и неверному начислению сложного дохода. Аналитик отказался от стратегии при проверке бэктеста: дефект учёта сделал ряд ненадёжным, оптимизация лишь подогнала бы параметры под артефакты, а уже отклонённая родственная корзина подтвердила, что семейство стратегий с управлением волатильностью для крупных активов снижает активную доходность.

Гипотеза

Корзина LONG-ONLY криптовалютных мейджоров SPOT (BTC/ETH/SOL/BNB); её преимущество заключается NOT в направленном сигнале, а в PORTFOLIO VOLATILITY MANAGEMENT — документированной премии портфеля с управлением волатильностью Moreira—Muir, которую на этой фабрике ещё не проверяли. Механизм: удерживать равновзвешенную долю крупнейших активов выше долгосрочного тренда, но масштабировать вложенную долю TOTAL обратно пропорционально недавней реализованной волатильности корзины, чтобы поддерживать постоянную……Показать большеСвернуть

Корзина LONG-ONLY криптовалютных мейджоров SPOT (BTC/ETH/SOL/BNB); её преимущество заключается NOT в направленном сигнале, а в PORTFOLIO VOLATILITY MANAGEMENT — документированной премии портфеля с управлением волатильностью Moreira—Muir, которую на этой фабрике ещё не проверяли. Механизм: удерживать равновзвешенную долю крупнейших активов выше долгосрочного тренда, но масштабировать вложенную долю TOTAL обратно пропорционально недавней реализованной волатильности корзины, чтобы поддерживать постоянную волатильность портфеля. Реализованная волатильность сохраняется во времени, а периоды высокой волатильности криптоактивов систематически дают худшую доходность с поправкой на риск (волатильность группируется, а просадки случаются при высокой волатильности). Сокращение экспозиции при высокой волатильности и её увеличение при низкой повышает Sharpe и резко снижает просадку относительно пассивного владения — это преимущество не зависит от направления цены. По структуре стратегия намеренно отличается от всех исчерпанных семейств и стратегий в разработке: NOT не стратегия на ослабление тренда или разворот (нет торговли против движения; стратегии на ослабление тренда, разворот, премию и OI-сжатие теряли деньги); NOT не триггер редкого события (экспозиция — непрерывное состояние, что позволяет избежать гибели no_trades); NOT не ротация RANK между активами (нет ранжирования доходности и выбора лидеров K; удерживаются ALL активы с трендом — исчерпанный механизм L32 отсутствует); NOT не стратегия на доходность от финансирования (L33); NOT не опционы (нет ограничения на число сделок); NOT не корзина для возврата после глубокого падения, параметры которой только что переобучили (IS 8.3 → OOS -2.64; здесь нет входа на возврате, под который можно подгонять кривую: настраиваются только целевая волатильность и два периода расчёта). Спотовая стратегия только с длинными позициями (CASH) структурно защищена от убытков из-за чрезмерного плеча. Она заполняет недостаточно представленный рынок BINANCE_SPOT и почти пустую категорию макроэкономических стратегий с длинным горизонтом; низкий оборот (еженедельная ребалансировка и диапазон без сделок) делает около 0.20% сделок туда и обратно несущественными.

Устраняет две требующие действий проблемы, найденные на уровне Layer-4, с минимальными изменениями, сохраняя логику масштабирования по волатильности, прошедшую предыдущие уровни. (1) Подозрительный участок исполнения и учёта на выходе, отмеченный флагом QA, исправлен: актив, покидающий набор (цель 0), теперь закрывается через _submit_exit_position (закрытие только на уменьшение позиции), что правильно учитывает сокращение и высвобождает CASH перед циклом покупок, вместо SELL, направлявшегося через……Показать большеСвернуть

Устраняет две требующие действий проблемы, найденные на уровне Layer-4, с минимальными изменениями, сохраняя логику масштабирования по волатильности, прошедшую предыдущие уровни. (1) Подозрительный участок исполнения и учёта на выходе, отмеченный флагом QA, исправлен: актив, покидающий набор (цель 0), теперь закрывается через _submit_exit_position (закрытие только на уменьшение позиции), что правильно учитывает сокращение и высвобождает CASH перед циклом покупок, вместо SELL, направлявшегося через _submit_entry_instrument; частичная фиксация позиции по волатильности остаётся ограниченной продажей SELL, которая только сокращает длинную позицию. (2) Проблема неизмеримого или почти не проявляющегося преимущества (всего 6 сделок, поскольку фильтр SMA(100) почти на всё окно оставлял корзину в денежных средствах, поэтому среди закрытых сделок были только убыточные сделки при сломе тренда, а прибыльные оставались открытыми) устранена сокращением trend_len 100->50 (корзина инвестирована значительно большую часть окна, поэтому еженедельная ребалансировка по обратной волатильности действительно торгует и проверка наложения управления волатильностью Moreira-Muir проводится на практике) и ужесточением rebalance_band 0.15->0.10 (больше еженедельных изменений размера позиции по волатильности и пересечений порога допуска проходят фильтр). Вместе эти изменения увеличивают число сделок до уровня, пригодного для измерений, по четырём активам и примерно 50 еженедельным ребалансировкам. Формула размещения средств с обратной зависимостью от волатильности, фильтр тренда для каждого актива, учёт по фактической стоимости портфеля true-NAV, порядок SELLS/закрытия перед BUYS и расчёт размера длинных позиций CASH (валовая экспозиция <= 0.95x, кредитное плечо 1.0) не менялись, поэтому уровни 1-3 по-прежнему пройдены, а импорт работает без ошибок. Я признаю более глубокое замечание QA: подход, основанный только на OHLCV с фильтром SMA, имеет низкую вероятность выживания, а наложение управления волатильностью не может создать положительное математическое ожидание у корзины, удерживаемой по тренду, в период падения. Это заложено в исходную гипотезу о премии от управления волатильностью, не зависящей от направления, и исправить это нельзя, не отказавшись от гипотезы или не добавив поток данных, что выходит за рамки итерации с минимальными изменениями. Эти исправления обеспечивают корректное исполнение и измерение стратегии, чтобы аналитик мог оценить премию на надёжном бэктесте с достаточной выборкой, а не по артефакту с 6 сделками.\n

Бэктесту нельзя доверять: данные капитала и учёта искажены. total_return +8,697% (87x) невозможны для спотовой корзины без плеча и только с длинными позициями (<=1x), а дневная доходность +241% (2021-05-20), +158% (2019-07-04), +88.7% и +84.3% физически невозможна для портфеля только с длинными позициями и плечом не выше 0.95x; avg_win $426k / largest_loss -$2.9M на счёте в $100k (26-29x колебания капитала) плюс оборот 635 (при заявленной еженедельной ребалансировке с низким оборотом) показывают, что расчёт……Показать большеСвернуть

Бэктесту нельзя доверять: данные капитала и учёта искажены. total_return +8,697% (87x) невозможны для спотовой корзины без плеча и только с длинными позициями (<=1x), а дневная доходность +241% (2021-05-20), +158% (2019-07-04), +88.7% и +84.3% физически невозможна для портфеля только с длинными позициями и плечом не выше 0.95x; avg_win $426k / largest_loss -$2.9M на счёте в $100k (26-29x колебания капитала) плюс оборот 635 (при заявленной еженедельной ребалансировке с низким оборотом) показывают, что расчёт размера позиции и ребалансировка задействуют слишком большой объём средств и неверно учитывают сложный процент. Внутреннее противоречие это подтверждает: итоговый показатель +8,697%, но Sharpe -0.087, avg_trade_return_pct -0.785% (отрицательный), information_ratio -0.21, PSR 0.375; значит, в этом артефакте реального преимущества нет (асимметрия -4.5, эксцесс 67.7, max_dd CI высокий, около 100%). Я отмечаю симптом, не утверждая, что точно выявил непроверенную причину сбоя. Это уже итерация 2: разработчик переделал учёт выходов после пометки QA «подозрение на ошибку учёта», и результат стал ещё хуже; оптимизация искажённого ряда лишь подогнала бы параметры под артефакты. Родственное семейство тоже исчерпано: родственную стратегию VolatilityManagedLongMajorsBasketDaily забросили в этой сессии при IR -0.60 и альфе около 0 относительно корзины (управление волатильностью корзины длинных позиций по крупнейшим криптоактивам даёт отрицательную активную доходность); здесь бета 0.51 / benchmark_correlation 0.70 и отрицательная альфа после наложения фильтра указывают на то же. Оптимизация vol_target/trend_len/vol_lookback не исправит ошибку расчёта размера позиции или учёта и не создаст преимущество, которого структурно нет у этого семейства. Отказаться.

Реализация

Корзина спотовых активов с управлением волатильностью, только длинные позиции, низкий оборот; четыре крупнейших актива Binance SPOT (BTC/ETH/SOL/BNB), дневные бары, чистая OHLCV. При еженедельной ребалансировке удерживается равновзвешенная доля активов выше их SMA(trend_len=50); вложенная доля капитала TOTAL масштабируется обратно пропорционально реализованной волатильности корзины для достижения постоянной целевой волатильности: вложенная доля = min(vol_target=0.60 / annualized_basket_vol_over_vol_lookback=30d,……Показать большеСвернуть

Корзина спотовых активов с управлением волатильностью, только длинные позиции, низкий оборот; четыре крупнейших актива Binance SPOT (BTC/ETH/SOL/BNB), дневные бары, чистая OHLCV. При еженедельной ребалансировке удерживается равновзвешенная доля активов выше их SMA(trend_len=50); вложенная доля капитала TOTAL масштабируется обратно пропорционально реализованной волатильности корзины для достижения постоянной целевой волатильности: вложенная доля = min(vol_target=0.60 / annualized_basket_vol_over_vol_lookback=30d, gross_exposure=0.95). Целевая доля каждого допустимого актива равна вложенной доле, делённой на n_eligible; активы без тренда переводятся в денежные средства. Ребалансировка доводит позиции до целевого уровня с полосой отсутствия сделок 10%: позиции закрываются полностью в режиме reduce-only через _submit_exit_position, частичное сокращение из-за волатильности ограничивается объёмом SELL, затем покупки доводят позицию до цели. Целевые значения рассчитываются как доли фактического капитала CASH, поэтому общая вложенная доля не превышает 0.95x (без плеча). Настроено 3 параметров (vol_target, trend_len, vol_lookback).

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

Проверка не пройдена (уровень 4 — проверка QA): - Песочница показывает признаки дефекта кода, который фабрика неоднократно ошибочно принимает за отсутствие преимущества: win_rate = 0.0 AND profit_factor = 0.0 (все 6 закрытые сделки убыточны, валовая прибыль ровно ноль), Sharpe -1.94, total_return -33.3% == max_drawdown. При проверке направленность масштабирования указана верно (вложенная доля, обратная волатильности = min(vol_target/basket_vol, валовая экспозиция); трендовый фильтр close>SMA; сокращение длинной……Показать большеСвернуть

Проверка не пройдена (уровень 4 — проверка QA): - Песочница показывает признаки дефекта кода, который фабрика неоднократно ошибочно принимает за отсутствие преимущества: win_rate = 0.0 AND profit_factor = 0.0 (все 6 закрытые сделки убыточны, валовая прибыль ровно ноль), Sharpe -1.94, total_return -33.3% == max_drawdown. При проверке направленность масштабирования указана верно (вложенная доля, обратная волатильности = min(vol_target/basket_vol, валовая экспозиция); трендовый фильтр close>SMA; сокращение длинной позиции ограничено её текущим объёмом), поэтому вероятная оставшаяся проблема — путь EXECUTION/ACCOUNTING. Возможны две причины: (1) для сокращения позиции отправляются SELL через _submit_entry_instrument(OrderSide.SELL), а не _submit_exit_position — проверь, действительно ли это уменьшает длинную позицию на CASH и не отклоняется ли ордер либо неверно ли учитывается; (2) цикл BUY пересчитывает _held_qty после отправки SELL, но исполнение в пределах on_bar не происходит синхронно, поэтому размеры покупок рассчитываются исходя из капитала, который ожидающие исполнения продажи ещё не высвободили. PF ровно 0.0, и если каждая сделка убыточна, это нужно диагностировать как ошибку, а не переводить дальше как проблему комиссий или отсутствия преимущества. - Не поддаётся измерению: 6 сделок за 363 дней — примерно на порядок ниже порога около 100 сделок, поэтому значения win_rate/PF/Sharpe не несут информации. Еженедельная ребалансировка 4 активов должна дать около 200 событий ребалансировки, но дала 6 сделок: стратегия почти всё время оставалась в денежных средствах (SMA(100) фильтр срабатывал редко). Это объясняет корреляцию с эталоном 0.11, несмотря на экспозицию в рынке 76%, и означает, что преимущество управления волатильностью почти не проверялось. - Чистый механизм OHLCV (SMA трендовый фильтр и масштабирование по реализованной волатильности, без направленного преимущества). У чистой OHLCV выживаемость 0% на протяжении 213 предыдущих запусков; стратегии с трендовыми фильтрами SMA неоднократно забрасывали. Фильтр волатильности не зависит от направления и не может создать положительное математическое ожидание, если его нет у корзины, удерживаемой по тренду; результат опровергает гипотезу о снижении просадки (33% просадка).

Аналитику следует ABANDON на этапе backtest_review, а не оптимизировать: параметры не могут изменить отрицательное математическое ожидание. Дальнейшая итерация разработчика не оправдана.

STRONG ABANDON RECOMMENDATION (это не сбой кода QA). После исправления исполнения и проверки преимущества результат в песочнице однозначно отрицательный и WORSE, чем в итерации -1: total_return -38.87%, Sharpe -1.15, PF 0.126, win_rate 0.19, avg_trade_return_pct -5.63%, max_drawdown 46.78%, largest_loss -$13,469 на протяжении 21 сделок с длинными позициями. Исправление учёта ухудшило результат и CONFIRMS показало, что все убыточные сделки в итерации -1 — не артефакт учёта, а нежизнеспособный механизм. Результат также опровергает гипотезу о снижении просадки. Разработчик признаёт, что фильтр волатильности не может создать положительное математическое ожидание у удерживаемой по тренду корзины в период падения.

Откажитесь от формулировки о чистом OHLCV; не подбирайте параметры итерациями.

Чистый механизм OHLCV (трендовый фильтр SMA и масштабирование по волатильности, без направленного преимущества). У чистой OHLCV выживаемость 0% на протяжении 213 предыдущих запусков; фильтр волатильности не зависит от направления и не может создать положительное математическое ожидание там, где его нет у корзины, удерживаемой по тренду.

Неактуально после отказа от стратегии; если к итерации когда-либо вернутся, использовать чистые целевые изменения позиции или отложить покупки на один бар.

Сделок 21 — меньше минимального порога около 100, но достаточно, чтобы получить однозначно отрицательный результат (PF 0.126, 46.8% DD — не шум). Небольшой остаточный нюанс: цикл BUY пересчитывает _held_qty до исполнения SELL и закрытий на том же баре (несинхронно), поэтому размер покупок может рассчитываться с учётом ещё не высвобождённого CASH, и часть ордеров может быть отклонена. Это может привести к недостаточному использованию капитала, но не влияет на отрицательный вывод.

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

Шарп
-0,09
Общая доходность
8697,90%
Максимальная просадка
67,40%
Всего сделок
144
Доля прибыльных
43,1%
Профит-фактор
1,47

Формулировка как новизны для этой фабрики (премия за управление волатильностью Moreira-Muir); флага ликвидации нет.

Искажённый ряд капитала: total_return +8,697% (87x) невозможны для спотовой корзины только с длинными позициями и без кредитного плеча (<= 1x); однодневная доходность +241%, +158%, +88.7% физически невозможна.

avg_win $426k / largest_loss -$2.9M на счёте в $100k (26-29x колебания капитала) и оборот 635 противоречат замыслу еженедельной ребалансировки с низким оборотом: расчёт размера позиций и ребалансировка задействуют слишком большой объём средств и неверно учитывают сложный процент.

Внутреннее противоречие: итоговый показатель +8,697%, но Sharpe -0.087, avg_trade_return_pct -0.785% (NEGATIVE), information_ratio -0.21, PSR 0.375; в этом артефакте реального преимущества нет.

Итерация 2: переработка учёта выхода (QA «подозрение на ошибку учёта») не помогла; результат теперь ещё более неисправен.

Семейство уже бесперспективно: родственная стратегия VolatilityManagedLongMajorsBasketDaily была заброшена в этой сессии с IR -0.60 / альфой около 0 относительно своей корзины.

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

Фантастическая доходность в заголовке — тревожный сигнал, а не успех. Проверь капитал на соответствие ограничениям по плечу: портфель только с длинными позициями и без плеча не может принести доходность 87x или показать однодневный прирост +241%. Не продолжай итерации механизма, родственная стратегия которого уже показала отсутствие преимущества у всего семейства; сначала исправь искажённый расчёт учёта и размера позиций — до этого нельзя доверять ни одной метрике.

Аналитик отказался от стратегии на этапе проверки бэктеста до оптимизации: данные капитала и учёта были искажены, расчёт размера позиций и ребалансировка задействовали слишком большой объём средств и неверно учитывали сложный процент. Переделка учёта выходов в итерации 2, выполненная после пометки QA «подозрение на ошибку учёта», усугубила проблему. Родственную стратегию VolatilityManagedLongMajorsBasketDaily уже забросили в этой сессии при IR -0.60 и альфе около 0, что указывает на структурное отсутствие преимущества у всего семейства.

Корзина спотовых активов только с длинными позициями из четырёх крупных активов BINANCE_SPOT (BTC/ETH/SOL/BNB), применявшая премию Moreira-Muir за управление волатильностью: удерживалась доля активов с равными весами выше их долгосрочного тренда, а совокупная задействованная экспозиция масштабировалась обратно пропорционально реализованной волатильности корзины для достижения постоянной целевой волатильности; направленный сигнал не использовался.

Бэктест искажён, ему нельзя доверять: невозможная общая доходность +8,697% для портфеля только с длинными позициями без плеча (<= 1x), физически невозможная дневная доходность (+241%, +158%, +88.7%), средняя прибыль $426k и максимальный убыток -$2.9M на счёте в $100k, а также оборот 635, который противоречит замыслу с низким оборотом. При этом реальное преимущество отрицательное: Sharpe -0.087, avg_trade_return_pct -0.785%, информационное отношение -0.21.

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