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

Учора, 7 жовтня 2026 року, ФРС опублікувала протокол засідання 15–16 вересня. Офіційний час виходу — 14:00 EDT, тобто 21:00 за Києвом. Між останнім днем засідання й публікацією минув 21 день. ФРС окремо пояснює: опис економічних і фінансових умов у протоколі спирається на інформацію, доступну комітету під час засідання. Дата документа, період описаних подій і момент доступу читача тут різні.

Для людини це зрозуміла затримка публікації. Для таблиці, у якій текст протоколу приєднали до свічки за 16 вересня, це машина часу. Алгоритм отримує майбутній документ, а дослідник може помилково приписати результат здатності прогнозувати ринок. Саме тому перед оцінкою дохідності стратегії я перевіряв би, якою інформацією вона користувалася в кожну мить.

Джерела перевірено 8 жовтня 2026 року о 12:23 за Києвом, UTC+3. Це матеріал про перевірку торгових стратегій, без прогнозу ціни BTC. Поточні котирування не використовуються. Усі ціни, комісії, позиції та результати модельних угод нижче — гіпотетичні, а не опис учорашньої реакції ринку чи чинних тарифів Binance.

Бектест — це відтворення правил торгівлі на історичних даних. Його корисне запитання звучить так: що сталося б, якби визначені правила працювали тоді з доступною тоді інформацією та реалістичним виконанням? Якщо прибрати останні дві умови, тест показуватиме властивості підготовленої таблиці. Здатність заробляти з неї не випливає.

Я розділяю чотири моменти. Спочатку відбувається подія: засідання, угода, завершення звітного місяця. Потім джерело оприлюднює інформацію. Далі її отримує конкретна система. Нарешті заявка доходить до біржі й може виконатися. Навіть якщо всі чотири позначки вкладаються в секунду, порядок залишається обов'язковим. Для економічної статистики між ними можуть лежати тижні.

Повернімося до протоколу. Його текст можна враховувати після публікації 7 жовтня з поправкою на отримання й обробку. Переносити виклад дискусії на 16 вересня не можна. Водночас окремий вересневий пресреліз із рішенням міг бути доступний раніше. Заборона стосується саме ще не оприлюдненого тексту, а не всієї інформації про засідання. Кожен документ має власний час доступності.

Уявімо гіпотетичний тест реакції на повідомлення о 21:00. BTC перед виходом коштує 60 000 USDT, після отримання та обробки тексту доступна ціна купівлі становить 60 180, а запланований вихід відбувається за 60 300. Стратегія купує 0,1 BTC. Тест, який безпідставно дає їй купівлю перед повідомленням, покаже 30 USDT валового прибутку: 0,1 × (60 300 − 60 000).

За доступною після сигналу ціною результат дорівнює 12 USDT: 0,1 × (60 300 − 60 180). Різниця — 18 USDT, або 60% намальованого валового прибутку. Напрямок прогнозу в обох випадках однаковий. Змінюється лише право скористатися ціною, яка існувала до появи сигналу. Плече не виправляє помилку часу.

Тепер додамо суто умовну комісію 0,05% за кожне виконання. Для чесного входу номінал становить 6 018 USDT, для виходу — 6 030. Комісії дорівнюють 3,009 і 3,015 USDT. Із 12 залишається 5,976 USDT, приблизно 5,98. Тут немає додаткового прослизання: ціни вже задані як ціни виконання. Також припускаємо, що між входом і виходом немає платежу фандингу.

Для помилкового входу комісії становили б 3 і 3,015 USDT, а чистий результат — 23,985 USDT, приблизно 23,99. Одна некоректна позначка часу збільшила модельний чистий прибуток приблизно вчетверо. Це не оцінка звичайних затримок на Binance. Це демонстрація того, чому кілька красивих угод після новин потребують перевірки джерела сигналу та доступної ціни.

Наступна пастка менш помітна: інформація могла бути публічною, але сьогодні ви завантажили іншу її версію. У звіті BLS від 2 жовтня за вересень наведено приріст зайнятості поза сільським господарством на 29 тисяч і безробіття 4,2%. Одночасно відомство переглянуло липневу зміну з +21 тисячі до −10 тисяч, а серпневу — зі +162 тисяч до +133 тисяч. Сумарний перегляд за два місяці становив −60 тисяч.

Арифметика прозора: липень отримав поправку −31 тисяча, серпень — −29 тисяч; разом −60 тисяч. Це уточнення попередніх оцінок, а не окреме скорочення на 60 тисяч у вересні. Для нашої теми важливіше інше: значення −10 і +133 тисячі в цій редакції стали публічними 2 жовтня. Модель не має права використовувати їх для вересневих рішень заднім числом.

Візьмімо умовне правило: після оприлюднення місячного приросту зайнятості понад 150 тисяч стратегія утримується від нової купівлі BTC. Це навчальний поріг, а не перевірена закономірність. Значення +162 тисячі блокувало б купівлю; пізніше уточнене +133 тисячі її дозволило б. Завантаживши лише останню редакцію статистики, дослідник змінить минулі сигнали, хоча торгове правило залишиться тим самим.

Тут не допомагає запевнення, що цифри взяті з офіційного джерела. Офіційність відповідає на питання про походження; для бектесту потрібна ще відповідність історичному моменту. Точніша сьогодні оцінка минулого може бути неправильною вхідною інформацією для відтворення рішення, ухваленого місяць тому.

Саме для роботи з історичними редакціями існує ALFRED Федерального резервного банку Сент-Луїса. Він дає змогу отримувати дані в тому вигляді, у якому джерело повідомляло їх на минулі дати. Але сервіс зазначає, що нові значення та перегляди зазвичай додаються протягом одного робочого дня після виходу. Отже, сама дата редакції не доводить, що конкретний бот бачив число в першу секунду релізу.

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

У криптовалютах схожу помилку легко зробити без жодної макроновини. Свічка має час відкриття, але її остаточні максимум, мінімум, закриття та обсяг описують увесь інтервал. Документація Binance окремо передбачає поля часу відкриття й закриття, а самі свічки ідентифікуються часом відкриття. Така структура зручна для зберігання, але не надає раннього доступу до підсумкових значень.

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

Навіть використання наступної свічки не гарантує ідеальної чесності. Її ціна відкриття — історична угода, а не обіцянка виконати вашу заявку в потрібному обсязі. Особливо під час новин. Для грубої моделі можна задати консервативну поправку, а для тверджень про швидку торгівлю потрібні детальніші дані про виконання. Точність висновку має відповідати точності вхідних даних.

Є ще межа між ринковим потоком та архівним файлом. Binance Public Data повідомляє, що нові денні файли стають доступними наступного дня. Репозиторій також попереджає про можливі пізніші виправлення архівів і надає контрольні суми для перевірки цілісності. Тому наявність файла сьогодні сама по собі не доводить, що його вміст у цій редакції був доступний стратегії вчора.

Це не робить архів непридатним для досліджень. Якщо показник обчислюється з угод, які могли надходити наживо, історію можна використати для відтворення такого процесу. Треба показати, як саме дані перетворювалися на сигнал без знання майбутніх угод. Інша ситуація — агрегат, для якого не встановлено час публікації: підставити його в минулу хвилину лише через схожу часову позначку недостатньо.

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

Це вже предмет окремих досліджень. У препринті від 26 серпня 2026 року автори перевіряли історичні дані Binance BTCUSDT USD-M perpetuals з урахуванням часу події, публікації та доступності. Після перегляду вимог вони залишили 727 повних днів UTC і поділили їх на 436 днів навчання, 145 перевірки та 146 окремого історичного тесту. Відкритий інтерес зробили необов'язковим через непідтверджений час його публікації.

Автори повідомили, що в окремому фінальному історичному тесті всі оцінені запуски мали додатну кореляцію сигналу з результатом, але від'ємний чистий коефіцієнт Шарпа за основних припущень про витрати. Це обмежений негативний результат конкретного препринту, не доказ неприбутковості всіх ботів. Я не відтворював їхній експеримент. Для читача він корисний тим, що статистична якість сигналу та фінансовий результат перевірялися окремо.

Навіть після виправлення часу стратегія може програти витратам. Розгляньмо незалежний гіпотетичний приклад для коротких угод: валова перевага становить 12 базисних пунктів на повний цикл, комісія — по 4 пункти на кожен бік, а додаткові втрати виконання — по 3 пункти на бік. Один базисний пункт — 0,01%. Повні витрати становлять 14 пунктів, тому чистий результат дорівнює −2 пунктам.

На умовному однаковому номіналі 10 000 USDT це 12 USDT валового результату, 8 USDT комісій і 6 USDT втрат виконання: підсумок −2 USDT. Тут втрати виконання охоплюють відхилення від модельної ціни; їх не слід повторно додавати, якщо вже використані реальні ціни угод. За 100 однакових циклів без реінвестування модель дала б −200 USDT. Це арифметика заданих умов, не прогноз.

Поріг беззбитковості за цих припущень — 14 базисних пунктів валового результату на цикл. Якщо втрати виконання зростуть із 3 до 5 пунктів на кожен бік, поріг підніметься до 18. Коли перевага стратегії менша за похибку оцінювання виконання, зайві знаки після коми в таблиці дохідності не роблять висновок надійнішим.

Для perpetuals перевірка має враховувати ще платежі фандингу в ті моменти, коли позиція справді була відкрита. У моделі з плечем потрібна траєкторія маржі всередині угоди. Позитивний результат на дату планового виходу не рятує тест, якщо за його ж умовами позиція мала бути ліквідована раніше. Тому підсумкова ціна та можливість дожити до неї — окремі частини моделі.

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

Я починав би перевірку готового бота з п'яти конкретних дій. Спочатку обрав би кілька найприбутковіших угод і відновив для кожної джерело сигналу, час його появи та можливу ціну входу. Далі перевірив би редакції макроданих. Потім зсунув би виконання на реалістичну затримку. Четвертим кроком перерахував би результат після повних витрат. П'ятим — перевірив би зафіксовані правила на періоді, який не використовували для їх добору.

Це початковий аудит, а не повний статистичний сертифікат. Кілька правильних угод не доводять коректності всього тесту. Але одна угода, що потребує ще не оприлюдненого документа, вже спростовує чесність відповідної частини результату. До виправлення такої помилки порівнювати річну дохідність ботів немає сенсу: вони могли мати різні, зокрема неможливі, інформаційні переваги.

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

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

Можливі три результати. Базовий: після виправлень перевага слабшає, а доказів недостатньо — спостереження продовжується без зміни правил під кожну невдачу. Сприятливий: результат зберігається на нових даних і за обережних витрат — це підстава для подальшої перевірки, а не гарантія прибутку. Несприятливий: ефект зникає після усунення підглядання або звичайної затримки — початкова інвестиційна теза скасовується.

Ці варіанти описують долю дослідницької гіпотези, а не бичачий чи ведмежий прогноз BTC. Перехід між ними визначають дані й заздалегідь установлені критерії. Зростання біткоїна саме по собі не підтверджує якість бота, який завжди купує; падіння також не доводить, що його часові позначки були неправильними. Метод і ринковий напрямок потрібно оцінювати окремо.

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

Найкорисніший результат такого аудиту іноді дорівнює нулю відкритих позицій. Якщо прибуток тримався на недоступній інформації, відмова від запуску зберігає капітал для наступної перевірки. Сильна стратегія повинна пережити чесне відтворення власного минулого. Лише після цього має сенс обговорювати її майбутнє.

Матеріал має освітній характер і не є індивідуальною інвестиційною рекомендацією.

#Bitcoin #Binance #Бектест #Алготрейдинг #РизикМенеджмент