معاملات الگوریتمی در بورس
معاملات الگوریتمی در بورس
الگوریتم مجموعه دستورالعملهایی است که برای انجام یک کار خاص، طراحیشده است. الگوریتم میتواند یک فرآیند ساده مانند ضرب یک عدد در دو، یا یک عملیات پیچیده مثل استفاده از الگوریتم برای معاملات باشد.
یکی از کاربردهایی که در آن میتوان به کمک الگوریتمها به نتایج دلخواه رسید، استفاده از الگوریتمها در معاملات و بخصوص معاملات بورس است.معاملات الگوریتمی یا معاملات خودکار چند وقتی است که در بازار سرمایه ایران به عنوان یکی از روندهای آتی بازار سرمایه خودنمایی میکنند. شرکتهای استارتآپی و غیر استارتآپی بسیاری در این حوزه شروع به فعالیت کردهاند و ادعاهای جالب و غریبی مطرح میکنند.
در دنیا نیز یادگیری ماشین یا به طور کلیتر، هوش مصنوعی در حال عرض اندام در بازارهای مالی است. شرکتهای بزرگی در دنیا از جمله CITADEL و Black Rock در آمریکا به عنوان رهبران سرمایهگذاری الگوریتمی و شرکتهایی از جمله Quantopian و Numerai با دیدگاههای متفاوت در حال تلاش برای رهبری هوش مصنوعی یا به طور سادهتر، معاملات الگوریتمی در بازارهای مالی هستند.
معاملات الگوریتمی چیست:
تعریف معاملات الگوریتمی یعنی انجام معامله به صورت خودکار یا نیمهخودکار توسط کامپیوتر و بر مبنای الگوریتمی که برای آن نوشته شده است. در این روش، معاملهگر با توجه به استراتژی خود برنامهای را تعریف میکند، ربات به جستوجوی بهترین فرصت معاملاتی بر حسب آن الگو میپردازد و در کسری از ثانیه معامله را انجام میدهد.
به معاملات الگوریتمی معاملات خودکار هم گفته میشود به این معنا که استفاده از برنامههای کامپیوتری برای ورود به سفارشهای معاملاتی بدون دخالت انسان، به بیان دیگر، این الگوریتمها که بلکباکس یا اَلگو تریدینگ هم نامیده میشوند، از زبان برنامه نویسی در کامپیوتر و مجموعهای از دستورهای مشخص شده در کنار هم برای انجام معاملات استفاده میکنند.این الگوریتمها که میتوانند بیش از یکی باشند، برای انجام معاملات بررسیهای لازم را از جنبههای گوناگونی مانند زمانبندی، قیمت و حجم روی سفارشات و بازار انجام داده و تصمیم میگیرند. این امر کمک میکند تا بازار سرمایه به روشی اصولیتر و به دور از دخالت احساسات انسانی پیش رود که یکی از نتایج آن بالارفتن نقدینگی در بازار است.در معاملات الگوریتمی مجموعه دستورالعمل های تعریف شده بر اساس زمان بندی، قیمت، کمیت یا هر مدل ریاضی می باشد. جدا از فرصت های سود برای معامله گر، الگو تریدینگ با رد کردن تاثیر احساسات انسانی بازار را بیشتر به طرف نقدینگی می برد و معاملات به روش اصولی انجام می پذیرد.
الگوریتمهای معاملاتی چه وظایفی دارند؟
معاملات الگوریتمی برای انجام درست و کامل بر اساس استراتژی مشخص شده چهار وظیفه کلی دارند:
- رصد و تحلیل کل بازار بهصورت دقیق و با بیشترین سرعت ممکن
- ثبت اردرها و پوزیشنگیری
- مدیریت پوزیشن
- مدیریت ریسک و سرمایه
هر الگوریتم معاملاتی میتواند هریک این چهار مورد را بهطور کاملا اتوماتیک و با استفاده از رباتهای معاملهگر انجام دهد که به آن معاملات خودکار یا کاملا اتوماتیک میگویند. گاهی هم این چهار مورد بهصورت ترکیبی با هوش انسانی در معاملات بهکار گرفته میشود که در اینصورت به آن معاملات نیمه خودکار میگویند.
طبقه بندی معاملات الگوریتمی:
معاملات الگوریتمی میتوانند در قسمتهای مختلف روند معاملات قرار گیرند. به این معنی که با توجه به وظایفشان که در بالا گفته شد میتوانند در هر یک از مراحل ذکر شده کار خود را آغاز کنند. بر این اساس در یک طبقهبندی قرار میگیرند که طبقهبندی عملکردی معاملات الگوریتمی محسوب میشود.
الگوریتمهای اجرای معاملات:
این دسته از الگوریتمها صرفا وظیفه دارند دستورات معاملاتی تحلیلگر را اجرا کنند. یعنی حتی نقطه آغاز و پایان و نماد مورد نظر نیز از سوی تحلیلگر انتخاب شده است و الگوریتم تنها موظف است وجه معاملهگر را به سهم تبدیل کند یا سهم را به وجه و معامله را صورت دهد.به عنوان مثال یک معاملهگر حقوقی در بازار ایران مانند صندوقهای سرمایهگذاری مشترک یا یک معاملهگر حقیقی با حجم بالایی از سرمایه تصمیم دارد ۱۰ میلیارد تومان سهام شرکت پالایش نفت تهران را در محدوده قیمتی مشخص خریداری کند. به طور قطع اگر همه حجم سرمایه را یکباره وارد کند و درخواست خرید سهام مورد نظرش را یکجا بدهد باعث بالا رفتن فشار خرید و درنتیجه افزایش قیمت سهام مورد نظرش میشود و امکان خرید این سهام در محدوده قیمتی تعیین شده فراهم نمیشود.الگوریتمهای معاملاتی با شکستن سفارش مورد نظر آن را به صورت تعدادی سفارشهای کوچکتر با حجمهای مختلف در آورده و در بازههای زمانی مشخص معاملات مد نظر تحلیلگر را انجام میدهند.
لگوریتمهای سیگنالدهی:
این الگوریتمها به تنهایی سودآور نیستند بلکه به تحلیلگر اطلاعات بیشتری از شرایط بازار ارائه میکنند و به او در بهبود روند تحلیل و تصممیگیری و در نتیجه معاملاتش کمک میکنند که حاصلش افزایش سوددهی معاملهگر یا تحلیلگر است.این الگوریتمها زمانی بهترین بازده را برای تحلیلگر دارند که به صورت مجموعهای و گروهی یا در کنار دیگر ابزارهای تحلیل مورد استفاده قرار گیرند.
الگوریتمهای مانیتورینگ:
این دسته از الگوریتمها که به نوعی میتوان آنها را در طبقه الگوریتمهای سیگنالدهی هم قرار داد، وظیفه پایش و مانیتور کردن بازار را دارند. مثلا فرض کنید قصد دارید با باز شدن نماد یک سهم، برای بازه کوتاهی نمادهای همگروه این سهم را بفروشید / خریداری کنید. یا مثلا میخواهید به محض ارسال شدن اطلاعیه صورتهای مالی تعدادی از نمادهای خاص از آن مطلع شوید. یا دائما پیغامهای ناظر بازار مربوط به نمادهای پورتفوی خود را دنبال کنید. یا در موارد حرفهایتر، قصد دارید در حالت کاهش نرخ بهره (وام)، شرکتهایی که کمترین مقدار وام را در حساب خود دارند شناسایی کنید. به کمک الگوریتمهای پایش بازار میتوانید با جستوجوی شرایط مورد نظر خود بر روی همه یا بخشی از بازار داشته باشیم.
الگوریتمهای پوزیشن تریدینگ:
الگوریتمهایی که وظیفه خرید و فروش سهام برای نگهداری طولانی مدت را به عهده دارند. با این تعریف در مییابیم که این گروه از الگوریتمها با شرایط بازار ایران بسیار همخوانی دارند. این الگوریتمها که الگوریتمهای کمبسامد هم نامیده میشوند اینطور عمل میکنند که برای مثال استراتژی معاملات یک معاملهگر خرید سهام در صف فروش و سپس فروش آن در صف خرید است.در واقع برنامهی معاملهگر نوسانگیری روزانه است. در این زمان الگوریتم کم بسامد که بر اساس این استراتژی برنامهریزی شده است به مجرد رسیدن صف فروش به شرایط از پیش تعیین شده دستور دیکته شده را انجام میدهد و در قیمتهای بالاتر که باز برایش مشخص شده عمل فروش را صورت میدهد.تمام این روند ذکر شده به صورت خودکار توسط این الگوریتم انجام میشود. در واقع الگوریتمهای پوزیشن تریدینگ مجوعه سه دستهی ذکر شده در بالا کنار یکدیگر هستند. این الگوریتم تمام وظایف سه دستهی دیگر را باهم انجام میدهد.
الگوریتمهای پر بسامد یا های فریکونسی تریدینگ (HFT):
این دسته از الگوریتمها بنا به تعریف سایت investopedia باید به طور متوسط مدت زمان خرید تا فروش دارایی خریداری شده آنها کمتر از پنجدهم ثانیه باشد تا در این طبقه قرار گیرند. در بازار سرمایه بینالملل، کارگزاریهای بسیاری هستند که به ارزش معامله شما هیچ کاری ندارند که برعکس به ازای هر معامله از شما کارمزد ثابتی دریافت میکنند. حال اگر ارزش سرمایه شما به سمت بی نهایت میل کند، درصد کارمزد معامله به سمت صفر میل میکند. مثلا شما ممکن است ارزش معاملهتان آنقدر زیاد باشد که در صورت رشد رقم چهارم بعد از ممیز به اندازه یک واحد، کارمزد معاملاتی شما پرداخت شود. این دسته از معاملات که بازار NASDAQ و NYSE را قبضه کرده است، معمولا در جفت ارزها (Forex) نیز بسیار پرکاربرد است اما به دلیل ساختار کارمزد در ایران، استفاده از آن معمولا با زیان به دلیل پرداخت کارمزد همراه است. الگوریتمهای آربیتراژ معمولا در این طبقه قرار میگیرند.
معایب معاملات الگوریتمی در بورس:
۱. چنانچه فردی که اقدام به الگوریتم نویسی می کند آشنایی کافی به آن نداشته باشد و یا شرایط بازار را به خوبی نشناسد می تواند باعث متحمل شدن ضررهای بسیاری در بورس شود. بنابراین داشتن تجربه و تبحر در کدنویسی بسیار مهم است.
۲. مکانیزم عمل معاملات الگوریتمی بر اساس اطلاعات بازار است این الگوریتم ها اطلاعات را به صورت لحظه ای از بازار دریافت می کنند و در صورت مطابقت اطلاعات دریافتی با دستورالعمل های الگوریتم ان ها را اجرا می کنند.
۳. در صورتی که اطلاعات به درستی آپدیت نشود و بهینه سازی بر اساس خطاهای بک تست و شرایط روز بازار انجام نگیرد معادلات بر هم خورده و پیش بینی ها درست از آب درنمی آید.