Discussão do artigo "Testador de estratégia personalizada com base em cálculos matemáticos rápido"
Terminei de ler o código-fonte do ResourceCreator.mqh. Surgiram algumas perguntas
- Por que eles decidiram não usar o FileLoad e o FileSave padrão?
- Os desenvolvedores disseram que a diretiva tester_file passa o arquivo correspondente para os agentes somente após a compactação forçada. Então, a variante com aspas dentro (acho que você decidiu isso - ainda não li mais) do EX5 é razoável ou é uma alternativa ao tester_folder? Você fez alguma pesquisa de velocidade nesse caso?
- Entendi corretamente que em cada passagem você descompacta o recurso interno?
Eles devem ter se esquecido de remover o construtor de public. Não entendo por que eles não usaram um construtor normal?
Essa solução tem um ponto fraco na forma de saída anormal do terminal. Isso implicará na perda de dados da otimização interrompida. E, como você já percebeu, os arquivos mqd não podem ser lidos novamente.
Além disso, essa solução não permite que você use o Analisador em trânsito.
Um bom artigo para começar! Observações
- Na verdade, é sugerido o uso de uma API de negociação proprietária. O que quase anula o desenvolvimento. Faz sentido ter seu próprio testador dentro do MT5, quando a API de negociação de seu testador coincide com a API padrão. Caso contrário, você poderá usar algum testador pronto dos concorrentes ou do mesmo R com o mesmo benefício.
- Com o mecanismo de símbolos personalizados, não está muito claro para que esse testador pode ser necessário.
- Seria bom ver as manipulações de bytes em um formato universal.
- Não há comparação entre a velocidade de seu testador e a do testador padrão.
- É razoável usar seu testador para esse fim também
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação.
Singularidade tecnológica do MetaTrader 5
fxsaber, 2017.12.14 14:11 pm.
Para símbolos personalizados, há uma opção para lançar ticks por meio de CustomTicksAdd. Isso é muito útil! Por analogia, eu gostaria de ver TesterTicksAdd, bem como TesterCreate, TesterDestroy. Assim, você pode lançar seus próprios ticks no testador e ler o ambiente de negociação do estado atual do testador.
Isso seria um avanço na negociação de algo melhor do que os feeds personalizados, porque o esquema de escrever um TS seria completamente alterado. Todas as implementações anteriores de TS se tornariam imediatamente o antigo padrão da lógica de negociação algorítmica.
Obrigado ao autor!
Por que o FrameNext é usado sem o while?
Legal, mas me parece muito complicado... na verdade, você pode encontrar algum testador/otimizador pronto em python e chamá-lo se necessário, inclusive na gpu. Deve haver muitos testadores em python.
A propósito, não há um único artigo sobre o uso de scripts python no mt5, e isso pode ser muito produtivo.
- A manipulação de bytes gostaria de ver em um formato universal.
Não estou entendendo. O que é uma visão universal?
ZY Por que o FrameNext é usado sem o while?
Essa solução tem um ponto fraco na forma de uma saída anormal do terminal. Isso causará a perda de dados da otimização interrompida. E, como você já percebeu, os arquivos mqd não podem ser lidos novamente.
Além disso, essa solução não permite que você use o Analisador em trânsito.
Pelo que entendi, os dados não serão perdidos porque as estatísticas são coletadas por outra instância do programa. Em geral, considero que o armazenamento de todas as execuções em um único arquivo é a solução mais bem-sucedida de todo o projeto.
Legal, mas me parece muito complicado... na verdade, você pode encontrar algum testador/otimizador pronto em python e chamá-lo se necessário, inclusive na gpu. Deve haver muitos testadores em python.
A propósito, não há um único artigo sobre o uso de scripts python no MT5, e isso pode ser muito produtivo.
Bem, como você usará o MetaTrader Cloud em Python? Até mesmo como você deseja executar o script python no MT?
Provavelmente, eles se esqueceram de remover o construtor de público. Não entendo por que não usaram um construtor normal?
Experimentos.
Terminei de ler o código-fonte do ResourceCreator.mqh. Surgiram algumas dúvidas
- Por que eles decidiram não usar o FileLoad e o FileSave padrão?
- Os desenvolvedores disseram que a diretiva tester_file passa o arquivo correspondente para os agentes somente após a compactação forçada. Então, a variante com aspas dentro (acho que você decidiu isso - ainda não li mais) do EX5 é razoável ou é uma alternativa ao tester_folder? Você fez alguma pesquisa de velocidade nesse caso?
- Entendi corretamente que em cada passagem você descompacta o recurso interno?
- 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
Novo artigo Testador de estratégia personalizada com base em cálculos matemáticos rápido foi publicado:
O artigo descreve como criar um testador de estratégias personalizado e um analisador de corridas de otimização próprio. Depois de lê-lo, você vai entender como funciona o modo de cálculos matemáticos e o mecanismo de quadros, como preparar e fazer upload de seus próprios dados para cálculos e usar algoritmos eficientes para comprimi-los. Além disso, este artigo será de interesse para quem deseje saber maneiras de armazenar informações personalizadas num EA.
Seu código não tem nada além do parâmetro de entrada x a da função OnTester, que calcula o valor do seno do argumento carregado nela, neste caso, x. Vamos agora tentar otimizar essa função. Para fazer isso no testador de estratégias, selecionamos o tipo de otimização "Lenta (busca exaustiva de parâmetros)", enquanto o modo de simulação é o mesmo: "cálculo matemático".
Nos parâmetros de optimização, definimos a zona de alteração x: valor inicial - 0,01, passo - 0,01, stop - 10. Depois que tudo estiver pronto, iniciamos o testador de estratégias. Ele completará seu trabalho quase instantaneamente, após o qual abriremos o gráfico de otimização e, no menu de contexto, selecionaremos o "Gráfico de linhas". Aparecerá a função seno:
Fig. 3. Representação gráfica da função seno
Autor: Vasiliy Sokolov