Discussão do artigo "Desenvolvendo um EA multimoeda (Parte 6): Automatizando a seleção de um grupo de instâncias"
Obrigado! :)
Ótimo artigo e sistema :)
- Aplicamos um escalonamento mínimo-máximo a cada uma delas, levando ao intervalo [0; 1]. Obtemos colunas adicionais com o sufixo "_s" ,
Yuri, como você fez isso? Pesquisei no exel e não vi nada parecido com isso nas funções. Você escreveu sua própria fórmula para isso ou como fez isso? O Google para a consulta min-max scaling in Excel também não me deu nada normal....
Ótimo artigo e sistema :)
- Aplicamos um escalonamento mínimo-máximo a cada uma delas, levando ao intervalo [0; 1]. Obtemos colunas adicionais com o sufixo "_s" ,
Yuri, como você fez isso? Pesquisei no exel e não vi nada parecido com isso nas funções existentes.
Victor, obrigado por seu feedback!
Eu também não conheço uma função especial no Excel, faço assim:
Victor, obrigado pelo feedback!
Eu também não conheço nenhuma função especial no Excel, faço assim:
Obrigado, Yuri.
Mas você escreveu sobre adicionar as colunas Profit,Expected Payoff,Profit Factor,Recovery Factor,Sharpe Ratio,Equity DD %,Trades, com _s. Em que ordem devo adicioná-las para que funcione? Cada coluna após a coluna original ou todas podem ser adicionadas no final da tabela? Você poderia fazer uma captura de tela dos nomes das colunas, como faz com a tabela já editada, ou apenas anexar um pequeno arquivo já editado como amostra.
Além disso, quando você otimiza o Expert Advisor, você define um critério complexo ou apenas o equilíbrio máximo? Tentei fazer isso e tenho um número não muito grande de negociações nas descobertas de passagens, cerca de 100-180 negociações por 5 anos.
E, por favor, diga-me se eu gostaria que seu EA lesse o sinal e abrisse negociações na abertura de uma nova barra em um determinado período de tempo, mas acompanhasse as negociações a cada tick, como funciona agora. Onde devo adicionar a função de verificação da nova barra para que funcione dessa forma?
A ordem de adição só importa em termos de como fazer isso mais rapidamente. Para mim, foi mais rápido adicionar essas colunas no final da tabela (colunas AC:AI), calcular os desvios em várias colunas novas (AJ : AP), somar AJ:AP em AQ, encontrar o fator de escala máximo Scale em AR e calcular a relação Res = AR/AQ em AS. Para classificá-la, é necessário copiar apenas os valores de AS para uma nova coluna AT. Anexei um exemplo.
Começo a otimização com o critério complexo e depois com todos os outros critérios. O número de negócios pode ser diferente, inclusive relativamente pequeno. Isso depende do tamanho dos níveis SL e TP.
No próximo artigo, pretendo falar sobre a função de verificação de uma nova barra e como ela pode ser aplicada lá.
No próximo artigo, pretendo falar sobre a função de verificação de uma nova barra e como ela pode ser aplicada lá.
Yuri, obrigado pela tabela de exemplo, entendo que ela é do último artigo (7) e também será útil, mas pedi um exemplo da tabela deste artigo (6), que você alimenta a entrada do Expert Advisor OptGroupClusterExpert.mq5. Pelo que entendi, essa tabela é chamada Params_SV_EURGBP_H1-with_cluster.csv e Params_SV_EURGBP_H1.csv. Foi isso que eu pedi. Anexe essas tabelas como exemplo.
Sobre o próximo artigo, legal! Vamos aguardar:) Se fosse bom adicionar à estratégia a possibilidade de filtro de tempo para cada estratégia (especificar os horários de início e término do período de negociação) e alguns filtros nos indicadores (2-3 partes), então acho que seria um ótimo EA para negociar em todo o mercado :).
Victor, sim, de fato, me antecipei um pouco com o exemplo da tabela anterior.
Anexei um exemplo para Params_SV_EURGBP_H1.xlsx, pois o arquivo CSV não conterá mais fórmulas. Você precisará salvá-lo em CSV e, se o Excel usar ';' como delimitador, será necessário substituir ';' por ',' em todo o arquivo CSV. O arquivo Params_SV_EURGBP_H1-with_cluster.csv é obtido automaticamente usando o código Python do Params_SV_EURGBP_H1.csv fornecido no artigo.
Quanto à adição de filtros de tempo e indicadores adicionais: a arquitetura usada permite isso - você pode criar novas classes de estratégias de negociação (sucessoras de CVirtualStrategy) com quaisquer filtros e indicadores desejados. Não planejo usar filtros de tempo para mim, pois nunca consegui melhorar os resultados de negociação com a introdução de restrições de tempo. Não pretendo usar muitos indicadores em uma única estratégia, porque a filtragem forte dos sinais de entrada é menos importante para mim. Isso pode ser obtido indiretamente, combinando várias instâncias de estratégias que usam um indicador diferente cada, por exemplo.
Foi publicado o novo artigo Developing Multicurrency EA Trades (Part 6): Automatically Selecting Instance Groups:
Por Yuriy Bykov

- 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 Desenvolvendo um EA multimoeda (Parte 6): Automatizando a seleção de um grupo de instâncias foi publicado:
Depois de otimizar uma estratégia de negociação, obtemos conjuntos de parâmetros que facilitam a criação de várias instâncias dessa estratégia, todas integradas em um único Expert Advisor. Antes, fazíamos isso manualmente, mas agora vamos tentar automatizar esse processo.
No artigo anterior, demos um passo importante ao implementar um recurso que permite escolher como a estratégia opera: com um tamanho de posição constante ou variável. Com isso, conseguimos ajustar os resultados da estratégia de acordo com o rebaixamento máximo alcançado e agrupar as estratégias dentro dos limites especificados. Para ilustrar, selecionamos manualmente algumas das combinações mais promissoras dos parâmetros de entrada de uma única instância da estratégia e tentamos organizá-las em um grupo, ou até mesmo em um conjunto de três grupos, cada um com três estratégias. Nesse último cenário, obtivemos os melhores resultados.
No entanto, se precisarmos aumentar o número de estratégias em cada grupo e combinar mais grupos diferentes, o trabalho manual vai crescer significativamente.
Primeiro, para cada símbolo, precisamos otimizar uma única instância da estratégia usando diferentes critérios. Em alguns casos, pode ser necessário fazer uma otimização separada para diferentes timeframes. No caso da nossa estratégia modelo, também podemos realizar otimizações distintas para os tipos de ordens abertas (stop, limite ou posições a mercado).
Segundo, precisamos escolher um pequeno número (entre 10 e 20) dos melhores parâmetros dentre os milhares obtidos (cerca de 20 a 50 mil) após as otimizações. No entanto, esses parâmetros devem ser os melhores não apenas individualmente, mas também quando combinados em um grupo. Esse processo de selecionar e adicionar cada instância da estratégia manualmente demanda tempo e paciência.
Terceiro, precisamos combinar os grupos obtidos em grupos maiores usando a normalização. Quando fazemos isso manualmente, conseguimos criar apenas dois ou três níveis. Logo, tentar aumentar o número de níveis de agrupamento já se torna um trabalho bastante árduo.
Autor: Yuriy Bykov