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

 
Slava_kornev55:
Ahhhh, eu sei. Não consegui encontrar uma coruja assim.
Aqui, praticar.
Arquivos anexados:
 
Alexander Antoshkin:
Aparentemente, um parêntese ou uma vírgula invertida precisa de ser desenhada algures, não compreendo ............. Olhei para exemplos semelhantes, parece ser o mesmo .............,

especificar a função e a sua constante DeleteOrder(bilhete) se precisar dela e deve funcionar

Como escrever correctamente uma constante numa chamada para outra função

Por exemplo, aqui está uma função:

depois escrevo outro

O que é que o compilador diz exactamente?
 
Pode dizer-me, por favor, se a função de desinicialização nos EAs e indicadores é executada quando o terminal é fechado?
 
-Aleks-:
Pode informar se a função de desinicialização é executada em conselheiros e indicadores quando se fecha o terminal?

Execução de programas.

Indicadores de carga e descarga

Os indicadores são carregados nos seguintes casos:

-ligação deum indicador a um gráfico;

-arranquedo terminal (se um indicador foi anexado a um gráfico antes do encerramento anterior do terminal)

- carregamentode um modelo (se o modelo contiver um indicador anexado ao gráfico)

- mudaro perfil (se um indicador for anexado a um dos gráficos de perfil);

-Mudaro símbolo e/ou período do gráfico, ao qual o indicador está anexado;

-após arecompilação bem sucedida de um indicador, se este indicador tiver sido anexado a um gráfico

- alteração dosparâmetros de entrada dos indicadores.

Os indicadores são descarregados nos seguintes casos:

-aodestacar um indicador de um gráfico;

-fechamentodo terminal (se um indicador for anexado a um gráfico);

-cargade um modelo, se um indicador for anexado a um gráfico

Fecharo gráfico ao qual foi anexado um indicador; - Fechar o terminal (se um indicador tiver sido anexado ao gráfico)

-Mudarum perfil, se um indicador for anexado a um dos gráficos do perfil a ser alterado;

-Mudandoo símbolo e/ou período do gráfico, ao qual o indicador está anexado;

-Mudar osparâmetros de entrada do indicador.

Carga e descarga de Peritos

O carregamento de um Consultor Especialista é efectuado nos seguintes casos

-ligaro Conselheiro Especialista ao gráfico;

-descolagemdo terminal (se o Conselheiro Especialista foi anexado ao gráfico antes do encerramento anterior do terminal);

-carregamentode um modelo (se um Expert Advisor tiver sido anexado a um gráfico)

-Apósrecompilação bem sucedida do Conselheiro Especialista (se o Conselheiro Especialista tiver sido anexado ao quadro)

-Alteraçãodo perfil (se o Consultor Especialista estiver anexado a um dos gráficos de perfil);

-ligaçãoà conta, mesmo que o número da conta não tenha sido alterado (se o Consultor Especialista tiver sido anexado ao gráfico antes da autorização do terminal no servidor).

O descarregamento do Consultor Especialista anexo ao gráfico é efectuado nos seguintes casos

-quandoa EA é destacada do gráfico;

- quandoanexado a um gráfico - se outro Expert Advisor já tiver estado no mesmo gráfico, o Expert Advisor será descarregado;

-fecharo terminal (se um Consultor Especialista tiver sido anexado a um gráfico);

-carregarum modelo, se um Consultor Especialista tiver sido anexado ao gráfico;

-Fecharo gráfico, ao qual o Conselheiro Especialista foi anexado;

-Mudarum perfil, se um Expert Advisor estiver anexado a um dos gráficos do perfil a ser alterado;

-Mudara conta à qual o terminal está ligado (se o Expert Advisor tiver sido anexado ao gráfico antes da autorização do terminal no servidor);

-chamadada funçãoExpertRemove().

Quando o símbolo ou o prazo do gráfico ao qual o Expert Advisor foi anexado é alterado, o Expert Advisor não será descarregado ou carregado. Neste caso, os manipuladoresOnDeinit() no antigo símbolo/linha de tempo eOnInit() no novo símbolo/linha de tempo (se disponível) são chamados consistentemente, os valores das variáveis globais evariáveis estáticas não são reiniciados. Todos os eventos recebidos para a EA antes da conclusão da inicialização (OnInit()) são ignorados.

OnDeinit

O evento Deinit é gerado para Consultores Especialistas e indicadores nos seguintes casos

- antes dareinicialização devido à alteração de um símbolo ou período de um gráfico, ao qual está anexado um programa de mql5;

- Antes da reinicialização, devidoa uma alteração dosparâmetros de entrada;

- Antes dadescarga de um programa de mql5.

 
Sergey Gritsay:
O que é que o compilador diz exactamente?
 
Alexander Antoshkin:
sem código completo é difícil de compreender, mas suspeito que tenha o mesmo nome de variável dobilhete declarado global e localmente na funçãoDeleteOrder, altere o nome da variável
 
Karputov Vladimir:

Execução do programa.

OnDeinit

Obrigado, mas há uma suspeita de que OnDeinit.... nem sempre funciona quando o terminal estiver fechado.

 
-Aleks-:

Obrigado, mas suspeito que OnDeinit.... nem sempre funciona quando o terminal estiver fechado.

Fazer uma desactivação em OnDeinit(). Então podemos falar mais substancialmente.
 
Sergey Gritsay:
Sem código completo é difícil de compreender, mas suspeito que tenha o mesmo nome de variável dobilhete declarado global e localmente na funçãoDeleteOrder, altere o nome da variável

Sim, eu percebi.

Obrigado por teres descoberto!

 

Sou estúpido ou é assim que deve ser?

Havia 5 posições de compra abertas, a rede de arrasto despoletou e moveu o Stop Losses, o preço recuou e 4 posições fechadas e uma permaneceu aberta com o nível de stop acima do preço. Não há nada no registo a não ser registos de fecho de 4 posições.