MetaTrader 5 Strategy Tester: bugs, bugs, sugestões para melhorias - página 16
![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
Se estas forem as fórmulas correctas
O Testador calcula estes números de forma muito diferente. Tenho diferenças notáveis nos resultados entre estas fórmulas e o que o Testador mostra (para além do lucro).
Sugiro que cheguemos ao fundo da questão. O obstáculo é exactamente o que MT5 considera um comércio lucrativo.
Remover um, ou ambos ao mesmo tempo, e comparar.
Ou aqui (se acima não ajudar) remover "=".
O que estamos a discutir agora? Desactivar agentes ou permitir a utilização de caracteres em testes/optimização?
Se existem dois problemas, devemos provavelmente discutir e resolver ambos. Ou será impossível?
1. Porque é que há uma desactivação dos agentes após a optimização ter sido feita.
2. Qual é a razão pela qual a adição automática de caracteres ao testador é interrompida?
Remover um, ou ambos ao mesmo tempo, e comparar.
Ou aqui (se acima não ajudar) remover "=".
É assim que funciona o MT5
Isto é, em MT5 pode fechar uma posição e obter uma perda (o saldo antes da abertura é inferior ao saldo após o fecho). Mas neste caso o MT5-Tester (terminal não foi verificado) considerará este comércio como rentável.
Por exemplo, MT5_PF = 1,89 e MT4_PF = 2,01.
Se estas forem as fórmulas certas
O Testador calcula estes números de forma muito diferente. Tenho diferenças notáveis nos resultados entre estas fórmulas e o que o Testador mostra (excepto no que respeita ao lucro).
Proponho que isto fique claro. O obstáculo é o que MT5 considera um comércio lucrativo.
Porque é que existe aqui um modificador constante?
Quando esta variável deixar espaço, provavelmente será reinicializada. imho, const não é necessário
Se removermos OrderCommission() + OrderSwap() ? - estamos a falar de lucro nas transacções, não de comissão?
SZZ: como opção, o testador pode trabalhar com o saldo, se a ordem for fechada, o saldo mudou, compará-lo com o saldo antigo, em geral, não consigo adivinhar.... , não encontrei a fonte, mas existe um artigohttps://www.mql5.com/ru/articles/4226 com o mesmo cálculo de lucro, mas ainda não o li.
Porque é que existe aqui um modificador constante?
É necessário calcular a variável Lucro em todas as iterações do loop , embora seja possível que, quando esta variável sair do âmbito, seja reinicializada... imho, não precisa de constantes.
Será recriado. Tudo está correcto aí.
E se eu remover OrderCommission() + OrderSwap() ? - estamos a falar de lucro por comércio, não por comissão ?
Fórmula MT5 acima. Isto cria graves distorções ao calcular o PF do escalpe de TSs. E como pode ser que a PF dependa da plataforma? Tem de ser inequívoca.
Este problema já foi levantado por mim em ramos de construção anteriores. Nunca foi corrigido. Encontrei a minha muleta. Desactivo alguns dos agentes (3 de 10 no meu caso) e habilito-os após 0 iteração, e tudo corre bem. Por vezes, no entanto, alguns agentes param no processo, mas raramente, o algoritmo da solução é o mesmo.
É uma pena, mas a direcção manual não é uma opção. Tenho uma optimização automática.
Se existem dois problemas, talvez ambos devam ser discutidos e resolvidos. Ou será isso impossível?
1. Porque é que os agentes são desligados após a optimização.
2. Qual é a razão pela qual a adição automática de caracteres ao testador é interrompida?
1. Ver os registos do testador, está tudo aí.
2. já está fixado. Mas até que tenha uma construção com correcções, pode usar drag-drop (não discutimos por que razão a adição de caracteres parou, discutimos como ainda pode testar nestas condições)
Corro alternadamente em cada símbolo personalizado. A partir de um certo ponto é impossível ver o caminho até eles no Testador, mas ainda são seleccionáveis através de arrastar e largar do Market Watch. Depois de algum tempo isto também não funciona: pode seleccionar ou um símbolo normal, ou apenas um símbolo personalizado. Os outros não são possíveis. A animação abaixo mostra esta situação.
1. Ver os registos do testador, está tudo aí.
2. já está fixado. Mas até que tenha uma construção com correcções, pode usar drag-drop (não discutimos porque é que a adição de caracteres parou, discutimos como é que ainda pode testar nestas condições)
Durante a optimização genética, utilizo muitos parâmetros. Assim que o número de variantes se torna tão grande que aparece na notação científica (6,8768769e+21), a optimização continua com metade dos agentes (4 em 8) após a geração 0. Nenhuma menção a isto nos registos. A optimização em si funciona bem, mas com meia carga, o dobro do tempo.
O comportamento nem sempre é reproduzido, e pode ser por isso que não está a ser corrigido. Ontem tinha-o, hoje não o tenho. Talvez dependa também da EA. Tenho-o com molduras. O tamanho do ex5 é cerca de 0.5 Mb. Tenho 8 Gb de memória. Intel i7, 4 núcleos, 8 fios. Divorciado. Sem supervisão.