Erros, bugs, perguntas - página 1820
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
...
void OnTick(){
Comment(Somevalue);
}
O programa MQL5 imprime o comentário:"1487811600"
Porque é que isso acontece? Como emitir o valor correcto da cadeia de caracteres?
Procure por um erro. Ou postar código reprodutível completo. Código de verificação
//| Test.mql5 |
//| Copyright 2017, CompanyName |
//| http://www.companyname.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2017, Vladimir Karputov"
#property link "http://wmua.ru/slesar/"
#property version "1.00"
#property script_show_inputs
//--- input parameters
input string Somevalue="Maxim";
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
Comment(Somevalue);
}
//+------------------------------------------------------------------+
não reproduz o erro.
Também recomendo que substitua Comentar por Imprimir - há uma hipótese de outro programa sobrepor trivialmente o comentário no gráfico.
reiniciou a EA num gráfico diferente, está a funcionar correctamente. Isso é estranho. Mas obrigado pela ajuda.
Quem entende a resposta, por favor explique. Ainda não compreendo porque é que a OrderSend é considerada normal
Tanto quanto sei, a OrderSend apenas espera até a encomenda ser colocada em fila de espera para processamento no servidor, mas não até o resultado do processamento.
Há um guião de reprodução de OrderSend-bug na aplicação. Percorre o Market Watch e abre o BuyLimit em cada símbolo. Depois disso, tenta imediatamente modificá-lo (define TP) e depois apagá-lo. Se a modificação ou eliminação da encomenda for impossível, o guião pára com uma mensagem correspondente.
Tudo é feito através de OrderSend sincronizado. E quase imediatamente deparamo-nos com uma situação em que, após uma EncomendaSendada com êxito (definição de BuyLimit), nada pode ser feito (modificar ou apagar) com a encomenda pendente.
Resultado de funcionamento
2017.02.23 14:24:49.828 OrderSend-StartedBug (Si-3.17,M1) DeleteError GetLastError() = 4756 EnumToString((ENUM_ORDER_STATE)OrderGetInteger(ORDER_STATE)) = ORDER_STATE_STARTED
Caros programadores, isto é ou não um bug OrderSend ou não?
SZZ, no entanto, OrderSend at TRADE_ACTION_DEAL não termina enquanto a ordem correspondente tiver o status STARTED.
Toda a diversão do guião pode ser experimentada lentamente no servidor FXOpen-MT5.
quando umaposição é aberta com sucesso por uma ordem de mercado, obtém-se sempre um Resultado.deal zero?
Error in OpenCL initialization. Error code=5101