Discussão do artigo "Desenvolvendo um EA multimoeda (Parte 2): Transição para posições virtuais de estratégias de trading" - página 3

 
Yuriy Bykov #:

Não posso resistir a observar aqui que 19% do lucro durante cinco anos no teste foi obtido com um lote constante em condições de redução inferior a US$ 1.000, ou seja, 1%. Se nos concentrarmos no drawdown máximo de até 10% e usarmos um lote variável, os resultados serão ainda mais interessantes.

Você deve mostrar esses resultados interessantes. Afinal, de acordo com o testador, você tem negociações lucrativas == 93,06%, o que é uma porcentagem excelente. Mas há apenas 5-10% de programadores com experiência aqui e ninguém estudará seu código, exceto aqueles que gostam de fuçar nas entranhas dos programas. Por exemplo, não estou interessado nisso, pelo menos porque estou ocupado com meu próprio projeto e estratégia. Em geral, se eu fosse você, executaria uma estratégia com parâmetros mais arriscados, mas com um lucro vitalmente interessante. E, pessoalmente, não preciso de cinco anos de testes. A situação do mercado está mudando muito rápido. Eu me lembro dos tempos em que, se o EURUSD fosse inferior a 300 p. no dia de negociação de 4 dígitos, os traders reclamavam que o mercado estava dormindo e ficavam em cima do muro. Agora, se 200 pips forem atingidos algumas vezes em um mês, é como um milagre. Peço desculpas por alguma dureza, mas é que ultimamente 95% dos artigos estão vazios. Espero um dia lançar minha não-ficção e então me vingar )).

EURUSDH1

 
fxsaber #:

Fiz a refatoração por entradas. Alguns trechos de código, por exemplo.

Muito obrigado, dei uma olhada no código. Analisarei a passagem de parâmetros de entrada mais tarde. Se não for possível adotar completamente essa abordagem, alguns dos pontos provavelmente serão muito úteis.

 
Alexey Volchanskiy #:

Você mostraria esses resultados interessantes. Afinal, de acordo com o testador, você tem negociações lucrativas == 93,06%, o que é uma porcentagem excelente. Mas há apenas 5-10% de programadores com experiência e ninguém estudará seu código, exceto aqueles que gostam de fuçar nas entranhas dos programas. Por exemplo, não estou interessado nisso, pelo menos porque estou ocupado com meu próprio projeto e estratégia. Em geral, se eu fosse você, executaria uma estratégia com parâmetros mais arriscados, mas com um lucro vitalmente interessante. E, pessoalmente, não preciso de cinco anos de testes. A situação do mercado está mudando muito rápido. Eu me lembro dos tempos em que, se o EURUSD fosse inferior a 300 p. no dia de negociação de 4 dígitos, os traders reclamavam que o mercado estava dormindo e ficavam em cima do muro. Agora, se 200 pips forem atingidos algumas vezes em um mês, é como um milagre. Peço desculpas por alguma dureza, mas é que ultimamente 95% dos artigos estão vazios. Espero um dia liberar minha netlena e depois me vingar))

Alexey, com interesse, vou terminar seu artigo, cujo início você mostrou recentemente no fórum). Acho que vou gostar muito mais dele do que de outro artigo da série sobre o fato de que o campo das redes neurais inclui muitas coisas.

Até que a negociação de lote variável seja implementada, é mais difícil estimar a relação lucratividade/perda a partir dos resultados do teste, mas ainda é possível. Talvez você esteja certo e, nos próximos artigos, faça sentido mostrar o gráfico "interessante" no final.

Por enquanto, aqui estão os resultados das execuções do Expert Advisor deste artigo com diferentes multiplicadores de tamanho de posição, mas constantes durante todos os cinco anos com um depósito inicial de US$ 1.000. No artigo, os tamanhos de posição são calibrados para um tamanho de depósito de US$ 1.000, portanto, vamos reduzir o valor inicial do depoPart_ em cerca de 10 vezes.


No mínimodepoPart_ = 0,04, o Expert Advisor não abriu posições reais, porque seu volume, quando recalculado proporcionalmente ao saldo, é menor que 0,01. Mas, a partir do próximo valor do multiplicador depoPart_ = 0,06, as posições de mercado já foram abertas.

No máximo depoPart_ = 0,4, obtemos um lucro de cerca de US$ 2.2800. Entretanto, o drawdown mostrado aqui é o drawdown relativo encontrado durante toda a execução. Mas 10% de 23.000 e de 1.000 são valores muito diferentes. É por isso que se deve analisar os resultados de uma única execução com certeza:



Como você pode ver, o drawdown de US$ 1.167 foi realmente atingido, o que, no momento em que foi atingido, correspondia a apenas 9,99% do saldo atual, mas se o início do período de teste fosse logo antes desse momento desagradável, teríamos perdido todo o depósito. Portanto, esse tamanho de posições não pode ser usado.

Vejamos os resultados com depoPart_ = 0,2



Aqui, o drawdown máximo não excedeu US$ 494, ou seja, cerca de 50% do depósito inicial de US$ 1.000. Portanto, podemos dizer que, com esse tamanho de posições, mesmo se escolhermos o início do período durante os cinco anos em consideração da forma menos bem-sucedida possível, não haverá perda de todo o depósito.

Para um ano (2022), os resultados serão os seguintes:



ou seja, um lucro de cerca de 150% ao ano.

Portanto, os resultados parecem encorajadores, mas não estão isentos de sua própria colher de tártaro. Por exemplo, os resultados para o ano de 2023, que não estava envolvido na otimização dos parâmetros, já são muito piores:


Ou seja, é claro que obtivemos 40% no final do ano, mas em 8 dos 12 meses não houve crescimento sustentável. Considero esse problema como o principal, e esta série de artigos será dedicada a diferentes abordagens para resolvê-lo.

 
Às vezes, uso essa abordagem: retiro todo o dinheiro nos primeiros dias do mês, excedendo o depósito inicial. Isso permite carregar o depósito de maneira uniforme (quase uniforme), independentemente do dinheiro na conta durante o teste.

Obrigado pelo artigo.
[Excluído]  

Eu deveria ter começado com os resultados do forward logo de cara, então o artigo não teria parecido mais interessante do que os artigos do NS :)

A ideia de uma cesta de TCs é totalmente revelada pelo treinamento, por exemplo, de um único classificador de tipo RF, em que cada subclassificador já representa um TC separado.

Ou seja, em termos de potência material, você constrói um classificador forte regular a partir de vários classificadores fracos. Isso é feito em poucas linhas no MO e, normalmente, o restante do esforço(principal) é gasto para fazer com que ele funcione em novos dados. Aqui está um exemplo para compreensão.

Outro artigo mostra como era difícil viver sem MO e YPs de alto nível. Quanto trabalho tinha que ser feito para codificar uma ideia trivial. Então, curta, inscreva-se :)
 
No entanto, como as percepções de um mesmo artigo podem ser diferentes.
 
Andrey Dik uniformemente (quase uniformemente), independentemente do dinheiro na conta durante o teste.

Sim, também usei uma abordagem semelhante ao testar um dos Expert Advisors com configurações agressivas - cheguei a uma conclusão ao aumentar o depósito até um determinado valor. Isso ajuda a entender o lucro que pode ser obtido se você retirar fundos da conta de negociação, em vez de reinvesti-los constantemente. Se estiver interessado apenas no drawdown obtido, a execução em um testador com um autolot variável sem retiradas geralmente é suficiente.

 
fxsaber #:
Entretanto, as percepções de um mesmo artigo podem ser muito diferentes.

Os operadores de algoritmos se dividem simplesmente em duas classes:

- Os teóricos, para quem o principal é se aprofundar nas entranhas do código. Eles têm uma fonte de renda estável, por exemplo, vão ao escritório todos os dias e recebem um salário. Se não souberem programar, gostam de colecionar selos, embalagens de doces, borboletas e, à noite, olham para elas com prazer por meio de um telescópio de grão fino :).

- Os profissionais estão em voo livre. Eles não se sentam em escritórios, não recebem salários, por isso estão concentrados em resultados financeiros, não em obter um orgasmo estético.

Gostaria de aproveitar esta oportunidade para expressar minha gratidão pela biblioteca MT4Orders, que me ajuda a criar EAs multiplataforma.

[Excluído]  
Há também uma terceira classe de algotraders que divide outros algotraders em classes :)
 
Maxim Dmitrievsky #:

Eu deveria ter começado com os resultados do forward logo de cara, então o artigo não teria parecido mais interessante do que os artigos do NS :)

A ideia de uma cesta de TCs é totalmente revelada pelo treinamento, por exemplo, de um único classificador de tipo de RF, em que cada subclassificador já representa um TC separado.

Ou seja, em termos de potência material, você constrói um classificador forte regular a partir de vários classificadores fracos. Isso é feito em poucas linhas no MO e, normalmente, o restante do esforço(principal) é gasto para fazer com que ele funcione em novos dados. Aqui está um exemplo para compreensão.

Outro artigo mostra como era difícil viver sem MO e YPs de alto nível. Quanto trabalho tinha que ser feito para codificar uma ideia trivial. Então, por exemplo, inscreva-se :)

É claro :) Mas, falando sério, só comecei a ler os artigos depois que consegui, pela primeira vez, obterresultados semelhantes aos resultados durante operíodo deotimizaçãono período futuro depelo menosum ano. Por exemplo, quando a otimização foi realizada para o período estritamente até 2023, a execução para 2023 produziu algo como isto:


Isso inspira certo otimismo, mas deve ser tratado com muito cuidado para não cair no autoengano.

Sobre a criação de um classificador forte a partir de vários fracos - essa é a ideia principal, essa é a esperança de que seja possível obter resultados úteis.