MetaTrader 4 Build 529 beta lançado com novo compilador - página 26

 
Aqui está a prova de que o indicador pode ser executado várias vezes.
O indicador atrai nas primeiras 200 barras.
E isso parece na foto, que já foi executada 2 vezes.

Cheguei a ver cerca de 10 execuções quando estava remarcado.

 
mladen:

Há um problema sério com o novo metatrader que diz respeito aos parâmetros externos das cordas. Inicialmente eles têm um valor correto, mas assim que o período de tempo ou símbolo é alterado, o conteúdo de um parâmetro de string é perdido. Aqui está um exemplo simples que mostrará exatamente o que está acontecendo. Esse problema também acontece quando esses indicadores são utilizados através de iCustom() chamada e que torna qualquer indicador desse tipo inutilizável de qualquer EA ou outro código

Fixo
 
komposter:
6. Escorregar no testador "dorme" não em tempo histórico, mas em tempo real =)

Correção

Também corrigiu os itens 1 e 2.

Ponto 3: Depuração

Para os itens 4, 5 precisamos saber como reproduzir. Passo a passo. Não é reprodutível na mosca.

 
VOLDEMAR:

Apanhado no momento em que o conselheiro apaga a si mesmo mais o terminal pendurado



Vamos ter uma conversa na central de serviço, vamos?

Precisamos do código fonte de sua EA para reproduzir o problema

 
Antonsan:
Aqui está a prova de que o indicador pode ser executado várias vezes.
O indicador atrai nas primeiras 200 barras.
E isso parece na foto, que já foi executada 2 vezes.

Cheguei a ver cerca de 10 execuções quando estava remarcado.


Será melhor quando você descrever seu problema em inglês. Com detalhes, passo a passo
 

Eu escrevo em espanhol. E eu traduzo com o Google.

A tradução para o inglês é igualmente ruim, que a tradução para o russo.

Este indicador está preparado para a EA e desenha apenas algumas barras.
Alterando o cronograma, observei que às vezes o indicador é freqüentemente repetido na tela.
Às vezes parece correr várias vezes e traçar a linha corretamente, outras vezes parece que são cópias idênticas arranjadas na história.

Isto teve três cópias idênticas na história, mas para reduzir a captura de tela, só viu duas.

 
VOLDEMAR:

Apanhado no momento em que o Expert Advisor se apaga mais o terminal pendurado


Esta função não causa um erro

externo símbolo de corda = ""; // Símbolo

string sym    ()
{ 
 string symm = symbol;
 if ( symm == "" ) 
 symm=Symbol () ;
  return (symm);
}

Esta função causa um erro :

extern string symbol    = ""    ; // Symbol 

string sym ()
{
if (symbol=="")symbol = Symbol();
return symbol ;
} 
Странно сейчас тестирую и проверяю под виндовс ХР  проблем нет ...  В сервис деск отправил ...
 
Barbarian:

Renat, tenha lido novamente muitas informações sobre o propósito de X:UsuáriosxxxAppData em geral e X:UsuáriosxxxAppData. Concordo que é uma necessidade em termos de criação de configurações de usuário específicas da aplicação no \Roaming, mas por que mover arquivos executáveis, ou seja, indicadores, scripts e EAs para esse diretório? Afinal, alguns EAs violarão constantemente a lógica de seu trabalho por causa disso, ou seja, aqueles que usam arquivos de leitura e escrita em sua lógica.

A propósito, seguindo a sugestão da Microsoft de usar X:\Users\xxx\AppData\ não é apoiado por nada, muito provavelmente, exceto para casos isolados. Não conheço nenhum comerciante que permita a presença de forasteiros (outros usuários) em seu PC com terminais, mesmo sob suas próprias contas, a UAK não se aplica a este tópico em absoluto. Isto é muito provavelmente uma exceção às regras de segurança, portanto, esta tendência da Microsoft não é para os comerciantes. Ocultar suas configurações e executáveis em X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\B5589D10299052C8D921603EBD1F9752\ de qualquer pessoa é paranóico sobre segurança.


O problema é muito provável que o sistema não permita que você escreva nada nos arquivos de programação, o que é bom, a menos que você esteja correndo como administrador. Mas como administrador, o sistema operacional não é muito seguro porque você está aberto a todos os vírus e tais. Ao invés disso, o MS está finalmente chegando a um comportamento semelhante ao Unix, onde em vez de sua própria pasta pessoal você não tem acesso de escrita (e tmp, é claro, mas isto é apagado periodicamente). Isto é muito mais seguro e evita a propagação de vírus, pois não há tantos vírus no *nix como no Win. Eu sou a favor disso. Mas seria bom se fosse possível configurar para um determinado terminal uma pasta com especialistas, pois a pasta comum para todos os terminais nem sempre é adequada.
 
Interesting:
Vou adicionar "SymbolSelect" à lista. +1 para o desejo de novas descrições de construção.
O que o impede de construir sua função SymbolSelect???
 
ms502040:

O problema mais provável é que o sistema não permite que você escreva nada nos arquivos de programação, o que é correto, a menos que você trabalhe como administrador. Mas ser um administrador no sistema operacional não é muito seguro, pois você tem o sistema operacional aberto a todos os vírus e assim por diante. Em vez disso, o MS está finalmente chegando a um comportamento semelhante ao Unix, onde em vez de uma pasta privada você não tem acesso de escrita (e tmp, é claro, mas isso é apagado periodicamente). Isto é muito mais seguro e evita a propagação de vírus, pois não há tantos vírus em *nix como em Win. Eu sou a favor disso. Mas seria bom se fosse possível configurar para um determinado terminal uma pasta com especialistas, pois a pasta comum para todos os terminais nem sempre é adequada.

Você provavelmente não leu meu post acima onde descrevi o que está sendo escrito agora usando as versões beta do MT4. Em nix` todos trabalham em suas próprias caixas de areia completamente, apenas o usuário root coloca programas comuns e distribui direitos para seu uso por outros usuários. A ideologia é completamente diferente ali, embora pareça similar à da Microsoft. A propósito, eu não me importo que a versão beta escreva as configurações do usuário em X:\Users\xxx\AppData\Roaming\MetaQuotes\Terminal\Terminal, eu me importo com o seguinte:

1. Que ele cria um subdiretório X:\Users\xxxAppData\Roaming\MetaQuotes\Terminal\B5589D10299052C8D921603EBD1F9752\ que até chegar lá você não saberá seu nome, além disso, ele muda seu nome a cada atualização.

2. Este caminho é usado não apenas para escrever as configurações do usuário, mas também para arquivos executáveis - indicadores, Expert Advisors, scripts, etc., em geral, todas as coisas para as quais você não deixará um estranho em seu PC, mesmo com um nome de usuário diferente. Embora isto, é claro, possa ser evitado mais tarde, mas a que preço.

É o primeiro ponto que mais me assusta porque o uso do código de leitura/gravação em arquivos para o uso destas operações se tornará mais complicado.

Razão: