> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.6mm.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.6mm.com/_mcp/server.

# Pengisian Perdagangan Abadi

Panduan ini menargetkan **Agent Java SDK `v0.3.0`**, Java 8+, dan kontrak publik yang diberi tag. Contoh dijalankan di backend mitra setelah menginisialisasi `client` di [Mulai Cepat](/id/sdk/agent-sdk/java/quick-start).

## Contoh prasyarat

Cuplikan Java membagikan impor ini. Inisialisasi `client` menggunakan Quick Start dan dapatkan `platformUserId` dari pengikatan yang disimpan. Contoh ID pengguna/pesanan harus diganti dengan nilai Anda yang tetap.

```java
import com.sixmm.agent.*;
import com.sixmm.agent.model.*;
import java.util.*;
```

## `listPerpetualTrades`

Model permintaan: `PerpetualTradesRequest`.

```java
import com.sixmm.agent.model.PerpetualTradesRequest;
import com.sixmm.agent.model.PerpetualResponse;
import java.util.Collections;

PerpetualTradesRequest request = new PerpetualTradesRequest();
request.platformUserIds = Collections.singletonList("1188041528");
request.limit = 100;
request.symbol = "BTCUSDT";
request.endTime = System.currentTimeMillis();
request.startTime = request.endTime - 3_600_000L;
PerpetualResponse response = client.listPerpetualTrades(request);
System.out.println(response.data.items.size());
System.out.println(response.data.hasMore);
System.out.println(response.data.nextCursor);
```

### Bidang permintaan

| Bidang            | Java ketik               | Diperlukan | Arti                                                                                                                             |
| ----------------- | ------------------------ | ---------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `platformUserIds` | `java.util.List<String>` | Ya         | Secara eksplisit memberikan 1–100 ID pengguna platform publik unik milik mitra saat ini; kelalaian dan array kosong tidak valid. |
| `symbol`          | `String`                 | TIDAK      | Filter pasangan dagang opsional.                                                                                                 |
| `orderId`         | `String`                 | TIDAK      | ID pesanan biasa; bukan nomor pesanan transfer mitra.                                                                            |
| `startTime`       | `Long`                   | TIDAK      | Milidetik Unix inklusif; gunakan jendela riwayat UTC yang tetap.                                                                 |
| `endTime`         | `Long`                   | TIDAK      | Milidetik Unix eksklusif.                                                                                                        |
| `limit`           | `Integer`                | TIDAK      | Bawaan 500; 1–1000.                                                                                                              |
| `cursor`          | `String`                 | TIDAK      | Gunakan nextCursor yang dikembalikan dengan filter yang tidak berubah; berhenti ketika hasMore salah.                            |

Contohnya berbunyi satu halaman. Untuk bidang yang wajib diisi, cakupan pemain, semantik filter, batas, kursor, dan percobaan ulang terbatas, ikuti [Ikhtisar kueri](/id/sdk/agent-sdk/java/perpetual-queries). Biarkan semua filter tidak berubah saat melakukan paging; jangan menafsirkan kesalahan sebagai hasil kosong.

## Detail pengisian perdagangan

Antarmuka: `trades`. Membutuhkan platformUserIds yang eksplisit.

| `data` bidang  | jenis   | arti                                                                                                                                     |
| -------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `fillId`       | string  | ID detail pengisian perdagangan, sesuai dengan catatan ini entityId                                                                      |
| `tradeId`      | string  | ID transaksi yang cocok dan terkait dengan transaksi tersebut; tidak menggantikan ID detail                                              |
| `orderId`      | string  | ID pesanan umum yang memuat detail ini                                                                                                   |
| `positionId`   | string  | ID posisi terkait                                                                                                                        |
| `symbol`       | string  | pasangan perdagangan                                                                                                                     |
| `side`         | string  | Arah jual beli pemain ini BUY / SELL                                                                                                     |
| `roleType`     | string  | Karakter transaksi pemain ini MAKER / TAKER                                                                                              |
| `positionSide` | string  | Arah posisi, dijelaskan berdasarkan nilai sebenarnya LONG / SHORT / BOTH dll.                                                            |
| `price`        | string  | Harga transaksi ini                                                                                                                      |
| `quantity`     | string  | Kuantitas transaksi ini bukan total kuantitas pesanan awal.                                                                              |
| `tradeValue`   | string  | Nilai nominal transaksi ini berasal dari transaksi nosional                                                                              |
| `handlingFee`  | string  | Biaya transaksi untuk transaksi ini mempertahankan simbol sumber dan keakuratannya, dan tidak mengambil nilai absolut dengan sendirinya. |
| `realizedPnl`  | string  | Realisasi keuntungan dan kerugian terkait dengan transaksi ini; bukan keuntungan dan kerugian mengambang real-time dari posisi saat ini  |
| `tradedAt`     | integer | Waktu transaksi, milidetik; gunakan bidang ini untuk memfilter waktu                                                                     |

Suatu pesanan mungkin memiliki beberapa pengisian, yang harus disimpan secara detail. Jangan menggabungkan catatan pemain yang berbeda/mengisi peran sebanyak tradeId dan kemudian membuang identitas catatan mereka.

## Contoh amplop tanggapan

Ini adalah halaman kosong ilustrasi, bukan contoh perdagangan yang telah selesai. Tabel bidang khusus sumber daya di atas menjelaskan `items[].data` yang terisi.

```json
{"code":0,"message":"success","data":{"items":[],"nextCursor":"","hasMore":false}}
```

## Sumber dan panduan terkait

* [Sumber resmi v0.3.0](https://github.com/6mm-com/agent-java-sdk/tree/54aa3c1)
* [Ikhtisar kueri dan penomoran halaman](/id/sdk/agent-sdk/java/perpetual-queries)
* [Dompet pendanaan](/id/sdk/agent-sdk/java/funding-wallet)
* [Panduan peningkatan](/id/sdk/agent-sdk/java/upgrade)