راهبردی که در طول توقف معاملات موقعیت خود را نگه میدارد، تا ازسرگیری معاملات خروج عادی ندارد. راهبردی که هنگام توقف سفارش میفرستد، ممکن است بسته به محل معامله و دستورهای سفارش، با رد شدن، در صف ماندن، لغو شدن یا انتقال به زمان بازگشایی روبهرو شود. اگر بکتست شما آن را با آخرین قیمت پیش از توقف اجرا کند، بازاری را مدل کردهاید که وجود نداشته است.
قاعده عملی ساده است: توقف را بهصورت تغییر وضعیت در محل معامله ثبت کنید، سفارشها و موقعیتهایی را که طبق قواعد باید باقی بمانند حفظ کنید و اجرای زمان بازگشایی را جداگانه مدل کنید. یک بخش خالی در سری قیمت هیچیک از این موارد را به شما نمیگوید.
آیا توقف معاملات با دادههای مفقود یا حجم صفر یکسان است؟
خیر. داده مفقود یعنی خوراک داده شما مشاهدهای ندارد. حجم صفر یعنی خوراک گزارش میدهد که در یک بازه معاملهای انجام نشده است. توقف یعنی در پی یک رویداد مشخص بازار، معامله در دسترس نبوده یا محدود شده است. هرکدام پیامد متفاوتی برای سفارشها دارند.
فرض کنید معامله سهام در ساعت 10:17، پس از رسیدن قیمت به $24.80 متوقف میشود. راهبرد شما در ساعت 10:18 یک سفارش فروش محدود با قیمت $24.70 ثبت میکند. بازار پیوسته و عادیای وجود ندارد که سفارش در آن اجرا شود. اگر سهام با قیمت $22.10 بازگشایی شود، بکتست نمیتواند بیسروصدا اجرای سفارش در $24.70 را ثبت کند، فقط چون آن سفارش در برابر مظنه قدیمی پیش از توقف، قابلاجرا به نظر میرسید. سرنوشت سفارش به قواعد محل معامله، مدت اعتبار آن و واجد شرایط بودنش برای فرایند بازگشایی بستگی دارد.
| وضعیت مشاهدهشده | مفهوم آن | کاری که شبیهساز باید انجام دهد |
|---|---|---|
| وقفه در خوراک داده | وضعیت بازار در دادههای شما نامشخص است | قیمتها را ناموجود علامتگذاری کنید؛ فرض نکنید معامله متوقف شده است |
| بازه با حجم صفر | معاملهای برای این بازه گزارش نشده است | وضعیت مظنه و محل معامله را جدا از حجم معاملات نگه دارید |
| توقف اعلامشده | معامله متوقف یا محدود شده است | قواعد سفارش و بازگشایی مربوط به توقف را اعمال کنید |
توقف لزوماً رویدادی نیست که کل بازار را دربر بگیرد. ممکن است معامله یک ورقه بهادار متوقف شود، درحالیکه ابزارهای مرتبط همچنان معامله میشوند؛ یا وضعیت در یک محل معامله با محل دیگر فرق داشته باشد. رکورد رویداد شما باید ابزار، محل معامله، دلیل توقف در صورت موجود بودن، زمان شروع، زمان پایان و منبع را دربر بگیرد. اگر ارائهدهنده داده فقط تاریخ یا یک تصویر لحظهای از وضعیت را میدهد، وانمود نکنید که زمان دقیق تغییر وضعیت را میدانید.
در طول توقف چه بر سر سفارشها میآید؟
پاسخ یکسانی برای همه موارد وجود ندارد. محل معامله ممکن است سفارشها را لغو کند، سفارشها در صف باقی بمانند یا برای حراج آغازین یا بازگشایی واجد شرایط شوند. نوع سفارش و مدت اعتبار آن اهمیت دارد؛ محل معامله و رویداد هم همینطور. شبیهسازی که همه سفارشها را حفظ میکند، یک سیاست را انتخاب کرده است، نه اینکه قانونی طبیعی را اجرا کند.
این سیاست را برای هر دسته از سفارشها مکتوب کنید. برای نمونه، راهبردی ممکن است با آگاه شدن از توقف، سفارشهای اجرانشده خودش را لغو کند، حد ضرر حفاظتی را بهعنوان قصدی برای معامله نگه دارد نه اجرای تضمینشده، و پس از ازسرگیری معاملات سفارش تازهای بفرستد. راهبرد دیگری ممکن است عمداً سفارشهای واجد شرایط را برای حراج باقی بگذارد. اینها راهبردهای متفاوتی هستند و باید نتایج متفاوتی داشته باشند.
به سفارشهای حد ضرر توجه ویژه داشته باشید. قیمت حد ضرر شرطی برای فعال شدن سفارش است، نه تضمینی برای اجرا در همان قیمت. اگر سهام پایینتر از حد ضرر فروش بازگشایی شود، نخستین قیمت قابلاجرا ممکن است بسیار پایینتر باشد. مدل کردن حد ضرر بهصورت اجرای خودکار در قیمت فعالسازی، ریسک شکاف قیمتیای را پنهان میکند که قرار بود سفارش آن را مدیریت کند.
قیمت و اجرای سفارش هنگام بازگشایی را چطور مدل کنم؟
اگر داده حراج بازگشایی را دارید، از آن استفاده کنید: قیمت حراج، تاریخچه عدمتوازن سفارشها یا قیمت شاخص در صورت ارتباط، و قواعد واجد شرایط بودن و اولویت سفارش. سپس محدودیتهای سفارش راهبرد را اعمال کنید. سفارش محدود فقط در صورتی اجرا میشود که قیمت حراج و تخصیص اجازه دهند؛ سفارش بازار ممکن است با رعایت قواعد محل معامله و مقدار در دسترس، با قیمت حراج اجرا شود.
بدون داده حراج، با تکیه بر آخرین معامله پیش از توقف، دقت ساختگی ایجاد نکنید. یک تقریب محافظهکارانه این است که اجرا را تا نخستین مشاهده قابلاتکا پس از بازگشایی به تعویق بیندازید و سپس مدل مستندشدهای برای فاصله خریدوفروش و اثر بازار به کار ببرید. این روش هم ممکن است خوشبینانه باشد: سقف و کف یک کندل نشان نمیدهند که سفارش شما در صف جلوتر بوده یا در قیمت شما حجم کافی وجود داشته است.
این شکاف پیشبینی نیست. فقط نشان میدهد چرا نگه داشتن قیمت ثبتشده قبلی میتواند ریسک را کمتر از واقع نشان دهد. در طول توقف، موقعیت همچنان وجود دارد، اما ممکن است ارزش نقدشوندگی فعلی آن نامشخص باشد. اگر لازم است، آخرین قیمت ثبتشده را برای حسابداری نگه دارید، آن را قدیمی علامتگذاری کنید و آن را مظنهای قابلاجرا به حساب نیاورید.
چطور بفهمم نحوه رسیدگی به توقفها روی نتیجه بکتست اثر گذاشته است؟
برای هر سفارش شبیهسازیشدهای که با توقف یا بازگشایی همپوشانی دارد، یک ممیزی کوچک انجام دهید. رویداد، وضعیت سفارش پیش و پس از آن، قاعده اجرای انتخابشده و منبع قیمت را در رکورد نگه دارید. سپس نتایج را با چند سیاست معقول مقایسه کنید: لغو سفارشها هنگام توقف، حفظ سفارشهای واجد شرایط برای بازگشایی و بهتعویق انداختن همه اجراهای جدید تا ازسرگیری معاملات عادی.
اگر عملکرد بهشدت تغییر کند، نتیجه به سازوکارهای بازاری وابسته است که شاید دادههای شما نتوانند روشنشان کنند. این اطلاعات مفیدی است. به شما میگوید پیش از آنکه بکتست را شاهدی معتبر بدانید، چه چیزهایی را باید در مستندات محل معامله یا دادههای حراج با دقت زمانی بالاتر بررسی کنید.
دفتر ثبت موقعیتها را هم دقیق نگه دارید. با توقف معاملات، ریسک تا وقتی نمودار منتظر کندل بعدی است ناپدید نمیشود. راهبرد همچنان در معرض قیمتی است که بازار هنگام بازگشایی دوباره پیدا میکند.
← همهٔ مطالب


