Discussão do artigo "Redes Neurais de Terceira Geração: Redes Profundas" - página 12
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
Vladimir Perervenko
Adicione ao artigo informações adicionais sobre como trabalhar com o R Studio
Boa tarde.
Não entendo sobre o arquivo hosts. Você pode fornecer mais detalhes?
Boa sorte, senhor
Vladimir Perervenko
Adicione ao artigo informações adicionais sobre como trabalhar com o R Studio
Eu uso outra forma de registro para verificar os pacotes instalados:
Você deve carregar as bibliotecas na descrição das funções que as utilizam. Embora você possa fazer isso ao inicializar o Expert Advisor.
Então, por que você precisa executar o Expert Advisor no testador?
Boa sorte
Durante a depuração de scripts R por um longo tempo, identifiquei um bug que é difícil de detectar se os dados de entrada tiverem NA. Ele simplesmente não acionará o sinal. No arquivo "e_SAE_init.r", recomenda-se adicionar um termo de limpeza NA à função Test(dt,x) antes de new.data <- predict(prepr, tail(x, 50)): x <- na.omit(x);
Isso parece uma "muleta", mas ainda não pensei em nada melhor.
Sem isso, ocorrerá um erro oculto:
Error in if (sqrt(denom) > .Machine$double.eps) x/sqrt(denom) else x * : missing value where TRUE/FALSE needed
Ao depurar scripts R por um longo tempo, identifiquei um bug que é difícil de detectar se os dados de entrada tiverem NA. Ele simplesmente não acionará o sinal. No arquivo "e_SAE_init.r", recomenda-se adicionar um termo de limpeza NA à função Test(dt,x) antes de new.data <- predict(prepr, tail(x, 50)): x <- na.omit(x);
Isso parece uma "muleta", mas ainda não pensei em nada melhor.
Sem isso, ocorrerá um erro oculto:
Error in if (sqrt(denom) > .Machine$double.eps) x/sqrt(denom) else x * : missing value where TRUE/FALSE needed
Durante a depuração de scripts R por um longo tempo, encontrei um bug que é difícil de detectar se os dados de entrada tiverem NA. Ele simplesmente não acionará o sinal. No arquivo "e_SAE_init.r", recomenda-se adicionar um termo de limpeza NA à função Test(dt,x) antes de new.data <- predict(prepr, tail(x, 50)): x <- na.omit(x);
Isso parece uma "muleta", mas ainda não pensei em nada melhor.
Sem isso, ocorrerá um erro oculto:
Error in if (sqrt(denom) > .Machine$double.eps) x/sqrt(denom) else x * : missing value where TRUE/FALSE needed
Essa declaração está incorreta.
Na função Test(dt, x), x é o dado de entrada calculado pela função In(). Vamos dar uma olhada no script "i_SAE_fun.r"
In <- function(p = 16){ require(TTR) adx <- ADX(price, n = p) ar <- aroon(price[ ,c('High', 'Low')], n = p)[ ,'oscillator'] cci <- CCI(price[ ,2:4], n = p) chv <- chaikinVolatility(price[ ,2:4], n = p) cmo <- CMO(price[ ,'Med'], n = p) macd <- MACD(price[ ,'Med'], 12, 26, 9)[ ,'macd'] osma <- macd - MACD(price[ ,'Med'],12, 26, 9)[ ,'signal'] rsi <- RSI(price[ ,'Med'], n = p) stoh <- stoch(price[ ,2:4], 14, 3, 3) smi <- SMI(price[ ,2:4],n = p, nFast = 2, nSlow = 25, nSig = 9) vol <- volatility(price[ ,1:4], n = p, calc="yang.zhang", N=96) In <- cbind(adx, ar, cci, chv, cmo, macd, osma, rsi, stoh, smi, vol) return(In) }Esse é um número de indicadores. Vamos calculá-los no histórico de preço[] com o comprimento de 2000 barras.
Cortamos os dados indefinidos. Condição: nrow(x) > 500 + max(NA). Ou seja, pelo menos em nosso caso, 533. Por segurança, coloque nrow(x) = 600-700.
Não entendo como você obteve um NA incerto em x.
Boa sorte
Olá, Vladimir,
Aqui é do Brasil!!!
Li suas instruções sobre a rede neural usando o R, mas tenho uma pergunta idiota (desculpe, sou novato nisso!)
No tutorial que você escreveu ( https://www.mql5.com/pt/articles/1103#ch_3), na"Seção 3.3.1 - Dados de origem" você descreveu uma função chamada pr.OHLC que eu entendi muito bem.
Mas você mostra alguns resultados que não ficaram claros para mim, quais são os parâmetros necessários para os resultados abaixo
> head(price) Open High Low Close Med CO [1,] 1.33848 1.33851 1.33824 1.33844 1.338375 -4e-05 [2,] 1.33843 1.33868 1.33842 1.33851 1.338550 8e-05 [3,] 1.33849 1.33862 1.33846 1.33859 1.338540 1e-04 [4,] 1.33858 1.33861 1.33856 1.33859 1.338585 1e-05 [5,] 1.33862 1.33868 1.33855 1.33855 1.338615 -7e-05Poderia, por favor, me ajudar com isso?
Com certeza,
Fábio
Olá, Vladimir,
Aqui é do Brasil!!!
Li suas instruções sobre a rede neural usando o R, mas tenho uma pergunta idiota (desculpe, sou novato nisso!)
No tutorial que você escreveu ( https://www.mql5.com/pt/articles/1103#ch_3), na"Seção 3.3.1 - Dados de origem" você descreveu uma função chamada pr.OHLC que eu entendi muito bem.
Mas você mostra alguns resultados que não ficaram claros para mim, quais são os parâmetros necessários para os resultados abaixo
Poderia, por favor, me ajudar com isso?
Com certeza,
Fábio
Oi Fábio,
O que não está claro?
pr.OHLC <- function (o, h, l, c) { #Unite quote vectors into a matrix having previously expanded them #Indexing of time series of vectors in R starts with 1. #Direction of indexing is from old to new ones. price <- cbind(Open = rev(o), High = rev(h), Low = rev(l), Close = rev(c)) Med <- (price[, 2] + price[, 3])/2 #We calculate average price (HIgh + Low)/2 CO <- price[, 4] - price[, 1] # We calculate body candles (Close - Open) #add Med and CO to the matrix price <- cbind(price, Med, CO)#We are putting it all in a matrix }Oi Vladimir,
Existe a possibilidade de ter os arquivos para o MT5?
Meus cumprimentos
Fabio lima
Oi Vladimir,
Existe a possibilidade de ter os arquivos para o MT5?
Meus cumprimentos
Fabio lima
Olá, Fabio,
Desculpe-me.
Não escrevo sobre o MKL5.
Com os melhores cumprimentos
Vladimir
Uma pergunta. Não estou entendendo a ordem do vetor de preços.
Você faz uma reversão aqui: price <- cbind(Open = rev(o), High = rev(h), Low = rev(l), Close = rev(c))
Qual é a ordem original de o,h,l,c?
Uma pergunta. Não estou entendendo a ordem do vetor de preços.
Você faz uma reversão aqui: price <- cbind(Open = rev(o), High = rev(h), Low = rev(l), Close = rev(c))
Qual é a ordem original de o,h,l,c?
Hi,
As barras de numeração do MT4 vão da mais recente para a mais antiga. O R , ao contrário, do antigo para o novo, a nova barra por último.