Deploy Your Pine Script
To Live Markets
Turn your TradingView strategies into automated trading systems. Webhook integration, JSON alerts, dynamic parameters - no additional coding required.
From Backtest to Live in Minutes
Your Pine Script strategy is already generating signals. Now execute them automatically.
Build Strategy
Develop and backtest your strategy in TradingView using Pine Script.
Generate Alert
Use PickMyTrade dashboard to generate webhook URL and JSON configuration.
Create Alert
Paste webhook URL and JSON into TradingView alert. Set condition.
Go Live
Every strategy signal now executes real trades on Tradovate.
Strategies vs Indicators
PickMyTrade works with both, but there are important differences.
TradingView Strategies
Scripts using strategy() function with strategy.entry() calls.
- Full backtest with P&L, drawdown, win rate
- Built-in position management
- Placeholders work correctly ({{close}}, {{strategy.order.price}})
- Explicit entry/exit logic
Recommended for automation
TradingView Indicators
Scripts using indicator() function with alertcondition() calls.
- No built-in backtest
- May send duplicate signals
- Placeholders may not evaluate ({{close}} as string)
- Requires reverse_order_close or same_direction_ignore
Requires additional configuration
JSON Alert Configuration
Never edit JSON manually. Always use the PickMyTrade generator.
Core Parameters
Symbol to trade: "ES", "NQ", "CL", etc.
"buy" or "sell" - direction of trade
Fixed contracts (1, 2, 5) OR percentage of account to risk
Stop loss in ticks, dollars, or percentage. Use only one method.
Take profit in ticks, dollars, or percentage.
Example Alert JSON
{
"ticker": "ES",
"action": "buy",
"quantity": 2,
"orderType": "market",
"sl": 50,
"tp": 100,
"same_direction_ignore": true,
"reverse_order_close": false
}
⚠️ Critical: Never edit JSON manually. Copy the exact code from PickMyTrade dashboard → Create Alert.
Dynamic Values from Pine Script
Pass calculated values from your strategy to PickMyTrade using TradingView plot placeholders.
Step 1: Plot Variables
Every value you want to use in alerts must be plotted. Use display=display.none to hide from chart.
plot(atr_sl, title="ATR_SL", display=display.none)
Step 2: Verify in TradingView
When creating an alert, check the "Add Placeholder" dropdown. Your plot should appear under PLOTS section.
- • plot_0, plot_1, plot_2 (by index)
- • {{plot("ATR_SL")}} (by title)
Step 3: Use in JSON
Reference the plot in your PickMyTrade configuration. TradingView replaces it with live value when alert fires.
"sl": {{plot("ATR_SL")}}
Full Pine Script Example
//@version=5
strategy("My Algo", overlay=true)
// Entry logic
longCond = ta.crossover(ta.sma(close, 20), ta.sma(close, 50))
shortCond = ta.crossunder(ta.sma(close, 20), ta.sma(close, 50))
// Dynamic calculations
atr = ta.atr(14)
long_sl = close - (atr * 2)
long_tp = close + (atr * 3)
short_sl = close + (atr * 2)
short_tp = close - (atr * 3)
// Plot for alert access
plot(long_sl, "Long_SL", display=display.none)
plot(long_tp, "Long_TP", display=display.none)
plot(short_sl, "Short_SL", display=display.none)
plot(short_tp, "Short_TP", display=display.none)
// Entries
if longCond
strategy.entry("Long", strategy.long)
if shortCond
strategy.entry("Short", strategy.short)
// In PickMyTrade alert (for long):
// "sl": {{plot("Long_SL")}}
// "tp": {{plot("Long_TP")}}
Common Errors & Solutions
TradingView sent literal text instead of a number. The placeholder wasn't evaluated.
Fix: Use a strategy instead of indicator, or ensure placeholder isn't inside quotes in your alert.
Boolean values should not be quoted. This causes parse errors.
Fix: Use "update_tp": true not "update_tp": "true"
You can only use one sizing method per alert.
Fix: Set one to 0. Either use fixed quantity OR risk percentage, never both.
TradingView only exposes plotted variables to alerts.
Fix: Add plot() call for every variable you want in alerts, even with display=display.none.
Saved Alerts Feature
Save your alert configurations and reuse them across strategies without regenerating settings each time.
-
Save Templates
One template for ES scalping, another for NQ swing trades
-
Quick Regenerate
TradingView alert deleted? Regenerate in one click
-
A/B Test Settings
Compare different SL/TP profiles with saved templates
Find it in Dashboard
Dashboard → Saved Alerts → Load / Use This Alert
Developer Questions
Do I need to modify my Pine Script code?
Not necessarily. If your strategy generates alerts, it should work. You may want to add plot() calls to expose dynamic TP/SL values, but the core strategy logic stays the same.
Can I backtest before going live?
Yes! Use TradingView's Strategy Tester for backtesting. Then connect to PickMyTrade with a demo account first. Once confident, switch to live.
How do I handle contract rollovers?
PickMyTrade handles contract rollover automatically. Use the base symbol (ES, NQ) and we map to the active front-month contract.
Can I deploy to multiple accounts?
Absolutely. Configure Manual Trade Copier to replicate signals across unlimited accounts with custom quantity multipliers per account.
Ready to Deploy Your Algorithm?
Go from backtest to live trading in minutes. No additional coding required.