Indicador ziguezague e redes neurais - página 9

 
Piligrimm:
O programa inteiro é escrito em Matlab, a parte que calcula as previsões é compilada em Matlab e é executada como um executável a partir do indicador que coleta os dados de entrada na chegada de um novo bar a cada minuto. A parte que realiza o treinamento da rede e a otimização do coeficiente de limiar funciona diretamente no Matlab e funciona com um timer a cada 5 minutos, porque o arquivo eletrônico compilado com o treinamento da rede não funciona, não consigo entender o motivo, a compilação vai sem erros.


Obrigado, vou lidar com a construção de redes em Matlab e ligá-lo ao MT4. Se você tem algo de seu próprio projeto, envie para loknar@list.ru . Serei muito grato.

 
Mathemat:
Piligrimm escreveu (a): Agora meu sistema se retrai a cada 5 minutos e recalcula as previsões a cada minuto na chegada de uma nova barra, se eu tivesse uma ordem de magnitude mais RAM e velocidade, então o retrainamento era feito a cada passo junto com o cálculo, e a precisão das previsões melhoraria significativamente

Re-treinamento a cada 5 minutos e recalcular as previsões a cada minuto - não é muito frequente? E seu desejo de aumentar ainda mais a freqüência de reciclagem (e cálculos) para melhorar a precisão das previsões (em cada tique, ou o quê?) me parece estranho. Duvido que um sistema realmente funcional se beneficiaria com a reciclagem em uma freqüência que coincide com a freqüência dos dados recebidos.

P.S. E pf>25 não é apenas um sonho, mas algo fora de questão... Embora com uma relação de 5:1 de negócios rentáveis para não rentáveis e TP/SL = 5 é bastante viável.


O direito à dúvida é seu direito. Estou apenas expressando minha visão do mercado e formas de implementar minha estratégia. Se você trabalha em um mercado relativamente calmo, então a reciclagem a cada 5 minutos é suficiente. Por exemplo, eu treinei o sistema durante um dia e depois me conecto novamente ao mercado sem re-treinamento e faço previsões usando configurações antigas. Embora o erro na amostra de teste seja de 14% a 28%, o sistema faz previsões satisfatórias, embora não haja garantia de que a previsão para o período de interesse seja incorreta.

Ao me esforçar para fazer a reciclagem antes de cada cálculo, estou tentando abordar a estabilidade e a precisão do sistema sob todas as condições, comunicados à imprensa, etc. Embora isto possa parecer redundante, pela minha experiência em pesquisa de mercado, é um pré-requisito para um sistema eficiente e insubmersível que sempre vai um passo à frente em todas as condições, que é o que eu pretendo implementar.

 
Loknar:
Piligrimm:
Todo o programa é escrito em Matlab, a parte que calcula as previsões é compilada em Matlab e é executada como um executável a partir do indicador que coleta os dados de entrada a cada minuto após a passagem de uma nova barra. A parte que realiza o treinamento da rede e a otimização do coeficiente de limiar funciona diretamente no Matlab e funciona com um timer a cada 5 minutos, porque o arquivo eletrônico compilado com o treinamento da rede não funciona, não consigo entender o motivo, a compilação vai sem erros.


Obrigada, estarei pesquisando a construção de redes em matlab e a ligação com o MT4. Se você tem algo de seu próprio projeto, envie para loknar@list.ru . Eu ficaria muito grato.

Para lhe dar um exemplo, uma rede simples mas eficiente, eu uso uma destas:

Arquivos anexados:
 
Piligrimm:

Para lhe dar um exemplo, uma rede simples mas eficaz, eu uso uma destas:



Obrigado pelas informações

Se você precisar de qualquer dispositivo para Matlab (estou baixando 7,5 com um monte de addons) ou todos os softwares associativos para redes neurais, estou pronto para cooperar.

 

Para qualquer pessoa interessada, eu posso compartilhar a "fórmula da felicidade"!

GP1[iq+1] = 0.3*((-0.610885 *GP1[iq-1]*GP1[iq-1]*GP1[iq-2]-0.0795671 *GP1[iq]*GP1[iq-1]*GP1[iq-1]*GP1[iq-1]*GP1[iq-2]+1.19161 *GP1[iq-1]*GP1[iq-1]-0.422269 
                   *GP1[iq])/(GP1[iq-1]*GP1[iq-1]-0.505662 *GP1[iq]*GP1[iq-1]*GP1[iq-1]-0.415455 *GP1[iq-2]*GP1[iq-2]))+0.7*((-0.610885 *GP1[iq-2]*GP1[iq-2]*GP1[iq-3]
                   -0.0795671*GP1[iq-1]*GP1[iq-2]*GP1[iq-2]*GP1[iq-2]*GP1[iq-3]+1.19161 *GP1[iq-2]*GP1[iq-2]-0.422269 *GP1[iq-1])/(GP1[iq-2]*GP1[iq-2]-0.505662 *GP1[iq-1]
                   *GP1[iq-2]*GP1[iq-2]-0.415455 *GP1[iq-3]*GP1[iq-3]));
 
GP1 - это или точки перелома в Зиг-Заге, или в любой другой последовательности, которую Вы хотите прогнозировать, например, МА, или просто цены валют, 
хотя я в этих вариантах не проверял, но думаю будет работать.
В расчетах используются переменные сформированные в обратном порядке по отношению к стандартной индексации в МТ4, если хотите применять формулу для
прямой индексации МТ4,то iq-..., замените на iq+... .
Прогноз не 100%, но лучше, чем ничего, использовать в индикаторах можно.

Para ajuste individual a sua tarefa, você também pode jogar com coeficientes: 0,3*( e 0,7*(, no total deve ser um.

 
Piligrimm:

Para qualquer pessoa interessada, eu posso compartilhar a "fórmula da felicidade"!

GD[iq] 
Algum polinômio selvagem de números aleatórios (se GD[iq] for uma citação). Talvez fizesse sentido se por alguma lei se recalculassem os coeficientes constantes -0,610885 etc. Poderia me dizer a teoria pela qual esta terrível fórmula é obtida :-). Ou é a proverbial inteligência da NS
 
Piligrimm:

Para qualquer pessoa interessada, eu posso compartilhar a "fórmula da felicidade"!

Para ajuste individual a sua tarefa, você também pode jogar com coeficientes: 0,3*( e 0,7*(, no total deve ser um.


Então, o que é iq ? Se estamos falando de um ziguezague, trata-se simplesmente de uma seqüência de seus índices? Isto é, o iq-1 seria o ponto de ruptura anterior do ziguezague ?
 
Loknar:
Piligrimm:

Para qualquer pessoa interessada, eu posso compartilhar a "fórmula da felicidade"!

Para ajuste individual de sua tarefa, você também pode jogar com coeficientes: 0,3*( e 0,7*(, a soma deve ser uma só.


Então o que é iq ? Se estamos falando de um ziguezague, é apenas uma seqüência de seus índices? Isto é, iq-1 é o ponto de quebra anterior do ziguezague ?

Sim, exatamente assim, iq-1 é o ponto anterior. Eu desenvolvi este polinômio para meu indicador cujos gráficos são mostrados acima. Não o verifiquei, mas espero que possa ser útil para alguém.

Se falamos do algoritmo usado para construir este polinômio, ele se baseia em encontrar leis que conectam diferentes argumentos, neste caso argumentos retardatários em relação à tendência a ser prevista.

A figura mostra como este polinômio funciona para mim: a linha azul é a tendência nos pontos de inflexão, a linha rosa é a que passa pelo polinômio. A entrada de dados é normalizada, daí esta escala de escala.

 
Piligrimm писал (а): Para qualquer pessoa interessada, eu posso compartilhar a "fórmula da felicidade"!
GP1[iq+1] = 
Aí está você, sua rena...
 
Prival:
Piligrimm:

Para qualquer pessoa interessada, eu posso compartilhar a "fórmula feliz"!

GD[iq] 
Algum polinômio selvagem de números aleatórios (se GD[iq] for uma citação). Talvez fizesse sentido se por alguma lei se recalculassem coeficientes constantes -0,610885, etc. Poderia me dizer a teoria pela qual esta terrível fórmula é obtida :-). Ou é a proverbial inteligência da NS

O polinômio que mostrei anteriormente não é tão selvagem, por exemplo, eu posso mostrar um polinômio realmente selvagem que eu uso em meus cálculos.

Está escrito em Matlab, eu removi as duas últimas linhas para evitar que ele entrasse em circulação.

GR(i)=0,25*(0,4*(0,55*(0,6*(0,09*(-0,00192393 +GM(i+3)*(-0,1725) +GM(i+6)*(1,17444))+0. 28*(-0,00130286 +(-0,000123992 +GM(i+5)*(-0,821849) ...

+GM(i+6)*(1,82199))*(0,302188) +(-0,00145804 +GM(i+4)*(-0,153087) +GM(i+6)*(1,15453))*(0. 699112))+0,09*(-0,000577229 +GM(i+3)*(-0,162435)...

+GM(i+6)*(1.16299))+0.09*((0.832328 *GM(i+4)*GM(i+6)-0.119317 *GM(i+6)*GM(i+5)-0. 100951 *GM(i+5)-0.0192996 *GM(i+2)/(GM(i+4)-0.361992...

*GM(i+5)-0.0452508 *GM(i+6)))+0.09*((1.00001 *GM(i+6)*GM(i+6)*GM(i+6)*GM(i+6)-1. 03818 *GM(i+6)*GM(i+6))/(GM(i+6)*GM(i+6)-1.03817...

*GM(i+6)+0,09*((1,07271 *GM(i+6)-0,512733 *GM(i+6)+0,684408 *GM(i+4)-0,485238 *GM(i+4)*GM(i+4)*GM(i+4)/(1-0,240858 *GM(i+5)*GM(i+6)+0,09...

*((1.00137*GM(i+6)*GM(i+6)-0.000473002 *GM(i+4)*GM(i+6)-0.998682 *GM(i+6)*GM(i+6)+6.

*GM(i+6)))+0.09*(0.730651 *GM(i+4)*GM(i+4)*GM(i+6)/(GM(i+4)*GM(i+4)-0.269349 *GM(i+5)*GM(i+5)))+0. 09*((0.717833 *GM(i+6)*GM(i+4)*GM(i+6)...

-0.11191*GM(i+4)*GM(i+4)*GM(i+4))/(GM(i+6)*GM(i+4)-0.471068 *GM(i+6)*GM(i+5)+0.209781 *GM(i+6)*GM(i+6)-0.132089 *GM(i+3)*GM(i+6)-0.000702832 ....

*GM(i+5))))+0,4*(0,2*(0,6*(-0,00130286 +(-0,000123992 +GM(i+5)*(-0,821849) +GM(i+6)*(1. 82199))*(0,302188) +(-0,00145804 +GM(i+4)...

*(-0.153087) +GM(i+6)*(1.15453))*(0.699112))+0.4*((0.717833 *GM(i+6)*GM(i+4)*GM(i+6)-0. 11191 *GM(i+4)*GM(i+4))/(GM(i+6)*GM(i+4)...

-0,471068 *GM(i+6)*GM(i+5)+0,209781 *GM(i+6)*GM(i+6)-0,132089 *GM(i+3)*GM(i+6)-0. 000702832 *GM(i+5))))+0,25*(-0,000577229 +GM(i+3)*(-0,162435)...

+GM(i+6)*(1.16299))+0.35*((1.00001 *GM(i+6)*GM(i+6)*GM(i+6)-1.03818 *GM(i+6)*GM(i+6))/(GM(i+6)*GM(i+6)*GM(i+6)-1. 03817 *GM(i+6))

+0,2*((1,07271 *GM(i+6)-0,512733 *GM(i+6)+0,684408 *GM(i+4)-0,485238 *GM(i+4)*GM(i+4)*GM(i+4)/(1-0. 240858 *GM(i+5)*GM(i+6)))))+0,45*(0,4*((1,73835 ...

*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0.0334794 *GM(i+3)*GM(i+4)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0. 919558 *GM(i+4)...

*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0.376192 *GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0.345737)/(GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)*GM(i+5)-0. 0355159...

*GM(i+3)-0.901092 *GM(i+4)))+0.6*((-2.01988 *GM(i+3)*GM(i+3)*GM(i+4)*GM(i+6)+2.90062 *GM(i+3)*GM(i+4)+5.31466 *GM(i+3)*GM(i+3)...

*GM(i+5)-3.01304 *GM(i+3)*GM(i+3)-4.34954 *GM(i+3)*GM(i+5))/(GM(i+3)*GM(i+4)-2. 16719))))+0.4*(0.33*((1.00914 *GM(i+4)*GM(i+5)...

*GM(i+5)+0.977507 *GM(i+4)*GM(i+4)*GM(i+5)-1.9751 *GM(i+4)*GM(i+3)*GM(i+5))/(GM(i+4)*GM(i+5)-0. 988447*GM(i+3)*GM(i+3))+0.67*((2.51015 ...

*GM(i+6)-0.979174 *GM(i+5)*GM(i+6)-0.642762)/(1-0.111777 *GM(i+5)*GM(i+5)*GM(i+4))))+0. 4*(0.9*(0.3*((1.00914 *GM(i+4)*GM(i+5)*GM(i+5)...

+0.977507 *GM(i+4)*GM(i+4)*GM(i+5)-1.9751 *GM(i+4)*GM(i+3)*GM(i+5))/(GM(i+4)*GM(i+5)-0. 988447*GM(i+3)*GM(i+3))+0.7*((0.0988538 *GM(i+4)...

*GM(i+6)-0,0240242 *GM(i+4)*GM(i+5)*GM(i+5)+0,0291295 *GM(i+4)*GM(i+4)+0. 904081 *GM(i+4)-0,951504 *GM(i+3)/(GM(i+4)-0,943467...

*GM(i+3))))+0.1*((2.01304 *GM(i+5)*GM(i+5)*GM(i+5)-2.02312 *GM(i+4)*GM(i+5)*GM(i+5)+0. 0156151 *GM(i+5)*GM(i+5)*GM(i+5)...

/(GM(i+5)*GM(i+5)*GM(i+5)-1,01005 *GM(i+4)*GM(i+5)-1,14951e-005 *GM(i+5)*GM(i+5)*GM(i+5)+0. 0155924 *GM(i+5)*GM(i+5)-7. 72653e-007 *GM(i+5)-7.

*GM(i+5)*GM(i+5))))+1.8*(0.3*((-0.610885 *GM(i+4)*GM(i+4)*GM(i+5)-0.0795671 *GM(i+3)*GM(i+4)*GM(i+4)*GM(i+5)+1. 19161 *GM(i+4)...

*GM(i+4)-0,422269 *GM(i+3)/(GM(i+4)*GM(i+4)-0,505662 *GM(i+3)*GM(i+4)*GM(i+4)-0. 415455 *GM(i+5)*GM(i+5)*GM(i+5)+0,7*((-0,610885 *GM(i+5)*GM(i+5)*GM(i+5)...

*GM(i+6)-0.0795671*GM(i+4)*GM(i+5)*GM(i+5)*GM(i+6)+1.19161 *GM(i+5)*GM(i+5)-0. 422269 *GM(i+4))/(GM(i+5)*GM(i+5)-0.505662 *GM(i+4)...

*GM(i+5)*GM(i+5)-0,415455 *GM(i+6)*GM(i+6))))+0,3*((0,325815 *GM(i+5)*GM(i+5)*GM(i+5)-0. 322486 *GM(i+4)*GM(i+4)+0,00437944 *GM(i+5)*GM(i+5)*GM(i+5)-0...