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
Ao contrário da MQL5, nas matrizes estáticas MQL4 as matrizes podem mudar de tamanho.
Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial
Nova versão da plataforma MetaTrader 5 build 1595: acesso ao histórico de preços
fxsaber, 2017.05.01 16:36
Sempre houve um bug no MT4 na Trailing Stop. Se você observar durante um forte movimento de preços para cima e para baixo,
você pode ver o SL se movendo para cima e para baixo. Aqui, um pequeno movimento, acontece muitas vezes maior
2017.05.22 10:53:38.563 '9898616': parada móvel #1465775202 -> 1.29765
2017.05.22 10:53:38.483'9898616': parada móvel #1465775202 -> 1.29764
2017.05.22 10:53:33.236'9898616': parada móvel #1465775202 -> 1.29763
2017.05.22 10:53:33.130'9898616': parada móvel #1465775202 -> 1.29764
2017.05.22 10:53:32.813 '9898616': parada móvel #1465775202 -> 1.29762
Obtive-o quando SL = 2 (último dígito para simplificar), no próximo sinal o preço subiu e o terminal deu uma ordem para aumentar SL para 4.
No próximo tick, o preço caiu, mas SL ainda está em 2. O terminal emite uma ordem para elevar o SL para 3.
O servidor, como uma girafa de pescoço comprido, processou o primeiro pedido e elevou o SL para 4. O servidor processou o segundo pedido e diminuiu o SL para 3.
Portanto, o terminal envia ordens sem sentido extra e aumenta a carga no servidor.
Além disso, há o risco de perdas desnecessárias para o comerciante por causa do movimento inverso do SL.
Isto também se aplica ao rastreamento de programas pela EA ou roteiro . Em parte, nós o corrigimos movendo SL em passos de 3...5 pips.
O que fazer. Salvando o valor do SL, emitido na última OrderModify.
E então calcular a próxima ordem com base neste valor.
Seria assim: dois pedidos a menos para o servidor, movendo o SL apenas para frente, reduzindo a carga da CPU no computador
2017.05.22 10:53:38.563 '9898616': parada móvel #1465775202 -> 1.29765
2017.05.22 10:53:33.130 '9898616': parada móvel #1465775202 -> 1.29764
2017.05.22 10:53:32.813 '9898616': parada móvel #1465775202 -> 1.29762
Ao modificar os pedidos, muitas vezes é necessário comparar o TP/SL anterior com o novo valor a ser modificado. Se tentarmos modificá-lo com o valor antigo, teremos o erro nº 1.
Tomemos o exemplo de comparar o antigo SL (100,03) e o novo SL (100,02) por USDJPY (Dígitos = 2). Está escrito na ajuda:
O segundo método envolve a comparação da diferença normalizada de dois números reais com um valor zero. Comparar a diferença de números normalizados com zero é inútil, pois como resultado de qualquer operação matemática com números normalizados, o resultado é não-normalizado.
Ou seja, a comparação deve ser feita desta forma:
Mas às vezes o corretor pode dar preços não-normalizados. E por exemplo, temos o preço 100.025, não 100.02. Tendo comparado de acordo com o esquema acima, obteremos a diferença de 0,01, ou seja, podemos modificá-lo. Mas tendo passado para modificação normalizada para os dígitos 100.025, na verdade passaremos 100.03 e, conseqüentemente, teremos o erro número 1.
Em geral, pela experiência até agora, cheguei à conclusão de que em Dígitos iguais para modificações é melhorcomparar a diferença de números normalizados com zero (o que a ajuda não recomenda fazer).
Roteiro a ser verificado:
Ao contrário do OrderProfit() no MT4 OrderComission() armazena dados não arredondados para centavos.
SZZ In OrderPrint() a comissão é arredondada (como na GUI).
Ao contrário do OrderProfit() no MT4 OrderComission() armazena dados não arredondados para centavos.
SZZ In OrderPrint() a comissão é arredondada (como na GUI).
Portanto, o que devo fazer para obter o valor correto de OrderProfit()+OrderComission()+OrderSwap()?
Assim, para obter o valor correto de OrderProfit()+OrderComission()+OrderSwap(), o que deve ser feito?
Nada! Este é o valor mais correto. Graças a esta comissão, podemos ver na GUI que a comissão total difere em um centavo da soma dos números mostrados pela GUI.
Nada! Este é o valor mais correto. Graças a esta comissão, você pode observar na GUI que a comissão total difere em um centavo da soma dos números que a GUI mostra.
Então eu não entendo nada disso. O que você quer dizer com "OrderCommission() armazena dados não arredondados a centavos"? Onde eles são arredondados? E como eles são arredondados?