Backtesting nima
Backtesting (orqaga test) — savdo qoidalarini o'tgan narx ma'lumotlariga qo'llab, o'sha davrda qanday savdolar ochilib-yopilgan bo'lishini hisoblash. Maqsad strategiyaning foydasini isbotlash emas. Maqsad qoidalarda xato, mantiqsizlik yoki yashirin xavf bor-yo'qligini topish.
Backtest kelajakni ko'rsatmaydi. U faqat aniq yozilgan qoidalar ma'lum tarixiy sharoitda qanday ishlaganini ko'rsatadi. Bozor o'zgaradi, shuning uchun yaxshi ko'ringan test ham real hisobda zarar berishi mumkin.
Strategiya nima ekanini avval Trading strategiyalari sahifasida, atamalarni esa Treyding lug'ati sahifasida ko'rib chiqishingiz mumkin.
Real yoki demo hisobda sinab ko‘rishga tayyormisiz?
Hamkorlik havolasi · savdo yo‘qotishning yuqori riski bilan bog‘liq
Backtest qanday ishlaydi
Backtest forex yoki boshqa CFD bozori uchun quyidagi ketma-ketlikda o'tkaziladi:
- Qoidalarni yozish. Kirish sharti, chiqish sharti, stop-loss, take-profit, pozitsiya hajmi va savdo qilinmaydigan vaqtlar. Qoida shunday aniq bo'lishi kerakki, uni boshqa odam ham aynan shunday bajara olsin.
- Ma'lumot tanlash. Instrument, vaqt oralig'i (timeframe) va davr.
- Simulyatsiya. Dastur yoki qo'lda grafikni sham ketidan sham surib, qoida bo'yicha savdolarni qayd etish.
- Hisobot. Savdolar ro'yxati, umumiy natija, eng katta pasayish (drawdown — hisob balansining eng yuqori nuqtadan keyingi eng chuqur tushishi), ketma-ket zararlar, o'rtacha foyda va zarar.
MetaTrader platformalarida o'rnatilgan Strategy Tester bor, u avtomatik dasturlarni (expert advisor) tarixiy ma'lumotda yuritadi. Avtomatlashtirish haqida Algoritmik treyding sahifasida yozilgan.
Ma'lumotlar sifati
Tarixiy ma'lumotda test qilishda natijaning ishonchliligi birinchi navbatda ma'lumotga bog'liq.
- Bar va tik ma'lumot. Bar (sham) ma'lumoti faqat ochilish, eng yuqori, eng past va yopilish narxini saqlaydi. Sham ichida narx qaysi tartibda yurganini bilmaysiz. Stop va take-profit o'sha sham ichida joylashgan bo'lsa, test qaysi biri oldin tegganini taxmin qiladi. Tik ma'lumot bu muammoni kamaytiradi.
- Bo'shliqlar va xatolar. Yo'qolgan shamlar, noto'g'ri keskin sakrashlar, dam olish kunlaridagi uzilishlar natijani buzadi.
- Vaqt zonasi. Turli manbalar kunlik shamni turli soatda yopadi. Kunlik va sessiyaga bog'liq strategiyalarda bu muhim.
- Manba farqi. CFD narxlari brokerdan brokerga farq qiladi. Test ma'lumoti siz savdo qiladigan joy kotirovkalariga yaqin bo'lgani ma'qul.
- Look-ahead bias. Bu — test hali ma'lum bo'lmagan ma'lumotdan foydalanishi. Masalan, sham yopilmasdan uning yopilish narxi bo'yicha qaror qabul qilish. Bunday xato testni haqiqatdan ancha yaxshi ko'rsatadi.
Xarajatlarni hisobga olish
Xarajatsiz backtest deyarli har doim ortiqcha optimistik bo'ladi. Hisobga olinishi kerak bo'lganlar:
| Xarajat | Nima | Qayerda ko'proq ta'sir qiladi |
|---|---|---|
| Spred | Sotish va sotib olish narxi orasidagi farq | Tez-tez savdo, qisqa maqsadlar |
| Komissiya | Savdo uchun alohida to'lov (hisob turiga bog'liq) | Ko'p savdoli tizimlar |
| Svop | Pozitsiyani tunga qoldirish to'lovi yoki tushumi | Uzoq ushlanadigan pozitsiyalar |
| Slipaj | Buyurtma kutilgan narxdan boshqa narxda bajarilishi | Yangiliklar, past likvidlik |
Spred doimiy emas: yangiliklar paytida va sessiyalar almashganda kengayadi. Testda o'zgarmas kichik spred qo'yish skalping va news trading kabi usullarda natijani butunlay o'zgartirib yuborishi mumkin. Aniq shartlarni o'zingiz foydalanadigan platforma va hisob bo'yicha tekshiring. Pip va marja hisob-kitobi uchun Kalkulyatorlar sahifasidan foydalaning.
In-sample va out-of-sample
Ma'lumotni ikkiga bo'lish asosiy himoya usuli:
- In-sample — qoidalar va parametrlar ishlab chiqiladigan qism.
- Out-of-sample — strategiya ishlab chiqilayotganda umuman ko'rilmagan qism. U faqat oxirida, tekshirish uchun ishlatiladi.
Agar out-of-sample natijasi in-sample'dan keskin yomon bo'lsa, strategiya o'tmishga moslab qo'yilgan bo'lishi ehtimoli yuqori. Muhim qoida: out-of-sample natijasini ko'rib, keyin parametrlarni o'zgartirsangiz, u endi out-of-sample emas.
Walk-forward tahlil
Walk-forward — in-sample va out-of-sample'ni vaqt bo'yicha surib takrorlash:
- Davrning oldingi qismida parametrlarni optimallash.
- Keyingi, ko'rilmagan qismida aynan shu parametrlarni sinash.
- Oynani oldinga surib, jarayonni qaytarish.
- Barcha sinov qismlari natijasini birlashtirib baholash.
Bu usul strategiya real hayotdagidek — o'tmish bilan sozlanib, kelajakda ishlatilishini taqlid qiladi. U turli bozor sharoitlarida (trend, flet, yuqori volatillik) barqarorlikni ko'rsatadi.
Overfittingni tekshirish
Overfitting — qoidalar o'tmishdagi tasodifiy shovqinga moslab qo'yilishi. Belgilari va tekshiruvlari:
- Parametrlar ko'pligi. Shart va filtrlar qancha ko'p bo'lsa, o'tmishga moslash shuncha oson.
- Parametr barqarorligi. Qo'shni qiymatlarni sinang. Natija faqat juda tor qiymatda yaxshi bo'lib, yonida yomonlashsa, bu tasodif belgisi.
- Savdolar soni. Kam savdoli test hech narsani isbotlamaydi.
- Boshqa instrument va davrlar. Mantiqiy g'oya o'xshash bozorlarda ham kamida yaroqli ishlashi kerak.
- Monte Carlo. Savdolar tartibini tasodifiy aralashtirib, drawdown qanchalik chuqurlashishi mumkinligini ko'rish.
- Mantiq. Qoida nega ishlashi kerakligini tushuntira olmasangiz, unga ishonmang.
Backtest qanday qilib pul yo'qotishga olib keladi
- Xarajatsiz test real hisobda zararli tizimni foydali qilib ko'rsatadi.
- Overfitting tufayli strategiya yangi ma'lumotda ishlamaydi.
- Drawdown kam baholanadi va hajm katta tanlanadi; leveraj bilan bu hisobni tez yo'qotishga olib keladi.
- Martingale va grid kabi usullar testda uzoq vaqt silliq ko'rinadi, lekin kamdan-kam keladigan kuchli harakatda hisobni yo'qotadi.
- Rejim o'zgarishi: trend davrida sinalgan qoida flet davrida zarar beradi.
- Treyder testdagi seriyali zararlarni real pulda ko'tara olmay, qoidani buzadi. Bu haqda Treyding psixologiyasi sahifasida yozilgan.
Leverajli CFD va forex savdosi pulni tez yo'qotishi mumkin. Yaxshi backtest bu xavfni yo'qotmaydi.
Gipotetik misol
Quyidagi misol faqat tushuntirish uchun, gipotetik; u hech qanday natija yoki tavsiya emas.
Treyder MA crossover g'oyasini soatlik grafikda sinamoqchi. Qoidalar: tez o'rtacha sekinni yuqoriga kesib o'tib, sham yopilganda kirish; teskari kesishuvda chiqish; stop oxirgi past nuqta ostida; risk har savdoda balansning kichik, oldindan belgilangan ulushi.
U ma'lumotni in-sample va out-of-sample qismlarga bo'ladi, real spred va komissiyani kiritadi, o'rtachalar uzunligini qo'shni qiymatlarda tekshiradi, so'ng walk-forward o'tkazadi. Natija qanday chiqishidan qat'i nazar, keyingi qadam — forward testing va demo, keyin qoidalarni trading planga yozish.
Backtestdan keyin
Backtest — tekshiruvning faqat boshlanishi. Undan keyin strategiyani demo hisobda real vaqtda kuzatish, risk qoidalarini belgilash (Risklarni boshqarish) va natijalarni jurnalga yozish kerak.
Ko'p beriladigan savollar
Backtesting nima degani oddiy tilda?
Savdo qoidalarini o'tgan narxlarga qo'llab, o'sha davrda qanday savdolar bo'lishini hisoblash.
Yaxshi backtest foydani kafolatlaydimi?
Yo'q. U faqat o'tmishdagi sharoitni ko'rsatadi. Real savdoda zarar ham bo'lishi mumkin.
Qo'lda backtest qilsa bo'ladimi?
Bo'ladi, lekin sham yopilmasdan qaror qabul qilmaslik va xarajatlarni yozib borish kerak. Qo'lda testda o'zini aldash xavfi yuqori.
Out-of-sample'ni necha marta ishlatish mumkin?
Faqat yakuniy tekshiruv uchun. Natijani ko'rib parametr o'zgartirilsa, u o'z vazifasini yo'qotadi.
Overfittingning eng oddiy belgisi nima?
Natija faqat juda aniq parametr qiymatida yaxshi bo'lib, qo'shni qiymatlarda yoki yangi ma'lumotda yomonlashishi.
Backtestdan keyin nima qilish kerak?
Demo hisobda forward test, risk qoidalarini belgilash va savdo jurnalini yuritish.
