Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 1047

 
Roman Sharanov:

E sem depuração? Simplesmente, marcar a data no testador para o minuto exacto e dar-lhe corda rapidamente?

Como é que o teste é diferente da depuração? Apenas é executado directamente a partir do código. Os parâmetros são definidos e a velocidade é ajustada da mesma forma.

 
Alexey Viktorov:

Qual é a diferença entre um teste e um debug? Apenas é executado directamente a partir do código. Os parâmetros também são definidos e a velocidade é ajustada da mesma forma.

Já está, obrigado.

 
Continuo a minha pesquisa fútil no MT5 e pesquiso no Google as regras de escrita do ficheiro do conjunto após optimização no MT5, tal como fiz no MT4 (guardar download), também não encontrei as regras de actualização a partir do ficheiro do conjunto EA, previamente instalado no painel de gráficos do MT5. Aconselha-se o que fazer com esta confusão do MT5 ?
 

Trabalhar via CTrade
O comércio não tem fim
necessidade de modificar o take

trade.PositionModify(PositionGetTicket(i), PositionGetDouble(POSITION_SL), tpLvl);

Erro de paragem inválido, o que fazer?

Possoescrever algo mais em vez dePositionGetDouble(POSITION_SL) ?

 
Roman Sharanov:

Trabalho via CTrade
O comércio não tem uma paragem
necessidade de modificar o take

Erro de paragem inválido, o que fazer?

Talvez em vez dePositionGetDouble(POSITION_SL) escrever algo mais?

O que é este milagre "tpLvl"? O seu valor está normalizado, é possível colocá-lo onde o coloca?

 
Vladimir Karputov:

Descubra o que é a maravilha "tpLvl": o seu valor está normalizado, pode ser colocado onde o coloca?

ahhh, Paragem Inválida também pode significar que a tomada errada?

Mas no entanto, na tabela, a tomada é normalmente colocada no lugar certo

 
Roman Sharanov:

Ahhhh, Invalid Stop também pode significar que a tomada errada?

Mas no entanto, na tabela, a tomada está normalmente no lugar certo

Preciso de mais detalhes para reproduzir: símbolo, data, código mql5, registos, descrição exacta de onde no gráfico e em que momento o erro ocorreu
 
Vladimir Karputov:
Precisamos de mais detalhes para reproduzir: símbolo, data, código mql5, registos, descrição exacta de onde no gráfico e em que momento o erro ocorreu
void transposeTakeProfit(double tpLvl){
        for(int i = PositionsTotal() - 1; i >= 0; i--){
        PositionSelectByTicket(PositionGetTicket(i));
        if(PositionGetString(POSITION_SYMBOL) == _Symbol && PositionGetInteger(POSITION_MAGIC) == _magic){
                trade.PositionModify(PositionGetTicket(i), PositionGetDouble(POSITION_SL), tpLvl);
        }
   }
}

Bem, é aqui que acontece, uma troca é aberta, passa-se um nível para o qual todas as aquisições devem ser movidas, se houver outras trocas

Mas este é o primeiro acordo, vai imediatamente para esta função e imediatamente um erro

 
Roman Sharanov:

Bem, é aqui que acontece, uma troca é aberta, passa-se um nível para o qual todas as aquisições devem ser movidas, se houver outras trocas

Mas esta é a primeira troca, vai directamente para esta função e imediatamente um erro

Leia o meu comentário acima. Se pelo menos um ponto não for cumprido, eu pessoalmente não farei telepatia :)
 
Vladimir Karputov:
Leia o meu comentário acima. Se algum ponto não for cumprido, eu pessoalmente não estarei envolvido em telepatia :)

o ponto de deitar fora todas as 900 linhas de código, de qualquer forma não o compreenderá. O erro ocorre especificamente no PositionModify, eu verifiquei-o com o depurador

Bem, o símbolo é EURUSD e a data é 2 de Maio,

Razão: