Skip to content

Syntax Guide

Please refer to the updated Syntax Guide here:
https://docs.pineconnector.com/syntax


This guide is to assist you in crafting your alert messages to be compliant to our syntax.



This guide is to assist you in crafting your alert messages to be compliant to our syntax.


Command Description Examples
License ID

License ID is long string found in the members portal 

5123456789012
Order

Main Order Command

- More can be found in the respective "Market Order Commands" and "Pending Order Commands" tabs below

buy, sell, buystop, buylimit, sellstop, selllimit, closelong, cancellong, closeshort, cancelshort, newsltplong, newsltpshort
Symbol

Symbol, asset or instrument you would like to enter, exit or modify

The symbol used should be based on your Symbols List (CTRL+U on your MT4/5)

EURUSD
GER30
risk=
(required parameter for ALL entry commands such as buy and buylimit)
"risk=" can be toggled in the EA with either of these options:

1. Based on Dollar Amount
2. As per tradingView Alert Message
3. Percentage of Balance
risk=0.05
risk=2
price=
(required parameter for pending orders)

"price=" can be toggled in the EA with either of these options:

1. Pips From Current Market Price
2. Specified Price from TradingView Alert
3. Percentage from Current Market Price

Please note that we recommend Pips from current market price due to differences in quotes on TradingView and your Broker.

price=1.158
price=10
sl=
tp=
"sl=" and "tp=" can be toggled in the EA with either of these options:

1. SL and TP based on Pips (from open price)
2. SL and TP based on Price (as indicated in your alert message)
3. SL and TP based on Percentage (from open price)
- To place SL 1% and TP 2.5% away, please use sl=1 and tp=2.5

Please note that we recommend SL and TP based on Pips due to differences in quotes on TradingView and your Broker.

sl=1.2012
sl=25
tp=1.2022
tp=50
comment=

Add a comment to an order or position

Please note:
- using the comment feature will disable the Breakeven and Trailing (Pips and ATR) features
- comment texts are to be contained in the " "

comment="hello"
comment="strategy 1"
eaon
eaoff

A command to resume or halt the PineConnector EA

A "halted PineConnector EA" will not open new orders and positions even when you send in alerts.

licenseid,eaon,eaon
licenseid,eaoff,eaoff

All syntax are to be in this structure:
1. License ID (required)
2. Main Order Command (required)
3. Symbol (required)
4. Others, in any order (risk=, price=, sl=, tp=, comment=, betrigger=, beoffset=, spread=, accfilter=, etc)

Examples with basic commands*:
5123456789012,buy,EURUSD,risk=1
5123456789012,buylimit,EURUSD,risk=1,price=10
5123456789012,sell,EURUSD,risk=1,sl=10,tp=30,comment="strategy 1"
5123456789012,sellstop,EURUSD,risk=1,sl=10,tp=30,price=15,comment="strategy 2"

*Please Refer to "Sample Combined Syntax" below for more comprehensive sample syntax with explanations


Command Description Examples
buy 
Place buy position
buy
sell
Place sell position
sell
closelong 

Close the full long position of that symbol 

ID,closelong,EURUSD
closeshort
Close the full short position of that symbol
ID,closeshort,EURUSD
closelongshort
Close the full long and short positions of that symbol
ID,closelongshort,GBPJPY
closelongbuy
Instead of sending in a closelong and a buy seprately, you may use this dual command to close all open buys and open a new buy position.

If you do not have a buy position open, nothing will be closed and your buy will still open.
ID,closelongbuy,EURUSD,risk=0.01
closeshortsell
Instead of sending in a closeshort and a sell separately, you may use this dual comand to close all open sells and open a new sell position.

If you do not have a sell position open, nothing will be closed and your sell will still open.
ID,closeshortsell,EURUSD,risk=0.01

*Important for closelongbuy and closeshortsell:

Sending in both closelong and buy separately at the same time is risky.
The buy alert might be processed first followed by the closelong resulting in no open trades.

Similarly, sending in both closeshort and sell at the same time is not recommended.
Please use the dual commands above.

newsltplong*

Move the stoploss, takeprofit or both SL and TP of ALL buy trades with that symbol 
ID,newsltplong,EURUSD,sl=1.22
ID,newsltplong,EURUSD,tp=15
ID,newsltplong,EURUSD,sl=20,tp=10

newsltpshort*

Move the stoploss, takeprofit or both SL and TP of ALL sell trades with that symbol
ID,newsltpshort,GBPJPY,sl=152.11
ID,newsltpshort,GBPJPY,tp=150.51
ID,newsltpshort,GBPJPY,sl=30,tp=50

*the new SL and TP will be computed based on your target type in your EA Settings - pips, price or percentage

Sample output in the Experts tab, with percentage-based target:

closelongpct
Partially close long positions based on your selected percentage in the EA
Options of 25%, 34%, and 50%
ID,closelongpct,EURUSD
closeshortpct
Partially close short positions based on your selected percentage in the EA
Options of 25%, 34%, and 50%
ID,closeshortpct,EURUSD
closelongvol
Close long positions up to value indicated
ID,closelongvol,EURUSD,risk=2
closeshortvol
Close short positions up to value indicated
ID,closeshortvol,EURUSD,risk=1

Command Description Examples
buystop
Place Buy Stop order above current market price
(please ensure you have "price=")
ID,buystop,USOIL,
price=75,sl=70
buylimit
Place Buy Limit order below current market price
(please ensure you have "price=")
ID,buylimit,USOIL,
price=65,sl=60
sellstop
Place Sell Stop order below current market price
(please ensure you have "price=")
ID,sellstop,USOIL,
price=75,sl=80
selllimit
Place Sell Limit order above current market price
(please ensure you have "price=")
ID,selllimit,USOIL,
price=65,sl=70
cancellong
Cancels all long orders 
that was placed by the PineConnector EA (buystop and buylimit) for the accompanying symbol 
ID,cancellong,NAS100
cancelshort
Cancels all short orders 
that was placed by the PineConnector EA (sellstop and selllimit) for the accompanying symbol
ID,cancelshort,GBPJPY
cancellongbuystop
Instead of sending in a cancellong and a buystop separately, you may use this dual comand to close all long orders (buystop and buylimit) and open a new buystop order.
ID,cancellongbuystop,EURUSD,risk=0.01,price=10,sl=15,tp=20
cancellongbuylimit
Instead of sending in a cancellong and a buylimit separately, you may use this dual comand to close all long orders (buystop and buylimit) and open a new buylimit order.
ID,cancellongbuylimit,EURUSD,risk=0.01,price=10,sl=15,tp=20
cancelshortsellstop
Instead of sending in a cancelshort and a sellstop separately, you may use this dual comand to close all long orders (sellstop and selllimit) and open a new sellstop order.
ID,cancelshortsellstop,EURUSD,risk=0.01,price=10,sl=15,tp=20
cancelshortselllimit
Instead of sending in a cancelshort and a selllimit separately, you may use this dual comand to close all long orders (sellstop and selllimit) and open a new selllimit order.
ID,cancelshortselllimit,EURUSD,risk=0.01,price=10,sl=15,tp=20

*Important for cancellongbuystop, cancellongbuylimit, cancelshortsellstop and cancelshortselllimit:

Sending in both cancellong and buystop/buylimit separately at the same time is risky.
The buystop/buylimit alert might be processed first followed by the cancellong resulting in no open trades.

Similarly, sending in both cancelshort and sellstop/selllimit at the same time is not recommended.
Please use the dual commands above.
newsltpbuystop*
Change the SL, TP or both SLTP of buy stop orders with the indicated symbol
ID,newsltpbuystop,EURUSD,sl=25
newsltpbuylimit*
Change the SL, TP or both SLTP of buy limit orders with the indicated symbol
ID,newsltpbuylimit,EURUSD,tp=25
newsltpsellstop*
Change the SL, TP or both SLTP of sell stop orders with the indicated symbol
ID,newsltpsellstop,EURUSD,sl=25,tp=50
newsltpselllimit*
Change the SL, TP or both SLTP of sell limit orders with the indicated symbol
ID,newsltpselllimit,EURUSD,tp=25,sl=25

*the new SL and TP will be computed based on your target type in your EA Settings - pips, price or percentage


Command Description Examples

betrigger=
(Ensure >0)

Breakeven will be activated after a trade gains this number of pips beyond opening price.

*Ensure that value is minimally the broker's stops level in pips.

betrigger=30
beoffset=

Offset from the entry price. 0 means the SL will be placed exactly at entry price while 1 means 1 pip above the entry price for buy trades and 1 pip below for sell trades. This is the amount of pips you'd like to protect. 

*Ensure that beoffset<bettrigger

beoffset=5

Your Breakeven parameters will be stored in the position's Comment area.

Please visually confirm that your parameters are added to the comment's section.

To use Pips Trailing SL feature, all 3 commands are required.

Command Description Examples
trailtrig=

Trailing stop-loss will be activated after a trade gains this number of pips. 

If your trailtrig=0, price will have to minimally move the bid-ask spread to begin.
To begin instantaneously, without the need to move the bid-ask spread, you may use trailtrig<0. (i.e. trialtrig=-10)

Value Restriction: Integers only

trailtrig=12

traildist=
(Ensure >0)

Distance of the trailing stop-loss from current price. SL will be opened at traildist, after trailtrig is met, even if you do not have a SL placed. 

Value Restriction: Integers only

*Important: "Stops Level" is the minimum required distance between current market price and your SL, set by your broker.
  • If the "Stops Level" of the symbol is 20, minimum value will be 2 for trailing to work.
  • If "Stops Level" is 35, minimum value will be 4.
  • You may check the symbol's "Stops Level" via the Symbol List (CTRL+U).
traildist=8
trailstep=

Moves trailing stop-loss once price moves favourable by a specified number of pips.


Value Restriction: Integers only

trailstep=3 
Example configuration: Buy position with trailtrig=12, traildist=8 and trailstep=3

  • With trailtrig=12, the first instance of trailing SL will be when price moves favorably for 12 pips (entry+12). 
    The SL will be placed 8 pips lower at (entry+12-8).
    • If you have a SL, the SL will be updated 
    • If you do not have a SL, a SL will be created automatically
    • With trailstep=3, the second instance of trailing SL is when price moves favorably for another 3 pips (entry+12+3).
      The SL will be placed at 8 pips lower at (entry+12+3-8).
      • The third instance will be when price moves another 3 favorable pips (entry+12+3+3). 
        The SL will be placed 8 pips lower at (entry+12+3+3-8), and so on.

       

      pineconnector trailing pips
      At the point of entry, the trigger price will be indicated in the Experts Tab.

       

      Your Pips Trailing parameters will be stored in the position's Comment area.

      Please visually confirm that your parameters are added to the comment's section.


      To use ATR Trailing SL feature, both atrtimeframe= and atrperiod= commands are required.

      Command Description Examples

      atrtimeframe=

       

      ATR Trailing Stop will be based on the specified timeframe in minutes and will only update once per bar close

      If stop loss not specified at point of entry, a SL will be automatically added with the ATR values used

      Allowable timeframe values:

      1. 1        (1 minute),
      2. 5        (5 minutes),
      3. 15      (15 minutes),
      4. 30      (30 minutes),
      5. 60      (1 hour),
      6. 240    (4 hours),
      7. 1440  (1 day)
      atrtimeframe=15

      atrperiod=
      (Ensure >0)

      ATR averaging period


      Value Restriction: Integers only

      atrperiod=14

      atrmultiplier=
      (optional)

      ATR Multiplier


      Default Multipler: 1
      Value Restriction: Maximum of 1 decimal place

      atrmultiplier=1.5

      atrshift=
      (optional)

      ATR Shift


      Default shift: 0
      Value Restriction: Integers only

      • Using ATR shift of 1 means ATR computation uses the previous candle close instead of current open candle
      • Accordingly, ATR shift of 2 uses the close 2 candles ago
      atrshift=1

      atrtrigger=
      (optional)

      Activate the trigger of ATR Trailing after market moves favorably by X number of pips

       

      Default trigger: 0 (instantaneous)
      Value Restriction: Maximum of 1 decimal place 

      atrtrigger=10


      Your ATR Trailing parameters will be stored in the position's Comment area.



      Sample Expert output when ATR Trailing moves SL.

      Please visually confirm that your parameters are added to the comment's section.


      Command Description Examples

      spread=

      Only orders with spread equal or less than specified spread in pips will be executed

      spread=2
      spread=1.22


      Sample alert if spread in pips is more than specified spread tolerance


      Sample Expert output when spread is within acceptable levels


      Command Description Example

      accfilter=

      Only execute signals your signals if they meet certain account requirements

       

      Account Filter Options:

      1. Account Balance
      2. Account Equity
      3. Margin Percentage
      4. Free Margin

      accfilter=500

      Example:

      • “Account Filter Basis” of “Account Balance” option chosen in your EA
      • pineconnector account filter syntax

       

      • Syntax sent: “LicenseID,buy,EURUSD,risk=1,accfilter=500”
        • Buy EURUSD signal will only process if your Account Balance has $500 or more
        • Buy EURUSD signal will not process if your Account is lower than $500

       

      account filter experts output pineconnector

      Sample Experts output when account filter requirement is met


      Scenario Recommended Trail Settings 
      • Trailing to start immediately
      • SL to be placed 10 pips from current price
      • SL to be moved every 1 pip of favorable movement
      • trailtrig=-10 (negative 10)
      • traildist=10
      • trailstep=1
      • Trailing to begin when price moves favorably by 8 pips
      • SL to be placed 9 pips from current price
      • SL to be moved every 5 pips of favorable movement
      • trailtrig=8
      • traildist=9
      • trailstep=5
      Other Notes: Values are in pips.
      When trading non-FX, such as the US100, using a value of 10 may mean 1 point in the index. Do test it first.

      Sample Syntax Interpretation
      5123456789012,buy,AUDUSD,risk=0.01

      Enter a long AUDUSD trade with 0.01 position size

      EA Settings
      • Volume type = Specified Volume
        5123456789012,sell,GBPJPY,sl=50,tp=150,risk=1

        Enter a short 1 volume GBPJPY trade with SL and TP being 50 and 150 pips from current price 

        EA Settings
        • Target type = TP & SL based on pips
        • Volume type = Specified Volume
          5123456789012,closelong,GBPUSD

          Closes the all GBPUSD long trades 

          EA Settings
          • N/A
            5123456789012,buy,EURUSD,sl=1.20,risk=1, trailtrig=15,traildist=10,trailstep=12

            Going long EURUSD with initial SL at 1.20 risking 1% of account balance. Trailing stop to activate when price moves favorably by 15 pips. Every 12 pips move in favor of direction, the stop-loss will move to 10 pips from current price.

            EA Settings
            • Target type = TP & SL based on price
            • Volume type = Percentage of balance
              5123456789012,buy,EURCAD,sl=100,risk=5, betrigger=30,beoffset=5

              Going long EURCAD with initial SL at 100 pips away, risking 5 volumes. SL will be moved to (entry price + 5 pips) when price has moved favorably by 30 pips. 

              EA Settings
              • Target type = TP & SL based on pips
              • Volume type = Specified volume
              5123456789012,selllimit,EURUSD,price=1.2340,sl=10,risk=1

              Place a sell limit on EURUSD at price of 1.2340 with a 10 pips stop-loss. Lot size/Volume of 1.

              EA Settings
              • Target type = TP & SL based on pips
              • Volume type = Specified volume
              5123456789012,cancellong,EURUSD

              Cancel all long pending orders (buystop and buylimit) for EURUSD

              EA Settings
              • NA
              5123456789012,buy,EURUSD,risk=1,spread=3

              Buy EURUSD at the market if current spread is 3 or lower

              EA Settings
              • NA
              5123456789012,newsltplong,EURUSD,sl=10,tp=30

              Update SL to 10 pips and TP to 30 pips from current market price

              EA Settings
              • Target Type = TP & SL based on pips
              5123456789012,buy,EURUSD,sl=10,
              atrtimeframe=60,atrperiod=14,atrmultiplier=2,atrtrigger=8

              Buy EURUSD at the market with SL placed 10 pips away. ATR Trailing will begin after 8 pips of favorable move. ATR is computed using the average of the previous 14 60-min candles, multiplied by 2.

              EA Settings
              • Target Type = TP & SL based on pips
              Note: Syntax commands are case-sensitive


               Components Remarks Example
              Spacing in Syntax There should be no spacing in your syntax.
              Incorrect: ID , buy , EURUSD , risk=1
              Correct: ID,buy,EURUSD,risk=1
              SL, TP, BE, Trailing Settings cannot be too tight. Refer to your symbol information in the symbol list under "Stops Level"
              1 pip from current price
              Tick Size Targets have to comply with symbol's tick size. Refer to "Tick Size"
              UK100 CFDs with a tick size of 0.5. Your target ending with 0.3 will be rejected.
              Volume Minimum volume should be met. Refer to "Minimal Volume" 0.1 minimum volume. Trade with volume or increments of 0.01 will be rejected.