Skip to main content
OPEN, SL, SLx and TP belong to the position lifecycle. A strategy declares its intent; Liftx manages order reconciliation, protection sizing, cancellation evidence and replacement generations. There is no second protection engine attached to a webhook.

Configure protection at OPEN

Include the desired protection configuration in the initial canonical request. This lets the same lifecycle react to actual fills. A Pine indicator does not need to produce a webhook for every trailing adjustment. These are configuration patterns; account capability and current owner validation still apply. Always send conditionally required arrays and fields from the complete request.

OPEN grid fragment

This fragment represents two illustrated limit rows of 0.0001 each when the full request’s quantity asset is BTC. It is not a complete request. Minimum size, valid price, total size and adapter batch constraints must be checked against the actual selected instrument.

TP ladder fragment

The 50/50 weights express distribution across actual protected exposure. The price distances are 2% and 4% from the fee-aware reference, not leveraged returns. The initial illustrated prices do not replace Liftx’s rearrangement result after fills. A single full TP uses 1000000, while grid percentage-point weights use a different existing normalization convention. Preserve builder values; do not convert one into the other by guessing.

TP-trigger SLx fragment

This replaces the price-trigger SLx fragment in a compatible full request; it is not added while leaving the conflicting trigger enabled. TP must exist. The first selected trigger moves toward the configured breakeven behavior; subsequent owner-managed triggers can trail from prior TP levels.

Price-trigger SLx fragment

This illustrates 1% activation, 0.5% indent and 0.25% step. It describes units, not recommended risk parameters. SLx trigger modes and optional initial prices must satisfy the selected configuration’s validation.

Disable or change protection

Read the current modification publication first, construct the full intended request, preserve existing rows/slots and set the desired enable flags. A disabled protection is not a detached venue order to cancel through another API. The owner resolves the relevant cancellation and replacement work. Do not send the original opening JSON to “reset” protection after partial fills. Its rows and generation identities may be stale. API revision checks protect the mutation boundary; TradingView cannot fetch the fresh state needed for arbitrary autonomous edits.

Concurrent fills and manual changes

Protections can move while a controller observes state. The current revision and exact physical order identity matter. A price signal is not proof that an earlier TP filled, an SL was replaced or an exchange cancellation completed. Reconcile the canonical position and receipt rather than infer outcomes from chart price alone.

Unsupported compositions

There is no bulk MODIFY across heterogeneous positions, guaranteed atomic close-and-reverse, or command-level guaranteed flatness. A collection of independent positions can have distinct OPEN ladders, fees, fills, SLx stages and shared venue exposure. Keep those lifecycles separate.