بازارهای رایانه محور برای ابزارهایی مانند سهام و گزینه های سهام قابل معامله در بورس، امور مالی و جریان سرمایه را متحول کرده است. این بازارها با موتورهای تطبیق سفارش (و زیرساختی که از این نرم افزار پشتیبانی می کند) فعال می شوند. قبل از شبکههای تجاری کامپیوتری و موتورهای تطبیق، سهام در طبقات مبادلات غاردار معامله میشد و هزینههای مبادله بالا بود. هنگامی که تجارت الکترونیکی به بلوغ کامل رسید، معامله گران طبقه به یک نابهنگاری محو شدند و هزینه های تراکنش در بسیاری از موارد به یک پنی سهم کاهش یافت. تجارت الکترونیکی نمی تواند بدون زیرساخت شبکه پیشرفته وجود داشته باشد، اما بدون موتورهای تطبیق نرم افزار هیچ سهامی تغییر نخواهد کرد. شبکههای تجاری کامپیوتری، نرمافزار موتور تطبیق نیز پیوندی متمرکز از شکست بالقوه ایجاد کردهاند. با افزایش فرکانس و حجم در شبکه های الکترونیکی، خرابی در این سیستم ها افزایش یافته است. موقعیت موتورهای تطبیق سفارش در زیرساخت معاملات، این سیستم ها را نه تنها برای دانشمندان رایانه بلکه برای مدیریت مالی محاسباتی و مدیریت ریسک نیز مورد توجه قرار می دهد. موتورهای تطبیق با سفارشهای خرید و فروش که به شبکههای تجارت الکترونیکی مانند NASDAQ ارسال میشوند، مطابقت دارند. شبکه های تجارت الکترونیکی زمانی به وجود آمدند که بازارهای سهام در حال رها شدن از مقررات بودند و معاملات به سمت افزایش سکه ای حرکت کردند.
یکی از اولین شبکه های تجاری مدرن جزیره بود (که در نهایت توسط NASDAQ خریداری شد). جاش لوین این نرم افزار را برای موتور تطبیق جزیره تهیه کرد [1]. او در ابتدا نرم افزاری را برای بهره برداری از سیستم اجرای سفارش کوچک (SOES) نوشت و از "راهزنان SOES" در یک شرکت معاملاتی روزانه به نام DateK پشتیبانی کرد. از لحاظ تاریخی افزایش معاملات الکترونیکی بحث برانگیز بوده است زیرا تجارت آن را تهدید می کند سیستم متخصصان بازار ، کمیسیون های تجاری بالاتر و گسترش پیشنهادات/درخواست. جزیره با فراهم کردن دسترسی آزاد به هر مشتری که می تواند هزینه اتصال ، اجرای سریع سفارش و هزینه های پایین معاملات را بپردازد ، خود را از سایر شبکه های الکترونیکی در حال تحول (در آن زمان ، رویترز اینستینت و انتخاب NASDAQ) متمایز کرد. در قلب جزیره موتور تطبیق جاش لوین (که روی MS-DOS حرکت می کرد) بود. مشتریان اولیه جزیره شامل برخی از صندوق های تامینی بودند که پیشگام معاملات فرکانس بالا ، از جمله میز معاملات خودکار و فناوری رنسانس بودند. شبکه های معاملاتی الکترونیکی معاملات فرکانس بالا را فعال می کنند که تقاضا برای معاملات سریعتر و حجم معاملات بالاتر را تأمین می کند. زیرساخت های تجاری الکترونیکی برای پشتیبانی از موتورهای تطبیق موازی توزیع شده و شبکه های بسیار سریع با استفاده از فناوری های پیشرفته تکامل یافته است. تجارت فرکانس بالا فراتر از محدوده این توضیحات است.
گسترش موتورهای تطبیق
تجارت فرکانس بالا و تجارت الگوریتمی پیشرفته به ویژگی های بازارهای الکترونیکی تبدیل شده است [1] [3]. برخی از این نرم افزار در محیطی مستقر شده اند که در هنگام اجرای سریع سفارش ، هزینه ای ندارد. سرورهایی که میزبان این نرم افزار هستند با مبادلات و شبکه های رایانه ای تخصصی مستقر شده اند تا مزیت میلی ثانیه ای برای معاملات داوری بین مبادلات در شیکاگو و نیویورک فراهم کنند [8]. معامله گران نهادی بزرگ احساس می کنند که در چنین محیطی در معرض ضرر قرار دارند [3] [8]. یک پاسخ به این "مسابقه تسلیحات" در نرم افزار الگوریتمی که در شبکه های تجارت الکترونیکی وجود دارد ، ایجاد شبکه های تجاری است که تجار الگوریتمی را ممنوع کرده و از معامله گران نهادی بهتر پشتیبانی می کند. این شبکه های "استخر تاریک" [1] به مشتریان این امکان را می دهد تا با یکدیگر تجارت کنند و اطلاعات معاملاتی را منتشر نکنند ، به جز معامله هایی که به شبکه های "عمومی" مانند NASDAQ و NYSE هدایت می شوند. این شبکه های مشترک محدود از موتورهای تطبیق سفارش به همان روشی که شبکه هایی مانند جزیره و مجمع الجزایر در گذشته استفاده می کنند ، استفاده می کنند.
** پیشنهاد ** - قیمت در یک سفارش خرید ** سؤال کنید ** - قیمت در یک سفارش فروش ** گسترش ** - شکاف بین پیشنهاد و قیمت درخواست.
شبکه های معاملاتی الکترونیکی از انواع مختلفی از سفارشات پشتیبانی می کنند که برخی از آنها به نفع برخی از شرکت کنندگان در بازار هستند [3]. به منظور ساده سازی مدل ، موتور تطبیق مورد بحث در اینجا فقط از سه نوع سفارش پشتیبانی می کند (که بیشتر سفارشات موجود در بازار را به خود اختصاص می دهد).
دستور خرید یا فروش با بهترین قیمت در زمان ارسال سفارش. اگر سفارش در یک مسابقه واحد پر نشود ، ممکن است یک سفارش بازار با قیمت های مختلف پر شود.
سفارش محدود ، سفارش خرید یا فروش سهام با قیمت خاص یا بهتر است. سفارش محدودیت خرید فقط با قیمت محدود یا پایین تر قابل اجرا است و یک سفارش محدودیت فروش فقط با قیمت محدود یا بالاتر قابل اجرا است. یک سفارش محدود برای اجرای آن تضمین نشده است. در صورتی که قیمت بازار سهام به قیمت محدودیت برسد ، می توان یک سفارش محدود را پر کرد.[5]
سفارشات محدود ممکن است مقدار "زمان لازم" داشته باشند ، پس از آن ترتیب محدود به طور خودکار منقضی می شود. اگر این زمان تعریف نشده باشد ، سفارش محدود در پایان روز معاملات منقضی می شود.
هنگامی که قیمت بازار به نقطه ای که در دستور توقف مشخص شده است ، یک سفارش توقف به یک سفارش بازار تبدیل می شود. یک سفارش توقف قیمت ویژه اعدام را تضمین نمی کند و ممکن است به طور قابل توجهی از قیمت توقف آن استفاده کند. سفارش توقف فروش همیشه معمولاً زیر قیمت فعلی بازار قرار می گیرد. سفارشات متوقف شده گاهی اوقات سفارشات "متوقف کردن از دست دادن" نامیده می شوند. مانند یک سفارش محدود ، یک دستور توقف ممکن است مقدار "زمان لازم" داشته باشد ، پس از آن سفارش توقف به طور خودکار منقضی می شود. اگر این مقدار تعریف نشده باشد ، سفارش در پایان روز تجارت منقضی می شود.
لغو سفارشات محدود یا توقف.
یک سفارش لغو محدودیت یا سفارش توقف را لغو می کند (اگر سفارش توقف به یک دستور محدود تبدیل نشده باشد ، در این صورت نمی توان آن را لغو کرد). سفارشات بازار را نمی توان لغو کرد زیرا اجرای آنها بلافاصله در صورت وجود دستور مخالف انجام می شود. لغو سفارش بازار غیر قطعی خواهد بود ، بنابراین این پشتیبانی نمی شود.
قوانین مربوط به موتورها
موتور تطبیق مدل از صف سفارش زیر پشتیبانی می کند:
صف سفارش را لغو کنید
صف سفارش بازار
صف سفارش را محدود کنید
صف سفارش را متوقف کنید
سفارشات به ترتیب ذکر شده در بالا پردازش می شوند. سفارشات لغو ابتدا پردازش می شوند و به دنبال آن سفارش بازار ، سفارشات محدود و سفارش متوقف می شوند. در این بخش قوانین استفاده شده توسط موتور تطبیق سفارش برای اجرای سفارش مورد بحث قرار می گیرد. این قوانین از چندین منبع ، از جمله [4] گرفته شده است.
سفارشات ممکن است تا حدی پر شوند یا به هیچ وجه پر شوند (در صورت سفارش محدود).
پس از لغو سفارشات ، سفارشات بازار بالاترین اولویت را داده می شود و بلافاصله هنگامی که یک دستور مخالف در بازار وجود داشته باشد ، بلافاصله اجرا می شود. سفارشات بازار ممکن است تا حدی پر شود ، با قیمت های مختلف.
همیشه تلاش می شود تا ابتدا با سفارش خرید مطابقت داشته باشد ، در برابر سفارشات فروش موجود.
سفارشات محدود طبقه بندی شده اند:
- سفارشات خرید به ترتیب نزولی با قیمت پیشنهادی و سفارش صعودی توسط تمبر زمان برای سفارشاتی که قیمت یکسانی دارند ، مرتب می شوند. سفارشات با بالاترین قیمت پیشنهاد (خرید) در بالای صف نگه داشته می شوند و ابتدا اجرا می شوند. برای پیشنهادات با قیمت برابر ، نظمی که برای اولین بار وارد می شود ، ابتدا اجرا می شود.
- سفارشات فروش با سفارش صعودی با قیمت درخواست خود و مانند سفارشات خرید ، با صعود سفارش توسط تمبر زمان برای سفارشات با همان قیمت مرتب می شوند. سفارشات با پایین ترین قیمت (Ask) قیمت ها ابتدا فروخته می شوند. برای سفارشات با همان قیمت سؤال ، سفارش که برای اولین بار وارد می شود ، ابتدا فروخته می شود.
هنگامی که یک سفارش تکمیل می شود ، یا به دلیل پر شدن ، لغو یا منقضی شدن ، یک پیام وضعیت به نماینده ای که سفارش را ارسال کرده است بازگردانده می شود. هر زمان که معامله بازار وجود داشته باشد ، این خطر وجود دارد که یک طرف مقابل به طور پیش فرض در معامله پیش فرض کند. مبادلات سفارش ، مانند Nasdaq و NYSE شامل چندین خانه پاکسازی است که به عنوان احزاب ضد معامله عمل می کنند. در اینجا خریدار و فروشنده با خانه پاکسازی معامله می کنند. اگر یک طرف پیش فرض کند ، خانه پاکسازی در معامله خوب خواهد بود. خانه پاکسازی هزینه ای را برای این سرویس ، از طریق پیشنهاد/گسترش درخواست یا هزینه معامله مستقیم جمع می کند. در موتور تطبیق مدل این پیچیدگی ها نادیده گرفته می شود و فرض بر این است که هیچ پیش فرض ضد طرف وجود ندارد ، بنابراین هیچ خانه پاکسازی لازم نیست. کلیه معاملات در موتور تطبیق سفارش انجام می شود.
حضور سفارشات بازار و محدود ، قوانین معاملات و روند تشکیل قیمت بازار را پیچیده می کند. برخی از مقالات در مورد مدل های بازار ریاضی بدون تعریف دقیق قوانین بحث می کنند [6]. نتیجه ممکن است یک مدل ریاضی باشد که در واقع با رفتار واقعی بازار مطابقت ندارد. در مقالات دیگر [7] مدل ناقص است:
سرمایه گذاران به صورت متوالی وارد بازار می شوند تا یک سهم از دارایی پرخطر را از طریق سفارش بازار یا سفارش محدود معامله کنند. یک سفارش بازار فقط در صورت وجود یک سفارش محدود همتای امکانپذیر است، و در چنین حالتی، سفارش بازار با قطعیت در قیمت سفارش محدود مشابه اجرا میشود.
در اینجا نویسندگان موردی را در نظر نمی گیرند که در آن دو سفارش بازار متضاد (یک خرید و یک فروش) وجود داشته باشد. هر دوی این سفارشها نسبت به سفارشهای محدود اولویت اجرا دارند و در صورتی که این قیمت بهتر از قیمت سفارش محدود باشد، با قیمت بازار اجرا خواهند شد. این در شکل 1 نشان داده شده است. [نمودار شکل 1 اینجا می رود]
همانطور که شکل 2 نشان می دهد، تطبیق سفارش محدود نیز با وجود هر دو سفارش محدود و بازار پیچیده است.
[شکل 2 نمودار به اینجا می رود]
تطبیق معماری موتور
شکل 3 نمای کلی از معماری سیستم تطبیق سفارش بازار را نشان می دهد. سیستم تطبیق سفارش به یک شبکه تجارت الکترونیک متصل است. شرکت کنندگان در این شبکه یک اتصال (به طور کلی از طریق یک لایه سوکت امن یا اتصال SSL) به سیستم تطبیق بازار برقرار می کنند. این سیستم دارای اجزای زیر است:
- مسیریاب تراکنش، اتصالات سوکت TCP/IP را به بازیگران بازاری که سفارشات را ارسال می کنند و وضعیت سفارش را دریافت می کنند، مدیریت می کند. هنگامی که روتر تراکنش سفارشی را دریافت می کند، آن را به صف مربوطه (بازار، محدود یا لغو) ارسال می کند.
- صف لغو شامل درخواست های لغو است.
- صف سفارش بازار شامل صف هایی است که دستورات بازار برای اجرا دارند. در داخل صف سفارش بازار یک صف برای سفارشات خرید و فروش اجرا می کند. به محض اینکه سفارش مخالف در بازار وجود داشته باشد، یک سفارش بازار حداقل تا حدی پر می شود. سفارشات در اولویت اول در اولین اجرا اجرا می شوند.
- صف سفارش محدود شامل سفارشات محدود و توقف است. در داخل این صف منطقی از صف های خرید و فروش برای سفارشات محدود و سفارشات توقف پشتیبانی می کند. هنگامی که به نقطه قیمت بازار برای یک دستور توقف رسید، به یک دستور بازار تبدیل می شود و به صف سفارش بازار ارائه می شود. Limit Order Queue از لغو سفارش و انقضای سفارش پشتیبانی می کند.
- موتور تطبیق سفارش، سفارشهای صفها را طبق قوانین بالا مطابقت میدهد. هنگامی که یک سفارش تکمیل یا لغو می شود، با وارد کردن وضعیت در صف وضعیت بازگشت، وضعیت به فعال بازار گزارش می شود.
"کتاب سفارش" از سفارشات در روهای صف ها تشکیل شده است. این سفارشات بهترین قیمت فعلی را برای پیشنهادات و درخواست ها نشان می دهد. قیمت بازار یا توسط قیمت های باز بازار یا با سفارشات محدود تعیین می شود. سفارشات بازار هیچ قیمت هدف ندارد ، بنابراین آنها نمی توانند قیمت موجود در بازار را تعریف کنند.[شکل 3 نمودار به اینجا می رود] مکان مهم موتورهای تطبیق سفارش در تجارت مالی به این معنی است که قابلیت اطمینان و تحمل گسل یک ویژگی مهم در یک موتور تطبیق تولید است. اگر خرابی سخت افزار یا نرم افزار وجود داشته باشد ، بسیار مهم است که وضعیت سفارشات تکمیل شده باید حفظ شود. به طور کلی این بدان معنی است که وضعیت موتور تطبیق در یک پایگاه داده ذخیره می شود. ویژگی های قابلیت اطمینان و تحمل گسل از موتور تطبیق مدل مورد بحث در اینجا حذف شده است. یکی از چالش های طراحی موتور تطبیق برای معاملات واقعی بازار ، مدیریت اولویت صف های مختلف است. به عنوان مثال ، درخواست های لغو ممکن است ابتدا قبل از هر سفارش انجام شود. با این حال ، برخی از معامله گران با فرکانس بالا با سفارشات و لغو بازار را سیل می کنند. در این حالت ممکن است درخواست های لغو به طور موقت از بازار یا محدود کردن سفارشات را مسدود کنند. به همین ترتیب ، سفارشات خرید بازار از زمان ارائه نقدینگی به بازار ، بالاترین اولویت را دارند. با این حال ، این امکان وجود دارد که جریان سفارشات بازار سفارشات محدود را مسدود کند ، که می تواند احزاب ضد سفارشات بازار باشد.
اتصال به روتر معامله
اتصالات به موتور تطبیق ، از طریق روتر معامله ، از طریق سوکت های TCP/IP انجام می شود. مشتری از طریق یک درگاه TCP/IP شناخته شده (از پیش تعریف شده) (از پیش تعریف شده) (از پیش تعریف شده) وصل می شود. سپس روتر تراکنش موضوعی را برای رسیدگی به معاملات از آن مشتری ایجاد می کند. در یک سیستم تطبیق سفارش واقعی ، روند اتصال دو مرحله خواهد داشت:
- یک موضوع تأیید اعتبار ایجاد کنید که مشتری را تأیید کند (به عنوان مثال ، نام کاربر و رمز عبور یا سایر اعتبارنامه ها را بررسی کنید).
- اگر تأیید اعتبار شود ، یک موضوع پردازش سفارش ایجاد می شود. در صورت عدم موفقیت تأیید اعتبار ، خطایی بازگردد.
موتور تطبیق مدل از مرحله احراز هویت پشتیبانی نمی کند ، زیرا این فقط در یک زمینه تولید واقعی مورد نیاز است. کلیه مشتری ها مجاز به ارسال سفارش هستند.
نمونه ای از موتور تطبیق برای هر سهام که معامله می شود ایجاد می شود. این موتور تطبیق سفارشات مربوط به آن سهام را پردازش می کند. نتیجه پردازش سفارش ، کتاب سفارش با پیشنهاد فعلی/Ask Ask است. این گسترش به سادگی آخرین خرید (پیشنهاد) و آخرین قیمت فروش (سؤال) است. در موتورهای تطبیق الکترونیکی این بازار ساز نیست. معامله گرانی که مانند سازندگان بازار عمل می کنند ، نقدینگی را برای بازار فراهم می کنند و پس از آن می توانند سود کمی کسب کنند ، ممکن است در یک بازار الکترونیکی وجود داشته باشند ، اما لازم نیست. در نتیجه ، بازارهای الکترونیکی ، از نظر تئوری ، می توانند فوراً پیشنهاد/درخواست صفر را داشته باشند.
- شناسه مشتری (شناسه منحصر به فرد برای مشتری بازار)
- شناسه سهام (معمولاً شماره cusip)
- نوع سفارش (خرید/فروش)
- کلاس سفارش (بازار ، حد ، توقف)
- قیمت واحد (یعنی قیمت هدف برای یک سفارش محدود)
- تعداد سهام (برای خرید یا فروش)
- پر کردن جزئی مجاز است (برای سفارشات محدود): 1 = پر کردن جزئی مجاز ، 0 = بدون پر کردن جزئی
- زمان انقضا (زمان سفارش باید در چند دقیقه در بازار فعال باشد)
تأیید سفارش یا وضعیت خطا بلافاصله هنگام پذیرش سفارش بازگردانده می شود. تأیید در پاسخ به سفارش یا لغو ارسال می شود.
- وضعیت (به عنوان مثال ، سفارش پذیرفته شده ، خطا و غیره)
- شناسه سفارش بازار (شناسه اختصاص داده شده توسط بازار برای این سفارش)
- تمبر زمان (زمان پذیرش سفارش)
شناسه سفارش بازار شناسه ای خواهد بود که در گزارش نتیجه سفارش یا به ترتیب لغو استفاده می شود.
- شناسه مشتری
- شناسه سفارش بازار
هنگامی که سفارش لغو می شود یا حداقل سفارش لغو می شود ، نتیجه سفارش بازگردانده می شود (یا حداقل تا حدی پر شده). سفارشات بازار (یا سفارشات متوقف شده به سفارشات بازار) ممکن است با قیمت های مختلف بیش از یک پر داشته باشد.
- شناسه مشتری
- شناسه سفارش بازار
- تمبر زمان
- وضعیت: پر ، منقضی ، لغو شده
- تعداد پر کردن
یک ترتیب محدود که اجازه می دهد تا یک قطعه جزئی تکمیل شود ، در صورت پر کردن سفارش محدود ، تا حدی پر می شود.