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
Agora está a dar-me...
2012.02.26 15:47:46 Ficheiro do testador C:\Users\openlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DDD286B60B1DB9B9989A2FFC701\MQL5\Files\Files\signal10000.csv open error [32]
Primeiro, verifique o que tem na pasta C:\Users\openlive\AppData\Roaming\MetaQuotes\Terminal\9C3619DDDD286B60B1DB9B989A2FFC701\MQL5Files\
Segundo: não há erro 32 na MQL5. Estranho... Verificam o cabo depois de tentarem abrir o ficheiro e o último código de erro depois de tentarem abri-lo?
O que é "modo matemático"?
O que é "modo de cálculo matemático"?
Neste modo, apenas OnTester() é chamado; contudo, a complexidade e volume de cálculos em OnTester() não é limitado. Se calcular o lucro do seu Expert Advisor para os parâmetros de entrada dados, pode usar o algoritmo genético do testador para optimização.
Por favor, ajuda-me a compreender, o meu cérebro está a ferver.
1. Compreendo que a mudança para o SO x64 está ligada ao facto de ser impossível "dividir" mais de 4 GB de RAM em 4 bytes. Tenho o SO x64, porque é que os apontadores ocupam 4 bytes (diz respeito não só ao mql, mas também ao C++))?
2. Pergunta sobre o MT4: porquê quando chamo a função dll:
A variável dll pode ser tomada normalmente nestas variantes:
Embora eu assuma que o ponteiro e a referência, por ideia não devem ser compatíveis, por exemplo porque o ponteiro para duplicar leva 4 bytes no meu caso.
Funciona desta forma:
Não funciona:
Pelo menos como funcionaria (quero passar várias matrizes)? Não o quero fazer através de um retrocesso.
Pelo menos como fazê-lo correctamente (quero passar várias matrizes)? Porque não quero ir pela porta dos fundos.
E na MQL, quem irá colocar & na declaração de função?
Sim, isso seria provavelmente a coisa certa a fazer. Mas não é como se a MQL funcionasse em C de qualquer forma (posso estar errado).
Sim, isso seria provavelmente a coisa certa a fazer. Só MKL não funciona de alguma forma por C (posso estar errado).
há uma diferença na passagem - tudo precisa de ser passado apenas por referência &, por ponteiro ' * ' apenas objectos de classe podem ser passados
Pensei que uma área de memória elementar consiste em duas partes - um endereço e um valor. Se um endereço for transmitido, deve estar em alguma variável com o endereço da área a ser transmitida no campo "valor". É por isso que não compreendo como é que tais variantes podem funcionar correctamente ao mesmo tempo:
Podemos tentar encontrar uma explicação tal como - é transferida área de memória "tal como está" e o lado receptor decide o que fazer com ela (escrever o endereço para o valor ou copiar o endereço). Mas esta hipótese é destruída pelo facto de não funcionar desta forma:
Poder-se-ia tentar novamente encontrar uma explicação - nas primeiras duplicatas, o endereço no campo "valor" é dado como entrada, e o lado receptor decide o que fazer com ele. Em contraste, o facto de em C++ o compilador dizer para não o fazer, na sua opinião ou assim:
ou isto:
Em suma, não vejo senão contradições.Se perguntarem, eu respondo.
Cheguei à conclusão de que uma ligação e um ponteiro são essencialmente a mesma coisa. Há ligeiras diferenças:
Um ponto muito importante é: se a função chamada tem uma referência ou um ponteiro como argumento, o endereço é realmente passado. Isto é muito importante de compreender quando se telefona da dll.
Pode dizer-me como encontrar o valor exacto do cruzamento da linha principal e da linha indicadora do estocástico?
Visualmente é fácil, mas como implementá-lo de forma programática?