Точність backtest має кілька рівнів
Запитання, чи «точний» backtest, приховує кілька питань. Розділяй їх, щоб сильний результат на одному рівні не виправдовував слабкості на іншому.
- Точність правил: чи виконав рушій граф стратегії саме так, як визначено?
- Точність даних: чи підходили для тесту часові позначки, ціни, обсяг та історія інструмента?
- Точність виконання: чи могли симульовані ордери правдоподібно виконатися за припущеними цінами й обсягами?
- Коректність дослідження: чи було правила зафіксовано до перевірки, чи їх багаторазово підлаштовували під ту саму історію?
- Якість висновку: чи не виходить висновок за межі того, що може підтвердити гіпотетична історія?
Fees потрібні, але їх недостатньо
Торгові fees зменшують результат кожної симульованої операції. Вони найважливіші за високого обороту або малої валової переваги на угоду. Використовуй тариф, відповідний майданчику, продукту, типу ордера й припущеному рівню рахунку, а потім перевір менш сприятливу ставку як сценарій чутливості.
Fees — лише частина витрат виконання. Backtest із відрахуванням fees усе ще може бути оптимістичним, якщо припускає виконання кожного ордера за зручною ціною графіка.
Spread: перетин ринку має ціну
Spread — різниця між доступними цінами купівлі та продажу. OHLCV-свічки зазвичай не зберігають повного стану ринку. Ринкова купівля зазвичай взаємодіє з ціною продажу, а ринковий продаж — із ціною купівлі; моделювання обох за ціною закриття може завищувати результат.
Spread залежить від інструмента, майданчика, часу, волатильності й ліквідності. Стале припущення краще за нуль лише тоді, коли його обмеження видиме. Перевірки чутливості мають охоплювати ширший spread, ніж у середньому.
Slippage: очікувана ціна не завжди є ціною виконання
Slippage — різниця між ціною, яку очікує стратегія, та ціною симульованого або фактичного виконання. Причинами можуть бути рух ціни за час затримки, недостатній обсяг за найкращою ціною, місце в черзі, волатильність або завеликий ордер відносно ліквідності.
Один відсоток slippage — наближення, а не універсальна істина. Перевір кілька несприятливих припущень і приділи особливу увагу стратегіям, які часто торгують, реагують на швидкі рухи або залежать від малих відмінностей на угоду.
partial fills та неоднозначність стану ордера
Модель може припускати повне виконання ордера або його відсутність. Реалістичний життєвий цикл складніший: частина обсягу виконується, решта залишається відкритою, ордер спливає або скасування збігається з новим виконанням. Це змінює експозицію, fees, розмір виходу й наступні рішення.
Свічкові дані також приховують послідовність цін усередині свічки. Якщо вона торкнулася і stop loss, і take profit, сама свічка може не довести, що було першим. Симулятор потребує задокументованого консервативного правила для неоднозначних випадків.
Помилки часу та look-ahead bias
Look-ahead bias виникає, коли рішення використовує інформацію, недоступну на симульований момент рішення. Типові форми:
- читання завершеної свічки й виконання раніше всередині тієї самої свічки;
- використання значення індикатора, обчисленого з майбутніми спостереженнями;
- вибір активів на основі інформації, отриманої після дати тесту;
- використання переглянутих даних, які відрізняються від початково спостережуваних;
- застосування рейтингу за підсумками періоду до появи даних усіх учасників.
Явно визнач час сигналу й найраніший допустимий час виконання. Перевір угоди на межах переходів, а не лише звичайні випадки.
Якість даних і упередження відбору
Відсутні свічки, повторені часові позначки, неправильні часові пояси, зміни символів, виключені з торгів активи та неузгоджені дані майданчиків можуть змінювати результати. Набір лише з активів, що збереглися до сьогодні, може створювати упередження виживання. Вибір найкращого ринку після тестування багатьох — інша форма відбору.
Записуй досліджені набори даних, виконані перевірки якості й відкинуті експерименти. Без цього журналу підсумковий графік приховує, скільки шансів знайти випадково вдалий результат мав дослідницький процес.
Overfitting та різкі провали параметрів
Кожне правило, поріг, період індикатора, ринок і діапазон дат додають вибір. Повторний відбір найкращого історичного поєднання може підлаштовуватися під шум, а не повторювану поведінку.
Тривожні ознаки:
- вузьке значення параметра прибуткове, а сусідні значення руйнують результат;
- невелика зміна дати змінює висновок на протилежний;
- багато винятків додано після перегляду збиткових угод;
- результат залежить від одного активу, режиму або кількох нетипових угод;
- підсумкову стратегію неможливо пояснити без посилання на графік backtest.
Зафіксуй граф правил, відклади out-of-sample дані й віддавай перевагу стабільним діапазонам, а не одному найкращому параметру. Жоден статистичний метод не врятує тест, дизайн якого постійно підглядав у перевірочну вибірку.
Як інтерпретувати результати Koval сьогодні
Koval відтворює історичні OHLCV-свічки за єдиними записаними правилами виконання, застосовуючи налаштовані spread, slippage й commission до кожного виконання. Він не моделює funding, біржові fee tiers, partial fills, liquidation чи затримки. Тому:
- оцінюй чисті результати відносно заявлених витрат запуску, а не нуля;
- перевіряй кожне симульоване виконання, його базову ціну й контекст свічки;
- суворіше оцінюй стратегії з високим оборотом або малою перевагою;
- не описуй звіт як досяжний, очікуваний або прогнозований результат;
- використовуй live paper testing для спостереження на нових даних; доступ до exchange sandbox наразі заблоковано.
Таке прозоре обмеження корисніше за хибну точність. Воно показує, на яке питання відповідає базовий результат і яких доказів ще бракує.
Як Koval моделює виконання
Поточний backtest із фіксованими витратами використовує ринкові входи на наступному відкритті, захист із подальшої свічки, обрані spread, slippage й commission та margin як номінальну вартість, поділену на leverage. Paper sessions з фіксованим профілем поділяють ці припущення, але для збігу результатів також мають збігатися свічки, прогрів, початковий стан і правило завершення. Старі профілі можуть відрізнятися.
Нові архівні backtests зберігають нормалізовані вхідні дані й записані результати. Повторна перевірка створює окреме порівняння з відповідним ПЗ і повними даними. Старі або неповні запуски можуть залишатися неперевірюваними. Збіг відтворення — перевірка узгодженості, а не твердження про біржове виконання.
Застосунок наразі блокує перехід до exchange sandbox. Він не встановлює паритету виконання з реальним рахунком. Прочитай що означає реалістичне тестування в Koval про поточну модель, вимоги до відтворення та матрицю можливостей.
Консервативний порядок перевірки
- Відтвори запуск із тим самим зафіксованим графом, набором даних і конфігурацією.
- Вручну перевір кілька входів і виходів, зокрема на неоднозначних свічках.
- Відокрем in-sample дані для розробки від недоторканих out-of-sample даних.
- Переглянь результати за режимами, активами й періодами, а не лише загалом.
- Підвищ налаштовані spread, slippage й commission та оціни ефекти, яких модель не враховує.
- Перевір сусідні параметри й простіші версії тієї самої гіпотези.
- Вивчи концентрацію в кількох угодах і тривалі періоди нижче піку капіталу.
- Запиши висновок разом з усіма суттєвими пропусками моделі.
- Перейди до paper trading, не змінюючи правил протягом спостереження.
- Якщо платформа це підтримує, перевір адаптер у підтвердженому exchange sandbox. Доступ у застосунку Koval залишається заблокованим.
Попередження регуляторів важливі навіть без виконання з реальними коштами
Сам Koval не розміщує ордери з реальними коштами, але точна мова досліджень усе одно важлива. Investor.gov Commission з цінних паперів і бірж США пояснює, що результати backtests є гіпотетичними, а не фактичними . Комісія з торгівлі товарними ф’ючерсами США також закликає читачів ретельно перевіряти гіпотетичні твердження торгових систем та їхні припущення .
Ці ресурси не сертифікують Koval або будь-яку стратегію. Вони підкріплюють належний стандарт: симуляції мають бути прозорими, відтворюваними й описаними без натяку на майбутні результати.
Як звучить обґрунтований висновок
«За зафіксованих правил, обраних історичних OHLCV-даних і заявлених припущень щодо spread, slippage, commission та leverage ця стратегія показала записану гіпотетичну поведінку. Funding, біржові fee tiers, partial fills, liquidation й затримки не моделюються. Результат потребує out-of-sample перевірки, paper trading і sandbox validation та не прогнозує майбутньої дохідності».
Це твердження менш захопливе, ніж обіцянка. Водночас воно значно корисніше для вибору наступного тесту.
Про перевірену модель виконання, архівне відтворення та межі live paper trading читай у матеріалі що означає реалістичне тестування в Koval.
Далі переглянь триетапний процес перевірки або долучайся до списку очікування Koval для одного листа про запуск.