![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
Em geral, podemos dizer que o segredo da adaptação do TC aos perceptrons está resolvido:
Suponha que tenhamos três seções adjacentes de dados históricos: A, B, C
Se tivermos encaixe em B e C, e OOS em A, então os falsos sinais serão cortados pelo filtro: PerceptronA = signum(signum(PerceptronB) + signum(PerceptronC))
Se tivermos ajuste em A e B e OOS em C, os sinais falsos são cortados pelo filtro: PerceptronC = signum(signum(PerceptronA) - signum(PerceptronB))
As leis da aritmética aplicam-se aqui, ou seja: se A = B + C, então: C = A - B
onde:
signum(x) é uma função signum, ou seja, seu valor é igual, dependendo do argumento:
signum(x) = 0 se x = 0
signum(x) = 1 se x > 0
signum(x) = -1 se x < 0
Isto é, sinais comerciais devem ser consistentes para um teste de OOS bem sucedido no passado e inconsistentes para um teste de OOS bem sucedido no futuro.
Agora está bem claro porque o TS sobre perceptrons, se otimizado apenas para uma única seção da história, terá um ajuste no futuro. Afinal de contas, se dividirmos a parte otimizada em duas partes e levarmos em conta que os sinais nelas devem ser desajustados, obteremos 0 na diferença, ou seja, nenhum sinal, pois lidamos com a incerteza. Como resultado, em vez de um sinal comercial, obtemos SB, o que leva à perda de aproximadamente a propagação.
Muito legal!
Suponha que tenhamos três seções vizinhas de dados históricos: A, B, C e uma futura seção D
Se tivermos um ajuste em B e C, então
Para ter lucro no lote A, devemos abrir quando os sinais B e C forem consistentes,
E para ter lucro na área D, devemos abrir quando os sinais B e C forem discordantes.
Que porra é essa, t. Reshetov ? Aqui está a implementação do algoritmo para abrir/fechar posições:
Юрий Васильевич, хотелось бы обратить ваше внимание, что история самого последнего/правого интервала подгонки-оптимизации
не учитывается в вашей программе автоматизации подгонки-оптимизации.
Если я в 23 часа сегодня готовлю программу gold_dust для работы с начала следующего дня, то для Н1 пропадают 23 бара.
more:
Yuri Vasilievich, eu gostaria de chamar sua atenção para o fato de que a história do mais recente/intervalo de ajuste-optimização
não é levado em conta em seu programa de automação de otimização de ajuste.
Se estou preparando um programa de pó_de_ouro às 23h de hoje para trabalhar a partir do início do dia seguinte, então faltam 23 barras para o H1.
1. Não Vasilyevich, mas Vyacheslavovich.
2. Não no meu programa, mas no testador de estratégia MT4
1. Não Vasilyevich, mas Vyacheslavovich.
2. Não no meu programa, mas no testador de estratégia MT4
1. peço desculpas pela gralha.
2. Sempre que você carrega o terminal MT4 para execução, é você quem estabelece a data mais correta do intervalo para o testador de estratégia igual à data atual,
excluindo, portanto, o dia atual. Seria mais natural definir o dia seguinte como a borda certa de todo o intervalo de teste,
então o dia atual será incluído no intervalo de testes.
Agora, por favor, aprofunde este ponto, Sergei. O que precisa ser verificado e para que tipo de aleatoriedade?
A partir deste ponto, por favor, seja mais específico, Sergiy. O que deve ser verificado e para que tipo de aleatoriedade?
Eu posso ter dito algo estúpido, mas não sou matemático, estou apenas aprendendo :o) Meu raciocínio é: o que é comércio? Posso dar muitas definições, mas uma delas, por exemplo, pode ser - é um processo de transformação de "curva de cotação" em "curva de depósito". Afinal, é claro que se pode julgar a qualidade de um processo comercial pela curva de depósito (ou equilíbrio). O processo comercial ideal transforma a curva de cotação em uma linha de equilíbrio ideal com inclinação positiva.
Tomei emprestada a curva de equilíbrio de outros para maior clareza (embora sem permissão):
Se eu, por exemplo, sou um investidor ou um comerciante, e penso em comprar/trustar/verificar um sistema comercial em particular, em outras palavras, fazer algum tipo de avaliação objetiva do próprio processo comercial, provavelmente há muitas opções para realizar isto. Estou apenas tentando examinar a curva resultante para a aleatoriedade do resultado. Afinal de contas, o fato de ter sido obtido um saldo positivo agora não diz realmente nada.
Utilizo o seguinte para investigar a série temporal da curva de equilíbrio:
Sempre verifico desta maneira, exatamente esta verificação e rejeito muitas das minhas belas curvas com saldo positivo, porque há fragmentos aleatórios.
PS: aqui estão minhas dúvidas em relação a tal curva. É muito tortuoso :o)
Adendo
Esqueci de acrescentar, um dos critérios importantes. Se as características fractais de um processo de cotação coincidem com/estão próximas das características fractais de um processo comercial - a estratégia é rejeitada.
Hoje encontrei uma característica interessante no EA que está no GD2. Acontece que no futuro você não deverá negociar na 3ª modalidade (passe = 3), mas na 1ª ou 2ª modalidade.
Levamos a EA e a história por 12 meses, ou seja, um ano. Dividimos a história em 4 partes de 3 meses: I, II, III e IV trimestres.
I e IV quartos - isto é OOS, II e III - Amostras.
Etapa 1. Primeiro encontramos valores ótimos de p e sl, ou seja, marcamos datas para II e III trimestres, marcamos o primeiro perceptron x11, x21, x31, x41, e também marcamos p e sl. Passe de modo = 1. Otimizar e definir o melhor resultado.
Etapa 2. Defina datas para Q2, desmarque p e sl e otimize as configurações para o primeiro perceptron. Defina o melhor resultado nos ajustes.
Etapa 3. Definir datas para o terceiro trimestre, remover carrapatos de x11, x21, x31, x41, definir x12, x22, x32, x42, passar = 2 e otimizar as configurações para o segundo perceptron. Definimos o melhor resultado nos ajustes.
4º passo. Trocar o passe = 3, marcar datas para o primeiro trimestre e fazer o teste. Se o teste for bem sucedido, significa que pelo menos um dos perceptrons será robusto.
Isto é, todas as etapas acima como na metodologia GD2.
Passo 5. Defina datas para Q4, passe = 1. Faça o teste.
Passo 6. Datas definidas para o quarto trimestre, passe = 2. Faça o teste.
Pelo menos um dos testes no par. 5 ou paras. 6 devem ser bem sucedidos.
Mas nós fizemos os testes no futuro, ou seja, no quarto trimestre, por assim dizer, para testar. E o GD está administrando tudo no passado, ou seja, os 3 primeiros trimestres. Como sabemos qual passe = 1 ou passe = 2 produzirá melhores resultados? Definimos as datas para os primeiros 3 trimestres e as executamos primeiro no modo 1 e depois no modo 2. E então olhamos para os melhores resultados para todos os 9 meses - a modalidade é a mais robusta.
Para investigar a série temporal da curva de equilíbrio, utilizo o seguinte:
- critérios de tendência e aleatoriedade (classificação, série, inversão, critério de autocorrelação, etc., há muitos deles)
- análise fractal
Sempre verifico desta maneira, exatamente esta verificação rejeita muitas das minhas belas curvas com saldo positivo, porque há fragmentos aleatórios.Por que é tão difícil (quero dizer, em azul)? Você não acha que pode rejeitar um bom sistema dessa maneira? Sim, entendo: você parece ser um perfeccionista extremo...
imho, a seqüência de ofícios expressa como "sucesso-falha" é, na sua esmagadora maioria, um processo Bernoulli. Então, como você remove a aleatoriedade de lá?