Сучасная эканоміка неймаверная без біржаў і фондавага рынку. Гандаль на гэтых пляцоўках называецца
трэйдзінгам . Трэйдары актыўна выкарыстоўваюць магчымасці кампутарнай тэхнікі для палягчэння вядзення сваіх спраў. Трэйдынг з выкарыстаннем матэматычных мадэляў і вылічальнай тэхнікі называюць алгатрэйдынгам. У гэтым артыкуле расказваецца аб гэтым відзе гандлю на фінансавых рынках, яго разнавіднасцях, прымяняемых спосабах, перавагах і недахопах, што прымяняецца праграмным забеспячэнні.
- Што такое Алгатрэйдзінг (алгарытмічны трэйдзінг)
- У чым сутнасць алгатрэйдзінгу?
- Якія віды алгатрэйдзінгу існуюць?
- Калі і як з’явіўся алгатрэйдзінг, як з’ява
- Чым адрозніваецца алгатрэйдзінг ад алгарытмічнага гандлю?
- Якое ПЗ падыдзе для алгатрэйдынгу?
- Што варта памятаць перад тым, як заняцца алгатрэйдзінгам?
- TSLab – адна з самых папулярных праграм для запуску алгаробатаў
- Ўстаноўка
- Навучанне алгатрэйдынгу на TSLab
- Настройка пастаўшчыка
- Стварэнне скрыпту
- Stocksharp
- WealthLab
- Якія стратэгіі прымяняюцца для алгатрэйдзінгу?
- Як прадухіліць страты пры занятках алгатрэйдзінгам, рызыка-мэнэджмент
- Алгатрэйдынг: добрыя якасці і недахопы
Што такое Алгатрэйдзінг (алгарытмічны трэйдзінг)
Тэрмін «алгарытмічны трэйдзінг», або «алгатрэйдынг», мае два значэнні. У першым выпадку пад гэтым словам разумеюць спосаб выканання буйной заяўкі на рынку, паводле якога яна адчыняецца паступова па вызначаных правілах і аўтаматычна падзяляецца на некалькі подзаявок, якія маюць уласны кошт і аб’ём. Кожная заяўка адпраўляецца на рынак для выканання. Мэта тэхналогіі складаецца ў аблягчэнні дзейнасці трэйдараў пры здзяйсненні буйных здзелак, якія трэба здзейсніць, як мага менш прыкметна. Напрыклад, трэба набыць 200000 акцый, а кожная пазіцыя ўключае па 4 акцыі за раз.
Другое значэнне гэтага слова – сістэма, якая адкрывае заяўкі па зададзеным алгарытме без удзелу трэйдара. Алгарытмы задаюцца з мэтай непасрэднага атрымання прыбытку ад аўтаматычнага аналізу рынка. Гэтыя сістэмы таксама маюць назву ”
гандлёвы робат “. Алгатрэйдынг і алгарытмічны гандаль прымяняюцца на біржах, у тым ліку на криптовалютных, на Форэксе.
У чым сутнасць алгатрэйдзінгу?
Алгатрэйдзінг мае на ўвазе збор дадзеных па канкрэтным актыве, зыходзячы з гісторыі яго развіцця, падбор алгарытмаў для здзелак і прыдатных гандлёвых робатаў. Для вызначэння цаны прымяняецца тэорыя верагоднасці, вызначаюцца недахопы рынку і верагоднасць іх паўтарэння ў будучыні. Існуе тры тыпы падбору. Пры ручным падыходзе спецыяліст прымяняе матэматычныя формулы і фізічныя мадэлі. Генетычны падыход мае на ўвазе распрацоўку правіл кампутарнымі сістэмамі і штучным інтэлектам. Аўтаматычны вырабляецца спецыяльнай камп’ютэрнай праграмай, якая апрацоўвае масівы правілаў і тэсціруе іх.
Якія віды алгатрэйдзінгу існуюць?
Алгарытмічны трэйдзінг рэалізуецца па некалькіх асноўных напрамках:
- Тэхнічны аналіз . Выкарыстанне неэфектыўнасці рынку і выяўленне актуальных тэндэнцый шляхам класічнага матэматычнага і фізічнага аналізу.
- Market making . У рамках гэтага метаду падтрымліваецца рыначная ліквіднасць. Маркет-мейкеры атрымліваюць узнагароду ад біржы, задавальняючы попыт, у тым ліку супраць выгады. Стратэгія грунтуецца на ўліку і хуткай плыні інфармацыі з рынкаў.
- Front running . Аналіз аб’ёму заявак па прыладзе і вылучэнне найболей буйных з іх. Гэтая стратэгія грунтуецца на тым, што буйная заяўка будзе мець большую цану і прыцягне шмат сустрэчных заявак. Алгарытмы аналізуюць дадзеныя стужкі і шклянкі і імкнуцца зафіксаваць рухі падчас правядзення буйных здзелак хутчэй іншых удзельнікаў.
- Парны і баскет-трэйдзінг . Суадносяцца дзве ці некалькі прылад з высокай, але не адназначнай карэляцыяй. Адхіленне адной з прылад ад зададзенага курса азначае, што з большай верагоднасцю ён вернецца ў сваю групу. Вызначэнне карэляцыі дапамагае здзейсніць прыбытковую здзелку.
- Арбітраж . Метад грунтуецца на супастаўленні актываў з падобнай коштавай дынамікай. Гэтае падабенства часам парушаецца па розных фактарах. Сутнасць арбітражу заключаецца ў продажы больш дарагога актыву і куплі больш таннага. У выніку актывы зраўняюцца ў кошце, і больш танны актыў вырасце ў кошце. Сістэмы алготрейдинга выяўляюць змену коштаў на рынку і праводзяць выгадныя арбітражныя здзелкі.
- Гандаль валацільнасць . Складаны тып трэйдзінгу, які складаецца ў набыцці розных апцыён. Які праводзіць гандаль разлічвае на рост валацільнасць акцыі пры продажы і зніжэнне пры куплі. Для гэтай разнавіднасці гандлю патрэбны значныя магутнасці абсталявання і кваліфікаваныя спецыялісты.
Якія працуюць стратэгіі ў алгатрэйдынгу, уся праўда аб гандлі робатамі: https://youtu.be/eg3s0c_X_ao
Калі і як з’явіўся алгатрэйдзінг, як з’ява
Гандаль з ужываннем алгарытмаў быў распрацаваны ў пачатку 1970-х гадоў, калі была створана біржа NASDAQ – першая біржа, якая прымяняла гандаль з выкарыстаннем ЭВМ. У тыя часы алгарытмічны гандаль быў даступны толькі буйным інвестарам, звычайныя людзі доступу да такой тэхналогіі не мелі. ЭВМ тады не былі дасканалымі, і ў 1987 годзе адбылася памылка ў абсталяванні, якая прывяла да краху амерыканскага рынка. У 1998 годзе SEC – Камісія па каштоўных паперах ЗША афіцыйна дазволіла выкарыстоўваць электронныя гандлёвыя пляцоўкі. Гэты год трэба лічыць датай з’яўлення алгатрэйдынгу ў сучасным выглядзе.
TSLab – адна з самых папулярных праграм для запуску алгаробатаў
Платформа для стварэння, тэсціравання і запуску
гандлёвых робатаў і сістэм. Уключае ў сябе зручны візуальны рэдактар у выглядзе кубікаў, які дазволіць займацца распрацаваць робата без ведання мовы праграмавання. З кубікаў можна сабраць патрэбны гандлёвы алгарытм. Гісторыя гандлёвых інструментаў, якая збіраецца праграмай, дазволіць знайсці і выправіць памылкі ў скрыптах, а інструменты тэхнічнага аналізу дапамогуць стварыць унікальнае рашэнне.
Ўстаноўка
Каб усталяваць платформу, неабходна скачаць праграму ўстаноўкі з афіцыйнага сайта. На старонцы загрузкі пазначана, што праграма працуе толькі на 64-бітных версіях Windows. Пасля загрузкі адчыняны ўсталявальны файл. Перад усталёўкай яна прапануе ўсталяваць апошнюю версію .NET Framework і Visual C++ Redistributable Studio.
Калі неабходныя версіі гэтых праграм адсутнічаюць, трэба іх устанавіць. Без іх платформа працаваць не будзе. Калі ёсць апошнія версіі гэтых праграм, адкрыецца стартавае акно ўсталёўшчыка. Націснем “Далей”.
Згаджаемся з умовамі ліцэнзійнай дамовы і выбіраемы шлях, па якім будзе ўсталяваная праграма.
Затым варта даць дазвол на ўстаноўку і дачакацца яе завяршэння.
Па завяршэнні ўстаноўкі адкрыецца адпаведнае акно. Можна запусціць праграму пасля ўстаноўкі.
Навучанне алгатрэйдынгу на TSLab
Настройка пастаўшчыка
Для наладкі і тэсціравання гандлёвага робата трэба наяўнасць гісторыі каціровак. Для атрымання гісторыі каціровак трэба наладзіць пастаўшчыка дадзеных. У меню “Дадзеныя” выбіраемы пункт “Пастаўшчыкі”.
Адкрыецца пустая ўкладка пастаўшчыкоў. Нам трэба націснуць кнопку “Дадаць”. У якое адкрылася дыялогавым акне выбіраемы «Гістарычныя дадзеныя». На гэтым этапе трэба абраць тып дадзеных па каціроўках. У дадзеным выпадку абраны тэкставы файл з каціроўкамі з крокам кошту 0,01. Загружаем патрэбны файл са сховішча.
Загружаем файл 1.rand.quote.step=0,01_1m.txt.zip. Пасля загрузкі знайдзіце файл у тэчцы загрузкі і выміце яго з архіва. Вяртаемся ў TSLab і выбіраемы ў меню “Дадзеныя” пункт “Пастаўшчыкі”.
Адкрыецца адпаведнае акно. Трэба націснуць на кнопку “Дадаць”.
Адкрыецца акно дадання пастаўшчыка. У ім варта абраць пункт “Гістарычныя дадзеныя”, пасля чаго націснуць “Далей”.
У наступным акне паказваем імя і тып дадзеных пастаўшчыка. Задаем імя TextData, а тып дадзеных – Тэкставыя файлы. Націскаем “Далей”.
Выбіраемы шлях да пастаўшчыка. Па змаўчанні зададзены шлях C: ProgramData TSLab TSLab 2.1 Providers Text. Можна пазначыць іншы шлях, націснуўшы … у радку шляху. Задаем шлях нашага файла, пасля чаго ўсталёўваны параметры: 1. Колькасць знакаў пасля коскі – 2. 2. Крок кошту вызначаецца аўтаматычна, калі ён меншы за 1. Файл з крокам 0,01 і ўказаннем у наладах 1 знака будзе абраны крок 0,1
Націскаем на кнопку “Далей”. У акне пастаўшчыкоў стане бачны пастаўшчык даных TextData.
Стварэнне скрыпту
Платформа TSLab дазваляе распрацоўваць гандлёвыя алгарытмы, тэставаць і ствараць гандлёвых робатаў – агентаў. Але перш чым стварыць гандлёвы алгарытм, трэба напісаць скрыпт да яго. Для гэтага ў меню трэба абраць “Лаб”. У спадальным спісе абярыце «Скрыпты».
Адкрыецца дыялогавае акно, у якім націскаем “Стварыць новы”. У другім акне ўводзім імя скрыпту і націскаем “ОК”.
Двойчы націснем левай кнопкай мышы па створаным скрыпце для рэдагавання. Мы ўбачым візуальны рэдактар скрыптоў.
Сіні прастакутны блок – «Гандальны інструмент». Шэры прастакутнік “Аб’ём 1” – колькасць аперацый з апцыёнамі або ф’ючэрснымі кантрактамі за пэўны адрэзак часу. Блок “Закрыццё” адлюстроўвае кошт закрыцця бара. Блок “Панэль графіка” стварае адпаведную панэль.
Націсніце правай кнопкай мышы. У спадальным меню абярыце пункт «Уласцівасці». Абярыце ўкладку «Скрыпт».
Адключыце пункт «Ісп. Дату ад». Абярыце ўкладку “Крыніцы”, а ў ёй – інструмент. Націсніце на гэтае поле. Адкрыецца акно “Выбар каштоўных папер”, у якім трэба будзе абраць пастаўшчыка дадзеных TextData і пакажыце прыладу – каціроўкі тэкставага файла 1.rand.quote.step=0.01_1m. Націскаем “ОК” для пацверджання.
Пасля выбару прылады уверсе акна з’явіцца ўкладка з карцінкай графіка і надпісам “Загрузка”. Пасля апрацоўкі дадзеных на гэтай укладцы з’явіцца назоў абранай прылады – 1.rand.quote.step=0.01_1m
Націсніце «Захаваць і выканаць» пасля загрузкі дадзеных.
Дадзены скрыпт прызначаны для адлюстравання прылады на графік. У рэшце рэшт адкрыецца ўкладка з графікам. Аналагічнай выявай наладжваюцца гандлёвыя алгарытмы і гандлёвыя агенты. Як можна пераканацца, алгатрэйдзінг з дапамогай TSLab даступны практычна кожнаму і не патрабуе папярэдняга навучання. Галоўнай перавагай TSLab з’яўляецца тое, што складаннем гандлёвых робатаў можа заняцца любы карыстач пасля 2-3 дзён вывучэння платформы. Гэтаму садзейнічае візуальны рэдактар. З дапамогай рэдактара Вы навучыцеся патрэбнаму мысленню, неабходнаму ў алгатрэйдынгу. TSLab падтрымлівае мову C#, у далейшым праграмаванне на гэтай платформе можна працягнуць на TSLab API. Аднак далейшае апусканне ў алгарытмічны гандаль лепш працягнуць з больш складанымі праграмамі.
Stocksharp
Stocksharp уяўляе сабой бібліятэку гандлёвых робатаў на C#. Гандлёвыя робаты складаюцца ў асяроддзі праграмавання Visual Studio. Таму перш, чым напісаць робата з дапамогай гэтага рэсурсу, трэба будзе выдаткаваць не менш за паўгода на засваенне мовы праграмавання. Далёка не кожны здольны давесці вывучэнне да канца. Аднак выкарыстанне гэтай платформы поўнасцю сябе апраўдвае на справе.
WealthLab
WealthLab – яшчэ адна платформа для тэсціравання і распрацоўкі гандлёвых робатаў і сістэм ад Fidelity. Існуе дзве версіі праграмы: Pro для грамадзян ЗША, якія валодаюць лікам Fidelity, і Developer для ўсіх астатніх. WealthLab дазваляе выкарыстоўваць у распрацоўцы робатаў інструменты тэхнічнага аналізу, атрымліваць сігналы на ўступленне і закрыццё здзелкі і перадаваць з у тэрмінал. Калі трэйдар не ўмее праграмаваць, ён можа скарыстацца памагатым (wizard). Платформа засноўваецца на мовах праграмавання C# і Pascal. Платформа будуе графікі ў выглядзе адрэзкаў, японскіх свечак, лінейных графікаў і т.д.
Асноўная функцыя праграмы – аптымізацыя і тэсціраванне стратэгій на аснове гістарычных дадзеных. WealthLab можна вывучыць не так хутка, як TSLab, але ўсяго за 2 месяцы. Убудаваная мова праграмавання дае вялікія магчымасці ў стварэнні выгадных гандлёвых стратэгій. Трэйдар можа звязаць платформу з праграмным комплексам Quik, што дазволіць размяшчаць заяўкі ў аўтаномным рэжыме.
Якія стратэгіі прымяняюцца для алгатрэйдзінгу?
Каб трэйдзінг з выкарыстаннем алгарытмаў прыносіў адчувальны вынік, трэба прытрымлівацца стратэгіі, прызначанай для вызначанай сітуацыі.
- Спекулятыўная стратэгія . Накіравана на дасягненне найбольш выгаднай цаны ўваходу ў здзелку для атрымання наступнага прыбытку. Выкарыстоўваецца ў асноўным прыватнымі трэйдарамі.
- Data Mining . Знаходжанне новых заканамернасцяў для новых алгарытмаў. Большая частка дадзеных збіраецца па гэтай стратэгіі да пачатку тэсціравання. Інфармацыя шукаецца па ручных настройках.
- TWAP – узважаны па часе сярэдні кошт. Адкрыццё заявак праз роўныя часовыя адрэзкі па лепшым па попыце і прапанове коштах.
- VWAP – узважаны па аб’ёме сярэдні кошт. Адкрыццё пазіцыі па роўных частках з аднолькавым аб’ёмам на працягу вызначанага часу і коштах не вышэй сярэдняга значэння.
- Execution Strategy . Стратэгія, якая прымяняецца для набыцця актыву па сярэднеўзважанай цане ў вялікім аб’ёме. Выкарыстоўваецца галоўным чынам брокерамі і хедж-фондамі.
Як прадухіліць страты пры занятках алгатрэйдзінгам, рызыка-мэнэджмент
Вялікай памылкай з’яўляецца перакананне, што алгатрэйдару дастаткова толькі стварыць гандлёвага робата. Неабходна папярэдзіць і ўхіліць усе рызыкі. Перабоі ў электрычнасці, інтэрнэт-злучэнні і памылкі ў вылічэннях і праграмаванні могуць прывесці да значных страт і зусім пазбавіць прыбытку.Інфраструктурны сервер, на якім вядзецца алгатрэйдынг, можа раптам страціць працаздольнасць ці на ім можа перазагрузіцца аперацыйная сістэма. Каб выключыць праблем з серверам, можна арандаваць сервер або падняць уласны. Калі гэта недаступна, трэба падабраць сервер у стабільнага правайдэра з добрым падключэннем. Сістэма павінна валодаць мінімальным запасам магутнасці 40-50%. Праблемы з падключэннем заўсёды адбываюцца нечакана. Можна наладзіць падлучэнне такім чынам, каб біржа закрыла пазіцыі пасля страты злучэння. Пашкоджанні пакетаў дадзеных адсочваюцца праз сачыльныя алгарытмы WatchDog. Гандлёвыя стратэгіі, якія прымяняюцца ў трэйдзінг, недасканалыя і іх спалучэнне можа прывесці да абсалютна разнастайных наступстваў. У заяўках, API могуць быць дапушчаны памылкі. Могуць быць няслушна выстаўлены кошт, аб’ём, значэнне лотаў. Таксама таргі могуць быць праведзены ў выхадныя або святочныя дні, парушаны ліміты гандлёвай стратэгіі або рахункі.
Для выключэння гэтых памылак трэба ажыццяўляць кантроль і аналіз заявак і лімітаў гандлёвых стратэгій з мэтай выключэння памылковых параметраў.
У выпадку ўзнікнення пазаштатнай сітуацыі неабходна неадкладна паведаміць аб гэтым усім зацікаўленым асобам праз SMS, электроннай пошце, месэнджарамі і іншым каналам сувязі. Неабходна абавязкова фіксаваць кожную збой у логах, каб не дапусціць яго паўтарэння ў наступным. Як стварыць пасіўны даход з дапамогай алгарытмічнага трэйдзінгу: https://youtu.be/UeUANvatDdo
Алгатрэйдынг: добрыя якасці і недахопы
Гандлёвыя робаты не схільныя “чалавечым” фактарам, якія маглі б паўплываць на іх працу: стоме, эмацыйным зрывам і іншым. Гэта з’яўляецца галоўнай добрай якасцю алгатрэйдзінгу. Алгарытмы ідуць па дакладна зададзенай праграме і ніколі не адхіляюцца ад яе. Алгатрэйдзінг мае шэраг недахопаў. Да іх адносіцца, у прыватнасці, цяжкадаступнасць інфармацыі па гэтым відзе гандлю ў свабодным доступе. Алгатрэйдэр павінен валодаць праграмаваннем, што даволі складана для большасці спецыялістаў у галіне фінансаў. Калі ў рынку адбудуцца змены, давядзецца цалкам змяніць алгарытм. У напісанні гандлёвага робата можа быць дапушчана памылка, якая павядзе ўвесь алгарытм па няправільным шляху, і гэта прывядзе да страты грашовых сродкаў.
Алгатрэйдзінг – даволі складаны від біржавога гандлю, які патрабуе ведаў не толькі ў трэйдзінг, але і ў матэматыцы і праграмаванні. Трэба не толькі ўмець стварыць патрэбны алгарытм, але і прадухіліць непаладкі ў злучэнні, памылкі ў алгарытмах і праграмным кодзе. Трэба добра падумаць, перш чым вырашыцца весці гандаль падобнай выявай. Тым не менш, асвоіўшы яго і правільна прымяніўшы на практыцы, трэйдар атрымае значны рост даходу і аблегчыць сваю працу.