Алгоритмичната търговия (наричана също автоматизирана търговия, търговия с черни кутии или търговия с алго) използва компютърна програма, която следва определен набор от инструкции (алгоритъм) за поставяне на търговия. Търговията на теория може да генерира печалба със скорост и честота, които са невъзможни за човешкия търговец.
Дефинираните набори от инструкции се основават на времето, цената, количеството или всеки математически модел. Освен възможностите за печалба на търговеца, търговията с алго прави пазарите по-ликвидни, а търговията по-систематична, като изключва въздействието на човешките емоции върху търговските дейности.
Алгоритмична търговия на практика
Да предположим, че търговец следва тези прости търговски критерии:
- Купете 50 акции от акция, когато 50-дневната му подвижна средна стойност надвишава 200-дневната подвижна средна. (Подвижната средна стойност е средна стойност от минали точки от данни, която изглажда ежедневните колебания на цените и по този начин идентифицира тенденциите.) Продайте акции от акцията, когато 50-дневната му подвижна средна стойност е под 200-дневната подвижна средна.
Използвайки тези две прости инструкции, компютърна програма автоматично ще следи цената на акциите (и подвижните средни показатели) и ще поставя поръчките за покупка и продажба, когато са изпълнени определените условия. Търговецът вече няма нужда да следи текущите цени и графики или да поставя поръчките ръчно. Алгоритмичната система за търговия прави това автоматично, като правилно идентифицира възможността за търговия.
Основи на алгоритмичната търговия
Предимства на алгоритмичната търговия
Търговията с Algo предоставя следните предимства:
- Търговията се изпълняват на най-добрите възможни цени.Поставянето на търговията е незабавно и точно (има голям шанс за изпълнение на желаните нива). Трейдът се прави правилно и незабавно, за да се избегнат значителни промени в цените. Намалени транзакционни разходи. Едновременни автоматизирани проверки на множество пазарни условия. Понижен риск от ръчни грешки при пускане на сделки. Търговията с Algo може да бъде потвърдено с помощта на налични исторически данни и данни в реално време. за да разберем дали е жизнеспособна стратегия за търговия. Намали възможността за грешки от търговците на хора въз основа на емоционални и психологически фактори.
Повечето алго-търговия днес е високочестотна търговия (HFT), която се опитва да се възползва от пускането на голям брой поръчки с бързи скорости на множество пазари и множество параметри за решение въз основа на предварително програмирани инструкции.
Алго-търговията се използва в много форми на търговски и инвестиционни дейности, включително:
- Средносрочни и дългосрочни инвеститори или инвестиционни дружества - пенсионни фондове, взаимни фондове, застрахователни компании - използват алго-търговия за закупуване на акции в големи количества, когато не искат да влияят на цените на акциите с дискретни, големи инвестиции. - срочни търговци и участници, продаващи страни - мениджъри на пазара (като брокерски къщи), спекуланти и арбитражи - ползват се от автоматизирано извършване на търговия; в допълнение, алго-търговията подпомага създаването на достатъчна ликвидност за продавачите на пазара. Систематични търговци - последователи на тенденции, хедж фондове или търговци на двойки (пазарна неутрална стратегия за търговия, която съответства на дълга позиция с къса позиция в двойка силно корелираните инструменти като две акции, борсово търгувани фондове (ETFs) или валути - намерят много по-ефективно да програмират своите правила за търговия и да позволят на програмата да търгува автоматично.
Алгоритмичната търговия осигурява по-систематичен подход към активната търговия от методите, базирани на интуицията или инстинкта на търговеца.
Алгоритмични стратегии за търговия
Всяка стратегия за алгоритмична търговия изисква идентифицирана възможност, която е печеливша от гледна точка на подобрена печалба или намаляване на разходите. Следните общи стратегии за търговия, използвани в търговията с алго:
Следващи тенденции стратегии
Най-често срещаните алгоритмични стратегии за търговия следват тенденциите в движещи се средни стойности, пробиви на канали, движение на нивото на цените и свързани технически показатели. Това са най-лесните и най-прости стратегии за изпълнение чрез алгоритмична търговия, защото тези стратегии не включват извършване на прогнози или прогнози за цените. Търговията се инициират въз основа на появата на желани тенденции, които са лесни и лесни за реализиране чрез алгоритми, без да навлизат в сложността на прогнозния анализ. Използването на 50- и 200-дневни движещи се средни е популярна стратегия за следване на тенденции.
Възможности за арбитраж
Купуването на акции с двойна търговия на по-ниска цена на един пазар и едновременно с това продажба на по-висока цена на друг пазар предлага ценовия диференциал като безрискова печалба или арбитраж. Същата операция може да се възпроизведе за акции спрямо фючърсни инструменти, тъй като периодично съществуват разлики в цените. Внедряването на алгоритъм за идентифициране на подобни ценови различия и полагането на поръчки ефективно дава възможност за печеливши възможности.
Ребалансиране на индексни фондове
Индексните фондове са определили периоди на балансиране, за да приведат дяловете си в съответствие със съответните референтни индекси. Това създава изгодни възможности за алгоритмични търговци, които се възползват от очакваните сделки, които предлагат от 20 до 80 базисни точки печалби в зависимост от броя на акциите в индексния фонд непосредствено преди ребалансирането на индекса. Такива сделки се инициират чрез алгоритмични системи за търговия за своевременно изпълнение и най-добри цени.
Стратегии, базирани на математически модел
Доказани математически модели, като делта-неутралната стратегия за търговия, позволяват да се търгува чрез комбинация от опции и базисната сигурност. (Delta neutral е портфолио стратегия, състояща се от множество позиции с компенсиране на положителни и отрицателни делта - съотношение, сравняващо промяната в цената на актив, обикновено продаваема ценна книга, и съответната промяна в цената на неговия дериват - така че общата делта на въпросните активи е нула.)
Диапазон на търговия (средна реверсия)
Стратегията за средна реверсия се основава на концепцията, че високите и ниските цени на актива са временно явление, което периодично се връща към средната им стойност (средна стойност). Идентифицирането и дефинирането на ценови диапазон и внедряването на алгоритъм, базиран на него, позволява да се търгуват автоматично, когато цената на актив пробие и излезе от определения му диапазон.
Среднопретеглена средна цена (VWAP)
Среднопретеглената стратегия за средна цена разбива голяма поръчка и пуска на пазара динамично определени по-малки парчета от поръчката, използвайки специфични за запасите исторически профили за обем. Целта е да се изпълни поръчката, близка до среднопретеглената средна цена (VWAP).
Среднопретеглена средна цена (TWAP)
Среднопретеглената стратегия за средна цена разбива голяма поръчка и пуска на пазара динамично определени по-малки парчета от поръчката, като използва равномерно разделени времеви интервали между начален и краен час. Целта е да се изпълни поръчката, близка до средната цена между началното и крайното време, като по този начин се минимизира въздействието на пазара.
Процент обем (POV)
До пълното попълване на търговската поръчка, този алгоритъм продължава да изпраща частични поръчки според определения коефициент на участие и според обема, търгуван на пазарите. Свързаната „стратегия за стъпки“ изпраща поръчки в определен от потребителя процент от обема на пазара и увеличава или намалява тази степен на участие, когато цената на акциите достигне определени от потребителя нива.
Недостиг на изпълнение
Стратегията за недостиг на изпълнение има за цел да сведе до минимум разходите за изпълнение на поръчка чрез търговия извън пазара в реално време, като по този начин спести от цената на поръчката и се възползва от алтернативните разходи за забавено изпълнение. Стратегията ще увеличи целевия процент на участие, когато цената на акциите се движи благоприятно, и ще я намали, когато цената на акциите се движи неблагоприятно.
Отвъд обичайните алгоритми за търговия
Има няколко специални класа алгоритми, които се опитват да идентифицират „събитията“ от другата страна. Тези „алгоритми за подсмърчане“, използвани например от производителя на пазара от страна на продавача, имат вградената интелигентност, за да идентифицират съществуването на каквито и да било алгоритми от страна на покупката на голяма поръчка. Подобно откриване чрез алгоритми ще помогне на производителя на пазара да идентифицира възможностите за големи поръчки и да им даде възможност да се възползват, като попълват поръчките на по-висока цена. Това понякога се определя като високотехнологичен преден ход.
Технически изисквания за алгоритмична търговия
Внедряването на алгоритъма с помощта на компютърна програма е последният компонент на алгоритмичната търговия, придружен от бектестиране (изпробване на алгоритъма върху исторически периоди на минали пазарни резултати, за да се види дали използването му би било изгодно). Предизвикателството е да се трансформира идентифицираната стратегия в интегриран компютъризиран процес, който има достъп до търговска сметка за извършване на поръчки. Следните са изискванията за алгоритмична търговия:
- Компютърни знания за програмиране за програмиране на необходимата стратегия за търговия, наети програмисти или предварително направен софтуер за търговия. Мрежова свързаност и достъп до търговски платформи за извършване на поръчки. Достъп до емисии за пазарни данни, които ще бъдат следени от алгоритъма за възможности за извършване на поръчки. Способността и инфраструктурата да направят бектест на системата, след като е построена, преди да излезе на живо на реални пазари. Налични исторически данни за обратно тестване в зависимост от сложността на правилата, въведени в алгоритъма.
Пример за алгоритмична търговия
Royal Dutch Shell (RDS) се търгува на Амстердамската фондова борса (AEX) и Лондонската фондова борса (LSE). Започваме с изграждането на алгоритъм за идентифициране на арбитражните възможности. Ето няколко интересни наблюдения:
- AEX търгува в евро, докато LSE търгува с британски лири стерлинги. При едночасовата разлика във времето AEX се отваря с час по-рано от LSE, последван от двете борси, търгуващи едновременно през следващите няколко часа, а след това търгувайки само в LSE през последния час, тъй като AEX се затваря.
Можем ли да проучим възможността за арбитражна търговия на акциите на Royal Dutch Shell, изброени на тези два пазара, в две различни валути?
Изисквания:
- Компютърна програма, която може да чете текущите пазарни цени. Цените се подават както от LSE, така и от AEX.A форекс (валутна) емисия за валутен курс за GBP-EUR. Възможност за пускане на поръчка, която може да насочи поръчката към правилната борса. емисии.
Компютърната програма трябва да изпълнява следното:
- Прочетете входящата ценова емисия акции на RDS от двете борси. Използвайки наличните валутни курсове, конвертирайте цената на една валута в друга. Ако има достатъчно голямо несъответствие в цените (дисконтиране на разходите за посредничество), което води до печеливша възможност, тогава програмата трябва да постави поръчката за покупка на борсата с по-ниски цени и да продаде поръчката на борсата с по-висока цена. Ако поръчките се изпълняват по желание, арбитражната печалба ще последва.
Просто и лесно! Практиката на алгоритмичната търговия обаче не е толкова проста за поддържане и изпълнение. Не забравяйте, че ако един инвеститор може да постави сделка, генерирана от алго, това могат да направят и другите участници на пазара. Следователно цените се колебаят в мили- и дори микросекунди. В горния пример, какво се случва, ако търговията с покупка се изпълни, но търговията с продажбата не става, защото продажните цени се променят с момента, в който поръчката достигне до пазара? Търговецът ще остане с отворена позиция, което прави арбитражната стратегия безполезна.
Има допълнителни рискове и предизвикателства като рискове от повреда на системата, грешки в мрежовата свързаност, забавяне между търговски поръчки и изпълнение и най-важното от несъвършени алгоритми. Колкото по-сложен е алгоритъмът, толкова по-строг бектестинг е необходим, преди да бъде пуснат в действие.