Etiqueta de mercado ou boas maneiras em um campo minado - página 10

 

Olá paralocus, acho que você pode começar aqui mesmo e depois veremos.

A propósito, para todos os interessados: a estratégia "travar as perdas e deixar crescer os lucros" ou "travar os lucros e deixar crescer as perdas" (dependendo se o mercado está em tendência ou plano, no horizonte comercial escolhido) não é ótima quando se reinveste capital. Neste caso, é mais rentável fixar em cada passo com reinvestimento! Ou seja, se temos 10 transações lucrativas contínuas, então é mais lucrativo pagar comissão às corretoras e reinvesti-las, do que manter uma posição o tempo todo e economizar no spread.

Este é o paradoxo, do qual não está longe para a bernulização das transações, e depois disso - para o uso efetivo da equação básica de negociação na forma analítica (ao contrário de Vince) sem qualquer problema de parametrização.

 
Neutron >> :

Olá paralocus, acho que você pode começar por aí mesmo e depois veremos.


Obrigado!

Tenho três perceptrons na entrada (três até agora) que é a primeira camada. A composição da camada é a seguinte:

Um perceptron em RSI, um em CCI e outro em estocástico. Todas as entradas e saídas são normalizadas (-1 ; +1). Os perceptrons são treinados por geneticista sobre o esquema mais simples - sobre a divisão.

Agora quero acrescentar uma segunda camada de dois perceptrons, um dos quais é treinado para comprar apenas e o outro para vender apenas. Pergunta:

É suficiente que os perceptrons da segunda camada sejam treinados, por assim dizer, cada um em sua própria especialidade, enquanto usam os mesmos dados da primeira camada, ou

Os perceptrons da primeira camada também devem ser treinados separadamente para comprar e separadamente para vender?

 
paralocus писал(а) >>

Obrigado!

De jeito nenhum!

Vê, paralocus, o NS é em essência uma víbora universal e matematicamente não faz diferença se você afiar os neurônios na camada de saída individualmente para vender ou comprar, ou construir a terceira camada de um único neurônio com ativação hipertangente, cuja polaridade de saída apontará para a compra ou venda, e a amplitude para a probabilidade de sucesso (certeza da rede nela existente). Deste ponto de vista, não há necessidade de especialização forçada dos neurônios de primeira camada - eles serão determinados no processo de treinamento, e levando em conta que o poder computacional da NS não aumenta ao passar de uma arquitetura de duas para três camadas (exceto para alguns casos exóticos) e o fato de que a duração da amostra de treinamento é proporcional ao quadrado de todos os pesos da rede (e a amostra, se possível, deve ser mínima, para resposta operacional aos eventos do Mercado), bem como o uso do princípio da navalha Occam (não há necessidade de ficar desnecessariamente grande).

P.S. Sim, é importante que a densidade de probabilidade do sinal de entrada para NS tenha expectativa zero e distribuída no intervalo +/-1 igualmente (prateleira). Isto aumenta acentuadamente a aprendizagem e o desempenho da Rede.

 
Neutron >> :

Ainda não!

Vê, paralocus, o NS é em essência um víbora universal e matematicamente não faz diferença se você afiar os neurônios na camada de saída individualmente para vender ou comprar, ou criar a terceira camada de um único neurônio com ativação hipertangente, cuja polaridade de saída apontará para a compra ou venda, e a amplitude para a probabilidade de sucesso (a confiança da Rede nisso). Deste ponto de vista, não há necessidade de especialização forçada dos neurônios de primeira camada - eles serão determinados no processo de treinamento, e levando em conta que o poder computacional da NS não aumenta quando se passa de uma arquitetura de duas camadas para três camadas (exceto para alguns casos exóticos) e o fato de que a duração da amostra de treinamento é proporcional ao quadrado de todos os pesos da rede (e a amostra deve, se possível, ser mínima, para resposta operacional aos eventos do Mercado), e usando o princípio da lâmina de barbear de Occam (não há necessidade de ficar desnecessariamente grande).

P.S. Sim, é importante que a densidade de probabilidade do sinal de entrada para NS tenha expectativa zero e distribuída no intervalo +/-1 igualmente (prateleira). Isto aumenta acentuadamente a aprendizagem e o desempenho da Rede.

Eh! Algumas são claras, mas muitas são novas! Para não perder nada, vou perguntar à medida que for avançando...

1. NS é de fato uma víbora universal e não faz quase nenhuma diferença do ponto de vista matemático, se você afiar os neurônios na camada de saída individualmente para vender ou comprar, ou construir a terceira camada a partir de um único neurônio com ativação hipertangente, que a polaridade de saída - a polaridade apontará para a compra ou venda, e a amplitude - para a probabilidade de sucesso (confiança da rede na mesma).

Eu entendo sobre a víbora, mas e sobre o neurônio com ativação hipertangente - que tipo de besta é? Eu normalizo entradas e saídas com sigmoid, e para garantir que o sinal nas entradas e saídas esteja correto( -1 < << máximos e mínimos < +1), eu retrabalhei ligeiramente o indicador Perseptron. Ou seja, pegamos três neurônios de entrada e damos suas saídas ao quarto (com ativação hipertangente) cuja saída pode ser absolutamente transparente como uma estimativa probabilística de um resultado bem sucedido de um comércio na direção especificada (em direção à polaridade ativa) ... certo?


2. Deste ponto de vista, não há necessidade de especialização forçada dos neurônios da primeira camada - eles serão determinados por eles mesmos no processo de treinamento

Ou seja, os neurônios da camada de entrada devem simplesmente ser treinados para separar os dados de entrada em "direita" e "esquerda". Estou um pouco confuso sobre como "eles são determinados no processo de treinamento" - isso significa treinamento do neurônio de saída hipertangente, ou treinamento de todos os neurônios de saída e entrada ao mesmo tempo? Se todos de uma vez, o geneticista não permitirá otimizar mais de 8 parâmetros simultaneamente, enquanto houver pelo menos 12 deles em tal grade (... sem contar os parâmetros de perus) - o que devemos fazer? Se eu treinar separadamente - primeiro, cada parâmetro de entrada separadamente, e depois, apenas o parâmetro de saída separadamente (estou fazendo isso agora), não será um erro?


O fato de que a duração de uma amostra de treinamento é proporcional ao quadrado de todos os pesos da rede (e a amostra, se possível, deve ser mínima, para reagir rapidamente aos eventos do Mercado).

Como assim? A quadratura de todos os pesos da rede, então a soma desses quadrados dá a que comprimento da amostra de treinamento deve ser proporcional?

Sobre a inutilidade de longas amostras que já conheço - vim, por assim dizer, por "tentativa e erro científico". Até encontrei a data (2008.12.02), a partir da qual os dados são simplesmente inúteis para a rede - sem correlação com a dinâmica real do mercado.


4. a melhor opção parece ser um NS de duas camadas com uma camada oculta e um neurônio de saída.

Aqui eu não entendo algo... Se há uma camada de entrada de neurônios, uma camada de saída de neurônios e uma camada oculta de neurônios, então já são três. Então, por que existe uma rede de duas camadas?


5. Sim, é importante que a densidade de probabilidade de entrada para o NS tenha expectativa zero e seja uniformemente distribuída no intervalo +/-1 (prateleira). Isto aumenta significativamente a eficiência do treinamento e do desempenho da Rede.

Eu mesmo entendo a necessidade de normalização do sinal de entrada (ao nível da intuição), é por isso que transformo o sinal de entrada para que a saída tenha a mesma forma, mas na faixa -/+1. Mas como é distribuída a densidade de probabilidade de uma LER normalizada? Por exemplo, o sinal de entrada do meu neurônio RSI é parecido com este:


Isto é suficiente, ou é necessário algo mais?

P/S Eu estou bem com a navalha, o principal é entender o que cortar...:-)

 
paralocus писал(а) >>

1. Eu entendo sobre o víbora, sobre o neurônio de ativação hipertangente - que tipo de coisa é essa? Eu normalizo entradas e saídas com sigmoid, e para ter certeza de que o sinal de entradas e saídas está correto ( -1<max e mínimo < +1), eu modifiquei ligeiramente o indicador Perseptron. Ou seja, pegamos três neurônios de entrada e damos suas saídas ao quarto (com ativação hipertangente) cuja saída pode ser absolutamente transparente como uma estimativa probabilística de um resultado bem sucedido de um comércio na direção especificada (em direção à polaridade ativa) ... certo?

É um neurônio, cuja função de ativação (FA) é uma tangente hiperbólica (faixa de valores +/- 1) - é conveniente para tomar uma decisão comercial - compra/venda, e se |FA|<const - fora do mercado.

Todos os neurônios NS devem ter FA não-lineares (com algumas exceções - exceto o último). Nada depende do tipo específico de FA, exceto a taxa de aprendizagem.

2. Deste ponto de vista, não há necessidade de especialização forçada de neurônios de primeira camada - eles serão determinados por eles mesmos no processo de treinamento.

Ou seja, os neurônios da camada de entrada devem simplesmente ser treinados para separar os dados de entrada em "direita" e "esquerda". Estou um pouco confuso sobre como "eles são determinados no processo de treinamento" - isso significa treinamento do neurônio de saída hipertangente, ou treinamento de todos os neurônios de saída e entrada ao mesmo tempo? Se todos de uma vez, o geneticista não permitirá otimizar mais de 8 parâmetros simultaneamente, enquanto houver pelo menos 12 deles em tal grade (... sem contar os parâmetros de perus) - o que devemos fazer? Se eu treinar separadamente - primeiro, cada parâmetro de entrada separadamente, e depois apenas o de saída (que é o que eu estou fazendo agora), não seria um erro?

É claro que devemos treiná-los todos de uma só vez, caso contrário teremos um problema com a confusão através da madeira. Eu não tenho lidado com genética, então não posso ajudar.

3. o fato de que a duração da amostra de treinamento é proporcional ao quadrado de todos os pesos da rede (e a amostra, se possível, deve ser mínima, para uma rápida reação aos eventos do Mercado).

Como assim? Quadriplicar todos os pesos da rede, depois adicionar esses quadrados e obter a duração do conjunto de treinamento?

Há uma duração ótima do conjunto de treinamento P, que fornece a soma mínima de erro de aproximação e erro de generalização. Este ótimo é determinado exclusivamente pelo número de sinapses w na rede e pela dimensão da entrada d (número de entradas de rede):

Popt=k*w*w*w/d, onde k é uma constante sem dimensão de ordem 1 e leva em conta o fato da variabilidade do mercado.

O critério de ótimo é a comensurabilidade do erro da rede na amostra de teste e no de treinamento, ou seja, se a rede normalmente treinada adivinhar 55% corretamente, mostrará aproximadamente o mesmo resultado no teste sobre os novos dados. Além disso, para tais NS não há nenhum problema de retreinamento ligado ao aumento do número de iterações no método ORO - não há um mínimo local de erro - a função é momentânea e assimptótica tende a ser constante.

4. uma variante ideal parece ser o bilayer NS com uma camada oculta e um neurônio de saída.

Aqui eu não estou seguindo... Se há uma camada de entrada de neurônios, uma camada de saída de neurônios e uma camada oculta de neurônios, então já são três. Então, por que a rede tem duas camadas?

É uma questão de terminologia. Eu não destacaria a camada de entrada como uma camada especial. Então eu quis dizer o NS que tem apenas duas camadas - a camada de entrada (também conhecida como oculta) e a camada de saída (que consiste de um único neurônio).

Entretanto, como é distribuída a densidade de probabilidade de LER normalizada? Isto é suficiente, ou é necessário algo mais?

Eu não sei. Você precisa traçar a distribuição da densidade de probabilidade da primeira série de diferença de sua LER e olhar o gráfico - deve haver uma prateleira com amplitude máxima +/-1.

 
Neutron писал(а) >>

Não estou destacando a camada de entrada como uma camada especial. Portanto, eu quis dizer que o NS tem apenas duas camadas - camada de entrada (também escondida) e camada de saída (que consiste de um neurônio).

Ou seja, a rede consiste em vários perceptrons paralelos na primeira camada e um na camada de saída, com entradas do perceptron de saída iguais ao número de perceptrons na primeira camada?

 
Neutron >> :

Claro que treinando tudo de uma só vez, caso contrário teremos um problema - "na floresta e fora da floresta". Eu não lidei com um geneticista, então não posso ajudá-lo lá.


Aí está! E eu esperava "melhorar" minha malha para uma de auto-treinamento mais tarde.

Digerindo as respostas que obtive... >> Eu vou desenhar o que eu entendo

 
FION писал(а) >>

Então a rede consiste em vários perceptrons paralelos na primeira camada e um na camada de saída, com o número de entradas do perceptron de saída igual ao número de perceptrons na primeira camada?

É isso mesmo.

Mas, a entrada de cada perceptron tem uma entrada adicional separada para uma constante +1 offset. Isto acelera o aprendizado e aumenta o poder da Rede.

 
Neutron писал(а) >>

É isso mesmo.

Mas, a entrada de cada perseptron tem uma entrada adicional separada para uma constante +1 offset. Isto acelera o aprendizado e aumenta o poder da Rede.

Estou vendo. O deslocamento constante apenas desloca ligeiramente o ponto de ativação na curva hipertangente.

 

Neutron escreveu >>.


Eis o que eu descobri:

O hipertangente é resolvido. Até agora eu estava usando sigmoid e tive que subtrair um do resultado, com isso não é mais necessário. Tanto quanto entendi, a figura mostra a arquitetura ideal de NS para o mercado. O número de entradas é 12, e o número de sinapses é 4. Assim, usando a fórmula Popt=k*w*w*w/d obtemos 144/4 = 36... Isto são 36 barras? Ou 36 situações próximas de compra/venda? Será que acertei?

Razão: