Розробка AI-бота для копітрейдингу з ранжуванням трейдерів

Різкі рухи ринку ламають просте дзеркалювання: той, хто копіює, відстає від лідера й втрачає більше. Ми розробляємо AI-бота для копітрейдингу під ключ — з ранжуванням трейдерів і вибором режиму копіювання під ваш профіль ризику. Зменшуємо частку збиткових серій угод і передаємо схему зі зрозумілими налаштуваннями.
Часті запитання

Чому AI копітрейдинг дає збій на різких рухах ринку

Зв'язка в копітрейдингу виглядає лінійною: трейдер відкриває угоду, бот для копіювання угод повторює її на рахунках підписників. Поки ринок спокійний, розбіжність між ціною входу джерела й виконанням у підписників вимірюється частками відсотка і на результат не впливає.

Різкий рух ламає схему одразу в кількох місцях — і саме там AI копітрейдинг перестає бути страховкою, якщо не закриває їх окремо.

Перше — затримка сигналу. Від закриття угоди трейдером до заявки в підписника проходять повідомлення від біржі, обробка, перерахунок обсягу під розмір рахунку й відправлення на виконання.

На спокійному ринку частки секунди непомітні, в імпульсі ціна за цей час іде, і підписник входить уже за іншою ціною.

Друге — розсинхрон цін. Трейдер і його підписники торгують у різних стаканах: різні майданчики, різні потоки котирувань, різна глибина.

Сукупний обсяг сотень рахунків, що повторюють одну угоду, сам рухає ціну в тонкому стакані, тому що пізніше спрацьовує копіювання, то більше просковзування.

Третє — лавина заявок. Одночасна розсилка на сотні рахунків упирається в обмеження майданчика щодо частоти звернень: частина заявок відхиляється, частина стає в чергу, і автоматичне копіювання угод починає наздоганяти ринок повторними спробами. Тоді розбіжність між угодою трейдера й позиціями підписників стає необоротною.

Четверте — ручне втручання. Оператор бачить розбіжність і закриває позиції руками, але правила управління ризиком уже розійшлися з фактичним станом рахунків: десь позиція закрита, десь подвоєна.

Далі розбираємо, як це закривається на рівні архітектури: пріоритет сигналів, єдине джерело цін, ліміти на швидкість розсилки й автоматична звірка позицій.

Що дає AI копітрейдинг: ефект на потоці угод

Ефект упровадження рахується на живому потоці угод, а не на демонстраційному прогоні. Ключова метрика — частка виконаних сигналів: скільки розпоряджень, надісланих джерелом, дійшло до брокера без втрат і викривлень.

Другий зріз — стійкість до збоїв: система переживає розрив зв'язку з майданчиком, не втрачаючи чергу невиконаних розпоряджень і не відкриваючи зайвих позицій.

Ранжування трейдерів будується не на одній дохідності. Вага джерела перераховується за глибиною просадки, тривалістю утримання позиції та стабільністю поведінки на різних станах ринку — джерело з красивою кривою та рідкісними, але глибокими провалами йде вниз.

Контроль ризику на портфель задається жорсткими межами: частка одного джерела в загальному обсязі, максимальна просадка на портфель, ліміт на одночасні позиції в одному інструменті. У разі пробою ліміту підписка на трейдера призупиняється автоматично, без оператора.

Окремо закривається клас відмов із дублями та пропусками. Кожне розпорядження отримує ідентифікатор: повторна доставка не створює другої угоди, а втрачений пакет відновлюється з черги за наступного з'єднання.

Під час роботи з MetaTrader та іншими майданчиками це прибирає основну причину розбіжностей між рахунком трейдера й рахунком підписника.

Канал після розриву повертається в роботу за хвилини, без ручної звірки: стан позицій запитується в майданчика, невідправлені розпорядження переоформлюються, спірні угоди позначаються для розбору.

Чим менше ручних дій у цьому сценарії, тим нижча частка розбіжностей, які потім доводиться пояснювати клієнту.

Режими копіювання та моделі ранжування трейдерів

Режими копіювання різняться не механікою угоди, а тим, як ризик лягає на рахунок підписника. Пропорційний розподіл перераховує обсяг позиції під вільні кошти — просадка повторює просадку джерела у відсотках.

Фіксований лот простіше контролювати, але зі зростанням капіталу джерела та сама угода отримує в портфелі зовсім іншу вагу.

Вибір режиму залежить від того, чи збігаються майданчики, валюти рахунку та торгові години.

Режим Коли підходить Обмеження
Пропорційний розподіл Різний капітал підписників, потрібна дохідність у відсотках Перерахунок за часткового закриття та поповнень
Фіксований обсяг Однакові рахунки, ручний контроль ризику Ризик підписника змінюється зі зростанням рахунку джерела
Дзеркалювання сигналів Трейдер і підписник торгують на різних майданчиках Затримка виконання та просковзування на волатильності
Стоп за просадки Потрібне автоматичне виведення стратегії з ротації Не рятує від розривів між торговими сесіями

Ранжування трейдерів будуємо за моделлю скорингу трейдера, а не за однією дохідністю: стійкість кривої, максимальна й середня просадка, час відновлення, дисципліна. Сигнали беремо з реальних майданчиків, зокрема MetaTrader, — оцінка спирається на виконувані угоди.

Обмеження підходу в короткій історії: скоринг перераховується ковзним вікном, і до набору статистики стратегія йде в ротацію з урізаною вагою.

Як ми будуємо бота: етапи інженерної роботи

Порядок етапів тут не формальність: якщо схему ранжування налаштовувати раніше за аудит даних, ваги ляжуть на ознаки, яких у потоці немає або які заповнюються із затримкою.

Тому ми йдемо від сирих даних до грошей і не переходимо до наступного кроку, поки попередній не дає стійкий результат.

  1. Аудит даних. Звіряємо джерела угод, повноту історії та затримки надходження, окремо шукаємо видалені й «вижилі» рахунки, через які дохідність на історії завищується.
  2. Постановка метрик. Фіксуємо, що вважаємо успіхом: дохідність з урахуванням просадки, стійкість за періодами, обіг і частка вимушених закриттів. Тут же задаємо поріг, нижче якого трейдер у вибірку не потрапляє.
  3. Схема ранжування. Визначаємо ознаки трейдера та їхні ваги, обмежуємо вплив одного рахунку на загальний рейтинг і задаємо частоту перерахунку.
  4. Перевірка на історії. Прогін на ковзних вікнах без підглядання в майбутнє, з комісіями та просковзуванням, окремо на різних режимах ринку.
  5. Живий потік угод. Запускаємо в тіньовому режимі: сигнали формуються, угоди не виконуються, прогноз звіряється з фактом. Розбіжність видно до того, як у контурі з'являться гроші.
  6. Виконання та ліміти ризику. Розмір позиції, ліміти на трейдера й на портфель, автоматичне відключення в разі відхилення від його профілю. Логіка відключення тут важливіша за логіку включення.
  7. Передача контуру супроводу. Моніторинг, оповіщення про відхилення, регламент перегляду ранжування та порядок відкату до попередньої конфігурації.

Кожен етап закінчується артефактом і метрикою, за якою видно, чи можна йти далі. Так запуск стає керованим, а не експериментом на живих грошах.

Що передаємо на руки: конфігурації та регламенти

Передача контуру — це не архів із вихідними кодами, а робоча система, яку ваш інженер піднімає й супроводжує без нас. Тому фіксуємо все, що визначає поведінку бота: від порогів ранжування до того, хто і як може втрутитися в торговий контур. Комплект нижче йде замовнику разом із доступами.

  • Схеми інтеграції: потоки даних між біржовими підключеннями, модулем ранжування трейдерів і виконавцем угод — з точками відмови та тайм-аутами на кожній ділянці.
  • Конфігурації: пороги ризику, ліміти на угоду та плече, правила розподілу капіталу між трейдерами, вікно перерахунку рейтингу — і що змінюється з правкою кожного параметра.
  • Політики доступу до рахунків: торговий ключ без права виведення, окремий ключ лише для читання під аналітику, порядок ротації та відкликання зі зміною складу команди.
  • Документація рішення: як будується рейтинг трейдерів, які ознаки до нього входять, де модель деградує на рідкісних даних.
  • Регламент супроводу: календар оновлень, перевірки живучості підключень, порядок перенавчання та валідації перед розгортанням.
  • Інструкції в разі збоїв: обрив зв'язку з біржею, розбіжність позицій, хибний сигнал — що зупиняється саме, що підтверджує людина.
  • Передача контуру: доступи, тестовий стенд, журнал інцидентів і запуск на вашій стороні під нашим наглядом.

Перші тижні після передачі ведемо систему разом із вашою командою — так видно, де документація неповна, і це правиться одразу.

Кейс: ранжування трейдерів дало вимірюваний результат

Замовник — сервіс, який транслює угоди вибраних трейдерів у рахунки підписників. Сигнали надходили з MetaTrader через копіювальник, але логіка вибору була плоскою: трейдер потрапляв у потік і залишався там, поки сам не відключався. Просадка одного учасника тягла за собою весь портфель, а розбір інцидентів ішов вручну.

Ми перебудували ядро на ранжування. У кожного трейдера рахуємо стійкість результату на довгому вікні, поведінку в просадці, кореляцію з уже підключеними та стабільність торгової активності.

Ранжування перераховується за розкладом, а не за фактом збитку: у разі падіння показників нижче порога вага знижується автоматично, аж до виключення з потоку.

Метрики до та після

Метрика До Після
Частка виконаних сигналів 82% 98%
Реакція на збій 40 хв 3 хв
Ручні втручання 25 на тиждень 4 на тиждень

Важливі не самі числа, а клас відмов, який зник. Раніше збій ловив черговий інженер і розбирав його очима; тепер бот сам знімає трейдера з потоку й піднімає попередження з контекстом угоди.

Портфель став стійкішим: результат підписників більше не визначається одним учасником, бо корельовані позиції обмежені на рівні ваг.

Чим розподіл відрізняється від дзеркалювання угод?

Дзеркалювання угод повторює структуру портфеля лідера: обсяг підписника рахується як частка його коштів від коштів трейдера на вході, і кожна угода відкривається в тій самій пропорції.

Розподіл обсягу розводить сигнал і розмір: трейдер задає напрямок та інструмент, а обсяг позиції рахує ризик-модуль підписника за своєю часткою капіталу.

Розбіжність вилазить на усередненні. За дзеркалювання коефіцієнт зафіксований: якщо лідер доливає, підписнику потрібен той самий запас вільних коштів, інакше пропорція ламається й з'являється перекіс позиції — одна нога переважує інші. Розподіл обсягу перекіс обмежує, але структура портфеля розходиться з лідером.

Вибір механіки — це вибір того, що копіюється: структура портфеля чи дохідність. На тренді дзеркалювання дає результат ближче до лідера, у боковику з частими доливами потребує більше вільних коштів і глибше просаджує рахунок підписника.

Ризик на підписника рахуємо не за дохідністю лідера, а за просадкою та глибиною усереднення. Тому в ранжуванні трейдерів поруч із дохідністю тримаємо максимальну просадку, середнє плече й частку угод із доливами — за ними видно, яка механіка витримає розворот.

Технічні сумніви та відповіді щодо копіювання угод

Перед розрахунком дохідності замовник перевіряє поведінку системи поза штатним режимом: обрив потоку сигналів, зміну ваг ранжування, захист ключів доступу та межі відповідальності. Нижче — відповіді в тому вигляді, у якому вони закріплюються в проєктній документації.

Що станеться в разі обриву потоку сигналів?

Розрив — штатний сценарій, а не збій. Відкриті позиції супроводжуються за заданими правилами, нові угоди не відкриваються до відновлення зв'язку, а якщо пауза перевищує встановлене вікно, спрацьовує регламент ризику. Кожна дія потрапляє в журнал із причиною спрацювання.

Чи можна змінювати ваги ранжування і як контролюється перенавчання моделі?

Ваги дохідності, просадки, стабільності та дисципліни винесені в конфігурацію: їх змінюють без зупинки системи, кожен набір зберігається окремою версією й повертається одним перемиканням.

Перенавчання обмежене вікном оцінки, яке включає й збиткові відрізки, — інакше рейтинг починає преміювати випадкові сплески.

Як захищені ключі доступу до біржових акаунтів?

Ключі зберігаються в захищеному сховищі й не потрапляють ні в код, ні в журнали, ні у відкритому вигляді на диск. Торговим ключам надаються права лише на угоди — виведення коштів закрито на стороні біржі. Заміна ключів залишається плановою процедурою, а не аварійною.

Де закінчується ваша зона відповідальності?

Ми відповідаємо за збір сигналів, розрахунок рейтингу, виконання угод за правилами, збереження ключів і відтворюваність результату. Ринковий ризик та підсумкову дохідність несе інвестор. Межі закріплюються в документації до старту, а не після серії збитків.

Обговоримо задачу: зберемо схему й повернемося з оцінкою

Щоб повернутися з оцінкою робіт і планом упровадження, а не із загальними формулюваннями, нам потрібен мінімум ввідних щодо вашого контуру. Нижче — те, що знімає невизначеність в обговоренні задачі: за кожним пунктом достатньо поточного стану, без підготовки документів.

  • Потік сигналів: звідки приходять угоди трейдерів (канали, зовнішні джерела, ручні таблиці), у якому вигляді та з якою частотою, яка затримка від сигналу до входу вважається допустимою.
  • Логіка ранжування: за якими метриками порівнюємо трейдерів — дохідність за період, максимальна просадка, стабільність результату, кількість угод, — яке вікно спостереження і як часто перезбирається рейтинг.
  • Вимоги до ризику: ліміт на угоду й на одного трейдера, поріг просадки, за якого стратегія відключається автоматично, плече, правила виходу з позиції.
  • Майданчики та доступи: де торгуємо, це тестовий контур чи бойовий, хто видає ключі й з якими правами — торгівля без виведення коштів.
  • Поточний контур: що вже працює зараз — скрипти, таблиці, ручне копіювання, — і які інструменти зобов'язані залишитися в новій схемі.
  • Режими та відкат: чи потрібен прогін на історичних даних, за який час копітрейдинг має повністю зупинятися й повертатися в ручне управління.
  • Зона відповідальності: хто на вашій стороні підтверджує зміни лімітів і ухвалює рішення про зупинку.

З цього збираємо склад робіт: приймання та нормалізація сигналів, рушій ранжування, шар виконання угод, ризик-контроль, моніторинг і регламенти експлуатації.

Далі повертаємося з оцінкою за етапами, планом упровадження та списком того, що знадобиться з вашого боку — доступи, тестовий контур і відповідальний за ризик.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1374
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142