![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Se seu Expert Advisor é multi-currency, você tem que fazê-lo.
Tanto mais que os valores de Licitação e Pontos provavelmente já estão definidos (declarados) através do MarketInfo().
Uma vez iniciei uma filial no ramo de Expert Advisor Multimoedas. Dê uma olhada e algumas perguntas serão esclarecidas....
Pergunta de especialista multimoedas".
E aqui especificamente sobre a modificação
"Pergunta de assessor multimoedas
Eu fiz esta variante... Imediatamente após a abertura, eu chamo ModifyPos()
Stop - 20.
TakeProfit - 100
Mensagem no log - OrderModify error 130
Tente uma posição de compra para as posições de tomada
Pense sobre isso! Por que é que para uma posição de compra o lucro fica subitamente abaixo do preço atual?
Não é de se admirar que um erro seja gerado
E o mesmo para a posição de venda...
Mas se você não precisa mudar Take Profit, é melhor fazer desta maneira
Da mesma forma, para o lado da vendaPense sobre isso! Por que é que seu lucro em uma posição de compra está subitamente abaixo do preço atual?
Não é de se admirar que um erro esteja sendo gerado!
Muito obrigado!
Eu não estava prestando atenção)... funcionou e até funcionou)
O último erro que está agora no registro durante os testes é OrderSend error 138.
Este erro ocorre sem interrupção quando não há trocas, ou seja, para cada marca este erro ocorre.
Assim que uma ordem é acionada, o erro desaparece... a ordem fecha e o erro vai novamente...
Parece que está tentando enviar um pedido sem nenhum sinal... Mas não entendo por que, já que há uma(se) condição para vender e comprar
O último erro que está agora no registro durante os testes é OrderSend error 138.
Este erro ocorre sem interrupção quando não há trocas, ou seja, para cada marca este erro ocorre.
Assim que uma ordem é acionada, o erro desaparece... a ordem fecha e o erro vai novamente...
Parece que está tentando enviar um pedido sem nenhum sinal... Mas não entendo por que, já que temos condições(se) de vender e de comprar.
não leia com atenção https://book.mql4.com/ru/content está tudo aí
A leitura e a compreensão são coisas diferentes... Eu quero entender na prática)
Há uma condição para entrar, depois que estas condições são cumpridas o controle é passado para a função que abre a ordem...
Não consigo entender como a OrderSend está tentando trabalhar contornando as condições... e logicamente gera um erro... porque não há condições de entrada
Atualiza dados em variáveis pré-definidas e matrizes de séries temporais. Esta função é utilizada quando um Expert Advisor ou roteiro tem realizado cálculos há muito tempo e precisa de dados atualizados. Ele retorna VERDADEIRO se os dados forem atualizados, caso contrário FALSO. Os dados não podem ser atualizados somente porque correspondem ao estado atual do terminal do cliente. Conselheiros especializados e roteiros trabalham com sua própria cópia de dados históricos. A cópia dos dados sobre o símbolo atual é criada no lançamento inicial do Expert Advisor ou roteiro. A cada próximo lançamento do Expert Advisor (lembre-se, o roteiro é executado uma vez e não depende de ticks recebidos), a cópia inicialmente criada é atualizada. Durante o tempo de execução do Expert Advisor ou roteiro, um ou mais carrapatos novos podem vir, de modo que os dados podem ficar desatualizados.
//------------------------------------------------------------------------------
Tente inserir esta função antes de executar OrderSend
Veja também: Abertura e estabelecimento de pedidos 2008-05. :Abertura e fixação de ordens 2008-05-05 14:26:13
"Para que o programa funcione de forma estável, com um número mínimo de ordens de negociação rejeitadas, antes de executar a função OrderSend(), os parâmetros do ambiente de informação usado pelo programa devem ser atualizados usando as funções MarketInfo() e RefreshRates()".
não ajuda...