Existe um padrão para o caos? Vamos tentar encontrá-lo! Aprendizado de máquina com o exemplo de uma amostra específica. - página 27

 
Aleksey Vyazmikin #:

No Excel, a contagem começa a partir de um e, no CatBoost e no mql (e em outros idiomas), a partir de zero.

Ou seja, pelo que entendi, você simplesmente pegou a última coluna, fez uma matriz acumulativa e obteve um gráfico. Vamos supor. Você criou alguns preditores com base nesses dados. E o alvo é o próximo valor dessa série ou o original, ou seja, o delta? Ou seja, um modelo de regressão que dá o resultado condicionalmente (+x||-x) e, se +x, entramos na negociação, certo?

Tentarei fornecer os dados para essas últimas colunas, mas um pouco mais tarde - algumas alterações foram feitas por mim no código desde então, depois elas foram perdidas e tudo foi refeito novamente - caso difícil.

É isso mesmo! Um alvo é formado a partir do gráfico. Em seguida, apenas uma perua - um oscilador - é "ajustada" a esse alvo por meio da genética. O oscilador é usado como um preditor e também é o alvo (sua próxima etapa). E se a próxima etapa prevista do alvo for para baixo, vendemos; se for para cima, compramos. Esse é todo o algoritmo simples. Não há takeout, porque o lucro é apenas sobre o sinal reverso. E o stop é calculado em todas as negociações negativas no trem de amostra por meio da abordagem estatística (média de 5 sigma de negociações negativas), mas nas imagens acima o stop é zerado para apertar.

 
RomFil #:

Ainda não entendi ... :( Que negócios, que marcas?

A abordagem de negociação é a seguinte:

1) Há um movimento de preço (gráfico fechado, por exemplo, bitcoin). Um movimento com período 9 e deslocamento -2 é plotado no gráfico para maior clareza.

2) A negociação com a abordagem descrita acima implica sinais para vender ou comprar um ativo sem estar vinculado ao lote. Em um determinado momento, há uma negociação sobre o ativo.

3) Se a negociação tiver lucro, o número de pontos +A será registrado no total, caso contrário, -A.

4) É assim que a receita em pontos é formada.

Está claro que, se você adicionar spread e comissão aos gráficos de lucro mencionados acima, as imagens não serão tão animadoras.

Tudo é resolvido dez vezes mais facilmente. Tempo é tempo.
 
RomFil #:

É isso mesmo! Um alvo é formado a partir do gráfico. Em seguida, apenas uma perua - um oscilador - é "ajustada" a esse alvo por meio da genética. O oscilador é usado como um indicador e também é o alvo (seu próximo passo). E se o próximo passo previsto do alvo for para baixo, vendemos; se for para cima, compramos. Esse é todo o algoritmo simples. Não há takeout, porque o lucro é apenas sobre o sinal reverso. E o stop é calculado em todas as negociações negativas no trem de amostra por meio da abordagem estatística (média de 5 sigma de negociações negativas), mas nas imagens acima o stop é zerado para apertar.

O resultado financeiro foi contabilizado em uma coluna, pelo que entendi.

Tente duas - a última para vendas e a penúltima para compras. Nesse caso, a coluna Target_P deve se tornar um filtro - se o gráfico estiver em +1 e houver sinal de compra, faça-a; caso contrário, pule a entrada; o mesmo vale para a venda - -1.

Se o gráfico estiver no positivo, eu o admiro.

A estratégia já tem uma direção, portanto, o resultado final para a entrada oposta não foi realmente calculado.

 
Aleksey Vyazmikin #:

O resultado financeiro foi contabilizado em uma coluna, pelo que entendi.

Tente usar duas colunas - a última para vendas e a penúltima para compras. Nesse caso, a coluna Target_P deve se tornar um filtro - se +1 e sinal de compra, então a efetue, caso contrário, ignore a entrada, o mesmo para vendas - -1.

Se o gráfico estiver em plus, eu o admiro.

A estratégia já tem uma direção, portanto, o resultado final para a entrada oposta não foi realmente calculado.

Desculpe, mas não vou nem tentar. Quem disse que Target_P é o "filtro" correto? Bem, as duas últimas colunas são sinais opostos - o valor é o mesmo, mas o sinal é diferente. É por isso que o resultado acima é obtido com os dados que temos.

Há uma proposta para criar algumas novas amostras. Pelo menos "caos", ou qualquer instrumento real. Duas amostras são suficientes: (1) traine e (2) teste. profundidade de amostragem traine de 10k valores. Mas quem precisa do quê... :)

Saudações, RomFil.

 
RomFil #:

Desculpe-me, mas não vou nem tentar. Quem disse que Target_P é o "filtro" correto? Bem, as duas últimas colunas são sinais opostos - o valor é o mesmo, mas o sinal é diferente. É por isso que o resultado acima foi obtido com os dados disponíveis.

Há uma proposta para criar algumas novas amostras. Pelo menos "caos", ou qualquer instrumento real. Duas amostras são suficientes: (1) traine e (2) teste. profundidade de amostragem traine de 10k valores. Mas quem precisa do quê... :)

Saudações, RomFil.

Você pode apresentar os resultados da classificação em cada amostra separadamente?

Eu só quero entender como o resultado obtido pode ser aplicado. Até agora, minha ideia é que devo entrar sem stop loss e talvez o resultado seja o mesmo.

E o que é o oscilador - me diga?

Posso criar outra amostra, mas não entendo se preciso de toda a amostra ou apenas da parte final com os dados de marcação/cálculo do resultado financeiro?

 
Aleksey Vyazmikin #:

Você pode descartar os resultados da classificação em cada amostra individualmente?

Eu só quero entender como o resultado obtido pode ser aplicado. Até agora, a ideia é que devemos entrar sem stop loss e talvez o resultado seja o mesmo.

O que é o oscilador - você pode me dizer?

Posso criar outra amostra, mas não entendo se preciso de toda a amostra ou apenas da parte final com os dados de marcação/cálculo do resultado financeiro?

Um oscilador pode ser qualquer coisa! A principal tarefa de qualquer oscilador é converter um gráfico em outro gráfico, mas com uma amplitude conhecida antecipadamente. Eu uso um que escrevi por conta própria, mas isso não é o principal.

A amostra pode ser qualquer uma! Você pode fazer isso sem nenhum resultado.

No entanto, acabei de tentar um gerador aleatório regular de 0 a 1 e ... Não consegui usar a abordagem!!!

O motivo já foi determinado: são dados muito ruidosos. No entanto, há uma maneira de sair dessa situação! Aumente o período de amostragem! Se a amostra não for rentável, então fazemos M2 dela e a verificamos novamente. Se a amostra não for lucrativa novamente, então M3, etc.


P.S. Embora de cada 10 vezes de verificação, apenas uma falhou... :) E esse resultado negativo foi obtido após o treinamento do comitê da rede neural em uma amostra de bandeja. Com esse resultado, podemos dizer que a amostra não é previsível de forma alguma.

 
RomFil #:

Um oscilador pode ser qualquer coisa! A principal tarefa de qualquer oscilador é converter um gráfico em outro gráfico, mas com uma amplitude conhecida antecipadamente. Eu uso o meu próprio, mas ele não é o principal.

A amostra pode ser qualquer uma! É possível sem um resultado.

Entretanto, agora mesmo tentei usar o gerador aleatório usual de 0 a 1 e .... Falha ao usar a abordagem!!!

O motivo já foi determinado: os dados são muito ruidosos. Entretanto, há uma maneira de sair dessa situação! Aumente o período de amostragem! Se a amostra não for rentável, faça M2 com ela e verifique-a novamente. Se não for lucrativa novamente, faça M3, etc.


P.S. Embora de cada 10 vezes de verificação, apenas uma falhou... :) E esse resultado negativo foi após o treinamento do comitê da rede neural em uma amostra de bandeja. Com esse resultado, podemos dizer que a amostra não é previsível de forma alguma.

Bem, qualquer uma, é claro que pode ser, mas nem todas serão eficazes.

Anexei um arquivo com uma marcação semelhante à que você já treinou - verifique o modelo nele.

E não entendo muito bem se devo esperar que o arquivo marcado preveja seu modelo ou não?

Arquivos anexados:
New_data.zip  21 kb
 
Aleksey Vyazmikin #:

Bem, qualquer um pode ser, é claro, mas nem todos serão eficazes.

Anexei um arquivo com uma marcação semelhante à que você já estudou - verifique o modelo nele.

E não entendi muito bem se devo esperar o arquivo marcado para prever seu modelo ou não?

Gostaria de esclarecer "arquivo marcado por previsão" - é para criar uma nova coluna e especificar em qual etapa é compra, em qual é venda?

 
RomFil #:

Gostaria de esclarecer " arquivo marcado por previsão" - é para criar uma nova coluna e especificar em qual etapa é a compra e em qual é a venda?

Bem, sim, acho que sim.

Você pode enviar apenas essa coluna - não precisa das demais. E a data - para controlar a sincronização.
 
Aleksey Vyazmikin #:

Sim, acho que sim.

Você pode enviar apenas essa coluna - não precisa do restante. E a data - para controlar a sincronização.

Eu adicionei uma coluna: "1" compra, "-1" venda. Abrindo uma transação no caso de uma mudança de sinal para o oposto. Acho que fiz isso corretamente, mas não verifiquei... :) Preguiça.

No gráfico sem spread e comissão, este é o resultado em pontos:

Resultados: PR=157488 +negociações=778 -negociações=18 (lucro, número de negociações positivas e negativas).

Spread de 0,00050:


Resultados: PR=117688 +negociações=629 -negociações=167

Spread de 0,00100:

PR=77888 +negociações=427 -negociações=369

Spread a 200:


PR=-1712 +negociações=241 -negociações=555

Arquivos anexados:
Razão: