O compilador expressou algo em inglês para mim. Parêntesis algo não é um programa, o programa em geral está errado com este parêntesis e o parêntesis está desequilibrado. Mas há parênteses. Poderia dizer-me onde devo procurar um erro?
'}' - Erro no final do programa Redo.mq5 3562 1 {' - Parênteses desequilibrados Redo.mq5 3330 1
Bem, já o terminei acima. Deixe-me repetir: a "nova" citação para o Expert Advisor é uma citação que chega logo após a conclusão da próxima função OnTick(), mesmo que esta citação não seja a "primeira citação numa barra". A condição de uma nova barra a chegar só será verificada após o Expert Advisor terminar o processamento dessa barra "anterior".
só será verificado após o Expert Advisor terminar o processamento da cotação que veio na barra "anterior". ...Se a função OnTick() for executada durante 90 segundos e iniciada às 00.00.00, a "condição para um novo tick no M1 será executada pelo menos uma vez, nomeadamente após 00.01.30
O compilador expressou algo em inglês para mim. Parêntesis algo não é o programa, o programa em geral está errado com este parêntesis e o parêntesis desequilibrado. Mas há parênteses. Por favor, diga-me, onde procurar por um erro?
'}' - fim inesperado do programa Redo.mq5 3562 1 {' - parênteses desequilibrados Remake.mq5 3330 1
Talvez faltem aparelhos para escrever o código (independentemente do que o compilador diz)?
Desculpe, a mesma pergunta. Diz '{' - algum operador esperava parênteses.mq5 612 62 Estou a tentar há cerca de 20-25 minutos numa EA separada e não consigo encontrar a razão.
/////////////////////////////////////////////////////////////////////// bool OrderClose(string Symb)
{
PositionSelect(Symb); Print("Start@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
long PositionID=0;
PositionID=PositionGetInteger(POSITION_IDENTIFIER);//Идентификатор позиции - это уникальное число, которое присваивается каждой вновь открытой позиции и не изменяется в течение всей ее жизни. Переворот позиции не изменяет идентификатора позиции.Print("PositionID");
Print(PositionID);
HistorySelect(
TimeCurrent()-(60*60*24*7*4),// с датыTimeCurrent() // по дату
);
for(int i=0; HistoryDealsTotal()>i; i++)
{
ulong TicetSdelki;
TicetSdelki=
HistoryDealGetTicket(
i // номер сделки
);
long HistoryID=HistoryDealGetInteger(
TicetSdelki,// тикет
DEAL_POSITION_ID // идентификатор свойства
); //Идентификатор позиции, в открытии, изменении или закрытии которой участвовала эта сделка. Каждая позиция имеет уникальный идентификатор, который присваивается всем сделкам, совершенным на инструменте в течение всей жизни позиции.// Print ( i ); Print ( "HistoryID" ); Print ( HistoryID ); if(HistoryID!=0 && PositionID!=0 && PositionID==HistoryID)
{
ulong TicetTojSdelki; TicetTojSdelki=TicetSdelki;
string TYP="";
if(HistoryDealGetInteger(TicetTojSdelki,DEAL_TYPE)==DEAL_TYPE_BUY){ TYP="OP_SELL";}
if(HistoryDealGetInteger(TicetTojSdelki,DEAL_TYPE)==DEAL_TYPE_SELL){ TYP="OP_BUY";}
ulong resultat=OrderSendSELLi(Symbol(),TYP,HistoryDealGetDouble(TicetTojSdelki,DEAL_VOLUME),10,10,
ASK(Symbol())+300 *SymbolInfoDouble(Symbol(),SYMBOL_POINT),BID(Symbol())-300 *SymbolInfoDouble(Symbol(),SYMBOL_POINT)," com ",600,600,0);
if(resultat==10009)returntrue;elsereturnfalse;
}
}
}
//+------------------------------------------------------------------+
Olhei através deles 6 vezes em pares, todos pareciam estar emparelhados. E não são assim tão escuras, não são tantas. Estou a olhar para tudo, pontos com pontos, outros parênteses... Dê uma vista de olhos, por favor, se puder!
Dimka-novitsek: Desculpe, a mesma pergunta. Diz '{' - algum operador esperava parênteses.mq5 612 62 Tento durante cerca de 20-25 minutos ou talvez mais numa EA separada e não consigo encontrar a causa, todos os parênteses grandes que vi 6 vezes, bem, todos emparelhados. E não são assim tão escuras, não são tantas. Estou a olhar para tudo, pontos com pontos, outros parênteses... Dê uma vista de olhos, por favor, se puder!
A fim de tornar o código compreensível não só para si mas para todos os outros, existe uma característica muito útil no MetaEditor. Chama-se Styler (siga este link para mais detalhes). Clique Tools => Styler. Atalho Ctrl+, . Experimente-o e ele ajudá-lo-á a compreendê-lo. ))
/////////////////////////////////////////////////////////////////////// bool OrderClose(string Symb)
{
PositionSelect(Symb); Print("Start@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");
long PositionID=0;
PositionID=PositionGetInteger(POSITION_IDENTIFIER);//Идентификатор позиции - это уникальное число, которое присваивается каждой вновь открытой позиции и не изменяется в течение всей ее жизни. Переворот позиции не изменяет идентификатора позиции.Print("PositionID");
Print(PositionID);
HistorySelect(
TimeCurrent()-(60*60*24*7*4),// с датыTimeCurrent() // по дату
);
for(int i=0; HistoryDealsTotal()>i; i++)
{
ulong TicetSdelki;
TicetSdelki=
HistoryDealGetTicket(
i // номер сделки
);
long HistoryID=HistoryDealGetInteger(
TicetSdelki,// тикет
DEAL_POSITION_ID // идентификатор свойства
); //Идентификатор позиции, в открытии, изменении или закрытии которой участвовала эта сделка. Каждая позиция имеет уникальный идентификатор, который присваивается всем сделкам, совершенным на инструменте в течение всей жизни позиции.// Print ( i ); Print ( "HistoryID" ); Print ( HistoryID ); if(HistoryID!=0 && PositionID!=0 && PositionID==HistoryID)
{
ulong TicetTojSdelki; TicetTojSdelki=TicetSdelki;
string TYP="";
if(HistoryDealGetInteger(TicetTojSdelki,DEAL_TYPE)==DEAL_TYPE_BUY){ TYP="OP_SELL";}
if(HistoryDealGetInteger(TicetTojSdelki,DEAL_TYPE)==DEAL_TYPE_SELL){ TYP="OP_BUY";}
ulong resultat=OrderSendSELLi(Symbol(),TYP,HistoryDealGetDouble(TicetTojSdelki,DEAL_VOLUME),10,10,
ASK(Symbol())+300 *SymbolInfoDouble(Symbol(),SYMBOL_POINT),BID(Symbol())-300 *SymbolInfoDouble(Symbol(),SYMBOL_POINT)," com ",600,600,0);
if(resultat==10009)returntrue;elsereturnfalse;
}
}
}
//+------------------------------------------------------------------+
Dimka-novitsek: Há apenas três pares de parênteses
O compilador aponta a linha sobre a qual tropeçou. Da próxima vez deve destacar tais linhas. É uma chatice procurar por "linha 612 e posição 62 do cursor".
Nesta linha.
if(resultat==10009)returntrue;elsereturnfalse;
Não gosto que o verdadeiro e o falso não estejam rodeados de parênteses. Não sei se a língua o permite, mas é assim que deve ser escrito em fen-shui:
O compilador expressou algo em inglês para mim. Parêntesis algo não é um programa, o programa em geral está errado com este parêntesis e o parêntesis está desequilibrado. Mas há parênteses. Poderia dizer-me onde devo procurar um erro?
'}' - Erro no final do programa Redo.mq5 3562 1
{' - Parênteses desequilibrados Redo.mq5 3330 1
Bem, já o terminei acima. Deixe-me repetir: a "nova" citação para o Expert Advisor é uma citação que chega logo após a conclusão da próxima função OnTick(), mesmo que esta citação não seja a "primeira citação numa barra". A condição de uma nova barra a chegar só será verificada após o Expert Advisor terminar o processamento dessa barra "anterior".
só será verificado após o Expert Advisor terminar o processamento da cotação que veio na barra "anterior". ...Se a função OnTick() for executada durante 90 segundos e iniciada às 00.00.00, a "condição para um novo tick no M1 será executada pelo menos uma vez, nomeadamente após 00.01.30
O compilador expressou algo em inglês para mim. Parêntesis algo não é o programa, o programa em geral está errado com este parêntesis e o parêntesis desequilibrado. Mas há parênteses. Por favor, diga-me, onde procurar por um erro?
'}' - fim inesperado do programa Redo.mq5 3562 1
{' - parênteses desequilibrados Remake.mq5 3330 1
Talvez faltem aparelhos para escrever o código (independentemente do que o compilador diz)?
Desculpe, a mesma pergunta. Diz '{' - algum operador esperava parênteses.mq5 612 62 Tento durante cerca de 20-25 minutos ou talvez mais numa EA separada e não consigo encontrar a causa, todos os parênteses grandes que vi 6 vezes, bem, todos emparelhados. E não são assim tão escuras, não são tantas. Estou a olhar para tudo, pontos com pontos, outros parênteses... Dê uma vista de olhos, por favor, se puder!
A fim de tornar o código compreensível não só para si mas para todos os outros, existe uma característica muito útil no MetaEditor. Chama-se Styler (siga este link para mais detalhes). Clique Tools => Styler. Atalho Ctrl+, . Experimente-o e ele ajudá-lo-á a compreendê-lo. ))
Há apenas três pares de parênteses
O compilador aponta a linha sobre a qual tropeçou. Da próxima vez deve destacar tais linhas. É uma chatice procurar por "linha 612 e posição 62 do cursor".
Nesta linha.
Não gosto que o verdadeiro e o falso não estejam rodeados de parênteses. Não sei se a língua o permite, mas é assim que deve ser escrito em fen-shui: