Etiqueta de mercado ou boas maneiras em um campo minado - página 20
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
Dê-me uma dica sobre qual é o seu problema com a correlação dos sinais de entrada. O que você está inserindo e por que você acha que há um problema. Afinal, é mais fácil ter certeza de que não existe do que resolvê-lo :-)
Este não é o problema, eu sou meu analfabetismo matemático.
Você acha que eu sou como SP? Você não vai acreditar! Tendo dividido antecipadamente a faixa -/+1 em intervalos iguais de 0,02, no laço eu percorri toda a BP e se o valor da BP em uma determinada barra caiu na faixa -0,98 : +1 eu joguei neste "bolso" um "chatl" = 0,01. E para normalizar o SP, multipliquei a BP investigada por um fator K > 1
Aqui está o meu código:
{
if(first)
for(int k = 200; k >0; k--)
Ind2[k] = 0.0; // Инициализация нулем
first = false;
//---------------------------------------------------
res = th(kf*(Close[i] - Close[i+1])/Close[i+1]); // Входной ВР
Ind1[i] = res;
//-------------------------------------------------------
pos = -1.0;
for(int j=200; j>0; j--)
{
if((res > pos) && (res < (pos+step))) // расчет МО
{
if( i > 2 )
{Ind2[j] = Ind2[j] + chatl;}
break;
}
else
{pos = pos + step;}
}
}
Ou seja, pego este coeficiente "manualmente", usando um indicador, e depois o inseri como uma constante no código NS. Isto funciona, mas somente se a BP de entrada aumentar em períodos iguais de tempo - por exemplo, em cada barra ou em n barras iguais. Mas se os incrementos de entrada forem tomados em intervalos de tempo desiguais - por exemplo, de acordo com a série Fibonacci - 2,3,5,8... ... então para cada uma dessas referências o coeficiente de normalização MO deve ser diferente! Em geral, a forma como o faço é eficiente, mas não inteligente -:)
Estou vendo.
Então, qual é a correlação com as entradas NS?
Estou vendo.
Então, e a correlação sobre as entradas NS?
Aparentemente, há pouca ou nenhuma correlação. Veja o indicador abaixo do gráfico. Cada linha azul é uma das entradas.
O que é surpreendente é que a NS está tendo um desempenho notavelmente bom! Dois meses após a "afiação" ela está crescendo com um drawdown muito aceitável (27%)
Aqui está outra pergunta que eu queria fazer:
O neurônio de saída da grade é sem FA, pois tiramos a amplitude da mesma, que usamos como medida da probabilidade de sucesso da transação planejada, mas também não é normalizada.
A normalização é necessária na saída? Se não, como avaliamos a probabilidade resultante, já que geralmente está fora da faixa +/-1?
Parece ser insignificante ou inexistente. Veja o indicador abaixo do gráfico. Cada linha azul é uma das entradas.
O que é surpreendente é que a NS está funcionando notavelmente bem! Dois meses após a "afiação", ela cresce com um drawdown muito aceitável (27%).
Portanto, não há necessidade de branquear nada!
De fato, seria bom obter uma medida numérica do coeficiente de correlação em pares para as duas BPs selecionadas. Este é o aspecto de um medidor de correlação universal em pares:
Transferir para MQL, colocar duas BPs (X,Y) do mesmo comprimento - n, e obter um número de entrada na faixa +/-1. Apenas para fazer um rápido palpite, o coeficiente de correlação por índices atinge +0,6
Quanto ao neurônio de saída, se sua saída for usada para estimar a probabilidade de um evento, é necessário ter um FA não linear como entrada. Qualquer FA serve (isto é provado rigorosamente), então coloque o seguinte.
...
Eu não entendo, como você define o valor de n??????
Eu acho que é mais simples e claro :o):
Neste caso, não faz muito sentido criar um loop, o operador de somatório fará o mesmo trabalho em termos de tempo.
PS Também, isto não é um "FAC" de forma alguma, o significado é um pouco diferente.
Quanto ao neurônio de saída, se você usar sua saída para estimar a probabilidade de um evento, você precisará ter um FA não linear como entrada. Qualquer um o fará (isto é provado rigorosamente), então coloque o seguinte.
Isso é o que eu faço. No entanto, eu tenho tudo através do() -:) trocadilho pretendido.
Fazendo tudo como você explicou:
1. Todos os neurônios têm uma única entrada(+1)(isto, é claro, excluindo outras entradas de dados)
2. Na saída de todos menos o último neurônio - a saída, FA não linear - eu uso th(x)
Agora, se eu quiser ter uma probabilidade na saída, esta saída deve estar dentro de +/-1(tanto quanto eu entendo). Agora vamos ver como esta última saída é formada.
E é formado assim: OUT1*W1 + OUT2*W2 + OUT3*W3 + W4. Se levarmos em conta que OUT1 - OUT3 são saídas hipertangentes de neurônios de camada anterior e tirar valores da faixa -/+1, e W1 - W4 são seus pesos tirando valores da faixa -/+1, então a amplitude do neurônio de saída está dentro de -/+ 4. Ok, mas se você levar em conta que os pesos podem variar em uma ampla faixa - como você disse +/-20 é a norma - então a faixa de amplitude da grade de saída desaparece no horizonte.
Perguntas:
1. Como estimar a probabilidade de transação em tais condições?
2. Você precisa normalizar o sinal de saída e, se sim, com o quê?
Sobre os resultados do MathLab - infelizmente, para mim, é uma floresta escura... Assim como o próprio MathLab.
Eu não entendi muito do que você me disse há alguns posts atrás, mas eu tenho andado bisbilhotando na minha cabeça por uma hora e meia.
E, perdoe minha intromissão, mas ainda tenho mais perguntas do que respostas sobre o algoritmo ORO.
Com o clareamento parece claro - tudo funciona.
Eu entendo a arquitetura.
As épocas e a amostragem ideal são quase claras:
Tentei calcular o tamanho ideal da amostra para seu "belo esquema" e acabei com isto:
número de entradas - 4
número de sinapses - 4*6 + 3*3 + 4 = 37
fator de 4.
P = k*w*w/d = 4*37*37/4 = 1369 .... e deve ser 1500.
Pergunta: as sinapses de entradas únicas têm que ser contadas? Eu contei.
Eu não entendo, como você determina o valor de n??????
De fora.
Olá, Sergei!
Você tem cinco ciclos independentes, e eu tenho apenas um! O que é melhor, parecer elegante, ou ser sempre assim?
paralocus escreveu >>
Perguntas:
1. Como você estima a probabilidade de uma transação sob estas condições?
2. É necessário normalizar o sinal de saída e, se sim, com o quê?
Coloque th() sobre a saída do último neurônio - todos os seus problemas desaparecerão! E isso não vai dificultar ainda mais o treinamento da malha.
Tentei calcular o tamanho ideal da amostra para seu "belo esquema" e acabei com isto:
número de entradas - 4
número de sinapses - 4*6 + 3*3 + 4 = 37
fator - 4
P = k*w*w/d = 4*37*37/4 = 1369 .... e deve ser 1500.
Pergunta: as sinapses das entradas individuais precisam ser contadas? Eu tenho.
Vamos calcular a duração ideal do vetor de treinamento para cada membro. Como temos todos os membros com a mesma arquitetura, encontramos para um:
1. Número de entradas d=3+1=4.
2. Número de sinapses w=2*4+3+1=12
Duração ótima do vetor de treinamento P=4*w*w/d=4*12*12/4=144
Assim, para treinar o comitê de redes, precisamos de três vetores de treinamento (o número de membros do comitê), cada um com 144 de comprimento. Se você, paralocus, achar que este valor é pequeno, aumente o número de neurônios na camada oculta de dois para 4 ou 8 e você receberá 500 ou 2000 amostras ao mesmo tempo! Lembre-se de que você deve treinar todas essas coisas em cada amostra.
De fora.
Olá, Sergei!
Você tem cinco ciclos independentes e eu tenho apenas um! O que é melhor - parecer elegante, ou ser assim para sempre?
Eu adivinhei :o)
Enquanto eu estou criando - preciso parecer um artista! Mas quando eu estou codificando ... :о)))
PS: Serega, é quase monopênico em MathCAD, mas em C++/FORTRAN ... será diferente, mas em MathCAD - para dizer de forma branda (para este caso em particular). E se você usar meios, isso contará ainda mais rápido, e se você usar corr, por exemplo, seu algoritmo "rápido" irá tartaruga :o). Como eles fazem isso, não sei, mas quanto à "soma" do operador - é muito mais rápido que o loop. Se você não o tem dessa maneira - então coloque uma nova versão.