Як торгувати деривативами за допомогою Блокнота Jupyter?

Опубліковано 28 вер. 2023 р.Оновлено 4 квіт. 2024 р.4 хв читання45

Дізнайтеся, як можна просто торгувати деривативами за допомогою одних і тих же інструментів. Скористаймося комплексними функціями python-okx на вищому рівні!

Типи деривативів

На OKX можна торгувати деривативами трьох типів:

  1. Ф’ючерси
  2. Безстрокові свопи
  3. Опціони

Про характеристики деривативів різних типів на OKX можна дізнатись у статті Деривативи на Bitcoin простими словами: ф’ючерси, безстрокові свопи й опціони. У цьому посібнику за приклад взято безстрокові свопи.

FAQ

1. Як отримувати ринкові дані за допомогою команди Get market data?

Крім іншого, ви можете замінити instType на FUTURES або OPTION.
CT-web-derivativestrading-howtoapi-1

2. Як отримувати доступні торгові пари за допомогою команди Get instruments?

Так само виберіть instType, для якого ви бажаєте отримати інформацію.
CT-web-derivativetrading-howtoapi-2
2.1 Розрахунок умовної вартості деривативного контракту з параметрами інструменту ctVal і ctMult
Щоб обчислити умовну вартість деривативного контракту (тобто безстрокових свопів, ф’ючерсних і опціонних контрактів), з параметрів інструменту потрібно отримати ctVal (вартість контракту) і ctMult (множник контракту).
Умовна вартість деривативного контракту обчислюється як
Умовна вартість деривативного контракту обчислюється як ctVal * ctMult (одиниця: ctValCcy);
Наприклад, з наведених далі параметрів інструменту можна розрахувати умовну вартість безстрокового контракту LTC-USD: ctVal * ctMult (одиниця: ctValccy) = 10 * 1 USD = 10 USD
CT-web-derivativestrading-howtoapi-3

3. Як дізнатися ваш баланс за допомогою команди Get balance?

CT-web-derivativestrading-howtoapi-4

4. У якому режимі акаунта й режимі маржі/торгівлі доступна торгівля деривативами?

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

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

4.1. Отримання поточної конфігурації акаунта з параметра acctLv у команді Get account configuration
Перевірте, що для торгівлі деривативами активовано потрібний режим акаунта.
CT-web-derivativestrading-howtoapi-5

5. Як встановити кредитне плече за допомогою команди Set account leverage?

Одним з важливих параметрів, який потрібно задати під час торгівлі деривативами, є кредитне плече.
Воно дає трейдерам змогу входити в позицію розміру, значно більшого за вкладену суму. Тому прибутки або втрати суттєво зростають.
Для торгівлі деривативами на OKX трейдерам доступне кредитне плече до 125х. Ознайомтеся з порядком встановлення кредитного плеча різних рівнів, дозволених для позицій різних рівнів.
CT-web-spottrading-howtoapi-6 Значення згаданих термінів:

  • Макс. кредитне плече: максимальний множник позикового капіталу для підвищення рентабельності інвестиції.
  • Коефіцієнт початкової маржі (IMR): маржа, необхідна для утримання поточних позицій.
  • Коефіцієнт підтримувальної маржі (MMR): мінімальна маржа, необхідна для підтримання поточних позицій. Якщо капітал акаунта падає нижче підтримувальної маржі, відбувається ліквідація.
    Наприклад, якщо ви хочете укласти угоду на 3000 безстрокових контрактів ETHUSDT, ви можете використати суму, що максимум у 75 разів перевищує ваш капітал. IMR = 1 / 75 = 1,3%. Щоб уникнути ліквідації, ви повинні підтримувати MMR на рівні 0,8% або вище.
    У розділах 6.2 «Кредитне плече» та 6.3 «Коефіцієнт маржі й примусова ліквідація» Правил маржинальної торгівлі OKX можна більше дізнатися про кредитне плече, маржинальні вимоги та правила ліквідації.

Існує 9 різних сценаріїв виставлення кредитного плеча через відкриті API OKX. Ознайомтеся зі сценаріями встановлення кредитного плеча в різних випадках.
Для безстрокових свопів є 3 сценарії встановлення кредитного плеча:

  • встановлення кредитного плеча для торгівлі інструментами СВОП з крос-маржею на рівні контракту;
  • встановлення кредитного плеча для торгівлі інструментами СВОП у режимі ізольованої маржі та в режимі позиції купівлі/продажу на рівні контракту;
  • встановлення кредитного плеча для торгівлі інструментами СВОП у режимі ізольованої маржі та в режимі довгих/коротких позицій на рівні контракту та позиції.
    Далі на прикладі показано, як виставити кредитне плече для одного контракту СВОП і боку позиції порівняно з усіма контрактами СВОП для певного базового активу.
    CT-web-derivativetrading-howtoapi-7 Врахуйте, що параметр запиту posSide необхідний лише тоді, коли вибрано режим ізольованої маржі в режимі довгої/короткої позиції (розміщення ордера) для інструментів Ф’ЮЧЕРСИ/СВОП (див. сценарій 6 і 9 у статті Сценарії встановлення кредитного плеча).

6. Як розміщувати ордери в різних режимах позиції (розміщення ордерів): довгий/короткий і купівля/продаж?

У торгівлі ф’ючерсами та безстроковими свопами є два режими позиції (розміщення ордерів): довга/коротка і купівля/продаж (чистий).
Режим позиції (розміщення ордера) можна змінити з довгого/короткого на купівлю/продаж (чистий) і навпаки через API Встановлення режиму позиції:
CT-web-derivativetrading-howtoapi-8 Або через Налаштування на сайті можна зробити так:
CT-web-derivativetrading-howtoapi-9 У режимі купівля/продаж (чистий) позиція в певному контракті — це чиста кількість угод купівлі й продажу. Коли ви розміщуєте ордер через пункт Розмістити ордер, параметр запиту posSide необов’язковий. Якщо ви його проводите, єдине дійсне значення — чистий.
У режимі довга/коротка довгі й короткі позиції в певному контракті будуть незалежними одна від одної, тому їх потрібно закривати окремо. Коли ви розміщуєте ордер через пункт Розмістити ордер, параметр запиту posSide обов’язковий. Дійсні значення: довгий або короткий. Далі показано, як встановити параметр side (сторона угоди) й posSide (сторона позиції), коли ви розміщуєте ордер за різними сценаріями:

  • розміщення ордера на купівлю та відкриття/збільшення довгої позиції: side = купівля, posSide = довга
  • розміщення ордера на продаж і відкриття/збільшення короткої позиції: side = продаж, posSide = коротка
  • розміщення ордера на продаж і закриття/скорочення довгої позиції: side = продаж, posSide = довга
  • розміщення ордера на купівлю та закриття/скорочення короткої позиції: side = купівля, posSide = коротка
    Тоді все готово для розміщення ордерів на деривативи!

6.1 Розміщення лімітного ордера через пункт Розмістити ордер
Купівля 100 BTC-USDT свопових контрактів за ціною 19 000 USDT.
CT-web-derivativetrading-howtoapi-10 6.2 Розміщення лімітного ордера через пункт Розмістити ордер
Купівля 100 BTC-USDT свопових контрактів за ринковою ціною.
CT-web-derivativestrading-howtoapi-11

7. Як отримати інформацію про певний ордер і його статус (див. пункт Отримання деталей ордера)?

Щоб отримати деталі ордера, крім ordId можна також вказати clOrdId.
CT-web-derivativestrading-howtoapi-12

8. Як скасувати ордер через пункт Скасувати ордер?

Замість ordId можна також використати clOrdId.
CT-web-derivativestrading-howtoapi-13

9. Як внести змінити в ордер через пункт Змінити ордер?

Замість ordId можна також використати clOrdId.
На цьому прикладі показано, як змінити розмір.
CT-web-derivativestrading-howtoapi-14

10. Як отримати список відкритих ордерів через пункт Отримати список ордерів?

CT-web-derivativestrading-howtoapi-15

11. Як отримати історію ордерів через пункт Отримати історію ордерів (за останні 7 днів) і Отримати історію ордерів (за останні 3 місяці)?

CT-web-derivativestrading-howtoapi-16

12. Як отримати деталі транзакції через пункт Отримати деталі транзакції (за останні 3 дні) й Отримати деталі транзакції (за останні 3 місяці)?

CT-web-derivativestrading-howtoapi-17

13. Як отримати позиції через пункт Отримати позиції?

Якщо акаунт є в режимі чистий, показується чиста позиція в кожному контракті; коли ж акаунт у режимі довгий/короткий, довга або коротка позиція в кожному контракті показується окремо.
CT-web-derivativetrading-howtoapi-18 Наприклад, ви можете відстежувати нереалізований прибуток і збиток за допомогою параметра відповіді upl.

Інші приклади

Щоб ознайомитися з додатковими прикладами, завантажте повний Блокнот Jupyter тут.
Якщо у вас виникли запитання щодо API OKX, поставте їх у каналі підтримки API OKX у Telegram.