Bagaimana Cara Melakukan Trading Spot dengan Jupyter Notebook?

Dipublikasikan Pada 29 Sep 2023Diperbarui Pada 24 Apr 2024Baca 7 mnt133

Pelajari cara melakukan trading Spot sederhana dengan memanggil fungsi-fungsi di pustaka python-okx pada Jupyter Notebook.

1. Bagaimana Cara Menjalankan Cuplikan Kode Python Di Jupyter Notebook?

CT-web-spottrading-howtoapi-1

Jupyter Notebook sangat ampuh dan mudah digunakan untuk pengembangan Python dan analisis data. Anda dapat menjalankan server Jupyter Notebook pada Windows, Mac OS atau Linux. Tutorial ini menyediakan panduan yang cukup lengkap tentang cara menyiapkan dan menjalankan Jupyter Notebook.

2. Bagaimana Cara Menginstal Paket python-okx?

Setelah Jupyter Notebook mulai dijalankan, Anda dapat menginstal paket python-okx cukup dengan menjalankan pip install python-okx di notebook atau di terminal (atau melalui command prompt untuk Windows):

CT-web-spottrading-howtoapi-2

3. Bagaimana Cara Membuat Kunci API?

1. Setelah masuk ke OKX, buka Trading > Simulasi Trading guna membuat kunci API untuk tujuan pengujian

CT-web-trade-demo trading

Buka halaman Simulasi Trading

2. Buka Akun > API untuk membuat kunci API

CT-web-profile-API

Buka API untuk membuat kunci API

3. Buat kunci API untuk berbagai akun utama/sub akun yang dimiliki

CT-web-API-create

Pilih Buat Kunci API

4. Pilih Trading di Izin untuk melakukan trading dengan kunci API

CT-web-API-trade

Pilih Trading di Izin

5. Anda kini memiliki akses ke kunci API, kunci Rahasia, dan passphrase. Simpan di tempat yang aman!

6. Buat instans variabel python guna menyimpan detail API Anda di notebook untuk penggunaan selanjutnya

1 api_key = "xxxxx"
2 secret_key = "xxxxx"
3 passphrase = "xxxxxx"

```
api_key = "xxxxx"
secret_key = "xxxxx"
passphrase = "xxxxxx"
```

4. Bagaimana Cara Mengimpor Modul OKX?

Di python-okx, ada beberapa modul berdasarkan modul API REST kami. Baca panduan kami untuk mempelajari Cara Mengimpor Modul OKX.

  • Trading

  • BlockTrading

  • Funding

  • Account

  • Convert

  • Earning

  • SubAccount

  • MarketData

  • PublicData

  • TradingData

  • Status

  • NDBroker

  • FDBroker

Untuk mengimpor modul Trade , Anda dapat menjalankan:

1 import okx.Trade as Trade

```
import okx.Trade as Trade
```

Anda kini siap menggunakan fitur lengkap yang tersedia di python-okx!

5. Bagaimana Cara Mengakses Data Pasar?

Pelajari selengkapnya tentang Cara Mengakses Data Pasar Kami dan rujuk ke kode di bawah ini.

1 import okx.MarketData as MarketData
2 flag = "1" # trading langsung: 0, simulasi trading: 1
3 marketDataAPI = MarketData.MarketAPI(flag=flag)
4 result = marketDataAPI.get_tickers(instType="SPOT")print(result)

```
import okx.MarketData as MarketData
flag = "1" # trading langsung: 0, simulasi trading: 1
marketDataAPI = MarketData.MarketAPI(flag=flag) result = marketDataAPI.get_tickers(instType="SPOT"
)
print(result)
```

6. Bagaimana Cara Membaca Pair Trading yang Tersedia?

Pelajari selengkapnya tentang Cara Membaca Pair Trading Kami yang Tersedia dan rujuk ke kode di bawah ini.

```
import okx.PublicData as PublicData

flag = "1" # trading langsung: 0, simulasi trading: 1

PublicDataAPI = PublicData.PublicAPI(flag=flag)

result = PublicDataAPI.get_instruments(
instType="SPOT"
)
print(result)
```

7. Bagaimana Cara Membaca Saldo Akun Saya?

Untuk informasi selengkapnya tentang cara membaca saldo akun, silakan baca panduan khusus kami.

Catatan: Untuk trading spot dengan tdMode "cash", Anda utamanya perlu memeriksa parameter cashBal dan frozenBal untuk setiap ccy dalam detail, serta parameter totalEq .

```
import okx.Account as Account
flag = "1" # trading langsung: 0, simulasi trading: 1

accountAPI = Account.AccountAPI(api_key, secret_key, passphrase, False, flag)

result = accountAPI.get_account_balance()
print(result)
```

8. Bagaimana Cara Mengakses Keempat Macam Mode Akun Tersebut?

Dalam sistem akun terpadu kami, ada empat mode akun:

  • Akun sederhana

  • Akun margin mata uang tunggal

  • Akun margin multimata uang

  • Akun margin portofolio

Untuk memahami perbedaan di antara berbagai mode akun dan cara mengatur mode akun melalui UI web, silakan baca panduan khusus kami. Dalam mode margin atau mode trading, parameter tdMode menentukan cara posisi Anda akan diberi margin yang perlu diatur setiap kali Anda membuat order baru. Untuk trading spot dalam mode akun sederhana atau margin mata uang tunggal, harap atur tdMode='cash'.Untuk trading spot dalam mode akun margin multimata uang atau margin portofolio, harap atur tdMode = 'cross'. Di bawah ini, Anda akan menemukan penjelasan singkat tentang cara mengetahui mode yang dikonfigurasikan untuk akun Anda saat ini.

9. Bagaimana Cara Mengetahui Mode Yang Dikonfigurasikan Untuk Akun Saya Saat Ini?

Untuk informasi selengkapnya tentang cara mengetahui mode yang dikonfigurasikan untuk akun saya saat ini, silakan baca panduan khusus kami dan masukkan parameter acctLv.

```
import okx.Account as Account

flag = "1" # trading langsung: 0, simulasi 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. Bagaimana Cara Membuat Order Spot Dalam Sederhana/Mode Margin Mata Uang Tunggal?

10.1 Bagaimana Cara Membuat Order Batas?

Untuk informasi selengkapnya tentang cara membuat order batas dalam mode Sederhana atau Margin Mata Uang Tunggal, silakan baca panduan khusus kami.

Berikut adalah contoh pembelian 0,01 BTC dengan harga 19000 USDT.

```
# order batas
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 Bagaimana Cara Membuat Order Pasar?

Untuk informasi selengkapnya tentang cara membuat order pasar dalam mode akun Sederhana atau Margin mata uang tunggal, silakan baca panduan khusus kami.

Berikut adalah contoh pembelian BTC senilai 100 USD dengan harga pasar saat ini.

```
# order pasar
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="market",
sz="100",
)
print(result)
```

10.3 Bagaimana Cara Menggunakan Parameter Mata Uang Target tgtCcy Selama Trading Spot?

Dalam trading spot, parameter tgtCcy menentukan unit dari parameter ukuran sz yang dapat berupa mata uang dasar atau mata uang kutipan dari pair trading. Misalnya, dalam pair BTC-USDT, mata uang dasarnya adalah BTC dan mata uang kutipannya adalah USDT.

Secara default, tgtCcy = quote_ccy untuk order beli yang berarti bahwa sz yang Anda tentukan dinyatakan dalam mata uang kutipan. Sementara itu, nilai default dari tgtCcy untuk order jual adalah base_ccy yang berarti bahwa sz yang Anda tentukan dinyatakan dalam mata uang dasar.

Pada contoh di bawah ini, Anda akan membuat order pasar untuk membeli BTC senilai 100 USD.

```
# order pasar
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="market",
sz="100",
tgtCcy="quote_ccy" # nilai ini menentukan unit dari parameter sz.
)
print(result)
```

10.4 Bagaimana Cara Menggunakan Parameter ID Order Klien clOrdId?

Saat membuat order, Anda dapat menentukan ID order klien sendiri dengan menentukan parameter clOrdId yang nantinya dapat digunakan sebagai pengenal yang menggantikan ordId saat memanggil endpoint pembatalan, perubahan, atau pengambilan.

```
# order pasar
result = tradeAPI.place_order(
instId="BTC-USDT",
tdMode="cash",
side="buy",
ordType="market",
sz="100",
clOrdId="003" # Anda dapat menentukan sendiri ID order yang ditentukan klien
)
print(result)
```

11. Bagaimana Cara Mendapatkan Detail Terkait Order Tertentu?

Untuk informasi selengkapnya tentang cara mendapatkan detail terkait order tertentu, silakan baca panduan khusus kami.

Menggunakan ordId

```
result = tradeAPI.get_order(instId="BTC-USDT", ordId="497819823594909696")
print(result)
```

Menggunakan clOrdId

```
result = tradeAPI.get_order(instId="BTC-USDT", clOrdId="002")
print(result)
```

12. Bagaimana Cara Membatalkan Order?

Untuk informasi selengkapnya tentang cara membatalkan order, silakan baca panduan khusus kami.

Anda juga dapat menggunakan clOrdId sebagai pengganti ordId.

```
result = tradeAPI.cancel_order(instId="BTC-USDT", ordId = "489093931993509888")
print(result)
```

13. Bagaimana Cara Mengubah Order?

Untuk informasi selengkapnya tentang cara mengubah order, silakan baca panduan khusus kami.

Anda juga dapat menggunakan clOrdId sebagai pengganti ordId.

```
result = tradeAPI.amend_order(
instId="BTC-USDT",
ordId="489103565508685824",
newSz="0.012"
)
print(result)
```

14. Bagaimana Cara Mengakses Daftar Order Terbuka?

Untuk informasi selengkapnya tentang cara mengakses daftar order terbuka, silakan baca panduan khusus kami.

```
result = tradeAPI.get_order_list()
print(result)
```

15. Bagaimana Cara Mengakses Riwayat Order?

15.1 Selama 7 Hari Terakhir

Untuk informasi selengkapnya tentang cara mengakses riwayat order selama 7 hari terakhir, silakan baca panduan khusus kami.

```
result = tradeAPI.get_orders_history(
instType="SPOT"
)
print(result)
```

15.2 Selama 3 Bulan Terakhir

Untuk informasi selengkapnya tentang cara mengakses riwayat order selama 3 bulan terakhir, silakan baca panduan khusus kami.

```
result = tradeAPI.get_orders_history_archive(
instType="SPOT"
)
print(result)
```

16. Bagaimana Cara Melanjutkan dengan API OKX Menggunakan Jupyter Notebook?

Untuk contoh lainnya, unduh Jupyter Notebook lengkap di sini.Jika ada pertanyaan tentang API kami, Anda dapat mengajukannya di saluran Telegram dukungan API OKX.