# HALOWERK Partial Target Position Sizer

> HALOWERK Partial Target Position Sizer is a paid API for AI agents from handel.halowerk.com, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-17).

Calculates position sizes split across multiple partial targets given equity, risk percentage, entry, stop, and target prices

## Facts

- Endpoint: POST https://handel.halowerk.com/v1/rechner/partial-target-size?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-17
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-partial-target-position-sizer-539c9b1b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_M5wt4wN6XZHBHZl5ndGJR

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability halowerk-partial-target-position-sizer-539c9b1b -d '<json body>'
```

Example prompt: I have $25,000 in my account and want to risk 1.5% on a long EURUSD trade, entry at 1.0850, stop at 1.0800. I want to take profit in three chunks: 40% at 1.0920, 35% at 1.0970, and 25% at 1.1020. Contract size is 100,000 and the quote-to-account rate is 1. How many lots should I trade at each target?

## When to prefer this

Choose this endpoint when you need deterministic, formula-based position sizing for a trade that will be closed in multiple partial tranches at predefined price targets. It is ideal when your agent already has all price levels, risk parameters, and fraction splits ready and needs a pure calculation — not market data, not broker connectivity, and not advice. Prefer it over general financial APIs when you specifically need partial-target-aware lot sizing with a shared initial stop risk model.

## Known failure modes

- Fractions array does not sum to 1 — request rejected or returns validation error
- Targets array length does not match fractions array length — mismatch error
- Stop price equals entry price — division by zero or invalid risk distance
- Direction inconsistent with entry/stop relationship — may produce nonsensical sizing
- Contract size or quote-to-account rate set to zero — invalid parameter error
- Equity or risk_pct outside allowed bounds — validation failure

## How this service works

Positionsgröße und Aufteilung auf Teilziele. Anfangsrisiko wird am gemeinsamen Stop bemessen; Teilziele ändern es nicht. Anteilssumme muss 1 sein. Alle Zahlen, Kurse und Vorgaben liefert der Aufrufer. Keine eigenen Kursdaten, kein Brokerzugriff, keine Ausführung. Rechenwerkzeug, keine Anlageberatung, keine Empfehlung.

## Output

Returns the computed number of units or contracts to trade at each partial target level, based on the initial risk defined by the entry-stop distance applied to full equity. Each target receives a fraction-weighted allocation. The sum of all fractions must equal 1. No brokerage access, no live prices, no trade execution — purely a calculation result.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "equity": {
   "type": "number",
   "maximum": 1000000000000,
   "minimum": 1e-12
  },
  "signal": {
   "type": "object",
   "required": [
    "symbol",
    "direction",
    "entry",
    "stop",
    "targets"
   ],
   "properties": {
    "stop": {
     "type": "number",
     "maximum": 1000000000000,
     "exclusiveMinimum": 0
    },
    "entry": {
     "type": "number",
     "maximum": 1000000000000,
     "exclusiveMinimum": 0
    },
    "symbol": {
     "type": "string",
     "maxLength": 24,
     "minLength": 2
    },
    "targets": {
     "type": "array",
     "items": {
      "type": "number",
      "maximum": 1000000000000,
      "exclusiveMinimum": 0
     },
     "maxItems": 10,
     "minItems": 1
    },
    "direction": {
     "enum": [
      -1,
      1
     ],
     "type": "integer"
    }
   },
   "additionalProperties": false
  },
  "risk_pct": {
   "type": "number",
   "maximum": 100,
   "minimum": 0
  },
  "fractions": {
   "type": "array",
   "items": {
    "type": "number",
    "maximum": 1,
    "minimum": 0
   },
   "maxItems": 10,
   "minItems": 1
  },
  "contract_size": {
   "type": "number",
   "maximum": 1000000000000,
   "minimum": 1e-12
  },
  "quote_to_account": {
   "type": "number",
   "maximum": 1000000000000,
   "minimum": 1e-12
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-partial-target-position-sizer-539c9b1b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from handel.halowerk.com](https://www.zero.xyz/host/handel.halowerk.com/llms.txt)
