Бектестинг, оптимізація та перевірки стратегії
Як отримують результати з урахуванням реальних витрат, як параметри добирають поза вибіркою та як стратегія отримує право на просування.
Реальні комісії біржі та витрати
У бектестах застосовуються опубліковані комісії мейкера й тейкера кожного майданчика, платежі за фінансування безстрокових ф'ючерсів, витрати на позику для коротких позицій, спред і модель впливу на ринок для кожного виконання ордера. Власний капітал переоцінюється за ринковою ціною на кожному барі, а позиції з кредитним плечем можуть бути ліквідовані за рівнем підтримувальної маржі майданчика. Результати не наводяться без урахування витрат.
Розмір позиції та кредитне плече
Стратегії Forex визначають розмір позиції в цілих одиницях базової валюти відносно власного капіталу рахунку. Рушій застосовує налаштоване обмеження кредитного плеча FX, вимоги до маржі та конвертацію валюти котирування. Розміри лотів, прийняті брокером, потребують окремого перевіреного зіставлення.
Як працює оптимізація
Для оптимізації використовується вся доступна історія стратегії. Найновішу частину відокремлюють як контрольну вибірку. Решту, період розробки, ділять на послідовність вікон ковзної перевірки: параметри шукають на навчальному відрізку кожного вікна й оцінюють на наступному тестовому відрізку, тож кожен позавибірковий результат отримують на даних, яких пошук не бачив.
Потім остаточні параметри обирають один раз на всьому періоді розробки й рівно один раз перевіряють на контрольній вибірці. Поряд наводяться статистики чутливості, стабільності та значущості, а вимоги для просування враховують результати позавибіркової перевірки й контрольної вибірки, ніколи — відповідність на навчальній вибірці.
Контрольна вибірка
Контрольна вибірка — це остання частина історії: щонайменше 20% даних, не менше ніж 15 днів і достатньо даних, щоб очікувати близько 20 угод, але не більше ніж 35% історії. Якщо контрольна вибірка сягає обмеження у 35%, її позначають як недостатньо потужну. Її ніколи не використовують для вибору параметрів, а агенти бачать результати лише до початку контрольної вибірки, тож їхні рішення не можна підлаштувати під неї. Ви як власник бачите повну історію на сторінці стратегії.
Вкладені вікна ковзної перевірки
Вікна walk-forward визначаються кількістю угод, а не лише часом: кожне тестове вікно подовжується, доки в ньому можна очікувати близько 20 угод. Вікна зсуваються щомісяця, а для довгих історичних даних — щоквартально, з невеликим проміжком між навчальним і тестовим періодами. Усередині кожного навчального періоду пошук є вкладеним: він знову ділиться у співвідношенні 70/30, щоб параметри обиралися на внутрішніх валідаційних даних. Для остаточного висновку потрібно щонайменше 3 вікна та достатнє покриття даними поза навчальною вибіркою (out-of-sample); інакше результат позначається як неостаточний через недостатню кількість угод.
Пошук параметрів та остаточне перенавчання
Параметри шукають методом байєсівської оптимізації: приблизно 30 спроб на кожен параметр, що налаштовується, у кожному вікні, але від 30 до 150 загалом. Замість найкращої окремої спроби алгоритм віддає перевагу параметрам, сусідні значення яких також дають хороші результати, з урахуванням обмежень ризику стратегії. Під час остаточного перенавчання той самий алгоритм вибору застосовується до всього періоду розробки; потім на контрольній вибірці перевіряють саме ці параметри. Для кожної оптимізації є обмеження часу, а тривалі пошуки можна запускати на віддалених обчислювальних ресурсах.
Чутливість і плато
Кожен числовий параметр змінюється на 10%, 25% і 50% в обох напрямках, а параметри з цілими значеннями — на один і два кроки. Плато показує, наскільки можна змінити параметр, перш ніж коефіцієнт Шарпа знизиться більше, ніж це пояснюється його статистичною невизначеністю; різкіше зниження позначається як обрив. Широке плато — це обнадійливе свідчення, обрив — попередження. Це звіт, а не критерій допуску.
Стабільність параметрів
Стабільність показує, наскільки змінюються вибрані параметри від вікна до вікна порівняно зі змінами за випадкового вибору. Параметри, що залишаються близькими, позначають як стабільні; ті, що сильно коливаються, — як нестабільні. Це застереження, яке наводиться разом із результатами, але саме по собі не є критерієм допуску. Також показано відтворення результатів для кожного вікна з остаточними параметрами; його позначено як частково внутрішньовибіркове, оскільки ці параметри було вибрано на тих самих даних.
Статистична значущість і дефльований коефіцієнт Шарпа
Позавибіркову дохідність перевіряють за допомогою t-критерію, що враховує автокореляцію, і дефльованого коефіцієнта Шарпа. Дефльований коефіцієнт Шарпа показує, чи перевершує результат показник, якого можна було б досягти в найкращій із багатьох випадкових спроб, з урахуванням фактичної кількості спроб: випробуваних позавибіркових варіантів, включно з кожною додатковою зміною після перевірки. Внутрішні спроби пошуку не зараховують проти стратегії, бо вони не мають доступу до позавибіркових даних.
Комбіновану перехресну перевірку та ймовірність перенавчання на бектесті обчислюють на навчальних даних як діагностичні показники. Вони допомагають аналітику, але самі по собі вже не визначають рішення про просування.
Вікна дохідності та широта охоплення
Повільні стратегії можуть укладати надто мало угод, щоб заповнити вікна, визначені за кількістю угод. У такому разі їх оцінюють за часовими вікнами періодичної дохідності, використовуючи тести, що враховують автокореляцію. Тест широти охоплення запускає незмінене правило на 5 або більше споріднених ринках: узгоджені результати на різних ринках можуть перетворити непереконливий результат на позитивний, а невдача на іншому ринку може перетворити позитивний результат на застереження.
Результати з низьким рівнем упевненості
Якщо доказів недостатньо для однозначного висновку, але явних невдач немає, а аналітик усе ж рекомендує просування, стратегію можна перевести до паперової торгівлі з позначкою «низький рівень упевненості, статистично не доведено». Ця позначка відображається на сторінках стратегії та паперової торгівлі, а також у сповіщеннях. Стратегія з низьким рівнем упевненості не готова до реальної торгівлі, доки її власні результати паперової торгівлі не стануть статистично значущими.
Умови просування
Мінімальні критерії для просування застосовуються в коді на основі опублікованого файлу критеріїв. Жорсткі вимоги не можна скасувати: достатня тривалість історії, прибутковість у більшості календарних років за наявності експозиції, середня угода покриває витрати повного циклу, маржа не використовується понад норму, результати позавибіркової перевірки та контрольної вибірки наявні й не відхилені статистично, просідання в межах зареєстрованого ліміту, а облік повний і узгоджений.
М'які критерії та винятки
М'які критерії охоплюють просідання відносно власного ліміту стратегії, коефіцієнт Кальмара, фактор прибутку, частку виграшних угод разом із співвідношенням прибутків і збитків, період утримання, порівняння контрольної вибірки з результатами ковзної перевірки, дефльований коефіцієнт Шарпа, концентрацію прибутку в одному році, витрати через вплив на ринок і збитки в періоди високої волатильності. Аналітик може зробити виняток лише щодо м'якого критерію, письмово обґрунтувавши його й указавши метрику; виняток зберігається для запуску, фахівець із ризиків може його відхилити, а керівник портфеля повторно його перевіряє.
Як чесно оцінити бектест
Порівняйте криву капіталу з просадкою, перевірте, на якій кількості угод ґрунтується результат, і зіставте середню дохідність угоди з витратами на повний цикл. Висока дохідність за кілька угод або коефіцієнт Шарпа, що зникає на позавибіркових даних, — це застереження, а не результат.