Backtest आपकी रणनीति का पुराने डेटा पर किया गया एक उच्च-सटीकता वाला सिमुलेशन है — भविष्य के नतीजों का वादा नहीं। Backtest और लाइव के बीच फ़र्क होना सामान्य और अपेक्षित है; लक्ष्य यह समझना है कि क्यों, ताकि आप यथार्थवादी उम्मीदें रख सकें। यह गाइड बताती है कि Freya का Backtest किन चीज़ों को मॉडल करता है और किन घर्षणों को नहीं कर सकता।
Backtest चलाने और पढ़ने के लिए, देखें Backtest कैसे चलाएँ और Backtest नतीजों की व्याख्या।
मुख्य बातें
- Freya का Backtest बड़ी लागतों को पहले से ही मॉडल करता है: हर एक्सचेंज की असली ट्रेडिंग फीस (maker/taker), market और stop ऑर्डर पर एक रूढ़िवादी slippage, और futures funding।
- यह सिर्फ़ लाइव में मौजूद घर्षणों को दोहरा नहीं सकता: latency, आंशिक fills, order-book की गहराई/liquidity, आपका अपना बाज़ार प्रभाव, और रियल-टाइम funding के उतार-चढ़ाव।
- Backtest, Freya की performance fee नहीं घटाता, इसलिए एक जीतने वाली रणनीति कागज़ पर लाइव के मुक़ाबले थोड़ी बेहतर दिखती है।
- liquidation-जोखिम का फ़्लैग यह बताता है कि वह ट्रेड लाइव में liquidate हो सकता था, भले ही Backtest में वह ‘बच’ गया हो — इसे गंभीरता से लें, ख़ासकर ऊँचे leverage पर।
- सबसे बड़ा फ़र्क आमतौर पर यांत्रिकी का नहीं होता — बल्कि यह है कि भविष्य का बाज़ार उस ऐतिहासिक अवधि को नहीं दोहराएगा जिस पर आपने परीक्षण किया था।
Freya का Backtest किन चीज़ों को मॉडल करता है
यह इंजन एक भोले-भाले "कीमत X% बढ़ गई" वाले सिमुलेशन से कहीं ज़्यादा यथार्थवादी है। यह इनका हिसाब रखता है:
- एक्सचेंज ट्रेडिंग फीस — हर एक्सचेंज के असली maker/taker फीस स्तरों का उपयोग करके, हर ऑर्डर (entry, हर averaging ऑर्डर, और exit) पर लगाई जाती है। Limit fills को maker और market fills को taker माना जाता है।
- Slippage — market और stop ऑर्डर पर एक रूढ़िवादी मात्रा लागू होती है, ताकि fills को आदर्श कीमत से थोड़ा ख़राब मॉडल किया जाए (limit/take-profit fills के लिए एकदम सटीक target कीमत मानी जाती है)।
- Futures funding — futures के लिए, आपके पोज़ीशन को थामे रखने की अवधि में funding लागत का अनुमान लगाकर उसे घटाया जाता है।
तो एक Freya Backtest का नेट नतीजा फीस, कुछ slippage और funding को पहले से ही दर्शाता है — यही वजह है कि यह फीस-रहित सिमुलेशन से ज़्यादा भरोसेमंद है।
वे लाइव-मात्र घर्षण जिन्हें यह दोहरा नहीं सकता
कोई भी Backtest लाइव एग्ज़ीक्यूशन को पूरी तरह मॉडल नहीं कर सकता। ये वे फ़र्क हैं जो लाइव नतीजों को अलग बनाते हैं:
- Latency — Backtest में, सिग्नल और fill एक ही candle पर होते हैं; लाइव में, निर्णय और एग्ज़ीक्यूशन के बीच एक असली (छोटी) देरी होती है।
- आंशिक fills — Backtest एक ऑर्डर को एक ही कीमत पर पूरा भर देता है; लाइव में, बड़े या limit ऑर्डर टुकड़ों में भर सकते हैं या बिल्कुल भी नहीं।
- Order-book की गहराई और liquidity — Backtest मानता है कि आपका ऑर्डर मॉडल की गई कीमत पर भर जाएगा; लाइव में, पतली books कीमत को आपके ख़िलाफ़ हिला सकती हैं।
- आपका अपना बाज़ार प्रभाव — आपके असली ऑर्डर बाज़ार में हिस्सा लेते हैं; Backtest के नहीं लेते।
- Funding के उतार-चढ़ाव — futures के लिए, Backtest अवधि भर के औसत funding दर का उपयोग करता है, इसलिए एक असली पोज़ीशन जो किसी ख़ास समय पर असामान्य रूप से ऊँचे funding से टकराती है, मॉडल की तुलना में ज़्यादा (या कम) लागत ले सकती है।
वह फीस जिसे आपका Backtest छोड़ देता है
एक Freya-विशिष्ट फ़र्क जानने लायक है: Backtest Freya की performance fee नहीं घटाता (लाभदायक ट्रेडों का वह हिस्सा जो आपके प्लेटफ़ॉर्म बैलेंस से निकलता है — देखें फीस की व्याख्या)। एक्सचेंज फीस और funding Backtest में शामिल हैं, लेकिन performance fee एक लाइव-मात्र कटौती है। इसलिए एक लाभदायक रणनीति जीतने वाले ट्रेडों पर लाइव में उसके Backtest के सुझाव से थोड़ा कम नेट देगी।
Liquidation: फ़्लैग किया गया, बचाया नहीं गया
अगर कोई Backtest liquidation-जोखिम की चेतावनी दिखाता है, तो इसे गंभीरता से लें। Backtest उन ट्रेडों को फ़्लैग करता है जिनका drawdown किसी liquidation स्तर के ख़तरनाक रूप से क़रीब आ गया — लेकिन फिर भी यह उन्हें एक ज़बरन liquidation का सिमुलेशन करने के बजाय उनके stop/exit पर दर्ज करता है। लाइव में, वही ट्रेड कुल नुकसान के साथ liquidate हो सकता था। यह फ़र्क leverage के साथ बढ़ता है: आपका leverage जितना ऊँचा होगा, एक "उबरा हुआ" Backtest ट्रेड हक़ीक़त में उतना ही ज़्यादा मिट सकता था।
सबसे बड़ा फ़र्क: बाज़ार ख़ुद
यांत्रिकी को छोड़ दें तो, विचलन का सबसे बड़ा स्रोत यही है कि भविष्य अतीत को दोबारा नहीं चलाएगा। किसी ख़ास ऐतिहासिक अवधि के लिए ट्यून की गई रणनीति परिस्थितियाँ बदलने पर बहुत अलग व्यवहार कर सकती है। यही वजह है कि सत्यापन मायने रखता है — देखें Walk-Forward विश्लेषण — और यही वजह है कि एक बेहतरीन Backtest एक फ़िल्टर है, गारंटी नहीं।
यथार्थवादी उम्मीदें रखना
- लाइव में गहरे drawdowns की उम्मीद करें Backtest के मुक़ाबले — एक आम नियम यह है कि आपने जो सबसे ख़राब drawdown देखा है उसे मन ही मन बढ़ाकर सोचें (इसे Backtest नतीजों की व्याख्या में समझाया गया है)।
- अपने नेट रिटर्न में थोड़ी छूट रखें performance fee और असल-दुनिया के slippage के लिए।
- मज़बूती को सत्यापित करें (walk-forward, out-of-sample) एक ही परफ़ेक्ट Backtest पर भरोसा करने के बजाय।
- लाइव में छोटे से शुरू करें ताकि स्केल बढ़ाने से पहले पुष्टि हो सके कि रणनीति उम्मीद के मुताबिक़ व्यवहार करती है।
अक्सर पूछे जाने वाले सवाल
क्या Freya का Backtest ट्रेडिंग फीस शामिल करता है?
हाँ। यह हर ऑर्डर पर असली एक्सचेंज maker/taker फीस लागू करता है — entry, हर averaging ऑर्डर, और exit। यही वजह है कि एक Freya Backtest का नेट नतीजा उस सिमुलेशन से ज़्यादा यथार्थवादी है जो फीस को नज़रअंदाज़ करता है।
क्या Backtest में slippage शामिल है?
हाँ, एक रूढ़िवादी मात्रा, जो market और stop ऑर्डर पर लागू होती है ताकि fills को आदर्श से थोड़ा ख़राब मॉडल किया जाए। Limit और take-profit fills एकदम सटीक target कीमत मानते हैं (क्योंकि एक limit या तो अपनी कीमत पर भरता है या भरता ही नहीं)।
क्या Backtest futures funding का हिसाब रखता है?
futures के लिए, हाँ — यह किसी पोज़ीशन को थामे रखने की अवधि में funding लागत का अनुमान लगाता है और उसे घटाता है। ध्यान दें कि यह अवधि के लिए एक औसत funding दर का उपयोग करता है, इसलिए असली funding जो किसी ख़ास समय पर उछलता है, अनुमान से अलग हो सकता है।
क्या Backtest, Freya की performance fee घटाता है?
नहीं। एक्सचेंज फीस और funding शामिल हैं, लेकिन लाभ पर Freya की performance fee आपके प्लेटफ़ॉर्म बैलेंस से एक लाइव-मात्र कटौती है। इसलिए जीतने वाले ट्रेडों पर आपका लाइव नेट Backtest के दिखाए से थोड़ा कम होगा। देखें फीस की व्याख्या।
मेरा लाइव drawdown Backtest से ख़राब क्यों है?
लाइव एग्ज़ीक्यूशन ऐसे घर्षण जोड़ता है जिन्हें Backtest पूरी तरह मॉडल नहीं कर सकता — latency, आंशिक fills, पतली liquidity, funding के उतार-चढ़ाव — और बाज़ार ख़ुद बदलता है। अपने Backtest के सबसे ख़राब मामले से भी गहरे लाइव drawdowns के लिए योजना बनाएँ।
मेरा Backtest लाभदायक था पर मैं लाइव में liquidate हो गया — क्यों?
Backtest liquidation जोखिम को फ़्लैग करता है लेकिन ज़बरन liquidation का सिमुलेशन नहीं करता; यह ट्रेड को उसके stop/exit पर दर्ज करता है। लाइव में, एक गहरा drawdown पोज़ीशन को कुल नुकसान के साथ liquidate कर सकता है। ऊँचा leverage आमतौर पर इसकी वजह होती है — जोखिम कम करने के लिए इसे घटाएँ।
क्या ठीक उसी अवधि पर परीक्षण करना जिस पर मैं ट्रेड करूँगा, वही नतीजा गारंटी करेगा?
नहीं। पुराना डेटा दोहराता नहीं है, और भविष्य का बाज़ार उस ऐतिहासिक अवधि से मेल नहीं खाएगा। Backtesting का उपयोग रणनीतियों को फ़िल्टर और सत्यापित करने के लिए करें (walk-forward, out-of-sample), लाइव रिटर्न की गारंटी के रूप में नहीं।
