alteração do valor dos parâmetros
3 respostas
chengsmine
10 anos atrás #111615
Tenho um valor inicial de um determinado parâmetro DS definido como 5 (entrada) quando o EA é iniciado. Após o fechamento de algumas negociações, DS é aumentado para 10. Mas parece que esse novo valor não substituiu o valor original de DS quando o EA é reiniciado. Por exemplo,
Entrada: DS=5;
Regra 1:
PU= Abrir (0) + ConvetToRealPips(DS)
Depois de muitas regras:
Fechar todos os pedidos
DS=DS+5
Portanto, o novo valor de DS agora é 10, mas descobre-se que DS ainda é <=5 na Regra 1 quando o EA é reiniciado (retorna à Regra 1).
Por quê? Existe uma solução para esse problema?
Marca Fric
10 anos atrás #122729
Quando você reiniciar um EA, ele esquecerá todos os valores armazenados na memória e usará novamente os valores padrão.
Não há uma solução fácil para isso, simplesmente funciona assim.
A única maneira de manter alguns valores anteriores à reinicialização do EA seria salvá-los em um arquivo e depois carregá-los novamente.
Por exemplo, se você usa tamanhos diferentes em cada pedido, pode usar o tamanho do pedido real para reconhecer qual valor de DS foi usado na última vez.
Marcar
Marcar
EstratégiaQuant arquiteto
chengsmine
10 anos atrás #122733
Como é possível lembrar o tamanho do último pedido, já que você mencionou acima que todos os valores armazenados na memória são apagados quando você reinicia um EA?
Marca Fric
10 anos atrás #122751
você não consegue se lembrar do valor do último pedido, mas pode obtê-lo no histórico de pedidos.
Basta adicionar essa função ao final do arquivo {EA Wizard}/code/CustomFunctions.mq4:
Em seguida, você pode usá-lo nas condições chamando a função personalizada: sqGetLastPositionSize(YourMagicNumber)
Marcar
Marcar
EstratégiaQuant arquiteto
Visualizando 3 respostas - 1 até 3 (de um total de 3)