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

# Daueraufträge

Dieser Leitfaden richtet sich an **Agent Java SDK `v0.3.0`**, Java 8+ und den getaggten öffentlichen Auftrag. Beispiele werden nach der Initialisierung von `client` in einem Partner-Backend ausgeführt [Schnellstart](/de/sdk/agent-sdk/java/quick-start).

## Beispielvoraussetzungen

Die Java-Snippets teilen diese Importe. Initialisieren Sie `client` mit Quick Start und rufen Sie `platformUserId` aus der gespeicherten Bindung ab. Beispiel-Benutzer-/Bestell-IDs müssen durch Ihre eigenen persistenten Werte ersetzt werden.

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

## `listCurrentPerpetualOrders`

Anforderungsmodell: `CurrentPerpetualOrdersRequest`.

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

CurrentPerpetualOrdersRequest request = new CurrentPerpetualOrdersRequest();
request.platformUserIds = Collections.singletonList("1188041528");
request.limit = 100;
request.orderCategory = "NORMAL";
request.symbol = "BTCUSDT";
PerpetualResponse response = client.listCurrentPerpetualOrders(request);
System.out.println(response.data.items.size());
System.out.println(response.data.hasMore);
System.out.println(response.data.nextCursor);
```

### Anforderungsfelder

| Feld              | Java Typ                 | Erforderlich | Bedeutung                                                                                                                                                                       |
| ----------------- | ------------------------ | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `orderCategory`   | `String`                 | Ja           | NORMAL oder CONDITIONAL; Bedingte Abfragen erfordern explizite Benutzer.                                                                                                        |
| `platformUserIds` | `java.util.List<String>` | Bedingt      | 1–100 eindeutige öffentliche IDs; erforderlich für Ausführungen und bedingte Bestellungen. Bei unterstützten Abfragen für den Direktspielerbereich weglassen; \[] ist ungültig. |
| `symbol`          | `String`                 | NEIN         | Optionaler Handelspaarfilter.                                                                                                                                                   |
| `limit`           | `Integer`                | NEIN         | Standard 500; 1–1000.                                                                                                                                                           |
| `cursor`          | `String`                 | NEIN         | Verwenden Sie den zurückgegebenen nextCursor mit unveränderten Filtern. stoppen, wenn hasMore falsch ist.                                                                       |

Das Beispiel liest eine Seite. Informationen zu erforderlichen Feldern, Player-Bereich, Filtersemantik, Limit, Cursor und begrenzten Wiederholungsversuchen finden Sie hier [Abfrageübersicht](/de/sdk/agent-sdk/java/perpetual-queries). Lassen Sie beim Blättern alle Filter unverändert; Interpretieren Sie einen Fehler nicht als leeres Ergebnis.

## `listPerpetualOrderHistory`

Anforderungsmodell: `PerpetualOrderHistoryRequest`.

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

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

### Anforderungsfelder

| Feld              | Java Typ                 | Erforderlich | Bedeutung                                                                                                                                                                       |
| ----------------- | ------------------------ | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `orderCategory`   | `String`                 | Ja           | NORMAL oder CONDITIONAL; Bedingte Abfragen erfordern explizite Benutzer.                                                                                                        |
| `platformUserIds` | `java.util.List<String>` | Bedingt      | 1–100 eindeutige öffentliche IDs; erforderlich für Ausführungen und bedingte Bestellungen. Bei unterstützten Abfragen für den Direktspielerbereich weglassen; \[] ist ungültig. |
| `symbol`          | `String`                 | NEIN         | Optionaler Handelspaarfilter.                                                                                                                                                   |
| `orderId`         | `String`                 | NEIN         | Gewöhnliche Bestell-ID; keine Partnerübertragungsauftragsnummer.                                                                                                                |
| `conditionId`     | `String`                 | NEIN         | Bedingte Bestell-ID; Nicht mit orderId vermischen.                                                                                                                              |
| `clientOrderId`   | `String`                 | NEIN         | Auftragsreferenz des Handelskunden, nicht agentOrderNo.                                                                                                                         |
| `side`            | `String`                 | NEIN         | BUY / SELL Filter.                                                                                                                                                              |
| `status`          | `String`                 | NEIN         | Ressourcenspezifischer Status; siehe Statusreferenz.                                                                                                                            |
| `startTime`       | `Long`                   | NEIN         | Inklusive Unix-Millisekunden; Verwenden Sie ein festes UTC-Verlaufsfenster.                                                                                                     |
| `endTime`         | `Long`                   | NEIN         | Exklusive Unix-Millisekunden.                                                                                                                                                   |
| `limit`           | `Integer`                | NEIN         | Standard 500; 1–1000.                                                                                                                                                           |
| `cursor`          | `String`                 | NEIN         | Verwenden Sie den zurückgegebenen nextCursor mit unveränderten Filtern. stoppen, wenn hasMore falsch ist.                                                                       |

Das Beispiel liest eine Seite. Informationen zu erforderlichen Feldern, Player-Bereich, Filtersemantik, Limit, Cursor und begrenzten Wiederholungsversuchen finden Sie hier [Abfrageübersicht](/de/sdk/agent-sdk/java/perpetual-queries). Lassen Sie beim Blättern alle Filter unverändert; Interpretieren Sie einen Fehler nicht als leeres Ergebnis.

## Gewöhnliche Bestellungen: aktuell und Geschichte

Aktuell: `orders/current` + `orderCategory=NORMAL`; Verlauf: `orders/history` + `orderCategory=NORMAL`.

| `data` Feld         | Typ     | Bedeutung und Anwendungsbereich                                                                                                                                                             |
| ------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `symbol`            | string  | Handelspaar, z. B. BTCUSDT                                                                                                                                                                  |
| `orderId`           | string  | Ordentliche Bestell-ID der Plattform                                                                                                                                                        |
| `orderCategory`     | string  | Behoben NORMAL                                                                                                                                                                              |
| `clientOrderId`     | string  | Kundenauftragsnummer, die von der Transaktionsauftragsquelle bereitgestellt wird; nicht dasselbe Feld wie Händler-Geldtransfer agentOrderNo                                                 |
| `orderType`         | string  | Delegatentyp, z. B. LIMIT, MARKET; der tatsächliche Zählwert ist maßgebend                                                                                                                  |
| `side`              | string  | Kauf- und Verkaufsrichtung BUY / SELL                                                                                                                                                       |
| `status`            | string  | Ordentlicher Auftragsstatus, siehe Abfrageübersicht                                                                                                                                         |
| `timeInForce`       | string  | Gültigkeitszeitraum/Deal-Ausführungsstrategie, z. B. GTC, IOC, FOK; entsprechend den tatsächlichen Werten interpretiert                                                                     |
| `price`             | string  | Anvertrauter Preis; Es kann weggelassen werden, wenn kein Preis angegeben ist, und der Markttransaktionspreis wird nicht durch einen selbst ergänzt.                                        |
| `quantity`          | string  | Ursprüngliche Bestellmenge                                                                                                                                                                  |
| `filledQuantity`    | string  | Transaktionsmenge                                                                                                                                                                           |
| `remainingQuantity` | string  | Nicht abgewickelte Menge; Die aktuelle Abfrage benötigt die Menge − filledQuantity und die historische Abfrage den historischen Datensatzwert                                               |
| `avgFilledPrice`    | string  | Der durchschnittliche Transaktionspreis des fertiggestellten Teils; Es gibt möglicherweise keinen Wert, wenn es nicht abgeschlossen ist                                                     |
| `reduceOnly`        | boolean | Ob nur Positionen reduziert werden sollen                                                                                                                                                   |
| `closeOnly`         | boolean | Ob es nur zum Schließen von Positionen verwendet wird                                                                                                                                       |
| `makerOnly`         | boolean | Ob nur als Maker ausgeführt werden soll                                                                                                                                                     |
| `leverage`          | integer | Nutzen Sie mehrere; **Historische gewöhnliche Ordnung** hat eine Quelle, und die aktuelle gewöhnliche Ordnung schafft diesen Wert nicht                                                     |
| `marginMode`        | string  | Margin-Modus; **Historische gewöhnliche Reihenfolge** gibt derzeit eine numerische Aufzählungszeichenfolge zurück, z. B. „1“, „2“; Die aktuelle ordentliche Bestellung ist nicht vorgesehen |
| `createdAt`         | integer | Auftragserstellungszeit, Millisekunden; Verwenden Sie dieses Feld, um die historische Bestellzeit zu filtern                                                                                |
| `updatedAt`         | integer | Aktualisierungszeit des Delegiertendatensatzes, Millisekunden                                                                                                                               |

Die Bestellhistorie umfasst beendete normale Bestellungen. Allein aufgrund des Schnittstellennamens kann nicht jeder Datensatz als vollständig abgeschlossen angesehen werden. Bei der aktuellen Bestellseite handelt es sich um eine aktuelle Statusabfrage, nicht um einen Bestellereignis-Stream.

## Bedingte Bestellungen: aktuell und historisch

Aktuell: `orders/current` + `orderCategory=CONDITIONAL`; Verlauf: `orders/history` + `orderCategory=CONDITIONAL`. Beide erfordern explizites platformUserIds.

| `data` Feld        | Typ     | Bedeutung                                                                                                                                                   |
| ------------------ | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `symbol`           | string  | Handelspaar                                                                                                                                                 |
| `conditionId`      | string  | Bedingte Bestell-ID, unabhängig von gewöhnlichen orderId                                                                                                    |
| `orderCategory`    | string  | Behoben CONDITIONAL                                                                                                                                         |
| `generatedOrderId` | string  | Gewöhnliche Bestell-ID, die nach dem Auslösen generiert wird; kann weggelassen werden, wenn es nicht generiert wird                                         |
| `clientOrderId`    | string  | Die Kundenauftragsnummer der bedingten Aufträge, ausgegeben, wenn sie vorhanden ist                                                                         |
| `side`             | string  | BUY / SELL                                                                                                                                                  |
| `orderType`        | string  | Post-Trigger-Auftragstyp, interpretiert entsprechend dem tatsächlichen Wert                                                                                 |
| `triggerType`      | string  | Auslöserregeltyp, erklärt durch tatsächliche Quellenaufzählung                                                                                              |
| `workingType`      | string  | Jobtyp/Preisquelle, die den Preis auslöst, interpretiert als tatsächliche Aufzählung                                                                        |
| `timeInForce`      | string  | Gültigkeitsdauer/Ausführungsstrategie der Order nach Auslösung                                                                                              |
| `price`            | string  | Der Bestellpreis nach dem Auslösen wird ausgegeben, wenn die Quelle einen Wert hat                                                                          |
| `quantity`         | string  | Bedingte Bestellmenge                                                                                                                                       |
| `triggerPrice`     | string  | Auslösepreis                                                                                                                                                |
| `reduceOnly`       | boolean | Ob nur Positionen reduziert werden sollen                                                                                                                   |
| `closePosition`    | boolean | Ob die vollständige Positionsschließungssemantik verwendet werden soll, kann nicht mit closeOnly als demselben Feld verwechselt werden                      |
| `leverage`         | integer | Nutzen Sie ein Vielfaches und geben Sie es aus, wenn es nicht Null ist                                                                                      |
| `marginMode`       | string  | Diese Klasse gibt CROSS / ISOLATED zurück, eine numerische Zeichenfolge, die sich von gewöhnlichen historischen Bestellungen/Positionen unterscheidet       |
| `status`           | string  | Bedingter einzelner Triggerstatus, siehe Abfrageübersicht                                                                                                   |
| `triggerStatus`    | string  | Die aktuelle Implementierung verwendet denselben bedingten Statuswert wie Status                                                                            |
| `createdAt`        | integer | Bedingte Auftragserstellungszeit, Millisekunden; Historische Bedingungen werden nach dieser Zeit gefiltert                                                  |
| `updatedAt`        | integer | Aktualisierungszeit, Ausgabe, wenn ein Wert vorhanden ist, Millisekunden                                                                                    |
| `deletedAt`        | integer | Markierungszeit löschen, Ausgabe, wenn ein Wert vorhanden ist, Millisekunden; Es handelt sich nicht um ein einheitliches Transaktions-/Stornierungszeitfeld |

Bedingte Bestellungen bieten keine filledQuantity, remainingQuantity, avgFilledPrice für normale Bestellungen. Wenn Sie nach dem Auslösen den Transaktionsstatus normaler Bestellungen benötigen, fragen Sie normale Bestellungen/Transaktionen über generatedOrderId ab und schließen Sie das Transaktionsvolumen nicht aus dem bedingten Bestellstatus ab.

## Beispiel eines Antwortumschlags

Dies ist eine leere Seite zur Veranschaulichung, kein Beispiel eines abgeschlossenen Handels. Die obigen ressourcenspezifischen Feldtabellen beschreiben ausgefüllte `items[].data`.

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

## Quelle und zugehörige Leitfäden

* [Offizielle Quelle v0.3.0](https://github.com/6mm-com/agent-java-sdk/tree/54aa3c1)
* [Abfrageübersicht und Paginierung](/de/sdk/agent-sdk/java/perpetual-queries)
* [Funding-Wallet](/de/sdk/agent-sdk/java/funding-wallet)
* [Upgrade-Anleitung](/de/sdk/agent-sdk/java/upgrade)