Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
O futuro... bem, bem. "Obrigado, é engraçado" (c).
Ao otimizar, gostaria de ver o resultado da corrida como uma porcentagem, em vez dos números exibidos na coluna "Resultado". E no backtest, seria bom se o resultado "lucro líquido" tivesse um lucro em %.
Insira sua fórmula no manipulador de eventos OnTester() e veja o resultado que você precisa.
Sugiro que as variáveis globais do programa não cruzem as variáveis e parâmetros nos plugins MQL4 e MQL5. Declarei um 'ponto' variável em meu consultor especializado e agora estou recebendo muitas mensagens como: "declaração de 'ponto' esconde declaração global no arquivo 'expert.mq4' na linha 153 ChartObject.mqh 154 39". É horrível quando não se pode declarar uma variável em um módulo, programa, que está nos parâmetros de outro módulo. Por que o módulo ChartObject.mqh precisa ver meu Expert Advisor, expert.mq4, se o ChartObject.mqh não o declara explicitamente?
Obviamente, isso o ajudará.
Sim, eu tenho esta linha em meu Expert Advisor, mas não está no módulo ChartObject.mqh. Não vou reescrever todos os módulos padrão por causa disso.
Entendi. Nesse caso, não crie variáveis globais. Você pode passar sem eles. Caso contrário, com qualquer coincidência, por exemplo, um nome muito comum:
int i;
declarado globalmente será sobregravado por declarado localmente. Isto é o que você é avisado.
E o plugin não tem seu próprio escopo, não é um módulo, é apenas um pedaço de código que será inserido onde você escrever incluir.
Entendi. Então, não crie variáveis globais. Você pode passar sem eles.
O que você quer dizer com não criá-los? Em qualquer linguagem de programação as variáveis globais são livremente utilizadas e está tudo bem, mas o compilador jura. O erro não é crucial, mas ainda assim é inconveniente.
double point = MarketInfo(EA_Symbol(), MODE_POINT);
O ponto variável informa o preço de 1 ponto e é um substituto para o ponto padrão. A função MarketInfo(EA_Symbol(), MODE_POINT) dá o preço de 1 ponto para qualquer símbolo. Além disso, o ponto variável pode ser usado em qualquer função, no corpo da EA, se for uma variável global, é claro. Concordam que tais casos causam alguns inconvenientes com bastante freqüência (se você certamente tem experiência em programação MQL). E embora eles possam ser evitados, mas a questão é por que, se em outros idiomas modernos tais problemas simplesmente não existem?