Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 495 1...488489490491492493494495496497498499500501502...1178 Novo comentário Warstein 2014.02.22 10:37 #4941 O terminal foi atualizado de 509 para 600 e a EA dá este aviso na compilação: declaração de "ErrNum" esconde a declaração global na linha 81 e uma parte do código: string ErrorDescription(int ErrNum) { switch(ErrNum) { Você pode, por favor, me dizer qual é o problema? Any rookie question, so Indicadores de elite :) Perguntas de Iniciantes MQL5 Artyom Trishkin 2014.02.22 10:42 #4942 rustein:O terminal foi atualizado de 509 para 600 e a EA dá este aviso na compilação: declaração de "ErrNum" esconde a declaração global na linha 81 e uma parte do código: Você pode, por favor, me dizer qual é o problema? Você declarou ErrNum globalmente. Uma variável com o mesmo nome dentro da função esconde o valor da variável global. Na função, dê um nome diferente Warstein 2014.02.22 10:47 #4943 Obrigado, então mudou ErrNum para ErrNumber e é isso? O aviso desapareceu, tudo vai funcionar corretamente? string ErrorDescription(int ErrNumber) { switch(ErrNum) { case 0: return("NO ERROR"); case 1: return("NO RESULT"); case 2: return("COMMON ERROR"); case 3: return("INVALID TRADE PARAMETERS"); case 4: return("SERVER BUSY"); case 5: return("OLD VERSION"); case 6: return("NO CONNECTION"); case 7: return("NOT ENOUGH RIGHTS"); Warstein 2014.02.22 10:51 #4944 Ótimo, muito obrigado mais uma vez.E um último aviso no código: nem todos os caminhos de controle retornam um valor double FractalUp() { if(iCustom(Symbol(),0,"SR",FractalRange,false,1,2,TradeBar) != EMPTY_VALUE) return(iCustom(Symbol(),0,"SR",FractalRange,false,1,2,TradeBar)); } Você pode me dizer o que está errado aqui também, por favor? Perguntas de Iniciantes MQL5 Uma pergunta para os Erros, bugs, perguntas Artyom Trishkin 2014.02.22 11:08 #4945 rustein:Ótimo, muito obrigado mais uma vez.E um último aviso no código: nem todos os caminhos de controle retornam um valor Você pode me dizer o que está errado aqui também, por favor? Se a condição for cumprida, a função retorna um valor. Caso contrário, não há retorno da função. Retornar algum valor padrão da função Warstein 2014.02.22 11:19 #4946 hehe :), fez isso e o aviso desapareceu: double FractalUp() { if(iCustom(Symbol(),0,"SR",FractalRange,false,1,2,TradeBar) != EMPTY_VALUE) { return(iCustom(Symbol(),0,"SR",FractalRange,false,1,2,TradeBar)); } else return (0); } esperança que isso seja bom, a vida no mt4 continua :), obrigado novamente! Artyom Trishkin 2014.02.22 11:24 #4947 rustein: hehe :), fez isso e o aviso desapareceu: esperança que isso seja bom, a vida no mt4 continua :), obrigado novamente! Seja bem-vindo. picabu 2014.02.22 11:28 #4948 Pessoal, existem 4 funções simples feitas internamente que aparentemente têm um bug nelas. Por favor, ajude um iniciante! (O nome de cada função fala por si, o que esta função deve fazer) extern double LOT =0.1; double GetLastOrderProfit() { int time = 0; double profit = 0; for(int i = OrdersHistoryTotal()-1; i>=0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) { if(OrderSymbol() == Symbol()&& OrderMagicNumber() == Magic) { if(time<OrderCloseTime()) { time=OrderCloseTime(); profit=OrderProfit(); } } } } return(profit); } //+------------------------------------------------------------------+ double GetLastLot() { int time = 0; double Lot = 0; for(int i = OrdersHistoryTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) { if(OrderSymbol() == Symbol()&& OrderMagicNumber() == Magic) { if(time<OrderCloseTime()) time=OrderCloseTime(); Lot = OrderLots(); } } } if(Lot <= 0) Lot = LOT; return(Lot); } //+------------------------------------------------------------------+ double GetLastTenOrdersProfit() { double profit = 0; int count = 0; for(int i = OrdersHistoryTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) { if(OrderSymbol() == Symbol()&& OrderMagicNumber() == Magic) { if (count<10) { profit=profit+OrderProfit(); count++; } } } } return(profit); } //+------------------------------------------------------------------+ double GetLot() { double Lot = 0; double n = GetLastLot(); if (GetTotalProfit() < 0 || GetLastLotProfit() < 0) Lot = NormalizeDouble (n * MartinStep,2); if (GetTotalProfit() >= 0 || GetLastLotProfit() >= 0) Lot = LOT; return (Lot); } [Excluído] 2014.02.22 11:30 #4949 me ajude a entender double b=NormalizeDouble(ObjectGet("b",OBJPROP_TIME1),Digits); int shiftb=iBarShift(NULL,0,b); Escreve um aviso de possível perda de dados devido à conversão do tipo referente ao b selecionado, sim, não é a data, mas se você o fizer: datatime b=ObjectGet("b",OBJPROP_TIME1); int shiftb=iBarShift(NULL,0,b); haverá um aviso na data b por algum motivo , parece correto e não deve haver avisos. Quaisquer perguntas de recém-chegados Perguntas de Iniciantes MQL5 Erros, bugs, perguntas Artyom Trishkin 2014.02.22 11:35 #4950 Alexandr24: me ajude a entender double b=NormalizeDouble(ObjectGet("b",OBJPROP_TIME1),Digits); int shiftb=iBarShift(NULL,0,b); Escreve um aviso de possível perda de dados devido à conversão do tipo referente ao b selecionado, sim, não é a data, mas se você o fizer: datatime b=ObjectGet("b",OBJPROP_TIME1); int shiftb=iBarShift(NULL,0,b); haverá um aviso na data b por algum motivo , parece correto e não deve haver avisos. E definir em b 1...488489490491492493494495496497498499500501502...1178 Novo comentário
O terminal foi atualizado de 509 para 600 e a EA dá este aviso na compilação:
declaração de "ErrNum" esconde a declaração global na linha 81
e uma parte do código:
Você pode, por favor, me dizer qual é o problema?
O terminal foi atualizado de 509 para 600 e a EA dá este aviso na compilação:
declaração de "ErrNum" esconde a declaração global na linha 81
e uma parte do código:
Você pode, por favor, me dizer qual é o problema?
Obrigado, então mudou ErrNum para ErrNumber e é isso? O aviso desapareceu, tudo vai funcionar corretamente?
E um último aviso no código:
nem todos os caminhos de controle retornam um valor
Você pode me dizer o que está errado aqui também, por favor?
E um último aviso no código:
nem todos os caminhos de controle retornam um valor
Você pode me dizer o que está errado aqui também, por favor?
Se a condição for cumprida, a função retorna um valor.
Caso contrário, não há retorno da função. Retornar algum valor padrão da função
fez isso e o aviso desapareceu:
esperança que isso seja bom, a vida no mt4 continua :), obrigado novamente!
fez isso e o aviso desapareceu:
esperança que isso seja bom, a vida no mt4 continua :), obrigado novamente!
Pessoal, existem 4 funções simples feitas internamente que aparentemente têm um bug nelas. Por favor, ajude um iniciante!
(O nome de cada função fala por si, o que esta função deve fazer)
me ajude a entender
double b=NormalizeDouble(ObjectGet("b",OBJPROP_TIME1),Digits);
int shiftb=iBarShift(NULL,0,b);
Escreve um aviso de possível perda de dados devido à conversão do tipo referente ao b selecionado, sim, não é a data, mas se você o fizer:
datatime b=ObjectGet("b",OBJPROP_TIME1);
int shiftb=iBarShift(NULL,0,b);
haverá um aviso na data b por algum motivo , parece correto e não deve haver avisos.
me ajude a entender
double b=NormalizeDouble(ObjectGet("b",OBJPROP_TIME1),Digits);
int shiftb=iBarShift(NULL,0,b);
Escreve um aviso de possível perda de dados devido à conversão do tipo referente ao b selecionado, sim, não é a data, mas se você o fizer:
datatime b=ObjectGet("b",OBJPROP_TIME1);
int shiftb=iBarShift(NULL,0,b);
haverá um aviso na data b por algum motivo , parece correto e não deve haver avisos.