- [ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5.
- Pergunte!
- Graficos com 15 minutos de delay (grafics 15 minutes delayed)
provavelmente sua ordem está sendo criada no OnTick(). Faça uma função fora e aguarde a resposta, ao mesmo tempo impeça novas criações até a resposta chegar.
Grande abraço
O meu EA operando o mini índice em conta real está duplicando as ordens mesmo com um SLEEP(1000) após as mesmas, alguém sabe dizer o que preciso fazer para evitar esse problema ?
Nery,
só por curiosidade, pode anexar o log DIÁRIO, quero saber o tempo de execução desde a emissão da ordem até o último deal.
ps: não preciso saber seu login, cuidado com hackers
Bom dia senhores,
Oi Cezar, agradeço a dica, vou tentar fazer isso.
Oi Rogerio,
Segue o trecho do log que tem as duas ordens de compra, desde já agradeço mais uma vez sua atenção e orientações.
Bom dia senhores,
Oi Cezar, agradeço a dica, vou tentar fazer isso.
Oi Rogerio,
Segue o trecho do log que tem as duas ordens de compra, desde já agradeço mais uma vez sua atenção e orientações.
Você cortou demais, gostaria de ver o horário que a ordem 1974594060 (DEAL sublinhado) foi emitida.
O tempo de execução da ordem 1974594070 está um pouco alto 59 ms, creio que você não opera usando VM, mas isso não é problema, de qualquer forma vale a orientação do Cesar liga uma flag quando emitir a ordem e desliga quando receber o DEAL ou a POSIÇÃO abrir. Enquanto tal flag estiver ligada você não emite nova ordem.
Isso é só uma sugestão.
Bons trades.
JL 0 13:12:00.325 Trades '2002217668': exchange buy 1 WINQ22 at market sl: 99015 tp: 102185
RI 0 13:12:00.370 Trades '2002217668': deal #309453582 buy 1 WINQ22 at 99190 done (based on order #1974594060)
NG 0 13:12:00.373 Trades '2002217668': accepted exchange buy 1 WINQ22 at market sl: 99015 tp: 102185
RF 0 13:12:00.374 Trades '2002217668': exchange buy 1 WINQ22 at market sl: 99015 tp: 102185 placed for execution (Order Ack. Sending to OMS...)
KH 0 13:12:00.384 Trades '2002217668': order #1974594070 buy 1 / 1 WINQ22 at market done in 58.820 ms
MS 0 13:12:00.401 Trades '2002217668': deal #309453583 buy 1 WINQ22 at 99190 done (based on order #1974594070)
Oi Rogerio,
Uso a VPS do MT5 e no log não há outros registros referentes as ordens de compra. Veja no anexo, que acrescentei registros anteriores e posteriores.
Grato,
Nery
Bom dia Rogério,
Qual a opção do ORDER_FILLING você orienta usar, trabalho com as corretoras Rico e Clear ?
Grato,
Nery
void Abrir_nova_posicao() { if( !PositionSelect(_symbol) ) { //Não estou posicionado e posso abrir posições }else { // Estou posicionado e devo acompanhar meu lucro/prejuízo } }
Isso resolve.
Bom dia Adailton,
Eu fazia isso dentro da OnTick e talvez por isso algumas vezes falhasse. Estou fazendo agora numa função fora, como no seu exemplo. Só não entendo a razão da falha, mesmo na OnTick, porque tinha um Sleep(1000/5000), após as operações de compra/venda e antes é feita a verificação se há posição aberta.
Grato pela orientação.
Nery
Oi Rogerio,
Uso a VPS do MT5 e no log não há outros registros referentes as ordens de compra. Veja no anexo, que acrescentei registros anteriores e posteriores.
Grato,
Nery
Olá bom dia
se no LOG não aparece a ORDEM DE COMPRA #1974594060 então ela foi emitida por outra instância do MT5 e não pelo seu EA na VPS.
OBS: Ao sincronizar o TERMINAL com o VPS o TERMINAL fica "setado' para não efetuar TRADING ( botão algotrading off) e assim deve ficar, pois senão as ordens serão emitidas no VPS e no TERMINAL.
Bom dia Rogério,
Qual a opção do ORDER_FILLING você orienta usar, trabalho com as corretoras Rico e Clear ?
Grato,
Nery
Olá
Nery, eu trabalho com as classes de negociação do MQL5, abaixo segue o código do ajuste do modo de preenchimento que faço no OnInit().
int fill = (int)(SymbolInfoInteger(_Symbol, SYMBOL_FILLING_MODE)); cTrade.SetTypeFilling((ENUM_ORDER_TYPE_FILLING)(fill == 0 ? 2 : fill - 1));
- 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