Цю сторінку перекладено автоматично. Оригінал англійською мовою є канонічним. Читати англійською →
Перейти к основному содержимому

Коди причин відхилення перп-ордерів

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

Як форма використовує коди:

  • Блокувальні коди замінюють текст кнопки надсилання на причину (наприклад, Not enough margin), доки ви не зміните ордер.
  • Коди оновлення (stale_position_snapshot, venue_risk_unavailable) перевіряються повторно автоматично і ніколи не блокують кнопку.
  • Коди повтору з блокуванням (price_unavailable, account_health_unavailable) також перевіряються повторно автоматично, але блокують кнопку, доки перевірка не пройде.
  • Невдалий попередній перегляд ніколи вас не блокує. Якщо попередній перегляд недоступний, форма не показує чисел, і ви все одно можете надіслати ордер. Справжня перевірка все одно виконується під час надсилання.
  • invalid_order, engine_rejected і будь-який невідомий код блокують кнопку і показують повідомлення сервера без змін, оскільки воно називає поле або правило, яке не пройшло перевірку.

Користувачі API отримують те саме значення в reasonCode у відповіді POST /v1/tee-perp/preview, а також у відповідях на надсилання ордера, пакета ордерів і зміни кредитного плеча. Зрозумілий людині текст (reason у попередньому перегляді, message у відповідях на надсилання) є діагностичним; розгалужуйте логіку за кодом.

Маржа і позиція​

КодЩо він означаєЩо робити
insufficient_marginПісля виконання цього ордера (і всіх відкритих перп-ордерів) вашого рахунку не вистачить для покриття вимог. Вимога визначається як гірша з двох: портфельна маржа Hypercall або маржа Hyperliquid.Скористайтеся карткою, яку показує форма: Use max (найбільший розмір, що проходить перевірку), Raise to N× (найменше кредитне плече, що проходить перевірку) або Deposit на суму нестачі. Скасування активних ордерів також вивільняє маржу.
reduce_only_exceeds_positionОрдер reduce-only збільшив би або перевернув вашу позицію замість того, щоб її зменшити.Встановіть розмір, що не перевищує вашу відкриту позицію (форма пропонує Use position), або вимкніть Reduce only.
mode_change_with_positionВи спробували перемкнути режим між крос і ізольованим на ринку, де маєте позицію. Hyperliquid також цього не дозволяє.Залиште поточний режим або закрийте позицію і перемкніть режим.
leverage_requires_flat_accountЗміну кредитного плеча відхилено, оскільки на рахунку є відкриті перп-позиції або очікувані перп-ордери. Це трапляється лише там, де Hypercall не враховує ризик ліквідації Hyperliquid у маржі; в основному середовищі він враховується, тому там цей код не повертається.Закрийте позиції і скасуйте перп-ордери, потім змініть кредитне плече.
liquidation_pendingРахунок перебуває в стані попередньої ліквідації, і от-от почнеться повна ліквідація. Hypercall відхиляє нові перп-ордери на цьому рахунку.Дочекайтеся завершення ліквідації. Див. Ліквідація.

Налаштування рахунку​

КодЩо він означаєЩо робити
account_not_pmДля перп-ордерів потрібен рахунок з портфельною маржею.Увімкніть портфельну маржу на сторінці рахунку, потім повторіть спробу.
unified_mode_requiredОрдери, що додають ризик, потребують режиму unified account Hyperliquid на торговому рахунку.Натисніть Enable unified mode у формі.
builder_not_approvedHyperliquid відхилив ордер, оскільки рахунок не схвалив адресу білдера Hypercall. Цей код повертає Hyperliquid під час надсилання, а не попередній перегляд, і користувачі API бачать його в полі errorCode відповіді на надсилання, а не в reasonCode.Один раз натисніть Enable trading. Див. Перпи на Hypercall.
account_health_unavailableHypercall зараз не може прочитати стан маржі рахунку, тому відхиляє все, що додає ризик.Форма автоматично перевіряє повторно. Щоб тим часом зменшити ризик, надішліть ордер з увімкненим Reduce only.

Ринок і дані​

КодЩо він означаєЩо робити
market_not_supportedHypercall не може оцінювати ризик на цьому ринку. Для цього потрібні джерело ціни, сітка маржинальних сценаріїв і графік Hyperliquid з маржею в USDC для вашого рахунку.Оберіть підтримуваний ринок.
trading_haltedТоргівлю призупинено, або повністю, або для цього ринку.Зачекайте. Форма тримає кнопку вимкненою, доки торгівля не відновиться.
price_unavailableЦіна, яку Hypercall використовує для оцінки ринку, відсутня або застаріла.Форма автоматично перевіряє повторно. Hypercall не вгадує ціну, тому відхиляє ордери, доки не надійде свіжа.
stale_position_snapshotОстанні дані про вашу позицію або капітал у Hyperliquid відсутні або надто старі.Нічого не потрібно. Форма один раз перевіряє повторно сама. Якщо помилка не зникає, оновіть сторінку.
venue_risk_unavailableДані про ризик Hyperliquid (кредитне плече, ціни ліквідації, забезпечення за позицією) відсутні або не збігаються з останніми даними про вашу позицію.Нічого не потрібно. Форма один раз перевіряє повторно сама.

Умови ордера​

КодЩо він означаєЩо робити
invalid_orderУмови ордера недійсні: точність ціни або розміру, некоректна дужка TP/SL або хибний клієнтський ідентифікатор ордера.Виправте крок ціни або крок розміру і надішліть повторно.
action_not_supportedПолітика підписувального анклаву не дозволяє такий тип дії. Якщо це стається з типом ордера, який пропонує форма, форма позначає цей тип як невімкнений.Використайте підтримуваний тип ордера.
engine_rejectedБудь-яке інше відхилення. Текст reason містить точну причину.Прочитайте повідомлення. Якщо воно незрозуміле, зверніться до підтримки з цим текстом.

Пов'язані сторінки​