Getting Started
EA Setup
MetaTrader 4
MetaTrader 5
Alerts
Test Alert
Low-code Alert
No-code Alert
Message Structure
Syntax
Expert Advisor
Settings
Debugging
Errors
Trigger
Others
Roadmap
FAQ
Syntax Builder
super-embed:<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<style><!--
.pineconnector row {
margin: 0 -16px;
padding-bottom: 30px;
}
.pineconnector row-btn {
padding: 0 -16px;
}
.pineconnector row-25 {
display: flex;
flex-wrap: wrap;
margin: 0 -16px;
}
.pineconnector col-50 {
flex: 50%;
padding: 0 16px;
}
.pineconnector col-25 {
flex: 250%;
padding-top: 16px;
}
.pineconnector textarea {
margin-left:25%;
width: 50%;
margin-bottom: 1px;
padding: 3px;
border-radius: 3px;
font-family: Helvetica, Sans-Serif;
}
.pineconnector span{
float: right;
font-family: Helvetica, Sans-Serif;
margin-bottom: 1px;
display:none;
padding: 12px;
border-radius: 3px;
}
.pineconnector span2{
font-family: Helvetica, Sans-Serif;
margin-left:25%;
color: grey;
padding: 6px;
border-radius: 3px;
opacity: 0.75;
font-size:15px;
}
.pineconnector input[type=text], input[type=number], select{
margin-left:25%;
width: 50%;
margin-bottom: 1px;
padding: 12px;
border-radius: 3px;
font-family: Helvetica, Sans-Serif;
}
.pineconnector label {
margin-left:25%;
margin-bottom: 0px;
display: block;
font-family: Helvetica, Sans-Serif;
}
.pineconnector button {
margin-left:25%;
width: 50%;
background-color: #046ff9;
color: white;
transition-duration: 0.1s;
border-color: #046ff9;
padding: 15px;
border: none;
border-radius: 30px;
cursor: pointer;
font-family: Helvetica, Sans-Serif;
}
.pineconnector button:hover {
background-color: #7f7f7f;
}
--></style>
<div class="sqs-block horizontalrule-block sqs-block-horizontalrule" data-block-type="47" id="block-yui_3_17_2_1_1612273740693_24802">
<div class="sqs-block-content" style="text-align: center;">Build PineConnector-compliant syntax accurately and quickly.<br /><hr /></div>
</div>
<div class="pineconnector">
<div class="row"><form onsubmit="handleSubmit(event)">
<div class="row">
<div class="col-50">
<p><strong><label for="licenseid">License ID</label></strong> <input size="555" type="number" id="licenseid" min="0" name="licenseid" autofocus="" required="" /> <span>The long string of numbers that begins with a "5"</span><br /><span2>e.g. 5123456789012</span2></p>
<p id="pcommand"><strong><label for="command">Command</label></strong><select id="command" name="command" onchange="handleCommand()" required="">
<option value="buy">Buy</option>
<option value="sell">Sell</option>
<option value="buystop">Buy Stop</option>
<option value="buylimit">Buy Limit</option>
<option value="sellstop">Sell Stop</option>
<option value="selllimit">Sell Limit</option>
<option value="closelong">Close Long</option>
<option value="closeshort">Close Short</option>
<option value="cancellong">Cancel Long</option>
<option value="cancelshort">Cancel Short</option>
</select><span>The action you would like to make</span></p>
<p><strong><label for="symbol">Symbol</label></strong> <input type="text" id="symbol" name="symbol" required="" /><span>Symbol of the instrument according to your symbol list</span><br /><span2>e.g. EURUSD or US100Cash - based on your MT4/5 symbol list</span2></p>
<p id="poep" hidden=""><strong><label for="pendingOrderEntryPrice">Pending Order Entry</label></strong> <input type="number" min="0" id="pendingOrderEntryPrice" name="pendingOrderEntryPrice" step=".01" value="0" required="" /><span>Pending Order Entry in pips from entry, or price indicated</span><br /><span2>e.g. 8 or 1.22</span2></p>
<p id="risky"><strong><label for="risk">Volume</label></strong> <input type="number" min="0" id="risk" name="risk" step=".01" required="" /><span>Risk based on percentage of account or specified lot</span><br /><span2>e.g. 1 or 10</span2></p>
<p id="stopLossy"><strong><label for="stopLoss">Stop Loss (optional)</label></strong> <input type="number" min="0" id="stopLoss" name="stopLoss" step=".01" /><span>SL in pips from entry, or price indicated</span><br /><span2>e.g. 10 or 1.26</span2></p>
<p id="takeProfity"><strong><label for="takeProfit">Take Profit (optional)</label></strong> <input type="number" min="0" id="takeProfit" name="takeProfit" step=".01" /><span>TP in pips from entry, or price indicated</span><br /><span2>e.g. 30 or 1.25</span2></p>
</div>
</div>
<br />
<div class="row-btn"><button id="btn" class="button" onclick="handleSubmit()">Generate PineConnector Syntax →</button></div>
<div class="sqs-block horizontalrule-block sqs-block-horizontalrule" data-block-type="47" id="block-yui_3_17_2_1_1612273740693_24802">
<div class="sqs-block-content"><hr /></div>
<div class="row-btn">
<p id="title"> </p>
</div>
<div class="row-25">
<div class="col-50"><textarea id="output"> </textarea></div>
<div class="col-25"><button id="copybtn" class="button" onclick="handleCopy()">Copy Generated Syntax →</button></div>
</div>
</div>
<script>// <![CDATA[
// Submit Value
function handleSubmit(event) {
event.preventDefault();
var licenseid = document.getElementById("licenseid").value;
var command = "," + document.getElementById("command").value + ",";
var symbol = document.getElementById("symbol").value;
var risk = ",risk=";
var command_val = document.getElementById("command").value;
var price = ",price=";
var SL_val = document.getElementById("stopLoss").value;
var TP_val = document.getElementById("takeProfit").value;
var SL = ",sl=";
var TP = ",tp=";
if(command_val == "closeshort" || command_val == "closelong" || command_val == "cancelshort" || command_val == "cancellong"){
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol;
};
if(command_val == "buy" || command_val == "sell") {
var risk_val = document.getElementById("risk").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val;
if (TP_val !== "" && SL_val !== "") {
var risk_val = document.getElementById("risk").value;
var TP_val = document.getElementById("takeProfit").value;
var SL_val = document.getElementById("stopLoss").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + SL + SL_val + TP + TP_val;
}
else if (SL_val !== "") {
var risk_val = document.getElementById("risk").value;
var SL_val = document.getElementById("stopLoss").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + SL + SL_val;
}
else if(TP_val !== "") {
var risk_val = document.getElementById("risk").value;
var TP_val = document.getElementById("takeProfit").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + TP + TP_val;
}
};
if(command_val == "buystop" || command_val == "buylimit" || command_val == "sellstop" || command_val == "selllimit" ) {
var risk_val = document.getElementById("risk").value;
var price_val = document.getElementById("pendingOrderEntryPrice").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + price + price_val;
if (TP_val !== "" && SL_val !== "") {
var risk_val = document.getElementById("risk").value;
var TP_val = document.getElementById("takeProfit").value;
var SL_val = document.getElementById("stopLoss").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + price + price_val + SL + SL_val + TP + TP_val;
}
else if (SL_val !== "") {
var risk_val = document.getElementById("risk").value;
var SL_val = document.getElementById("stopLoss").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + price + price_val + SL + SL_val;
}
else if(TP_val !== "") {
var risk_val = document.getElementById("risk").value;
var TP_val = document.getElementById("takeProfit").value;
document.getElementById("title").innerHTML =
"<center><b>Copy generated syntax and add it<br/> to your TradingView script or alert message<br/> </b>";
document.getElementById("output").innerHTML =
licenseid + command + symbol + risk + risk_val + price + price_val + TP + TP_val;
}
};
};
// Copy Paste
function handleCopy() {
var copyText = document.getElementById("output");
copyText.select();
copyText.setSelectionRange(0, 99999);
if(copyText.value == "" || copyText.value == 0) {
document.getElementById("copybtn").innerHTML = "Copy →";
}
else{
navigator.clipboard.writeText(copyText.value);
document.getElementById("copybtn").innerHTML = "Copied!";
}
};
// Command function
function handleCommand() {
var command_val = document.getElementById("command").value;
if(command_val == "buy" || command_val == "sell") {
document.getElementById("poep").style.display = "none";
document.getElementById("risky").style.display = "block";
document.getElementById("stopLossy").style.display = "block";
document.getElementById("takeProfity").style.display = "block";
}
if(command_val == "closelong" || command_val == "closeshort" || command_val == "cancellong" || command_val == "cancelshort") {
document.getElementById("risk").value = 0;
document.getElementById("pendingOrderEntryPrice").value = 0;
document.getElementById("poep").style.display = "none";
document.getElementById("risky").style.display = "none";
document.getElementById("stopLossy").style.display = "none";
document.getElementById("takeProfity").style.display = "none";
}
if(command_val == "buystop" || command_val=="buylimit" || command_val == "sellstop" || command_val == "selllimit")
{
document.getElementById("pendingOrderEntryPrice").value = "";
document.getElementById("poep").style.display = "block";
document.getElementById("risky").style.display = "block";
document.getElementById("stopLossy").style.display = "block";
document.getElementById("takeProfity").style.display = "block";
}
};
// ]]></script>
</form></div>
</div>
On this page