Чому бектест торгової стратегії бреше: 5 пасток, які я знайшов у себе

Опубліковано

Красивий бектест — не доказ, а гіпотеза. За кілька років роботи з власною системою алгоритмічної торгівлі я знаходив пастки, через які тест показував прибуток, а реальність — ні. Ось п’ять, про які рідко говорять, і чекліст, яким я тепер перевіряю кожен результат.

Важливо. Стаття має освітній характер і не є інвестиційною порадою. Торгівля криптовалютою може призвести до втрати всіх вкладених коштів.

1. Тест знає те, чого бот знати не міг

Найпідступніша помилка — дані з майбутнього. Вона рідко виглядає як очевидний баг: вхід за ціною закриття тієї самої свічки, на якій з’явився сигнал; індикатор, перерахований із пізнішими даними; фільтр, що відкидає монети за подіями, які сталися пізніше. Кожна така дрібниця додає тесту кілька відсотків прибутку, якого в реальній торгівлі не буде.

Як ловити: прогнати ту саму логіку на випадковому сигналі. Якщо «випадкова стратегія» теж заробляє — тест зазирає вперед.

2. У тесті лише ті монети, що вижили

Якщо всесвіт стратегії — «монети, які зараз у топі за обігом», тест мовчки викидає все, що впало, зникло з біржі чи було пампом на тиждень. Минуле, складене з переможців, завжди виглядає прибутковим. Схожа пастка — всесвіт, що змінюється заднім числом: монета потрапила в список, бо виросла, а тест «купив» її до зростання.

Як ловити: фіксувати всесвіт на кожну дату тими правилами, які були відомі на ту дату.

3. Тест і торгівля працюють на різних даних

Ціни на різних біржах відрізняються, історія буває неповною, а ряд, склеєний з кількох бірж, поводиться не так, як реальний ринок. В одному з моїх досліджень стратегія на трирічних даних зі змішаних бірж дала коефіцієнт Шарпа 1,69, а на семирічній історії однієї біржі в тій самій конструкції — 0,28. Висновок «знайдено нове джерело прибутку» не витримав довшої історії.

Як ловити: кожен результат записувати разом із «відбитком» даних — біржа, період, дата збору — і порівнювати з еталоном лише на тих самих даних.

4. З тридцяти спроб одна завжди «працює»

Якщо перебрати 30 варіантів параметрів, хоча б один випадково покаже гарний результат. Стратегія з t-статистикою 2,2 виглядає значущою, але якщо це найкраща з тридцяти спроб — вона нічого не доводить. Що більше ідей перевірено, то вищою має бути планка.

Як ловити: вести журнал усіх спроб, а не лише вдалих, і вимагати t не нижче 3; перевіряти, чи працює ідея в обох половинах історії окремо.

5. Бектест і бот — різні стратегії

Навіть з однаковим сигналом бот і тест можуть торгувати по-різному: інша частота перегляду позицій, інший розмір, інша кількість монет у портфелі. Одного разу виявилось, що через подвійне нормування ваг тест тримав портфель у сім разів меншим, ніж бот. Шарп від цього не змінився, а просадки й «відсоток прибутку» виявились заниженими всемеро.

Як ловити: перш ніж дивитися на прибуток, звірити «інваріанти»: скільки позицій одночасно, скільки триває позиція, який валовий розмір портфеля — у тесті й у боті.

Чекліст перед тим, як вірити бектесту

  • контрольний прогін на випадковому сигналі не заробляє;
  • всесвіт монет зафіксований на кожну дату без знання майбутнього;
  • результат прив’язаний до конкретних даних і відтворюється;
  • комісії й прослизання враховані з реальним оборотом;
  • ідея працює в обох половинах історії й не залежить від одного параметра;
  • розмір і будова портфеля в тесті збігаються з ботом;
  • форвард-тест на паперовому рахунку підтверджує бектест за денною волатильністю.

Часті запитання

Скільки років історії потрібно для перевірки стратегії?

Що менший Шарп, то більше: орієнтовно t ≈ Шарп × √років. Для Шарпа 1 і порогу t = 3 це близько дев’яти років — тому для більшості криптомонет чесна відповідь «ще невідомо». Детальніше — на сторінці «Крипто-трейдинг без ілюзій».

Чи можна довіряти бектестам із курсів і «сигнальних» каналів?

Без даних, коду й журналу всіх спроб — ні. Перевірте хоча б, чи враховано комісії та чи не підібрано період, на якому стратегія виглядає найкраще.

Чи можете зробити інструменти для бектесту?

Так: збір даних з бірж, бектест-рушій з контрольними прогонами й інваріантами, paper-торгівля й облік угод. Дивіться розробку вебдодатків і сервісів. Я не продаю сигнали й не керую чужими грошима.

Обговорімо вашу задачу

Опишіть, що потрібно зробити — відповім протягом робочого дня з планом робіт, термінами й ціною. Перша консультація безкоштовна.

Залишити заявку

Залишити коментар

Email не публікується. Коментар з’явиться після перевірки.