> 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.

# Riempimenti commerciali perpetui

Questa guida è rivolta a **Agent Java SDK `v0.3.0`**, Java 8+ e agli appalti pubblici contrassegnati. Gli esempi vengono eseguiti nel backend di un partner dopo aver inizializzato `client` in [Avvio rapido](/it/sdk/agent-sdk/java/quick-start).

## Prerequisiti di esempio

Gli snippet Java condividono queste importazioni. Inizializza `client` utilizzando Quick Start e ottieni `platformUserId` dall'associazione salvata. Gli ID utente/ordine di esempio devono essere sostituiti con i tuoi valori persistenti.

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

## `listPerpetualTrades`

Modello richiesto: `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);
```

### Campi richiesta

| Campo             | Tipo Java                | Necessario | Senso                                                                                                                                                         |
| ----------------- | ------------------------ | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `platformUserIds` | `java.util.List<String>` | SÌ         | Fornire esplicitamente da 1 a 100 ID utente univoci della piattaforma pubblica appartenenti al partner attuale; l'omissione e un array vuoto non sono validi. |
| `symbol`          | `String`                 | NO         | Filtro opzionale per le coppie di scambio.                                                                                                                    |
| `orderId`         | `String`                 | NO         | ID dell'ordine ordinario; non un numero di ordine di trasferimento del partner.                                                                               |
| `startTime`       | `Long`                   | NO         | Millisecondi Unix inclusi; utilizzare una finestra della cronologia UTC fissa.                                                                                |
| `endTime`         | `Long`                   | NO         | Millisecondi Unix esclusivi.                                                                                                                                  |
| `limit`           | `Integer`                | NO         | Predefinito 500; 1–1000.                                                                                                                                      |
| `cursor`          | `String`                 | NO         | Utilizza il nextCursor restituito con i filtri invariati; interrompere quando hasMore è falso.                                                                |

L'esempio legge una pagina. Per i campi obbligatori, ambito del giocatore, semantica del filtro, limite, cursore e tentativi limitati, seguire [Panoramica delle query](/it/sdk/agent-sdk/java/perpetual-queries). Mantieni invariati tutti i filtri durante la paginazione; non interpretare un errore come un risultato vuoto.

## Dettagli di riempimento commerciale

Interfaccia: `trades`. Richiede platformUserIds esplicito.

| campo `data`.  | tipo    | Senso                                                                                                                                                   |
| -------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fillId`       | string  | ID dettagli trade fill, corrispondente a questo record entityId                                                                                         |
| `tradeId`      | string  | L'ID transazione corrispondente associato alla transazione; non sostituisce l'ID dettagliato                                                            |
| `orderId`      | string  | L'ID ordine generale a cui appartiene questo dettaglio                                                                                                  |
| `positionId`   | string  | ID posizione associata                                                                                                                                  |
| `symbol`       | string  | coppia commerciale                                                                                                                                      |
| `side`         | string  | La direzione di acquisto e vendita di questo giocatore BUY / SELL                                                                                       |
| `roleType`     | string  | Il carattere della transazione di questo giocatore MAKER / TAKER                                                                                        |
| `positionSide` | string  | Direzione della posizione, spiegata in base al valore effettivo LONG / SHORT / BOTH ecc.                                                                |
| `price`        | string  | Questo prezzo di transazione                                                                                                                            |
| `quantity`     | string  | La quantità di questa transazione non è la quantità totale dell'ordine originale.                                                                       |
| `tradeValue`   | string  | Il valore nominale di questa transazione deriva dal nozionale della transazione                                                                         |
| `handlingFee`  | string  | La commissione per questa transazione mantiene il simbolo e l'accuratezza della fonte e non assume da sola il valore assoluto.                          |
| `realizedPnl`  | string  | Il profitto e la perdita realizzati corrispondenti a questa transazione; non i profitti e le perdite fluttuanti in tempo reale della posizione corrente |
| `tradedAt`     | integer | Tempo di transazione, millisecondi; utilizzare questo campo per il filtraggio temporale                                                                 |

Un ordine può avere più esecuzioni, che dovrebbero essere salvate in dettaglio. Non unire i record di giocatori diversi/riempire ruoli tramite tradeId per poi eliminare le loro identità record.

## Busta di risposta di esempio

Questa è una pagina vuota illustrativa, non un esempio di un'operazione completata. Le tabelle dei campi specifici della risorsa sopra descrivono il `items[].data` popolato.

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

## Fonte e guide correlate

* [Fonte ufficiale v0.3.0](https://github.com/6mm-com/agent-java-sdk/tree/54aa3c1)
* [Panoramica delle query e impaginazione](/it/sdk/agent-sdk/java/perpetual-queries)
* [Portafoglio di finanziamento](/it/sdk/agent-sdk/java/funding-wallet)
* [Guida all'aggiornamento](/it/sdk/agent-sdk/java/upgrade)