![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
Em algumas plataformas é possível ligar 1 (por vezes 2) ordens CCA. Em MT4/5 implemento programmaticamente uma cadeia de ordens ligadas (por vezes bastante complexa) e considero esta uma opção mais conveniente
Do que a execução do servidor, por exemplo?
Há menos flexibilidade e não necessariamente mais fiabilidade na execução do servidor
Não há alternativa à execução do servidor apenas entre o tempo de cotação e o tempo de negociação
Não há alternativa à execução do servidor apenas entre o tempo de cotação e o tempo de negociação
...e quando a sua Internet está em baixo.
Agora, é claro que não é difícil (não caro) fornecer um PC estável, mas mesmo assim as soluções do lado do cliente não podem competir com a execução baseada em servidor.
O meu entendimento é que os corretores não querem assumir a responsabilidade pela execução e os MKs apoiam-nos.
Assim, a questão resume-se a como eliminar exactamente uma ordem pendente que não é uma ordem SL ou TP quando certos eventos ocorrem (em particular, quando uma ordem TP dispara numa posição aberta).
Actualmente, tal ordem pendente só pode ser eliminada compulsoriamente através do envio do respectivo pedido "Delete Pending Order". Assim, temos de monitorizar no lado terminal a ocorrência de certos eventos e enviar um pedido. Mas ao contrário da sua variante, existem apenas dois campos a serem especificados no pedido, um dos quais é o pedido.ordem.
Na situação que menciona, as encomendas OCO ("One Cansels Other(s)") seriam úteis: no nível TP, seria colocada uma encomenda com o tamanho da posição aberta, e no nível SL, seria colocada uma encomenda com o tamanho necessário para "inverter" a posição. Se uma destas ordens OCO fosse accionada, a segunda seria automaticamente removida do lado do servidor. No entanto, durante a existência deste fórum, os criadores da plataforma recusaram-se terminantemente a implementar quaisquer tipos de encomendas adicionais, incluindo encomendas OCO.
Obrigado pelas recomendações. No meu caso, decidi que a coisa mais fácil a fazer era utilizar o tempo de expiração da encomenda, ou seja:
......... request.type_time =ORDER_TIME_DAY; ........
Não é claro como estabelecer um prazo de 2 dias ?Não é claro como estabelecer um prazo de validade de 2 dias ?
data/hora deexpiração;
Adicionar 2 dias ou 60*60*24*2 segundos à data actual
Como posso exibir o texto acima dos ofícios no gráfico de teste após o teste? Ou, em geral, como fazer o gráfico do testador exibir alguns objectos adicionais após o teste?
Tentei inseri-los na função OnDeinit(), mas nada é exibido.
Como posso exibir o texto acima dos ofícios no gráfico de teste após o teste? Ou em geral, como fazer o gráfico do testador exibir alguns objectos adicionais após o teste?
Tentei inseri-los na função OnDeinit(), mas nada é exibido.
tol64:
После того, как тест завершён перейдите на вкладку Результаты, нажмите правую кнопку и в контекстном меню выберите Открыть график. Откроется график со всеми сделками и на нём можно создавать любые объекты и применять для анализа любые индикаторы.