- Características da linguagem mql4, sutilezas e técnicas
- Redes neuronais artificiais.
- Campeonato de Otimização de Algoritmos.
quando umaposição é aberta com sucesso por uma ordem de mercado, obtém-se sempre um resultado.deal zero?
Uma vez que a OrderSend tenha sido executada, o endereçamento da ordem, posição ou negociação relevante nem sempre é bem sucedido. Há situações em que você precisa esperar algumas dezenas de milissegundos para que as informações comerciais históricas ou atuais se tornem corretas.
Fórum sobre negociação, sistemas de negociação automatizados e testes de estratégia de negociação
TakeProfit (e StopLoss) de uma posição fechada
fxsaber, 2016.07.17 20:19
Isto não é uma acusação indiscriminada, mas o resultado de horas de tentativa de descobrir (sem HistorySelectByPosition e outras coisas ajudam) como tudo funciona. E eu fico feliz em pedir desculpas se estiver errado. Para não ser infundado, estou mostrando um Expert Advisor para o testador (é mais fácil de entender) no servidor RoboForexEU-MetaTrader 5, que abre uma posição, depois coloca os níveis SL e TP.
void OnTick() { static bool Flag = true; if (Flag) { // Открываем SELL-позицию MqlTradeRequest Request = {0}; Request.action = TRADE_ACTION_DEAL; Request.symbol = Symbol(); Request.volume = 1; Request.price = SymbolInfoDouble(Symbol(), SYMBOL_BID); Request.type = ORDER_TYPE_SELL; MqlTradeResult Result; if (OrderSend(Request, Result)) { // Устанавливаем SL и TP Request.position = Result.deal; Request.action = TRADE_ACTION_SLTP; Request.tp = Result.ask - 10 * _Point; Request.sl = Result.ask + 10 * _Point; if (OrderSend(Request, Result)) Print("Сделка в тестере закроется либо по SL, TP, либо по окончании бэктеста") ; Flag = false; } } }
Neste EA, SL e TP de uma única posição fechada não podem ser definidos (em OnDeinit). É suposto fazer isso?
Fórum sobre negociação, sistemas de negociação automatizados e testes de estratégia de negociação
Uma alternativa ao Sono para correr no testador
Vitalie Postolache, 2017.02.10 18:01
Os temporizadores funcionam no testador MT5?Fórum sobre negociação, sistemas de negociação automatizados e testes de estratégia de negociação
Alternativa para Dormir para correr no testador
Slawa, 2017.02.22 11:16
Sim, mas só para a EA a ser testada. Não para indicadores utilizados pelo Expert AdvisorFórum sobre negociação, sistemas de negociação automatizados e testes de estratégia de negociação
Slawa, 2017.02.14 13:46
Porquê? Uma única acção é suficiente.Enquanto o símbolo for selecionado na revisão do mercado e o histórico do símbolo for mantido pelo Expert Advisor, ele é mantido em sincronia. Segurar pelo Expert Advisor significa que você acessará esse histórico pelo menos uma vez a cada 2 minutos, por exemplo, copiando uma barra. Se o histórico estiver sincronizado, não se gasta tempo a copiar uma barra - apenas alguns ciclos de processador. Ou, como acabou de ser dito aqui, peça o número de barras, também alguns ciclos de relógio.
Fórum sobre negociação, sistemas de negociação automatizados e testes de estratégia de negociação
Alexey Kozitsyn, 2017.02.14 13:47
Os indicadores incluem um intervalo de 2 minutos?
Sim, e ao verificar o facto da sincronização, a sincronização também será realizada?
Fórum sobre negociação, sistemas de negociação automatizados e testes de estratégia de negociação
Slawa, 2017.02.14 13:50
Isto também se aplica aos indicadores. Crie um timer de 1 minuto e peça o número de barras de todas as séries de tempo de interesse.A verificação do momento não se aplica ao momento.
Uma vez que a OrderSend é executada, a referência à ordem, posição ou negociação apropriada nem sempre é bem sucedida. Há situações em que você precisa esperar algumas dezenas de milissegundos para que as informações comerciais históricas ou atuais se tornem corretas.
Não tens de esperar alguns milissegundos.
A mensagem virá na OnTradeTransaction
ver código
Não tens de esperar alguns milissegundos.
A mensagem virá na OnTradeTransaction
ver código.
Os guiões não o têm. É estúpido usar o EA+ExpertRemove em vez do script.
Além disso, a OrderSend trava por timeout se não houver resposta do servidor por 180 segundos. Isto sugere que a OnTradeTransaction pode acumular-se para sempre à espera de bilhetes. E a opção de apenas um order_ticket para a OnTradeTransaction, como no seu script, é ruim. Após o envio assíncrono, há um trabalho com listas de encomendas. É por isso que é assíncrono - para trabalhar com lotes. E se não há trabalho com lote, então a assimetria nunca é necessária.

- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso