آپشنز کا بیک ٹیسٹ حکمتِ عملی کے کوڈ کی ایک سطر بدلے بغیر بھی بدل سکتا ہے۔ کوئی وینڈر خراب کوٹ درست کرتا ہے، تاخیر سے آنے والی ٹریڈ شامل کرتا ہے، کنٹریکٹ میٹاڈیٹا پر نظرِ ثانی کرتا ہے، یا کراسڈ مارکیٹس کے لیے اپنا فلٹر بدلتا ہے۔ آپ وہی تاریخیں دوبارہ چلاتے ہیں اور مختلف فل، مختلف پوزیشن، شاید مختلف Sharpe حاصل کرتے ہیں۔ ضروری نہیں کہ یہ حکمتِ عملی کا بگ ہو۔ یہ اس شواہد میں تبدیلی ہے جس کے خلاف حکمتِ عملی کو آزمایا گیا تھا۔
آپشنز کے بیک ٹیسٹ کو قابلِ تکرار بنانے کے لیے مارکیٹ ڈیٹا کو ورژن شدہ اِن پٹ سمجھیں۔ درج کریں کہ آپ نے کون سا اسنیپ شاٹ استعمال کیا، ہر فیصلے کی بنیاد بننے والے خام مشاہدات محفوظ رکھیں، اور نئے مجموعی نتیجے پر بھروسا کرنے سے پہلے کنٹریکٹ اور ٹائم اسٹیمپ کی سطح پر بدلے ہوئے نتائج کا موازنہ کریں۔
کوڈ وہی رہنے کے باوجود میرا آپشنز بیک ٹیسٹ کیوں بدلا؟
آپشنز کے ریکارڈ تصحیحات کے لیے غیر معمولی طور پر حساس ہوتے ہیں، کیونکہ کسی کنٹریکٹ کی بظاہر قابلِ تجارت ہونے کی حیثیت کئی ایسے فیلڈز پر منحصر ہوتی ہے جو ایک ساتھ بدلتے ہیں: بولی، پیشکش، سائز، بنیادی اثاثے کی قیمت، میعاد ختم ہونے کی تاریخ، اسٹرائیک، اور کنٹریکٹ کا ملٹی پلائر یا قابلِ ترسیل اثاثہ۔ درست کیا گیا کوٹ بظاہر موجود موقع کو کراسڈ مارکیٹ میں بدل سکتا ہے۔ میٹاڈیٹا کی درستی پوزیشن کے ملٹی پلائر کا مطلب بدل سکتی ہے۔
فرض کریں ایک حکمتِ عملی اس وقت کال خریدتی ہے جب پیشکش $2.00 سے کم ہو۔ ڈیٹا پہلی بار لوڈ ہونے پر 10:14 کا کوٹ $1.95 پیشکش، $1.90 بولی، اور سائز 5 دکھاتا ہے۔ بعد میں وینڈر ایکسچینج کے تاخیر سے آنے والے پیغام کی تطبیق کے بعد پیشکش کو $2.05 کر دیتا ہے۔ ایک مشاہدہ سگنل پلٹ دیتا ہے۔ اگر اس دن اس کنٹریکٹ پر حکمتِ عملی کی واحد ٹریڈ تھی، تو ڈیٹا کی معمولی سی تصحیح دن کے منافع پر غالب آ سکتی ہے۔
کوٹ فلٹرنگ بھی اہم ہے۔ وینڈرز پرانے کوٹس گرا سکتے ہیں، کراسڈ مارکیٹس ہٹا سکتے ہیں، یا ٹائم اسٹیمپس کو مختلف انداز میں یکساں بنا سکتے ہیں۔ یہ پالیسیاں معقول ہو سکتی ہیں، مگر ڈیٹاسیٹ کی شناخت کا حصہ ہیں۔ “SPY آپشنز، جنوری سے مارچ تک” سے قابلِ تکرار تاریخ متعین نہیں ہوتی۔
آپشنز ڈیٹا کا ونٹیج کیا ہوتا ہے؟
ڈیٹا ونٹیج تاریخی مشاہدات کا وہ عین ورژن ہے جو کسی مخصوص تحقیقی رن کے لیے دستیاب تھا۔ وینڈر اور ڈیٹاسیٹ کا نام، ڈیٹا حاصل کرنے کا وقت، تاریخوں کی حد، اسکیما ورژن، اور صفائی یا فلٹرنگ کے قواعد محفوظ رکھیں۔ اگر وینڈر اسنیپ شاٹ IDs یا نظرِ ثانی کے ٹائم اسٹیمپس فراہم کرتا ہے، تو وہ بھی محفوظ کریں۔
ہر نقلی فیصلے کے لیے اتنی تفصیل محفوظ رکھیں کہ ان سوالوں کے جواب مل سکیں: کس کنٹریکٹ پر غور کیا گیا، کون سا کوٹ منتخب ہوا، وہ کوٹ کب شائع یا موصول ہوا، اور کس اصول کے تحت وہ اہل قرار پایا؟ خام ریکارڈ اور اس سے اخذ کردہ ریکارڈ، دونوں اہم ہیں۔ ماخذ کے ٹائم اسٹیمپس کے بغیر صاف کیا ہوا NBBO یہ بات چھپا سکتا ہے کہ کوٹ پرانا تھا یا نقلی فیصلے کے بعد آیا تھا۔
| محفوظ رکھنے والا ریکارڈ | یہ کیوں اہم ہے | مثال |
|---|---|---|
| ماخذ کا اسنیپ شاٹ | اس رن میں استعمال ہونے والی تاریخ کی شناخت کرتا ہے | وینڈر ریویژن ID اور ڈیٹا حاصل کرنے کا ٹائم اسٹیمپ |
| کوٹ کا ماخذی ریکارڈ | منتخب مارکیٹ کی وضاحت کرتا ہے | ایکسچینج، واقعے کا وقت، موصول ہونے کا وقت، بولی/پیشکش اور سائز |
| کنٹریکٹ کی شرائط | بتاتی ہیں کہ آپشن کس چیز کی نمائندگی کرتا تھا | اسٹرائیک، میعاد ختم ہونے کی تاریخ، ملٹی پلائر اور قابلِ ترسیل اثاثہ |
| صفائی کی پالیسی | دکھاتی ہے کہ کون سے مشاہدات خارج کیے گئے | باسی پن کی حد اور کراسڈ کوٹس سے نمٹنے کا طریقہ |
میں کیسے جانچوں کہ وینڈر کی نظرِ ثانی نے میرے نتائج بدلے ہیں؟
دونوں اسنیپ شاٹس پر وہی حکمتِ عملی اور کنفیگریشن چلائیں۔ پہلے تاریخ کے لحاظ سے اہل مشاہدات اور کنٹریکٹس کی تعداد کا موازنہ کریں۔ پھر فیصلوں اور فلز کا موازنہ کریں: کون سے سگنل ظاہر ہوئے یا غائب ہوئے، کون سا کوٹ بدلا، اور کیا نئے ریکارڈ نے ماڈل کردہ ایگزیکیوشن قیمت بدل دی۔
صرف کل منافع دیکھ کر نہ رکیں۔ ٹریڈز کی تعداد، داخلے اور اخراج کی قیمتوں، مسترد شدہ سگنلز، اور صرف ایک ونٹیج میں موجود ٹریڈز سے آنے والے P&L کے تناسب میں تبدیلیاں بھی دیکھیں۔ ایک رن کا Sharpe ملتا جلتا رہ سکتا ہے، جبکہ انفرادی ٹریڈز تبدیل ہو رہی ہوں؛ سرخی کا عدد آپ کو نہیں بتائے گا کہ اس کے نیچے موجود تاریخ بدل گئی ہے۔
مفید آڈٹ کے لیے حکمتِ عملی، فیس اور ایگزیکیوشن کے مفروضے مستقل رکھیں۔ اگر ایک ساتھ کئی چیزیں بدلیں گی تو آپ نہیں جان پائیں گے کہ فرق وینڈر کی تصحیح سے آیا یا آپ کے اپنے تجربے سے۔
کیا مجھے ہمیشہ آپشنز کی تازہ ترین تاریخ استعمال کرنی چاہیے؟
جب مقصد وینڈر کی موجودہ بہترین بازتعمیر پر کام کرنا ہو تو تازہ ترین تاریخ استعمال کریں۔ جب آپ کو کسی پچھلے نتیجے کو دوبارہ تیار کرنا ہو یا یہ سمجھنا ہو کہ اس وقت آپ کے تحقیقی نظام کو کیا معلوم تھا، تو پرانا اسنیپ شاٹ محفوظ رکھیں۔ یہ دونوں الگ سوالوں کے جواب دیتے ہیں۔
نقطۂ وقت کی تحقیق میں درست کیا گیا ریکارڈ اب زیادہ صحیح ہو سکتا ہے، مگر اس وقت حکمتِ عملی کے لیے دستیاب نہ تھا۔ جہاں ممکن ہو اشاعت اور موصول ہونے کے اوقات محفوظ رکھیں؛ ورنہ اس حد کو صاف لفظوں میں درج کریں۔ جدید بازتعمیر لازماً تاریخی معلوماتی مجموعہ نہیں ہوتی۔
جب آپشنز کا بیک ٹیسٹ بدل جائے تو پہلا سوال یہ ہونا چاہیے: “کون سے مشاہدات بدلے؟” “کون سا رن درست ہے؟” یہ سوال اس کے بعد آتا ہے جب آپ پہلے سوال کا جواب دے سکیں۔
مجھے ہر بیک ٹیسٹ کے ساتھ کیا محفوظ کرنا چاہیے؟
نتائج کے ساتھ ایک مختصر مینی فیسٹ محفوظ کریں: ڈیٹا فراہم کنندہ اور اسنیپ شاٹ، ڈیٹا حاصل کرنے کا وقت، اسکیما اور صفائی کے ورژن، کنٹریکٹ میٹاڈیٹا کا ماخذ، حکمتِ عملی کا commit، ایگزیکیوشن کے مفروضے، اور رن کی کنفیگریشن۔ ہر ٹریڈ کا لنک ان کوٹ ریکارڈز سے جوڑیں جنہوں نے اسے جواز دیا۔
یہ مختصر ریکارڈ پراسرار دوبارہ رن کو ایسا فرق بنا دیتا ہے جس کا معائنہ کیا جا سکتا ہے۔ آپشنز کی تاریخ میں تصحیحات آتی رہیں گی۔ آپ کا تحقیقی عمل ہر تصحیح کو نمایاں کرے، تاکہ بہتر آرکائیو شواہد کو بہتر بنائے اور تجربے کو خاموشی سے دوبارہ نہ لکھے۔
← تمام پوسٹس


