Jak mogę przeprowadzać transakcje spot za pomocą Jupyter Notebook?
Dowiedz się, jak możesz przeprowadzić prosty handel spot, wywołując funkcje w bibliotece python-okx w Jupyter Notebook.
1. Jak uruchomić wyskakujące skróty kodu widmowego na Jupyter Notebook?
Jupyter Notebook to niezwykle potężne i łatwe w użyciu narzędzie do programowania w języku Python i analizy danych. Serwer Jupyter Notebook można uruchomić w systemie Windows, Mac OS lub Linux. Ten samouczek zawiera dość obszerny przewodnik na temat uruchamiania Jupyter Notebook.
2. Jak mogę zainstalować pakiet python-okx?
Po uruchomieniu Jupyter Notebook można zainstalować pakiet python-okx, uruchamiając polecenie pip install python-okx
w notatniku lub w terminalu (lub w wierszu polecenia w systemie Windows):
3. Jak mogę utworzyć klucze API?
1. Po zalogowaniu się do OKX, przejdź do Handel > Handel demo, aby utworzyć klucze API do celów testowych
2. Przejdź do Konto > API, aby utworzyć klucze API
3. Utwórz klucze API dla różnych kont głównych i podrzędnych
4. Wybierz Handel w Uprawnienia, aby handlować za pomocą klucza API
5. Teraz masz dostęp do klucza API, klucza tajnego i hasła. Przechowuj je w bezpiecznym miejscu!
6. Zainicjuj zmienne Python, aby zapisać szczegóły API w notatniku do późniejszego wykorzystania
1 api_key = "xxxxx"
2 secret_key = "xxxxx"
3 passphrase = "xxxxxx"
```
api_key = "xxxxx"
secret_key = "xxxxx"
passphrase = "xxxxxx"
```
4. Jak mogę zaimportować moduły OKX?
W python-okx istnieje kilka modułów opartych na naszych modułach REST API. Przeczytaj nasz przewodnik, aby dowiedzieć się jak importować moduły OKX.
Handluj
BlockTrading
Finansowanie
Konto
Konwertuj
Zarabianie
Subkonto
MarketData
PublicData
TradingData
Status
NDBroker
FDBroker
Aby zaimportować moduł Handel, można uruchomić:
1 import okx.Trade as Trade
```
import okx.Trade as Trade
```
Teraz możesz korzystać z wszechstronnych funkcji dostępnych w python-okx!
5. Jak mogę uzyskać dostęp do naszych danych rynkowych?
Dowiedz się więcej na stronie , jak uzyskać dostęp do naszych danych rynkowych i zapoznaj się z poniższym kodem.
1 import okx.MarketData as MarketData
2 flag = "1" # live trading: 0, demo trading: 1
3 marketDataAPI = MarketData.MarketAPI(flag=flag)
4 result = marketDataAPI.get_tickers(instType="SPOT")print(result)
```
import okx.MarketData as MarketData
flag = "1" # live trading: 0, demo trading: 1
marketDataAPI = MarketData.MarketAPI(flag=flag) result = marketDataAPI.get_tickers(instType="SPOT"
).
print(result)
```
6. Jak mogę odczytać dostępne pary handlowe?
Dowiedz się więcej na , jak czytać nasze dostępne pary handlowe i zapoznaj się z poniższym kodem.
```
import okx.PublicData as PublicData
flag = "1" # live trading: 0, demo trading: 1
PublicDataAPI = PublicData.PublicAPI(flag=flag)
result = PublicDataAPI.get_instruments(
instType="SPOT"
).
print(result)
```
7. Jak mogę odczytać saldo mojego konta?
Aby uzyskać więcej informacji na temat , jak odczytać saldo konta, przeczytaj nasz dedykowany przewodnik.
Uwaga: W przypadku transakcji spot w trybie "cash" tdMode
należy przede wszystkim sprawdzić parametry cashBal
, frozenBal
dla każdego ccy
w details
oraz parametr totalEq
.
```
import okx.Account as Account
flag = "1" # live trading: 0, demo trading: 1
accountAPI = Account.AccountAPI(api_key, secret_key, passphrase, False, flag)
result = accountAPI.get_account_balance()
print(result)
```
8. Jak mogę uzyskać dostęp do czterech różnych trybów konta?
W naszym systemie ujednoliconych kont dostępne są cztery tryby konta:
Proste konto
Konto z marżą jednowalutową
Konto z marżą wielowalutową
Konto z marżą portfolio
Aby zrozumieć różnicę między różnymi trybami konta i jak skonfigurować tryb konta za pośrednictwem interfejsu użytkownika, przeczytaj nasz dedykowany przewodnik. W trybie depozytu zabezpieczającego lub w trybie handlu, parametr tdMode
określa, w jaki sposób pozycja będzie zabezpieczana, co należy ustawić za każdym razem, gdy składasz nowe zlecenie. W przypadku handlu spot w trybie prostego lub jednowalutowego rachunku depozytu zabezpieczającego, należy ustawić tdMode
="cash".W przypadku handlu spot w trybie wielowalutowego depozytu zabezpieczającego lub portfela depozytu zabezpieczającego, należy ustawić tdMode
= "cross". Poniżej znajdziesz krótkie wyjaśnienie, jak dowiedzieć się, w jakim trybie skonfigurowane jest Twoje bieżące konto.
9. Jak mogę sprawdzić, w jakim trybie skonfigurowane jest moje bieżące konto?
Aby uzyskać więcej informacji na temat tego, jak dowiedzieć się, w jakim trybie skonfigurowane jest aktualne konto, przeczytaj nasz dedykowany przewodnik i wprowadź parametr acctLv
.
```
import okx.Account as Account
flag = "1" # live trading: 0, demo trading: 1
accountAPI = Account.AccountAPI(api_key, secret_key, passphrase, False, flag) result = accountAPI.get_account_config()
print(result)
if result['code'] == "0":
acctLv = result["data"][0]["acctLv"]
if acctLv == "1":
print("Simple mode")
elif acctLv == "2":
print("Single-currency margin mode")
elif acctLv == "3":
print("Multi-currency margin mode")
elif acctLv == "4":
print("Portfolio margin mode")
```
10. Jak mogę składać zlecenia spot w trybie depozytu zabezpieczającego prostego / jednowalutowego?
10.1 Jak mogę złożyć zlecenie z limitem?
Aby uzyskać więcej informacji na temat składania zleceń z limitem w trybie prostego lub jednowalutowego konta zabezpieczającego, przeczytaj nasz dedykowany przewodnik.
Oto przykład zakupu 0,01 BTC po cenie 19 000 USDT.
```
# zlecenie z limitem
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="limit",
px="19000",
sz="0.01"
).
print(result)
if result["code"] == "0":
print("Successful order request,order_id = ",result["data"][0]["ordId"])
else:
print("Unsuccessful order request,error_code = ",result["data"][0]["sCode"], ", Error_message = ", result["data"][0]["sMsg"])
```
10.2 Jak mogę złożyć zlecenie rynkowe?
Aby uzyskać więcej informacji na temat składania zleceń rynkowych w trybie konta prostego lub z marżą jednowalutową, przeczytaj nasz dedykowany przewodnik.
Oto przykład zakupu BTC o wartości 100 USD po bieżącej cenie rynkowej.
```
# market order
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="market",
sz="100",
).
print(result)
```
10.3 Jak mogę użyć parametru waluty docelowej tgtCcy podczas handlu spot?
W handlu spot, parametr tgtCcy
określa jednostkę parametru wielkości sz
, która może być walutą bazową lub walutą bazową pary handlowej. Na przykład w parze BTC-USDT walutą bazową jest BTC, a walutą kwotowaną jest USDT.
Domyślnie, tgtCcy
= quote_ccy dla zleceń kupna, co oznacza, że podana wartość sz
jest wyrażona w walucie bazowej. Tymczasem domyślną wartością tgtCcy
dla zleceń sprzedaży jest base_ccy, co oznacza, że podana wartość sz
jest wyrażona w walucie bazowej.
W poniższym przykładzie masz zamiar złożyć zlecenie rynkowe na zakup BTC o wartości 100 USD.
```
# market order
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="market",
sz="100",
tgtCcy="quote_ccy" # to określa jednostkę parametru sz.
).
print(result)
```
10.4 Jak mogę użyć parametru identyfikatora zlecenia klienta clOrdId?
Podczas składania zlecenia można określić własny identyfikator zamówienia klienta, określając parametr clOrdId
, który może być później użyty jako identyfikator zamiast ordId
podczas wywoływania punktu końcowego anulowania, zmiany lub pobrania zlecenia.
```
# market order
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="market",
sz="100",
clOrdId="003" # możesz zdefiniować własny identyfikator zlecenia zdefiniowany przez klienta
).
print(result)
```
11. Jak mogę uzyskać szczegółowe informacje o danym zleceniu?
Aby uzyskać więcej informacji o tym, jak uzyskać szczegółowe informacje o danym zleceniu, przeczytaj nasz dedykowany przewodnik.
Korzystanie z ordId
```
result = tradeAPI.get_order(instId="BTC-USDT", ordId="497819823594909696")
print(result)
```
Korzystanie z clOrdId
```
result = tradeAPI.get_order(instId="BTC-USDT", clOrdId="002")
print(result)
```
12. Jak mogę anulować zlecenie?
Aby uzyskać więcej informacji o tym, jak anulować zlecenia, przeczytaj nasz dedykowany przewodnik.
Można również użyć clOrdId
zamiast ordId
.
```
result = tradeAPI.cancel_order(instId="BTC-USDT", ordId = "489093931993509888")
print(result)
```
13. Jak mogę zmienić zlecenie?
Aby uzyskać więcej informacji o tym, jak zmienić zlecenie, przeczytaj nasz dedykowany przewodnik.
Można również użyć clOrdId
zamiast ordId
.
```
result = tradeAPI.amend_order(
instId="BTC-USDT",
ordId="489103565508685824",
newSz="0.012"
).
print(result)
```
14. Jak mogę uzyskać dostęp do listy otwartych zleceń?
Aby uzyskać więcej informacji na temat dostępu do listy otwartych zleceń, przeczytaj nasz dedykowany przewodnik.
```
result = tradeAPI.get_order_list()
print(result)
```
15. Jak mogę uzyskać dostęp do historii zleceń?
15.1 Dla ostatnich 7 dni
Aby uzyskać więcej informacji na temat dostępu do historii zleceń z ostatnich 7 dni, przeczytaj nasz dedykowany przewodnik.
```
result = tradeAPI.get_orders_history(
instType="SPOT"
).
print(result)
```
15.2 Dla ostatnich 3 miesięcy
Aby uzyskać więcej informacji na temat dostępu do historii zleceń z ostatnich 3 miesięcy, przeczytaj nasz dedykowany przewodnik.
```
result = tradeAPI.get_orders_history_archive(
instType="SPOT"
).
print(result)
```
16. Jak mogę rozwinąć API OKX za pomocą Jupyter Notebook?
Aby uzyskać więcej przykładów, pobierz pełną wersję Jupyter Notebook tutaj.Wszelkie pytania dotyczące naszych interfejsów API można zgłaszać na kanale wsparcia OKX API Telegram.