معاملات الگوریتمی (Algorithmic Trading) پروسهای برای اجرای سفارشات است که در آن با استفاده از یک برنامه کامپیوتری، از دستورالعملهای خودکار و از پیش برنامهریزیشده (الگوریتم) برای ورود به موقعیت معامله پیروی میشود.
از نظر تئوری میتوان گفت که در این صورت، کسب سود از معاملات میتواند با سرعت و میزان بالایی انجام بگیرد که برای یک معاملهگر انسان (در مقابل ربات معاملهگر) ممکن نیست.
در این دستورالعملها متغیرهایی مثل قیمت، زمان و حجم در نظر گرفته میشوند. الگوریتم به معنای مجموعهای از دستورالعملها برای حل یک مسئله است. الگوریتمهای کامپیوتری در طی زمان هر بار بخش کوچکی از کل سفارش را به بازار ارسال میکنند.
عناوین مطلب:
معاملات الگوریتمی از فرمولهای پیچیده، مدلهای ریاضی و اشتباهات انسانی بهره میبرند تا برای خرید و فروش داراییهای مالی در یک صرافی تصمیم بگیرند.
اغلب در معاملات الگوریتمی از فناوری «معاملات متعدد (high-frequency trading)» استفاده میشود. این فناوری این امکان را برای یک شرکت فراهم میکند که در هر ثانیه، دهها هزار معامله انجام دهد!
معاملات الگوریتمی در گستره وسیعی از موقعیتها، از جمله اجرای سفارشات، آربیتراژ و استراتژیهای معاملهگری روند (trend trading) مورد استفاده قرار میگیرد.
بیشتر بخوانید: منظور از ترید خلاف روند چیست؟
مروری بر نکات مهم
- معاملات الگوریتمی از الگوریتمهایی که بر پایه فرآیند و قوانین معین هستند استفاده میکنند تا استراتژیهایی را برای اجرای معاملات به کار گیرند.
- محبوبیت این شیوه معامله از اوایل دهه 1980 افزایش چشمگیری داشته است و از آن توسط سرمایهگذاران حقوقی و شرکتهای معاملهگری بزرگ، برای دستیابی به اهداف مختلف استفاده میشود.
- معاملات الگوریتمی مزیتهایی از قبیل تسریع اجرای سفارشات و کاهش هزینهها دارد اما در عین حال میتواند از طریق منجر شدن به ریزشهای آنی و از دست رفتن سریع نقدینگی، زمینههای منفی بازار را هم تشدید کند.
درک بیشتر معاملات الگوریتمی
پس از معرفی سیستمهای معاملاتی کامپیوتری در بازارهای مالی آمریکا در دهه 1970، استفاده از الگوریتمها در معاملات افزایش یافت.
در سال 1976، بازار بورس نیویورک (New York Stock Exchange) سیستم «برگشت انتخابی سفارش (Designated Order Turnaround)» را معرفی کرد که سفارشات را از تریدرها به متخصصان بخش معاملات ارسال میکرد.
مایکل لوئیس (Michael Lewis) نویسنده با انتشار کتاب پرفروش خود، یعنی فرزندان شوک (Flash Boys)، توجه عموم را به معاملات متعدد الگوریتمی جلب کرد. در این کتاب به شرح زندگی معاملهگران والاستریت و کارآفرینانی پرداخته شده بود که به تاسیس اولین شرکتهای معاملات الکترونیکی در آمریکا کمک کردند.
او در کتاب خود شرح میدهد که این شرکتها رقابت سرسختانهای بر سر ساخت کامپیوترهای سریعتر داشتند؛ چرا که چنین کامپیوترهایی میتوانستند در زمان کمتری با صرافیها ارتباط برقرار کنند. در این صورت آنها میتوانستند با استفاده از سفارشهایی که آنها را از زیان سرمایهگذاران معمولی منتفع میکرد، از طریق عامل سرعت، نسبت به رقبای خود برتری یابند.
بیشتر بخوانید: تاخیر زمانی (Latency) چیست؟ + تاثیر آن بر معاملات ارزهای دیجیتال
4 وظیفه معاملات الگوریتمی
- بر اساس استراتژی مشخصشده بازار را رصد کنند و فرصتهای موجود را شناسایی کنند تا از آنها بهره برده شود.
- بر اساس این فرصتها پوزیشن بگیرند و وارد موقعیتهای معاملاتی مناسب شوند.
- بعد از باز کردن موقعیت معاملاتی، آن را مدیریت کنند.
- در این فرآیند، ریسک و سرمایهگذاری را بر اساس دستورالعملهای از پیش تعیینشده مدیریت کنند.
اگر تمامی این مراحل به طور کامل توسط کامپیوتر اجرا شود، به آن تمام خودکار گفته میشود و اگر در برخی قسمتهای آن انسان دخالت کند و نظر و سلیقه خود در آن لحظه را در این فرآیند اثر دهد، به آن معاملات نیمه خودکار میگوییم.
مثالی از معاملات الگوریتمی در عمل
فرض کنید یک معاملهگر از این ایده ساده برای انجام معاملات خود استفاده کند:
- موقعی که میانگین متحرک 50 روزه بالای میانگین متحرک 200 روزه قرار گرفت، 50 عدد سهم خریداری شود (میانگین متحرک میانگینی از نقاط و دادههای قبلی را به دست ما میدهد که نوسانات شدید روزانه را تعدیل کرده و بنابراین امکان تشخیص روندها را برای معاملهگران فراهم میکند).
- وقتی میانگین متحرک 50 روزه در پایین میانگین متحرک 200 روزه قرار گرفت، سهام فروخته شود.
برنامه کامپیوتری با استفاده از همین دو دستورالعمل ساده و ابتدایی، قیمت سهام و اندیکاتورهای میانگین متحرک را بررسی میکند و وقتی که شرایط گفتهشده مهیا باشند، اوردر خرید و فروش را قرار میدهد.
در این صورت دیگر نیازی نیست که تریدر شخصاً قیمتها و نمودارها را به صورت زنده دنبال کند و به صورت دستی اوردر بگذارد. معاملات الگوریتمی از طریق شناسایی درست فرصتهای معاملاتی، به شکل خودکار این کار را انجام میدهد.
معامله الگوریتمی Do-It-Yourself
در سالهای اخیر، استفاده از شیوه معاملات الگوریتمی do-it-yourself شایع شده است. به عنوان نمونه، هجفاندهایی مثل Quantopian، نوشتن الگوریتمها را به برنامهنویسان آماتور میسپارند تا آنها بر سر دریافت کمیسیون بابت نوشتن سودآورترین کد، با هم رقابت کنند.
استفاده از این روش به دلیل گسترش اینترنت پرسرعت و توسعه رایانههای سریعتر که در عین حال ارزانترند، ممکن شده است. پلتفرمهایی مثل Quantiacs برای ارائه خدمات به تریدرهای روزانهای که میخواهند شانس خود را در معاملات الگوریتمی امتحان کنند، توسعه یافتهاند.
یک فناوری نوظهور دیگر در والاستریت، یادگیری ماشین (machine learning) است. پیشرفتهای جدید در هوش مصنوعی، امکان نوشتن برنامههایی را به برنامهنویسان کامپیوتر داده است که میتوانند از طریق فرآیندی تکراری به نام «یادگیری عمیق (Deep Learning)» خودشان را بهبود دهند. تریدرها در حال توسعه الگوریتمهایی هستند که برای سودآورتر کردن خود، روی یادگیری عمیق تکیه میکنند.
بیشتر بخوانید: بلاکچین و هوش مصنوعی چه رابطهای با هم دارند؟
مزایا و معایب معاملات الگوریتمی
معاملات الگوریتمی بیشتر توسط سرمایهگذاران حقوقی و کارگزاریهای بزرگ و به منظور کاهش هزینههای مربوط به معاملات استفاده میشوند.
طبق تحقیقات، معاملات الگوریتمی به طور خاص برای سفارشات با حجم بالا که میتوانند تا 10% حجم معاملات را شامل شوند، سودمند هستند. معمولاً بازارگردانها برای ایجاد نقدشوندگی از معاملات الگوریتمی استفاده میکنند.
بیشتر بخوانید: میزان نقدشوندگی ارز دیجیتال چقدر است (حجم لیکوئیدیتی در کریپتو)
معاملات الگوریتمی همچنین میتوانند اجرای سفارشات یا اوردرها را سریعتر و راحتتر کنند که برای صرافیها امکان جذابی است. این یعنی معاملهگران و سرمایهگذاران میتوانند بهسرعت سود حاصل از تغییرات کوچک قیمت را دریافت کنند.
در استراتژی اسکالپ تریدینگ (scalping trading)، معمولاً از الگوریتمها استفاده میشود؛ چرا که در این روش، خرید و فروش داراییها بهسرعت و بر اساس تغییرات کوچک قیمت انجام میگیرد.
معاملات الگوریتمی میتوانند تاثیر احساسات را در تصمیمگیریهای مالی به صفر برسانند و تنها بر پایه منطق از پیش تعیینشده عمل کنند. البته همین مسئله میتواند در صورتی که اشتباهی در کدنویسی صورت گرفته باشد، خسارات کوچک و بزرگی وارد کند.
سرعت بالای اجرای اوردرها که در حالت عادی یک مزیت به شمار میآید، میتواند در مواقعی دردسرساز شود. وقتی چندین اوردر به طور همزمان و بدون دخالت انسان اجرا میشوند، این مسئله میتواند ایجاد مشکل کند.
نقدشوندگی از دل اوردرهای سریع خرید و فروش ایجاد میشود. یک ایراد دیگر معاملات الگوریتمی این است که میتواند باعث ناپدید شدن نقدشوندگی در یک لحظه شود و شانس کسب سود از تغییرات قیمت را از تریدرها بگیرد.
همچنین میتواند به از دست رفتن فوری نقدشوندگی بیانجامد. تحقیقات نشان دادهاند که معاملات الگوریتمی از عوامل اصلی از بین رفتن نقدشوندگی در بازارهای ارز بعد از توقف اتصال فرانک سوئیس به یورو در سال 2015 بوده است.
لیستی از مزایای استفاده از معاملات الگوریتمی
در این قسمت میتوانید در ادامه توضیحات بالا، لیستی از مزایای استفاده از معاملات الگوریتمی را به صورت خلاصه ببینید.
- معاملات در بهترین قیمت ممکن اجرا میشوند.
- اوردرهای ترید به صورت فوری و دقیق قرار داده میشوند (شانس بالایی برای اجرای معاملات در سطوح مورد نظر وجود دارد).
- معاملات بهدرستی زمانبندی شده و فوراً اجرا میشوند تا تغییرات قابل توجهی در قیمت رخ ندهد.
- هزینههای تراکنش و معاملات را کاهش میدهد.
- بررسی خودکار همزمان روی شرایط مختلف بازار انجام میشود.
- ریسک خطاهای انسانی در قرار دادن سفارش معامله به صورت دستی را کاهش میدهد.
- میتوان با استفاده از دادههای گذشته و زنده بازار از معاملات الگوریتمی بکتست گرفت و درباره مناسب بودن آن استراتژی اطمینان حاصل کرد.
- در این روش، احتمال بروز اشتباهات انسانی که به دلایل احساسی و روانشناسانه اتفاق میافتند، کاهش مییابد.
انواع الگوریتمها از نظر هدف
الگوریتمهای مختلف بر اساس هدفی که مورد استفاده قرار میگیرند قابل دستهبندی به سه گروه اصلی هستند:
الگوریتمهای اثر محور (impact driven algorithms)
این الگوریتمها تلاش میکنند که اثر کلی روی بازار را به حداقل برسانند.
این الگوریتمها برای این ایجاد شدهاند که اثر انجام معاملات بر قیمت در بازار را کاهش دهند. برای این کار معمولاً سفارشات با حجم بالا به تعداد زیادی سفارش کوچکتر تقسیم میشوند و در طی زمان طولانیتری ارسال میشوند.
الگوریتمهای هزینه محور (cost driven algorithms)
این الگوریتمها در تلاشاند که هزینههای کلی معاملات را کاهش دهند. این الگوریتمها مسائلی مثل اثر بازار، ریسک زمانی و سایر عوامل مرتبط را در نظر میگیرند.
الگوریتمهای هزینه محور به دنبال این هستند که قیمت زمان تصمیمگیری و قیمت نهایی اجرای معامله را تا حد ممکن به هم نزدیک کنند. آنها باید در این فرآیند به کاهش ریسک قیمت و بهبود عملکرد بپردازند.
الگوریتمهای فرصت طلب (opportunistic algorithms)
الگوریتمهای فرصتیاب یا فرصتطلب همانطور که از اسمشان مشخص است، در تلاشاند که در موقعیت مناسب بازار، از فرصتهای پیشآمده بیشترین منفعت را ببرند و بهخوبی از آن فرصت استفاده نمایند.
استفاده از معاملات الگوریتمی در انواع مختلف سرمایهگذاری
از معاملات الگوریتمی در انواع زیادی از معاملهگری و سرمایهگذاری استفاده میشود که شامل موارد زیر میشوند:
- سرمایهگذاران میانمدت تا بلندمدت یا شرکتهایی که خریدار هستند (صندوقهای بازنشستگی، صندوقهای سرمایهگذاری مشترک و شرکتهای بیمه) وقتی میخواهند حجم بالایی از سهام را بدون اثرگذاری بر قیمت آن در بازار بخرند، از معاملات الگوریتمی استفاده میکنند.
- معاملهگران کوتاهمدت و شرکتکنندگان طرف فروش بازار (بازارگردانان، سفتهبازها و آربیتراژکنندگان) از اجرای خودکار معاملات بهرهمند میشوند. علاوه بر این، معاملات الگوریتمی به ایجاد نقدشوندگی کافی برای فروشندگان بازار کمک میکند.
- برای معاملهگران سیستماتیک که شامل دنبالکنندگان روند، هجفاندها یا pairs traderها (یک استراتژی معاملاتی خنثی که در یک جفت از ابزار مالی که به شدت همبستگی دارند، مانند دو سهم، ETFها یا جفتارزها، به صورت همزمان وارد موقعیت خرید و فروش میشود) هستند، برنامهریزی قوانین مورد نظر برای معاملات و اجرای آنها به طور خودکار، بسیار کاراتر خواهد بود.
استراتژیهای معاملات الگوریتمی
هر استراتژی در معاملات الگوریتمی نیاز به یافتن فرصتی دارد که از طریق افزایش درآمد یا کاهش هزینه، سودمند واقع شود.
موارد زیر، استراتژیهای رایج در معاملات الگوریتمی هستند:
استراتژیهای دنبالهروی روند (trend-following strategies)
رایجترین استراتژیهای معاملات الگوریتمی، روندها را از طریق میانگینهای متحرک، شکست کانال، حرکات سطح قیمت و اندیکاتورهای تکنیکال مرتبط دنبال میکنند.
اینها آسانترین و سادهترین استراتژیهای معاملات الگوریتمی هستند؛ چرا که در آنها نیازی به انجام هر گونه پیشبینی یا پیشگویی قیمت نیست.
در این استراتژی معاملات بر اساس وقوع یک روند مورد نظر آغاز میشوند. استفاده از الگوریتم در چنین موقعیتی آسان و سرراست بوده و در آن نیازی به درگیر شدن با پیچیدگیهای تحلیلهای پیشگویانه نیست.
فرصتهای آربیتراژ (arbitrage opportunities)
فرض کنید سهام شرکتی در دو بازار به صورت همزمان موجود و قابل خرید و فروش باشد. حال فرض کنید که این سهم را از یکی از این بازارها میخرید و در همان زمان، آن را به قیمت بالاتر در بازار دوم میفروشید.
این تفاوت قیمت یک سود بدون ریسک یا آربیتراژ است. با استفاده از الگوریتمها میتوان این تفاوتهای قیمتی را پیدا کرده و با قرار دادن اوردر معامله، آن را به یک فرصت سودآور تبدیل کرد.
بازمتوازنسازی صندوق شاخصی (index fund rebalancing)
صندوقهای شاخصی صندوقهایی هستند که روند یکی از شاخصهای بازار را دنبال کرده و عملکردی مشابه آن شاخص از خود نشان میدهند. مثلاً اگر صندوقی در شرکتهای موجود در شاخص مشهور S&P 500 سرمایهگذاری کند و سهام آنها را بخرد، بدیهی است که عملکردی نزدیک به خود این شاخص خواهد داشت.
این صندوقها در دورههای مشخصی به عنوان دورههای توازن دارند که در آن، داراییهای خود را با شاخص مورد نظرشان برابر و متوازن میکنند. این موقعیت، فرصتهای سودآوری برای معاملهگران الگوریتمی ایجاد میکند. این معاملات با سیستمهای معاملات الگوریتمی در زمان درست و بهترین قیمت آغاز میشوند.
استراتژیهای بر پایه مدل ریاضی (mathematical model-based strategies)
مدلهای ریاضی اثباتشده، مثل استراتژی معامله دلتا خنثی (delta neutral)، امکان معامله روی ترکیبی از اختیارهای معامله و دارایی پایه آن را میدهد. (دلتا نسبتی است که تغییرات قیمت یک دارایی را با تغییر قیمت مشتقات آن مقایسه میکند. دلتا خنثی یک استراتژی پورتفو است که در آن با موقعیت معاملاتی، دلتاهای مثبت و منفی را با هم آفست میکنند تا دلتای کل داراییهای مورد نظر به صفر برسد.)
بازگشت به میانگین (mean reversion)
استراتژی بازگشت به میانگین بر اساس این ایده کار میکند که قیمتهای سقف و کف یک دارایی، پدیدهای زودگذر هستند و به صورت دورهای، دوباره به ارزش میانگین خود باز خواهد گشت.
تشخیص و تعریف یک محدوده قیمت و استفاده از یک الگوریتم بر اساس آن، این امکان را به تریدر میدهد که وقتی قیمت یک دارایی وارد محدوده معین شده یا از آن خارج شد، به طور خودکار متوجه شود و از آن استفاده کند.
قیمت میانگین موزون به حجم (volume weighted average price)
استراتژی قیمت میانگین موزون به حجم (VWAP)، یک اوردر بزرگ را به تعدادی اوردر کوچکتر خُرد میکند و برای این کار از دادههای مربوط به حجم استفاده میشود.
قیمت میانگین موزون به زمان (time weighted average price)
در استراتژی قیمت میانگین موزون به زمان (TWAP) هم اوردر بزرگ به تعدادی اوردر کوچکتر تقسیم میشود.
در اینجا این تقسیمبندی بر اساس زمانهای یکسان بین لحظه شروع و لحظه پایان انجام میشود. هدف از این کار این است که اوردر در قیمت میانگین بین زمانهای شروع و پایان اجرا شود و بنابراین، تاثیر بازار به حداقل برسد.
درصد حجمی (percentage of volume)
الگوریتم درصد حجمی (POV) با نسبت مشخص و بر اساس حجم معاملات در بازار، سفارشات را به صورت جزئی ارسال میکند تا سفارش به طور کامل انجام شود.
در این روش، سفارشات به صورت درصدی از حجم بازار که توسط کاربر مشخص شده است ارسال میشود و این نسبت در زمانی که قیمت به سطح تعیینشده توسط کاربر برسد، افزایش یا کاهش مییابد.
جمعبندی
معاملات الگوریتمی یکی از دستاوردهای پیشرفت فناوری در حوزه بازارهای مالی است.
معاملات الگوریتمی دارای مزایای مهمی هستند که استفاده از آنها را در بسیاری از موقعیتها ناگزیر میکند اما در عین حال بعضاً میتوانند مشکلاتی را هم ایجاد کنند.
استراتژیهای مختلفی بر اساس معاملات الگوریتمی ایجاد شدهاند که توسط معاملهگران مختلف مورد استفاده قرار میگیرند. به طور کلی، معاملات الگوریتمی توسط طیف وسیعی از مشارکتکنندگان بازار قابل استفاده است و میتواند آنها را از این امکان منتفع کند.
شما در بورس، علاوه بر خرید و فروش سهام:
- میتوانید در داراییهایی مانند طلا و مسکن سرمایهگذاری کنید
- در صندوقهای سرمایه گذاری بدون ریسک، سود ثابت بگیرید
برای شروع سرمایهگذاری، افتتاح حساب رایگان را در یکی از کارگزاریها انجام دهید:
نام شرکت | ویژگیها | امتیاز | لینک ثبتنام |
---|---|---|---|
کارگزاری آگاه |
|
برای سرمایهگذاری و معامله موفق، نیاز به آموزش دارید. خدمات آموزشی زیر از طریق کارگزاری آگاه ارائه میشود: