var $externalParameters = [{
ProvidedFreeBy: {
'type': 'string',
defaultValue: "www.fxautomated.com"
}
}, {
AboutAutostop: {
'type': 'string',
defaultValue: "Automatically sets take profit and stop loss."
}
}, {
MonitorTakeProfit: {
'type': 'bool',
defaultValue: true
}
}, {
MonitorStopLoss: {
'type': 'bool',
defaultValue: true
}
}, {
TakeProfit: {
'type': 'double',
defaultValue: 30
}
}, {
StopLoss: {
'type': 'double',
defaultValue: 30
}
}];
var $parameters = {
ProvidedFreeBy: "www.fxautomated.com",
AboutAutostop: "Automatically sets take profit and stop loss.",
MonitorTakeProfit: true,
MonitorStopLoss: true,
TakeProfit: 30,
StopLoss: 30
};
// END Script Parameters
// NOT SUPPORTED
//#property copyright "Copyright � 2012, www.FxAutomated.com"
// NOT SUPPORTED
//#property link "http://w...content-available-to-author-only...d.com"
//extern string ProvidedFreeBy="www.fxautomated.com"
var /*<string>*/ ProvidedFreeBy = $parameters.ProvidedFreeBy;
//extern string AboutAutostop="Automatically sets take profit and stop loss."
var /*<string>*/ AboutAutostop = $parameters.AboutAutostop;
//extern bool MonitorTakeProfit=true
var /*<bool>*/ MonitorTakeProfit = $parameters.MonitorTakeProfit;
//extern bool MonitorStopLoss=true
var /*<bool>*/ MonitorStopLoss = $parameters.MonitorStopLoss;
//extern double TakeProfit=30
var /*<double>*/ TakeProfit = $parameters.TakeProfit;
//extern double StopLoss=30
var /*<double>*/ StopLoss = $parameters.StopLoss;
var /*<int>*/ start = function() {
//int digits=MarketInfo("EURUSD",MODE_DIGITS);
//int digits=MarketInfo("EURUSD",MODE_DIGITS)
var /*<int>*/ digits = MarketInfo("EURUSD", MQL4.MODE_DIGITS);
//if(digits==5){int StopMultd=10;} else{StopMultd=1;}
if (digits === 5) {
//int StopMultd=10;
//int StopMultd=10
var /*<int>*/ StopMultd = 10;
} else {
//StopMultd=1;
StopMultd = 1;
}
//double TP=NormalizeDouble(TakeProfit*StopMultd,Digits);
//double TP=NormalizeDouble(TakeProfit*StopMultd,Digits)
var /*<double>*/ TP = mql4.normalizeDouble(TakeProfit * StopMultd, Digits);
//double SL=NormalizeDouble(StopLoss*StopMultd,Digits);
//double SL=NormalizeDouble(StopLoss*StopMultd,Digits)
var /*<double>*/ SL = mql4.normalizeDouble(StopLoss * StopMultd, Digits);
//double slb=NormalizeDouble(Ask-SL*Point,Digits);
//double slb=NormalizeDouble(Ask-SL*Point,Digits)
var
/*<double>*/ slb
= mql4.
normalizeDouble(Ask
- SL
* Point, Digits
); //double sls=NormalizeDouble(Bid+SL*Point,Digits);
//double sls=NormalizeDouble(Bid+SL*Point,Digits)
var
/*<double>*/ sls
= mql4.
normalizeDouble(Bid
+ SL
* Point, Digits
); //double tpb=NormalizeDouble(Ask+TP*Point,Digits);
//double tpb=NormalizeDouble(Ask+TP*Point,Digits)
var
/*<double>*/ tpb
= mql4.
normalizeDouble(Ask
+ TP
* Point, Digits
); //double tps=NormalizeDouble(Bid-TP*Point,Digits);
//double tps=NormalizeDouble(Bid-TP*Point,Digits)
var
/*<double>*/ tps
= mql4.
normalizeDouble(Bid
- TP
* Point, Digits
); //if(OrdersTotal()>0){
// for(int i=1; i<=OrdersTotal(); i++) // Cycle searching in orders
// {
// if (OrderSelect(i-1,SELECT_BY_POS)==true) // If the next is available
// {
// if(MonitorTakeProfit==true){ // monitor tp
//
// if((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tpb,0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tps,0,CLR_NONE); }
//
// } // monitor tp
//
// if(MonitorStopLoss==true){ // monitor sl
//
// if((OrderType()==OP_BUY)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,slb,OrderTakeProfit(),0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,sls,OrderTakeProfit(),0,CLR_NONE); }
//
// }// monitor sl
//
// }
// }
//}
if (mql4.ordersTotal() > 0) {
//for(int i=1; i<=OrdersTotal(); i++) // Cycle searching in orders
// {
// if (OrderSelect(i-1,SELECT_BY_POS)==true) // If the next is available
// {
// if(MonitorTakeProfit==true){ // monitor tp
//
// if((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tpb,0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tps,0,CLR_NONE); }
//
// } // monitor tp
//
// if(MonitorStopLoss==true){ // monitor sl
//
// if((OrderType()==OP_BUY)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,slb,OrderTakeProfit(),0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,sls,OrderTakeProfit(),0,CLR_NONE); }
//
// }// monitor sl
//
// }
// }
for ( //int i=1
var /*<int>*/ i = 1; i <= mql4.ordersTotal(); i++) {
//if (OrderSelect(i-1,SELECT_BY_POS)==true) // If the next is available
// {
// if(MonitorTakeProfit==true){ // monitor tp
//
// if((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tpb,0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tps,0,CLR_NONE); }
//
// } // monitor tp
//
// if(MonitorStopLoss==true){ // monitor sl
//
// if((OrderType()==OP_BUY)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,slb,OrderTakeProfit(),0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,sls,OrderTakeProfit(),0,CLR_NONE); }
//
// }// monitor sl
//
// }
if (mql4.orderSelect(i - 1, MQL4.SELECT_BY_POS) === true) {
//if(MonitorTakeProfit==true){ // monitor tp
//
// if((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tpb,0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tps,0,CLR_NONE); }
//
// }
if (MonitorTakeProfit === true) {
//if((OrderType()==OP_BUY)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tpb,0,CLR_NONE); }
if ((mql4.orderType() === MQL4.OP_BUY) && (mql4.orderTakeProfit() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
//OrderModify(OrderTicket(),0,OrderStopLoss(),tpb,0,CLR_NONE);
mql4.orderModify(mql4.orderTicket(), 0, mql4.orderStopLoss(), tpb, 0);
}
//if((OrderType()==OP_SELL)&&(OrderTakeProfit()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,OrderStopLoss(),tps,0,CLR_NONE); }
if ((mql4.orderType() === MQL4.OP_SELL) && (mql4.orderTakeProfit() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
//OrderModify(OrderTicket(),0,OrderStopLoss(),tps,0,CLR_NONE);
mql4.orderModify(mql4.orderTicket(), 0, mql4.orderStopLoss(), tps, 0);
}
}
//if(MonitorStopLoss==true){ // monitor sl
//
// if((OrderType()==OP_BUY)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,slb,OrderTakeProfit(),0,CLR_NONE); }
// if((OrderType()==OP_SELL)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,sls,OrderTakeProfit(),0,CLR_NONE); }
//
// }
if (MonitorStopLoss === true) {
//if((OrderType()==OP_BUY)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,slb,OrderTakeProfit(),0,CLR_NONE); }
if ((mql4.orderType() === MQL4.OP_BUY) && (mql4.orderStopLoss() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
//OrderModify(OrderTicket(),0,slb,OrderTakeProfit(),0,CLR_NONE);
mql4.orderModify(mql4.orderTicket(), 0, slb, mql4.orderTakeProfit(), 0);
}
//if((OrderType()==OP_SELL)&&(OrderStopLoss()==0)&&(OrderSymbol()==Symbol())){ OrderModify(OrderTicket(),0,sls,OrderTakeProfit(),0,CLR_NONE); }
if ((mql4.orderType() === MQL4.OP_SELL) && (mql4.orderStopLoss() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
//OrderModify(OrderTicket(),0,sls,OrderTakeProfit(),0,CLR_NONE);
mql4.orderModify(mql4.orderTicket(), 0, sls, mql4.orderTakeProfit(), 0);
}
}
}
}
}
//int Error=GetLastError();
//int Error=GetLastError()
var
/*<int>*/ Error = mql4.
throwNotSupportedFunction('GetLastError'); //if(Error==130){Alert("Wrong stops. Retrying."); RefreshRates();}
//Alert("Wrong stops. Retrying.");
console.log('Mt4 Alert :' + "Wrong stops. Retrying.");
//RefreshRates();
mql4.refreshRates();
}
//if(Error==133){Alert("Trading prohibited.");}
//Alert("Trading prohibited.");
console.log('Mt4 Alert :' + "Trading prohibited.");
}
//if(Error==2){Alert("Common error.");}
//Alert("Common error.");
console.log('Mt4 Alert :' + "Common error.");
}
//if(Error==146){Alert("Trading subsystem is busy. Retrying."); Sleep(500); RefreshRates();}
//Alert("Trading subsystem is busy. Retrying.");
console.log('Mt4 Alert :' + "Trading subsystem is busy. Retrying.");
//Sleep(500);
/* Deprecated */
getRuntime().sleep(500);
//RefreshRates();
mql4.refreshRates();
}
//return(0);
return 0;
}
dmFyICRleHRlcm5hbFBhcmFtZXRlcnMgPSBbewogICAgUHJvdmlkZWRGcmVlQnk6IHsKICAgICAgICAndHlwZSc6ICdzdHJpbmcnLAogICAgICAgIGRlZmF1bHRWYWx1ZTogInd3dy5meGF1dG9tYXRlZC5jb20iCiAgICB9Cn0sIHsKICAgIEFib3V0QXV0b3N0b3A6IHsKICAgICAgICAndHlwZSc6ICdzdHJpbmcnLAogICAgICAgIGRlZmF1bHRWYWx1ZTogIkF1dG9tYXRpY2FsbHkgc2V0cyB0YWtlIHByb2ZpdCBhbmQgc3RvcCBsb3NzLiIKICAgIH0KfSwgewogICAgTW9uaXRvclRha2VQcm9maXQ6IHsKICAgICAgICAndHlwZSc6ICdib29sJywKICAgICAgICBkZWZhdWx0VmFsdWU6IHRydWUKICAgIH0KfSwgewogICAgTW9uaXRvclN0b3BMb3NzOiB7CiAgICAgICAgJ3R5cGUnOiAnYm9vbCcsCiAgICAgICAgZGVmYXVsdFZhbHVlOiB0cnVlCiAgICB9Cn0sIHsKICAgIFRha2VQcm9maXQ6IHsKICAgICAgICAndHlwZSc6ICdkb3VibGUnLAogICAgICAgIGRlZmF1bHRWYWx1ZTogMzAKICAgIH0KfSwgewogICAgU3RvcExvc3M6IHsKICAgICAgICAndHlwZSc6ICdkb3VibGUnLAogICAgICAgIGRlZmF1bHRWYWx1ZTogMzAKICAgIH0KfV07CnZhciAkcGFyYW1ldGVycyA9IHsKICAgIFByb3ZpZGVkRnJlZUJ5OiAid3d3LmZ4YXV0b21hdGVkLmNvbSIsCiAgICBBYm91dEF1dG9zdG9wOiAiQXV0b21hdGljYWxseSBzZXRzIHRha2UgcHJvZml0IGFuZCBzdG9wIGxvc3MuIiwKICAgIE1vbml0b3JUYWtlUHJvZml0OiB0cnVlLAogICAgTW9uaXRvclN0b3BMb3NzOiB0cnVlLAogICAgVGFrZVByb2ZpdDogMzAsCiAgICBTdG9wTG9zczogMzAKfTsKLy8gRU5EIFNjcmlwdCBQYXJhbWV0ZXJzIAoKLy8gTk9UIFNVUFBPUlRFRAovLyNwcm9wZXJ0eSBjb3B5cmlnaHQgIkNvcHlyaWdodCDvv70gMjAxMiwgd3d3LkZ4QXV0b21hdGVkLmNvbSIKCi8vIE5PVCBTVVBQT1JURUQKLy8jcHJvcGVydHkgbGluayAgICAgICJodHRwOi8vdy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZC5jb20iCgovL2V4dGVybiBzdHJpbmcgICAgUHJvdmlkZWRGcmVlQnk9Ind3dy5meGF1dG9tYXRlZC5jb20iCnZhciAvKjxzdHJpbmc+Ki8gUHJvdmlkZWRGcmVlQnkgPSAkcGFyYW1ldGVycy5Qcm92aWRlZEZyZWVCeTsKLy9leHRlcm4gc3RyaW5nICAgIEFib3V0QXV0b3N0b3A9IkF1dG9tYXRpY2FsbHkgc2V0cyB0YWtlIHByb2ZpdCBhbmQgc3RvcCBsb3NzLiIKdmFyIC8qPHN0cmluZz4qLyBBYm91dEF1dG9zdG9wID0gJHBhcmFtZXRlcnMuQWJvdXRBdXRvc3RvcDsKLy9leHRlcm4gYm9vbCAgICAgIE1vbml0b3JUYWtlUHJvZml0PXRydWUKdmFyIC8qPGJvb2w+Ki8gTW9uaXRvclRha2VQcm9maXQgPSAkcGFyYW1ldGVycy5Nb25pdG9yVGFrZVByb2ZpdDsKLy9leHRlcm4gYm9vbCAgICAgIE1vbml0b3JTdG9wTG9zcz10cnVlCnZhciAvKjxib29sPiovIE1vbml0b3JTdG9wTG9zcyA9ICRwYXJhbWV0ZXJzLk1vbml0b3JTdG9wTG9zczsKLy9leHRlcm4gZG91YmxlICAgIFRha2VQcm9maXQ9MzAKdmFyIC8qPGRvdWJsZT4qLyBUYWtlUHJvZml0ID0gJHBhcmFtZXRlcnMuVGFrZVByb2ZpdDsKLy9leHRlcm4gZG91YmxlICAgIFN0b3BMb3NzPTMwCnZhciAvKjxkb3VibGU+Ki8gU3RvcExvc3MgPSAkcGFyYW1ldGVycy5TdG9wTG9zczsKdmFyIC8qPGludD4qLyBzdGFydCA9IGZ1bmN0aW9uKCkgewogICAgLy9pbnQgZGlnaXRzPU1hcmtldEluZm8oIkVVUlVTRCIsTU9ERV9ESUdJVFMpOwogICAgLy9pbnQgZGlnaXRzPU1hcmtldEluZm8oIkVVUlVTRCIsTU9ERV9ESUdJVFMpCiAgICB2YXIgLyo8aW50PiovIGRpZ2l0cyA9IE1hcmtldEluZm8oIkVVUlVTRCIsIE1RTDQuTU9ERV9ESUdJVFMpOwogICAgLy9pZihkaWdpdHM9PTUpe2ludCBTdG9wTXVsdGQ9MTA7fSBlbHNle1N0b3BNdWx0ZD0xO30KICAgIGlmIChkaWdpdHMgPT09IDUpIHsKICAgICAgICAvL2ludCBTdG9wTXVsdGQ9MTA7CiAgICAgICAgLy9pbnQgU3RvcE11bHRkPTEwCiAgICAgICAgdmFyIC8qPGludD4qLyBTdG9wTXVsdGQgPSAxMDsKICAgIH0gZWxzZSB7CiAgICAgICAgLy9TdG9wTXVsdGQ9MTsKICAgICAgICBTdG9wTXVsdGQgPSAxOwogICAgfQogICAgLy9kb3VibGUgVFA9Tm9ybWFsaXplRG91YmxlKFRha2VQcm9maXQqU3RvcE11bHRkLERpZ2l0cyk7CiAgICAvL2RvdWJsZSBUUD1Ob3JtYWxpemVEb3VibGUoVGFrZVByb2ZpdCpTdG9wTXVsdGQsRGlnaXRzKQogICAgdmFyIC8qPGRvdWJsZT4qLyBUUCA9IG1xbDQubm9ybWFsaXplRG91YmxlKFRha2VQcm9maXQgKiBTdG9wTXVsdGQsIERpZ2l0cyk7CiAgICAvL2RvdWJsZSBTTD1Ob3JtYWxpemVEb3VibGUoU3RvcExvc3MqU3RvcE11bHRkLERpZ2l0cyk7CiAgICAvL2RvdWJsZSBTTD1Ob3JtYWxpemVEb3VibGUoU3RvcExvc3MqU3RvcE11bHRkLERpZ2l0cykKICAgIHZhciAvKjxkb3VibGU+Ki8gU0wgPSBtcWw0Lm5vcm1hbGl6ZURvdWJsZShTdG9wTG9zcyAqIFN0b3BNdWx0ZCwgRGlnaXRzKTsKICAgIC8vZG91YmxlIHNsYj1Ob3JtYWxpemVEb3VibGUoQXNrLVNMKlBvaW50LERpZ2l0cyk7CiAgICAvL2RvdWJsZSBzbGI9Tm9ybWFsaXplRG91YmxlKEFzay1TTCpQb2ludCxEaWdpdHMpCiAgICB2YXIgLyo8ZG91YmxlPiovIHNsYiA9IG1xbDQubm9ybWFsaXplRG91YmxlKEFzayAtIFNMICogUG9pbnQsIERpZ2l0cyk7CiAgICAvL2RvdWJsZSBzbHM9Tm9ybWFsaXplRG91YmxlKEJpZCtTTCpQb2ludCxEaWdpdHMpOwogICAgLy9kb3VibGUgc2xzPU5vcm1hbGl6ZURvdWJsZShCaWQrU0wqUG9pbnQsRGlnaXRzKQogICAgdmFyIC8qPGRvdWJsZT4qLyBzbHMgPSBtcWw0Lm5vcm1hbGl6ZURvdWJsZShCaWQgKyBTTCAqIFBvaW50LCBEaWdpdHMpOwogICAgLy9kb3VibGUgdHBiPU5vcm1hbGl6ZURvdWJsZShBc2srVFAqUG9pbnQsRGlnaXRzKTsKICAgIC8vZG91YmxlIHRwYj1Ob3JtYWxpemVEb3VibGUoQXNrK1RQKlBvaW50LERpZ2l0cykKICAgIHZhciAvKjxkb3VibGU+Ki8gdHBiID0gbXFsNC5ub3JtYWxpemVEb3VibGUoQXNrICsgVFAgKiBQb2ludCwgRGlnaXRzKTsKICAgIC8vZG91YmxlIHRwcz1Ob3JtYWxpemVEb3VibGUoQmlkLVRQKlBvaW50LERpZ2l0cyk7CiAgICAvL2RvdWJsZSB0cHM9Tm9ybWFsaXplRG91YmxlKEJpZC1UUCpQb2ludCxEaWdpdHMpCiAgICB2YXIgLyo8ZG91YmxlPiovIHRwcyA9IG1xbDQubm9ybWFsaXplRG91YmxlKEJpZCAtIFRQICogUG9pbnQsIERpZ2l0cyk7CiAgICAvL2lmKE9yZGVyc1RvdGFsKCk+MCl7CiAgICAvLyAgZm9yKGludCBpPTE7IGk8PU9yZGVyc1RvdGFsKCk7IGkrKykgICAgICAgICAgLy8gQ3ljbGUgc2VhcmNoaW5nIGluIG9yZGVycwogICAgLy8gICAgIHsKICAgIC8vICAgICAgaWYgKE9yZGVyU2VsZWN0KGktMSxTRUxFQ1RfQllfUE9TKT09dHJ1ZSkgLy8gSWYgdGhlIG5leHQgaXMgYXZhaWxhYmxlCiAgICAvLyAgICAgICAgewogICAgLy8gICAgICAgICAgaWYoTW9uaXRvclRha2VQcm9maXQ9PXRydWUpeyAvLyBtb25pdG9yIHRwCiAgICAvLwogICAgLy8gICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9CVVkpJiYoT3JkZXJUYWtlUHJvZml0KCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cGIsMCxDTFJfTk9ORSk7IH0KICAgIC8vICAgICAgICAgICAgICAgIGlmKChPcmRlclR5cGUoKT09T1BfU0VMTCkmJihPcmRlclRha2VQcm9maXQoKT09MCkmJihPcmRlclN5bWJvbCgpPT1TeW1ib2woKSkpeyBPcmRlck1vZGlmeShPcmRlclRpY2tldCgpLDAsT3JkZXJTdG9wTG9zcygpLHRwcywwLENMUl9OT05FKTsgfQogICAgLy8KICAgIC8vICAgICAgICAgIH0gLy8gbW9uaXRvciB0cAogICAgLy8gICAgICAgICAgCiAgICAvLyAgICAgICAgICBpZihNb25pdG9yU3RvcExvc3M9PXRydWUpeyAvLyBtb25pdG9yIHNsCiAgICAvLwogICAgLy8gICAgICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9CVVkpJiYoT3JkZXJTdG9wTG9zcygpPT0wKSYmKE9yZGVyU3ltYm9sKCk9PVN5bWJvbCgpKSl7IE9yZGVyTW9kaWZ5KE9yZGVyVGlja2V0KCksMCxzbGIsT3JkZXJUYWtlUHJvZml0KCksMCxDTFJfTk9ORSk7IH0KICAgIC8vICAgICAgICAgICAgICAgICAgIGlmKChPcmRlclR5cGUoKT09T1BfU0VMTCkmJihPcmRlclN0b3BMb3NzKCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLHNscyxPcmRlclRha2VQcm9maXQoKSwwLENMUl9OT05FKTsgfQogICAgLy8KICAgIC8vICAgICAgICAgIH0vLyBtb25pdG9yIHNsCiAgICAvLyAgICAgICAgICAKICAgIC8vICAgICAgICB9CiAgICAvLyAgICAgfQogICAgLy99CiAgICBpZiAobXFsNC5vcmRlcnNUb3RhbCgpID4gMCkgewogICAgICAgIC8vZm9yKGludCBpPTE7IGk8PU9yZGVyc1RvdGFsKCk7IGkrKykgICAgICAgICAgLy8gQ3ljbGUgc2VhcmNoaW5nIGluIG9yZGVycwogICAgICAgIC8vICAgICB7CiAgICAgICAgLy8gICAgICBpZiAoT3JkZXJTZWxlY3QoaS0xLFNFTEVDVF9CWV9QT1MpPT10cnVlKSAvLyBJZiB0aGUgbmV4dCBpcyBhdmFpbGFibGUKICAgICAgICAvLyAgICAgICAgewogICAgICAgIC8vICAgICAgICAgIGlmKE1vbml0b3JUYWtlUHJvZml0PT10cnVlKXsgLy8gbW9uaXRvciB0cAogICAgICAgIC8vCiAgICAgICAgLy8gICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9CVVkpJiYoT3JkZXJUYWtlUHJvZml0KCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cGIsMCxDTFJfTk9ORSk7IH0KICAgICAgICAvLyAgICAgICAgICAgICAgICBpZigoT3JkZXJUeXBlKCk9PU9QX1NFTEwpJiYoT3JkZXJUYWtlUHJvZml0KCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cHMsMCxDTFJfTk9ORSk7IH0KICAgICAgICAvLwogICAgICAgIC8vICAgICAgICAgIH0gLy8gbW9uaXRvciB0cAogICAgICAgIC8vICAgICAgICAgIAogICAgICAgIC8vICAgICAgICAgIGlmKE1vbml0b3JTdG9wTG9zcz09dHJ1ZSl7IC8vIG1vbml0b3Igc2wKICAgICAgICAvLwogICAgICAgIC8vICAgICAgICAgICAgICAgICAgIGlmKChPcmRlclR5cGUoKT09T1BfQlVZKSYmKE9yZGVyU3RvcExvc3MoKT09MCkmJihPcmRlclN5bWJvbCgpPT1TeW1ib2woKSkpeyBPcmRlck1vZGlmeShPcmRlclRpY2tldCgpLDAsc2xiLE9yZGVyVGFrZVByb2ZpdCgpLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9TRUxMKSYmKE9yZGVyU3RvcExvc3MoKT09MCkmJihPcmRlclN5bWJvbCgpPT1TeW1ib2woKSkpeyBPcmRlck1vZGlmeShPcmRlclRpY2tldCgpLDAsc2xzLE9yZGVyVGFrZVByb2ZpdCgpLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgLy8KICAgICAgICAvLyAgICAgICAgICB9Ly8gbW9uaXRvciBzbAogICAgICAgIC8vICAgICAgICAgIAogICAgICAgIC8vICAgICAgICB9CiAgICAgICAgLy8gICAgIH0KICAgICAgICBmb3IgKCAvL2ludCBpPTEKICAgICAgICAgICAgdmFyIC8qPGludD4qLyBpID0gMTsgaSA8PSBtcWw0Lm9yZGVyc1RvdGFsKCk7IGkrKykgewogICAgICAgICAgICAvL2lmIChPcmRlclNlbGVjdChpLTEsU0VMRUNUX0JZX1BPUyk9PXRydWUpIC8vIElmIHRoZSBuZXh0IGlzIGF2YWlsYWJsZQogICAgICAgICAgICAvLyAgICAgICAgewogICAgICAgICAgICAvLyAgICAgICAgICBpZihNb25pdG9yVGFrZVByb2ZpdD09dHJ1ZSl7IC8vIG1vbml0b3IgdHAKICAgICAgICAgICAgLy8KICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9CVVkpJiYoT3JkZXJUYWtlUHJvZml0KCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cGIsMCxDTFJfTk9ORSk7IH0KICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9TRUxMKSYmKE9yZGVyVGFrZVByb2ZpdCgpPT0wKSYmKE9yZGVyU3ltYm9sKCk9PVN5bWJvbCgpKSl7IE9yZGVyTW9kaWZ5KE9yZGVyVGlja2V0KCksMCxPcmRlclN0b3BMb3NzKCksdHBzLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgICAgIC8vCiAgICAgICAgICAgIC8vICAgICAgICAgIH0gLy8gbW9uaXRvciB0cAogICAgICAgICAgICAvLyAgICAgICAgICAKICAgICAgICAgICAgLy8gICAgICAgICAgaWYoTW9uaXRvclN0b3BMb3NzPT10cnVlKXsgLy8gbW9uaXRvciBzbAogICAgICAgICAgICAvLwogICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICBpZigoT3JkZXJUeXBlKCk9PU9QX0JVWSkmJihPcmRlclN0b3BMb3NzKCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLHNsYixPcmRlclRha2VQcm9maXQoKSwwLENMUl9OT05FKTsgfQogICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICBpZigoT3JkZXJUeXBlKCk9PU9QX1NFTEwpJiYoT3JkZXJTdG9wTG9zcygpPT0wKSYmKE9yZGVyU3ltYm9sKCk9PVN5bWJvbCgpKSl7IE9yZGVyTW9kaWZ5KE9yZGVyVGlja2V0KCksMCxzbHMsT3JkZXJUYWtlUHJvZml0KCksMCxDTFJfTk9ORSk7IH0KICAgICAgICAgICAgLy8KICAgICAgICAgICAgLy8gICAgICAgICAgfS8vIG1vbml0b3Igc2wKICAgICAgICAgICAgLy8gICAgICAgICAgCiAgICAgICAgICAgIC8vICAgICAgICB9CiAgICAgICAgICAgIGlmIChtcWw0Lm9yZGVyU2VsZWN0KGkgLSAxLCBNUUw0LlNFTEVDVF9CWV9QT1MpID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAvL2lmKE1vbml0b3JUYWtlUHJvZml0PT10cnVlKXsgLy8gbW9uaXRvciB0cAogICAgICAgICAgICAgICAgLy8KICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgICAgIGlmKChPcmRlclR5cGUoKT09T1BfQlVZKSYmKE9yZGVyVGFrZVByb2ZpdCgpPT0wKSYmKE9yZGVyU3ltYm9sKCk9PVN5bWJvbCgpKSl7IE9yZGVyTW9kaWZ5KE9yZGVyVGlja2V0KCksMCxPcmRlclN0b3BMb3NzKCksdHBiLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICBpZigoT3JkZXJUeXBlKCk9PU9QX1NFTEwpJiYoT3JkZXJUYWtlUHJvZml0KCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cHMsMCxDTFJfTk9ORSk7IH0KICAgICAgICAgICAgICAgIC8vCiAgICAgICAgICAgICAgICAvLyAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoTW9uaXRvclRha2VQcm9maXQgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAvL2lmKChPcmRlclR5cGUoKT09T1BfQlVZKSYmKE9yZGVyVGFrZVByb2ZpdCgpPT0wKSYmKE9yZGVyU3ltYm9sKCk9PVN5bWJvbCgpKSl7IE9yZGVyTW9kaWZ5KE9yZGVyVGlja2V0KCksMCxPcmRlclN0b3BMb3NzKCksdHBiLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgICAgICAgICAgICAgaWYgKChtcWw0Lm9yZGVyVHlwZSgpID09PSBNUUw0Lk9QX0JVWSkgJiYgKG1xbDQub3JkZXJUYWtlUHJvZml0KCkgPT09IDApICYmIChtcWw0Lm9yZGVyU3ltYm9sKCkgPT09IG1xbDQudGhyb3dOb3RTdXBwb3J0ZWRGdW5jdGlvbignU3ltYm9sJykpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cGIsMCxDTFJfTk9ORSk7CiAgICAgICAgICAgICAgICAgICAgICAgIG1xbDQub3JkZXJNb2RpZnkobXFsNC5vcmRlclRpY2tldCgpLCAwLCBtcWw0Lm9yZGVyU3RvcExvc3MoKSwgdHBiLCAwKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgLy9pZigoT3JkZXJUeXBlKCk9PU9QX1NFTEwpJiYoT3JkZXJUYWtlUHJvZml0KCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cHMsMCxDTFJfTk9ORSk7IH0KICAgICAgICAgICAgICAgICAgICBpZiAoKG1xbDQub3JkZXJUeXBlKCkgPT09IE1RTDQuT1BfU0VMTCkgJiYgKG1xbDQub3JkZXJUYWtlUHJvZml0KCkgPT09IDApICYmIChtcWw0Lm9yZGVyU3ltYm9sKCkgPT09IG1xbDQudGhyb3dOb3RTdXBwb3J0ZWRGdW5jdGlvbignU3ltYm9sJykpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLE9yZGVyU3RvcExvc3MoKSx0cHMsMCxDTFJfTk9ORSk7CiAgICAgICAgICAgICAgICAgICAgICAgIG1xbDQub3JkZXJNb2RpZnkobXFsNC5vcmRlclRpY2tldCgpLCAwLCBtcWw0Lm9yZGVyU3RvcExvc3MoKSwgdHBzLCAwKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAvL2lmKE1vbml0b3JTdG9wTG9zcz09dHJ1ZSl7IC8vIG1vbml0b3Igc2wKICAgICAgICAgICAgICAgIC8vCiAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICAgICAgICBpZigoT3JkZXJUeXBlKCk9PU9QX0JVWSkmJihPcmRlclN0b3BMb3NzKCk9PTApJiYoT3JkZXJTeW1ib2woKT09U3ltYm9sKCkpKXsgT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLHNsYixPcmRlclRha2VQcm9maXQoKSwwLENMUl9OT05FKTsgfQogICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgICAgICAgaWYoKE9yZGVyVHlwZSgpPT1PUF9TRUxMKSYmKE9yZGVyU3RvcExvc3MoKT09MCkmJihPcmRlclN5bWJvbCgpPT1TeW1ib2woKSkpeyBPcmRlck1vZGlmeShPcmRlclRpY2tldCgpLDAsc2xzLE9yZGVyVGFrZVByb2ZpdCgpLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgICAgICAgICAvLwogICAgICAgICAgICAgICAgLy8gICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKE1vbml0b3JTdG9wTG9zcyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgIC8vaWYoKE9yZGVyVHlwZSgpPT1PUF9CVVkpJiYoT3JkZXJTdG9wTG9zcygpPT0wKSYmKE9yZGVyU3ltYm9sKCk9PVN5bWJvbCgpKSl7IE9yZGVyTW9kaWZ5KE9yZGVyVGlja2V0KCksMCxzbGIsT3JkZXJUYWtlUHJvZml0KCksMCxDTFJfTk9ORSk7IH0KICAgICAgICAgICAgICAgICAgICBpZiAoKG1xbDQub3JkZXJUeXBlKCkgPT09IE1RTDQuT1BfQlVZKSAmJiAobXFsNC5vcmRlclN0b3BMb3NzKCkgPT09IDApICYmIChtcWw0Lm9yZGVyU3ltYm9sKCkgPT09IG1xbDQudGhyb3dOb3RTdXBwb3J0ZWRGdW5jdGlvbignU3ltYm9sJykpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vT3JkZXJNb2RpZnkoT3JkZXJUaWNrZXQoKSwwLHNsYixPcmRlclRha2VQcm9maXQoKSwwLENMUl9OT05FKTsKICAgICAgICAgICAgICAgICAgICAgICAgbXFsNC5vcmRlck1vZGlmeShtcWw0Lm9yZGVyVGlja2V0KCksIDAsIHNsYiwgbXFsNC5vcmRlclRha2VQcm9maXQoKSwgMCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIC8vaWYoKE9yZGVyVHlwZSgpPT1PUF9TRUxMKSYmKE9yZGVyU3RvcExvc3MoKT09MCkmJihPcmRlclN5bWJvbCgpPT1TeW1ib2woKSkpeyBPcmRlck1vZGlmeShPcmRlclRpY2tldCgpLDAsc2xzLE9yZGVyVGFrZVByb2ZpdCgpLDAsQ0xSX05PTkUpOyB9CiAgICAgICAgICAgICAgICAgICAgaWYgKChtcWw0Lm9yZGVyVHlwZSgpID09PSBNUUw0Lk9QX1NFTEwpICYmIChtcWw0Lm9yZGVyU3RvcExvc3MoKSA9PT0gMCkgJiYgKG1xbDQub3JkZXJTeW1ib2woKSA9PT0gbXFsNC50aHJvd05vdFN1cHBvcnRlZEZ1bmN0aW9uKCdTeW1ib2wnKSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy9PcmRlck1vZGlmeShPcmRlclRpY2tldCgpLDAsc2xzLE9yZGVyVGFrZVByb2ZpdCgpLDAsQ0xSX05PTkUpOwogICAgICAgICAgICAgICAgICAgICAgICBtcWw0Lm9yZGVyTW9kaWZ5KG1xbDQub3JkZXJUaWNrZXQoKSwgMCwgc2xzLCBtcWw0Lm9yZGVyVGFrZVByb2ZpdCgpLCAwKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICAvL2ludCBFcnJvcj1HZXRMYXN0RXJyb3IoKTsKICAgIC8vaW50IEVycm9yPUdldExhc3RFcnJvcigpCiAgICB2YXIgLyo8aW50PiovIEVycm9yID0gbXFsNC50aHJvd05vdFN1cHBvcnRlZEZ1bmN0aW9uKCdHZXRMYXN0RXJyb3InKTsKICAgIC8vaWYoRXJyb3I9PTEzMCl7QWxlcnQoIldyb25nIHN0b3BzLiBSZXRyeWluZy4iKTsgUmVmcmVzaFJhdGVzKCk7fQogICAgaWYgKEVycm9yID09PSAxMzApIHsKICAgICAgICAvL0FsZXJ0KCJXcm9uZyBzdG9wcy4gUmV0cnlpbmcuIik7CiAgICAgICAgY29uc29sZS5sb2coJ010NCBBbGVydCA6JyArICJXcm9uZyBzdG9wcy4gUmV0cnlpbmcuIik7CiAgICAgICAgLy9SZWZyZXNoUmF0ZXMoKTsKICAgICAgICBtcWw0LnJlZnJlc2hSYXRlcygpOwogICAgfQogICAgLy9pZihFcnJvcj09MTMzKXtBbGVydCgiVHJhZGluZyBwcm9oaWJpdGVkLiIpO30KICAgIGlmIChFcnJvciA9PT0gMTMzKSB7CiAgICAgICAgLy9BbGVydCgiVHJhZGluZyBwcm9oaWJpdGVkLiIpOwogICAgICAgIGNvbnNvbGUubG9nKCdNdDQgQWxlcnQgOicgKyAiVHJhZGluZyBwcm9oaWJpdGVkLiIpOwogICAgfQogICAgLy9pZihFcnJvcj09Mil7QWxlcnQoIkNvbW1vbiBlcnJvci4iKTt9CiAgICBpZiAoRXJyb3IgPT09IDIpIHsKICAgICAgICAvL0FsZXJ0KCJDb21tb24gZXJyb3IuIik7CiAgICAgICAgY29uc29sZS5sb2coJ010NCBBbGVydCA6JyArICJDb21tb24gZXJyb3IuIik7CiAgICB9CiAgICAvL2lmKEVycm9yPT0xNDYpe0FsZXJ0KCJUcmFkaW5nIHN1YnN5c3RlbSBpcyBidXN5LiBSZXRyeWluZy4iKTsgU2xlZXAoNTAwKTsgUmVmcmVzaFJhdGVzKCk7fQogICAgaWYgKEVycm9yID09PSAxNDYpIHsKICAgICAgICAvL0FsZXJ0KCJUcmFkaW5nIHN1YnN5c3RlbSBpcyBidXN5LiBSZXRyeWluZy4iKTsKICAgICAgICBjb25zb2xlLmxvZygnTXQ0IEFsZXJ0IDonICsgIlRyYWRpbmcgc3Vic3lzdGVtIGlzIGJ1c3kuIFJldHJ5aW5nLiIpOwogICAgICAgIC8vU2xlZXAoNTAwKTsKICAgICAgICAvKiBEZXByZWNhdGVkICovCiAgICAgICAgZ2V0UnVudGltZSgpLnNsZWVwKDUwMCk7CiAgICAgICAgLy9SZWZyZXNoUmF0ZXMoKTsKICAgICAgICBtcWw0LnJlZnJlc2hSYXRlcygpOwogICAgfQogICAgLy9yZXR1cm4oMCk7CiAgICByZXR1cm4gMDsKfQ==
Main.java:1: error: class, interface, or enum expected
var $externalParameters = [{
^
Main.java:3: error: unclosed character literal
'type': 'string',
^
Main.java:3: error: unclosed character literal
'type': 'string',
^
Main.java:3: error: unclosed character literal
'type': 'string',
^
Main.java:3: error: unclosed character literal
'type': 'string',
^
Main.java:8: error: unclosed character literal
'type': 'string',
^
Main.java:8: error: unclosed character literal
'type': 'string',
^
Main.java:8: error: unclosed character literal
'type': 'string',
^
Main.java:8: error: unclosed character literal
'type': 'string',
^
Main.java:13: error: unclosed character literal
'type': 'bool',
^
Main.java:13: error: unclosed character literal
'type': 'bool',
^
Main.java:13: error: unclosed character literal
'type': 'bool',
^
Main.java:13: error: unclosed character literal
'type': 'bool',
^
Main.java:18: error: unclosed character literal
'type': 'bool',
^
Main.java:18: error: unclosed character literal
'type': 'bool',
^
Main.java:18: error: unclosed character literal
'type': 'bool',
^
Main.java:18: error: unclosed character literal
'type': 'bool',
^
Main.java:23: error: unclosed character literal
'type': 'double',
^
Main.java:23: error: unclosed character literal
'type': 'double',
^
Main.java:23: error: unclosed character literal
'type': 'double',
^
Main.java:23: error: unclosed character literal
'type': 'double',
^
Main.java:28: error: unclosed character literal
'type': 'double',
^
Main.java:28: error: unclosed character literal
'type': 'double',
^
Main.java:28: error: unclosed character literal
'type': 'double',
^
Main.java:28: error: unclosed character literal
'type': 'double',
^
Main.java:32: error: class, interface, or enum expected
var $parameters = {
^
Main.java:49: error: class, interface, or enum expected
var /*<string>*/ ProvidedFreeBy = $parameters.ProvidedFreeBy;
^
Main.java:51: error: class, interface, or enum expected
var /*<string>*/ AboutAutostop = $parameters.AboutAutostop;
^
Main.java:53: error: class, interface, or enum expected
var /*<bool>*/ MonitorTakeProfit = $parameters.MonitorTakeProfit;
^
Main.java:55: error: class, interface, or enum expected
var /*<bool>*/ MonitorStopLoss = $parameters.MonitorStopLoss;
^
Main.java:57: error: class, interface, or enum expected
var /*<double>*/ TakeProfit = $parameters.TakeProfit;
^
Main.java:59: error: class, interface, or enum expected
var /*<double>*/ StopLoss = $parameters.StopLoss;
^
Main.java:60: error: class, interface, or enum expected
var /*<int>*/ start = function() {
^
Main.java:65: error: class, interface, or enum expected
if (digits === 5) {
^
Main.java:69: error: class, interface, or enum expected
} else {
^
Main.java:72: error: class, interface, or enum expected
}
^
Main.java:78: error: class, interface, or enum expected
var /*<double>*/ SL = mql4.normalizeDouble(StopLoss * StopMultd, Digits);
^
Main.java:81: error: class, interface, or enum expected
var /*<double>*/ slb = mql4.normalizeDouble(Ask - SL * Point, Digits);
^
Main.java:84: error: class, interface, or enum expected
var /*<double>*/ sls = mql4.normalizeDouble(Bid + SL * Point, Digits);
^
Main.java:87: error: class, interface, or enum expected
var /*<double>*/ tpb = mql4.normalizeDouble(Ask + TP * Point, Digits);
^
Main.java:90: error: class, interface, or enum expected
var /*<double>*/ tps = mql4.normalizeDouble(Bid - TP * Point, Digits);
^
Main.java:113: error: class, interface, or enum expected
if (mql4.ordersTotal() > 0) {
^
Main.java:135: error: class, interface, or enum expected
var /*<int>*/ i = 1; i <= mql4.ordersTotal(); i++) {
^
Main.java:135: error: class, interface, or enum expected
var /*<int>*/ i = 1; i <= mql4.ordersTotal(); i++) {
^
Main.java:162: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_BUY) && (mql4.orderTakeProfit() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:162: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_BUY) && (mql4.orderTakeProfit() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:165: error: class, interface, or enum expected
}
^
Main.java:167: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_SELL) && (mql4.orderTakeProfit() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:167: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_SELL) && (mql4.orderTakeProfit() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:170: error: class, interface, or enum expected
}
^
Main.java:180: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_BUY) && (mql4.orderStopLoss() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:180: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_BUY) && (mql4.orderStopLoss() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:183: error: class, interface, or enum expected
}
^
Main.java:185: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_SELL) && (mql4.orderStopLoss() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:185: error: unclosed character literal
if ((mql4.orderType() === MQL4.OP_SELL) && (mql4.orderStopLoss() === 0) && (mql4.orderSymbol() === mql4.throwNotSupportedFunction('Symbol'))) {
^
Main.java:188: error: class, interface, or enum expected
}
^
Main.java:195: error: unclosed character literal
var /*<int>*/ Error = mql4.throwNotSupportedFunction('GetLastError');
^
Main.java:195: error: unclosed character literal
var /*<int>*/ Error = mql4.throwNotSupportedFunction('GetLastError');
^
Main.java:197: error: class, interface, or enum expected
if (Error === 130) {
^
Main.java:199: error: unclosed character literal
console.log('Mt4 Alert :' + "Wrong stops. Retrying.");
^
Main.java:199: error: unclosed character literal
console.log('Mt4 Alert :' + "Wrong stops. Retrying.");
^
Main.java:201: error: class, interface, or enum expected
mql4.refreshRates();
^
Main.java:202: error: class, interface, or enum expected
}
^
Main.java:206: error: unclosed character literal
console.log('Mt4 Alert :' + "Trading prohibited.");
^
Main.java:206: error: unclosed character literal
console.log('Mt4 Alert :' + "Trading prohibited.");
^
Main.java:207: error: class, interface, or enum expected
}
^
Main.java:211: error: unclosed character literal
console.log('Mt4 Alert :' + "Common error.");
^
Main.java:211: error: unclosed character literal
console.log('Mt4 Alert :' + "Common error.");
^
Main.java:212: error: class, interface, or enum expected
}
^
Main.java:216: error: unclosed character literal
console.log('Mt4 Alert :' + "Trading subsystem is busy. Retrying.");
^
Main.java:216: error: unclosed character literal
console.log('Mt4 Alert :' + "Trading subsystem is busy. Retrying.");
^
Main.java:219: error: class, interface, or enum expected
getRuntime().sleep(500);
^
Main.java:221: error: class, interface, or enum expected
mql4.refreshRates();
^
Main.java:222: error: class, interface, or enum expected
}
^
Main.java:225: error: class, interface, or enum expected
}
^
75 errors