Discussão do artigo "Sistemas de negociação adaptativos e seu uso no terminal do cliente do MetaTrader 5" - página 2
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
É incômodo traduzir a documentação para o inglês? Eu sempre aprecio uma boa documentação. Ótimo artigo, obrigado por sua incrível contribuição.
É incômodo traduzir a documentação para o inglês? Eu sempre aprecio uma boa documentação. Ótimo artigo, obrigado por sua incrível contribuição.
Para trabalhar com parâmetros de entrada (variáveis), é fácil simplesmente declará-los antes da declaração da classe e
seguir o caminho de chamada da classe (inclui).
É incômodo traduzir a documentação para o inglês? Eu sempre aprecio uma boa documentação. Ótimo artigo, obrigado por sua incrível contribuição.
Na classe CAdaptiveStrategy, tento negociar apenas com estocásticos:
Desativei o resto, mas o gráfico no testador ainda é o mesmo. Pelo que entendi, é aqui que as estratégias são conectadas e desconectadas?Sim, as estratégias são conectadas na função CAdaptiveStrategy::Expert_OnInit(). Por conveniência, é melhor usar a versão de depuração do Expert Advisor, que adicionou o salvamento dos resultados em arquivos. Você pode descobrir quais sinais de quais estratégias foram usados na negociação real usando o arquivo direction_res.txt.
Ao usar uma estratégia adaptativa que consiste nos 5 estocásticos especificados(EURUSD H1, teste do início de 2010 a 1º de setembro de 2010), os seguintes resultados são obtidos:
Este é provavelmente o artigo mais instigante que li sobre negociação programática/robótica em um tempo muito, muito longo. Muito obrigado!
Agindo com esse novo entusiasmo, adaptei um pouco o trabalho de Eugene. [Desculpas - pelo menos eu também compartilharei ideias ;-)].
Adaptei um EA existente (infelizmente, ainda não orientado a objetos) para:
1. Várias escalas de tempo: M1, M3, M5, M10, M20, M30, H1
2. Várias MAs rápidas: 3,5,7,9,11
3. Múltiplas MAs lentas: 17, 27, 37, 47 etc. 97, 107, 117 etc.
Anexado a um tick M1, em um loop foreach(period)-foreach(fast)-foreach(slow). Cada tick calcula se precisa verificar se há uma negociação "virtual" e "executa", se necessário, mantendo um saldo P/L lógico/virtual.
Os resultados são muito surpreendentes e muito positivos...
A otimização agora está nas áreas de remoção de períodos de tempo curtos (por exemplo, M1, M3) [já que os períodos de tempo mais altos acabam "vencendo"] e também na determinação da frequência com que o contador de "P/L em execução" deve ser apagado para permitir a detecção de conjuntos de parâmetros de "melhoria rápida".
Também preciso fazer a interface do meu EA de negociação favorito com esse trabalho (para adicionar verificações de ADX/RSI/MACD/RVI etc.), de modo que ele sempre use os pares MA rápidos/lentos ideais e vencedores, e também tenha uma boa lógica de gerenciamento de mercado, dinheiro, posição e negociação.
Mais uma vez, obrigado,
T.
Quantum,
Obviamente, se eu quiser adicionar mais condições de compra e venda (ou pares/combos de condições de compra e venda), além das ainda talentosas
no exemplo em CStrategyMA.mqh,
para acionar outras oportunidades para
new_state=SIGNAL_CLOSE_SHORT; // e new_state=SIGNAL_CLOSE_LONG;não tem sentido lógico adicionar esses combos no arquivo CStrategyMA.mqh, mas para cada nova condição ou par/combo de condições, deve ser dedicado outro arquivo para cada nova condição.
de condições, deve ser dedicado outro arquivo de inclusão/classe,
correto?
Estou me referindo rapidamente, por exemplo, se eu quiser adicionar essas condições:
e
elas podem ser adicionadas em subclasses dentro do CStrategyMA.mqh, sem afetar o sistema principal do sistema adaptativo, em outras palavras, com a
sistema adaptativo, em outras palavras, se esse arquivo de inclusão CStrategyMA.mqh continuar interagindo corretamente com CAdaptiveStrategy.mqh
e CSampleStrategy.mqh, também levando em consideração as novas condições (3 e 4 do exemplo) no núcleo lógico
da ideia do EA?
Ou, para as condições 3 e 4, devo reescrever e adicionar, por exemplo, um arquivo CStrategyMA3and4.mqh?
É possível adicionar essas condições dentro do mesmo CStrategyMA.mqh e fazer tudo funcionar corretamente?
Talvez eu tenha respondido sozinho e seja um pouco estúpido, mas também gostaria de pedir sua(s) opinião(ões).
Obrigado
Sim, as estratégias são conectadas na função CAdaptiveStrategy::Expert_OnInit(). Por conveniência, é melhor usar a versão de depuração do Expert Advisor, na qual foi adicionado o recurso de salvar resultados em arquivos. Você pode descobrir quais sinais de estratégia foram usados na negociação real usando o arquivo direction_res.txt.
Ao usar uma estratégia adaptativa que consiste nos 5 estocásticos acima (EURUSD H1, teste do início de 2010 a 1º de setembro de 2010), os seguintes resultados são obtidos:
Prezado Forexistence,
Você respondeu à sua pergunta :)
Por um lado, podemos adicionar novas condições à estratégia CStrategyMA (mas obteremos a nova estratégia, diferente da inicial); a outra maneira é criar uma nova classe (por exemplo, CStrategyMA34) e adicionar condições adicionais de compra/venda nela.
Mas, é claro, você deve incluir o arquivo com sua nova estratégia e adicionar essas novas estratégias à função Expert_OnInit da classe CAdaptiveStrategy:
A segunda maneira é melhor, pois você pode adicionar muitas estratégias e suas variações.
Não é necessário remover as instâncias da classe CStrategyMA (se houver), pois não analisaremos suas caixas de areia e seus resultados serão ruins.
O mercado nos ajudará a determinar a melhor estratégia na lista de estratégias, incluída em m_all_strategies.
A julgar pelo gráfico, você novamente tem simplesmente um modelo otimizado, mesmo que parte dessa otimização tenha sido automatizada, mas um modelo adaptado é um modelo no qual há um bloco de cálculo que adapta a entrada e a saída ao mercado durante a operação da estratégia, e os parâmetros na inicialização não importam em nada. Nessas condições, apenas a linha de patrimônio líquido em relação à linha de saldo será equalizada, pois, nos casos em que a distribuição para o fechamento de uma posição com lucro tiver mudado, esse sistema ainda recalculará os novos valores e determinará uma nova zona de lucro e, portanto, reconstruirá os parâmetros de lucro e o grupo de ordens de patrimônio líquido será preservado:
O artigo usa o conceito e a aplicação da estratégia adaptativa como na matemática, de fato como um sistema para implementar escolhas de gerenciamento.