---
title: "Change Stop Loss &amp; Take Profit on a Live Tradovate Trade"
slug: change-stop-loss-take-profit-live-tradovate-trade
date: 2026-09-08
modified: 2026-09-08
author: Bhavishya Goyal
excerpt: ""
meta_description: Moving a stop mid-trade on Tradovate overwrites every open position on that symbol and can wipe an active trailing stop. Here's the safe way to do it.
focus_keyword: change stop loss tradovate
canonical_url: "https://blog.pickmytrade.trade/change-stop-loss-take-profit-live-tradovate-trade/"
og_title: "Change Stop Loss &amp; Take Profit on a Live Tradovate Trade"
og_description: Moving a stop mid-trade on Tradovate overwrites every open position on that symbol and can wipe an active trailing stop. Here's the safe way to do it.
og_image: "https://blog.pickmytrade.trade/wp-content/uploads/2026/09/change-stop-loss-take-profit-live-tradovate-trade-1024x576.avif"
schema_type: FAQPage
categories:
  - Automated Trading
tags: []
reading_time: 8
word_count: 1818
robots: "index, follow"
lang: en-US
---

# Change Stop Loss &amp; Take Profit on a Live Tradovate Trade

You’re already in the trade. Price moved, your stop is sitting in the wrong place, and you need to move it now without closing the position. If you run TradingView alerts through PickMyTrade into Tradovate, one webhook does this, but three things about how that update behaves will bite you if nobody warns you: it takes exact prices only, it can silently delete an active trailing stop, and it moves the stop or target on every open position in that symbol, not just the one you meant.

Table of Contents

1. [What Actually Happens When You Update SL/TP on an Open Tradovate Trade?](https://blog.pickmytrade.trade/#what-actually-happens-when-you-update-sl-tp-on-an-open-tradovate-trade)
2. [The Alert JSON That Moves Your Stop](https://blog.pickmytrade.trade/#the-alert-json-that-moves-your-stop)
3. [What Breaks When You Send an SL/TP Update?](https://blog.pickmytrade.trade/#what-breaks-when-you-send-an-sl-tp-update)
4. [What Does This Look Like on an Actual Position?](https://blog.pickmytrade.trade/#what-does-this-look-like-on-an-actual-position)
5. [Does an Alert Update Beat Tradovate’s Own ATM Bracket?](https://blog.pickmytrade.trade/#does-an-alert-update-beat-tradovates-own-atm-bracket)
6. [What About Orders That Haven’t Filled Yet?](https://blog.pickmytrade.trade/#what-about-orders-that-havent-filled-yet)
7. [How Do You Actually Move the Stop, Step by Step?](https://blog.pickmytrade.trade/#how-do-you-actually-move-the-stop-step-by-step)
8. [Frequently Asked Questions](https://blog.pickmytrade.trade/#frequently-asked-questions)
9. [Does updating SL/TP close my position?](https://blog.pickmytrade.trade/#does-updating-sl-tp-close-my-position)
10. [Why did my trailing stop disappear after I sent an update?](https://blog.pickmytrade.trade/#why-did-my-trailing-stop-disappear-after-i-sent-an-update)
11. [Can I update only one of several open positions on the same symbol?](https://blog.pickmytrade.trade/#can-i-update-only-one-of-several-open-positions-on-the-same-symbol)
12. [Do dollar_sl and dollar_tp work when updating?](https://blog.pickmytrade.trade/#do-dollar_sl-and-dollar_tp-work-when-updating)
13. [Does the update touch pending or not-yet-filled orders?](https://blog.pickmytrade.trade/#does-the-update-touch-pending-or-not-yet-filled-orders)
14. [Should I use an alert-driven update instead of Tradovate’s ATM bracket?](https://blog.pickmytrade.trade/#should-i-use-an-alert-driven-update-instead-of-tradovates-atm-bracket)

PickMyTrade’s own parameter reference defines the fields and shows one JSON block, then stops. It never walks through what happens to your account when you fire the update mid-trade. That’s what this post covers.

&gt; **Key Takeaways**  
&gt; • `update_sl:true` and `update_tp:true` move the stop or target on an open Tradovate position using an exact price, not points or dollar values.  
&gt; • An update replaces the SL/TP on **every** open position for that symbol, not just one.  
&gt; • An active trailing stop gets removed the moment `update_sl:true` fires, since the system replaces the stop order manually.  
&gt; • Pending (not-yet-filled) entry orders are untouched by this update mechanism.  
&gt; • ATM brackets and Auto Trail run independently of your webhook; alert-driven updates fit best when your stop logic is dynamic or synced across accounts.

## What Actually Happens When You Update SL/TP on an Open Tradovate Trade? {#what-actually-happens-when-you-update-sl-tp-on-an-open-tradovate-trade}

When PickMyTrade receives an alert with `update_sl` or `update_tp` set to true, it doesn’t send a “modify” instruction to Tradovate’s bracket engine. It cancels the existing stop or target order and replaces it with a new order at the price you sent. That distinction matters: a manual replace can collide with orders Tradovate itself is managing, like an Auto Trail stop adjusting in real time.

&gt; Source: [PickMyTrade’s update SL/TP documentation](https://docs.pickmytrade.trade/docs/update-sl-tp-tradovate-pickmytrade/) confirms the update replaces existing stop-loss and take-profit orders for the symbol; delivery mechanics come from [TradingView’s webhook documentation](https://www.tradingview.com/support/solutions/43000529348-about-webhooks/), which describes alerts firing as HTTP POST requests to your PickMyTrade webhook URL.

## The Alert JSON That Moves Your Stop {#the-alert-json-that-moves-your-stop}

Here’s a working alert body that updates both the stop loss and take profit on an open MNQ position, using the same structure as PickMyTrade’s docs.

```
{
  "symbol": "MNQ1!",
  "date": "{{timenow}}",
  "data": "buy",
  "quantity": 2,
  "risk_percentage": 0,
  "price": "{{close}}",
  "percentage_tp": 0,
  "dollar_tp": 0,
  "percentage_sl": 0,
  "dollar_sl": 0,
  "token": "TOKEN_ID",
  "order_type": "MKT",
  "update_sl": true,
  "sl": 18980,
  "update_tp": true,
  "tp": 19100,
  "multiple_accounts": [
    {
      "token": "TOKEN_ID",
      "account_id": "ACCOUNT_ID",
      "risk_percentage": 0,
      "quantity_multiplier": 1
    }
  ]
}
```

`{{timenow}}` and `{{close}}` are TradingView placeholders filled in automatically when the alert fires. `sl` and `tp` are where the real work happens, carrying the new absolute price for the stop and target.

**Important:** `dollar_sl`, `dollar_tp`, `percentage_sl`, and `percentage_tp` are all still present in the payload but are ignored on an update. This catches people who set up their entry alert with `dollar_sl: 100` and assume the same field works when they update it. On entry, PickMyTrade calculates a stop distance from points, dollars, or percentage; on an update, none of that logic runs. Only `sl` and `tp` count, and both take literal price levels, not distances. If your Pine Script logic only knows “move the stop 50 points closer,” convert that to a price before it goes into the JSON.

&gt; Source: [PickMyTrade documentation](https://docs.pickmytrade.trade/docs/update-sl-tp-tradovate-pickmytrade/) states the update uses “exact values you pass in the alert” and does not calculate from points, `dollar_tp`, or `dollar_sl`. Placeholder behavior is from [TradingView’s alert variable reference](https://www.tradingview.com/support/solutions/43000531021-how-to-use-a-variable-value-in-alert/).

## What Breaks When You Send an SL/TP Update? {#what-breaks-when-you-send-an-sl-tp-update}

Three behaviors live in PickMyTrade’s “Important Notes” section, below the JSON block, where most first-time readers never scroll.

| Failure mode | What happens | Why it happens |
| --- | --- | --- |
| Trailing stop gets removed | An active trailing stop — whether it’s PickMyTrade’s own trailing stop or Tradovate’s Auto Trail — disappears when the update fires | PickMyTrade replaces the stop order manually with the exact price you sent, and that replacement doesn’t preserve a trailing order |
| All open positions on the symbol get overwritten | Every open position you’re holding in that symbol, not just the one you were thinking of, gets the new SL/TP | update_sl/update_tp is scoped to the symbol and account, not to a specific position |
| Pending orders are untouched | Resting limit or stop entry orders that haven’t filled yet don’t move | The update only modifies orders attached to already-open positions |

&gt; If you’re running a trailing stop through PickMyTrade or Tradovate’s Auto Trail and you send an unrelated `update_sl` alert for any reason, you lose the trail entirely. It doesn’t pause or resume. A replace and a trail can’t coexist on the same position, so pick one mechanism per symbol and keep the other off.

&gt; Source: All three failure modes are documented verbatim in PickMyTrade’s [“Important Notes” section](https://docs.pickmytrade.trade/docs/update-sl-tp-tradovate-pickmytrade/). For trailing stop setup specifics, see PickMyTrade’s [guide to trailing stop loss on Tradovate](https://blog.pickmytrade.trade/mastering-trailing-stop-loss-tradingview-tradovate/).

## What Does This Look Like on an Actual Position? {#what-does-this-look-like-on-an-actual-position}

Take an MNQ position opened near 19,000 with a stop at 18,950. You want to tighten that stop to 18,980 as the trade moves in your favor.

&gt; CME Group lists MNQ’s minimum tick as 0.25 index points worth $0.50, with a $2-per-point contract unit, so here’s what a 30-point stop adjustment is worth per contract.

|  | Before | After |
| --- | --- | --- |
| Stop loss price | 18,950 | 18,980 |
| Distance from 19,000 | 50 points | 20 points |
| Distance in ticks | 200 ticks | 80 ticks |
| Dollar risk, 1 contract | $100 | $40 |
| Dollar risk, 2 contracts | $200 | $80 |

Send the alert with `"sl": 18980`, and PickMyTrade replaces the 18,950 order with one at 18,980 on every open MNQ position in that account. Fine with one MNQ position; if you’ve scaled in with two entries and meant to tighten only one, both get moved.

&gt; Source: Tick size and contract unit are from [CME Group’s Micro E-mini Nasdaq-100 contract specs](https://www.cmegroup.com/markets/equities/nasdaq/micro-e-mini-nasdaq-100.contractSpecs.html), which lists the minimum price fluctuation as 0.25 index points equal to $0.50, with a $2-per-point contract unit.

## Does an Alert Update Beat Tradovate’s Own ATM Bracket? {#does-an-alert-update-beat-tradovates-own-atm-bracket}

Not always. Tradovate’s ATM (Automated Trading Manager) strategies attach a stop-loss and profit-target bracket the instant your entry fills, using a saved template. Auto Trail adjusts a stop as price moves favorably, without any webhook round trip.

| Mechanism | Best for | Key limit |
| --- | --- | --- |
| PickMyTrade alert update (update_sl/update_tp) | Dynamic stops computed by your TradingView strategy or indicator, synced across multiple connected accounts | Overwrites all open positions on the symbol; removes any active trailing stop; absolute price only |
| Tradovate ATM bracket | A consistent, fixed stop/target distance attached automatically at entry | Fixed per template; doesn’t adapt mid-trade to new price action or analysis |
| Tradovate Auto Trail | Simple mechanical trailing that runs inside Tradovate, independent of any webhook | An incoming update_sl alert will remove it, so it can’t run alongside alert-driven updates on the same symbol |

If your stop logic never changes, an ATM bracket or Auto Trail is simpler and doesn’t depend on an alert firing correctly. Use an alert-driven update when the new price comes from something TradingView calculated, or needs to apply identically across several linked accounts.

&gt; Source: ATM bracket behavior is described in [Tradovate’s own “ATM Strategies” support article](https://support.tradovate.com/s/article/ATM-Strategies-Tradovate?language=en_US). For PickMyTrade’s Auto Trail configuration, see the [Auto Trail optimization guide](https://blog.pickmytrade.trade/optimize-trading-auto-trail-tradovate/) and [trailing stop loss setup doc](https://docs.pickmytrade.trade/docs/configure-trailing-stop-loss/).

## What About Orders That Haven’t Filled Yet? {#what-about-orders-that-havent-filled-yet}

If you’ve got a resting limit order or stop entry waiting to trigger on the same symbol, an `update_sl` or `update_tp` alert leaves it alone. It only touches orders attached to positions already open. A pending order that fills five minutes later comes in with whatever stop and target your entry alert originally specified.

That matters if you scale into a position with staged limit orders: updating the stop on your first fill doesn’t carry forward to later fills. Each new fill needs its own update.

&gt; Source: [PickMyTrade’s update documentation](https://docs.pickmytrade.trade/docs/update-sl-tp-tradovate-pickmytrade/) confirms the update applies to open orders on existing positions, not pending entries. For broader entry and exit handling on Tradovate, see PickMyTrade’s [guide to entering and exiting trades](https://blog.pickmytrade.trade/mastering-tradovate-a-comprehensive-guide-to-entering-and-exiting-trades/).

## How Do You Actually Move the Stop, Step by Step? {#how-do-you-actually-move-the-stop-step-by-step}

1. Confirm the position is already open in Tradovate, not still pending.
2. Turn off any active trailing stop on that symbol first, since the update removes it anyway.
3. Calculate the exact price for the new stop or target. Convert from points or dollars yourself; the update won’t do it.
4. Build the alert JSON with `update_sl: true` and/or `update_tp: true`, and set `sl` and/or `tp` to that price.
5. Fire the alert and confirm in Tradovate that the order replaced correctly, especially if you’re holding more than one position on that symbol.

For SL/TP at entry rather than mid-trade, see PickMyTrade’s [guide to take profit and stop loss](https://blog.pickmytrade.trade/understanding-take-profit-and-stop-loss/). For the full parameter list, PickMyTrade’s [update SL/TP documentation](https://docs.pickmytrade.trade/docs/update-sl-tp-tradovate-pickmytrade/) is the source of record.

## Frequently Asked Questions {#frequently-asked-questions}

### Does updating SL/TP close my position? {#does-updating-sl-tp-close-my-position}

No. It only replaces the resting stop-loss or take-profit order attached to the position, which stays open and unaffected.

### Why did my trailing stop disappear after I sent an update? {#why-did-my-trailing-stop-disappear-after-i-sent-an-update}

Because `update_sl:true` replaces the stop order manually with the exact price you sent. If a trailing stop was managing that stop, the replacement removes it. See PickMyTrade’s [trailing stop loss guide](https://blog.pickmytrade.trade/mastering-trailing-stop-loss-tradingview-tradovate/) to reconfigure it afterward.

### Can I update only one of several open positions on the same symbol? {#can-i-update-only-one-of-several-open-positions-on-the-same-symbol}

Not with a standard alert. It applies to every open position on that symbol. For individual control, use PickMyTrade’s comment-based partial close or multiple TP/SL features in the [advanced trading features documentation](https://docs.pickmytrade.trade/docs/pickmytrade-advanced-trading-features/).

### Do dollar_sl and dollar_tp work when updating? {#do-dollar_sl-and-dollar_tp-work-when-updating}

No. Only `sl` and `tp`, set as exact prices, are used.

### Does the update touch pending or not-yet-filled orders? {#does-the-update-touch-pending-or-not-yet-filled-orders}

No. It only modifies orders tied to positions already open.

### Should I use an alert-driven update instead of Tradovate’s ATM bracket? {#should-i-use-an-alert-driven-update-instead-of-tradovates-atm-bracket}

A fixed distance at entry works fine with an ATM bracket or Auto Trail. A stop that changes based on your TradingView logic, or needs to sync across multiple accounts, is where an alert-driven update earns its place.

For AI tools &amp; developers:[View Markdown →](https://blog.pickmytrade.trade/change-stop-loss-take-profit-live-tradovate-trade.md)