Discussão do artigo "Redes Neurais de Terceira Geração: Redes Profundas" - página 8
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
O indicador com Send to server - false inicia normalmente?
Você colocou o modelo onde ele deveria estar?
Leia as "imagens" salvas pelo Expert Advisor e pelo indicador no Rstudio (defina a variável swr = true). Eu gostaria de vê-las.
Os diretórios foram criados normalmente? Você descobriu o que está onde?
Boa sorte.
Defino a variável swr=true, mas somente quando o Expert Advisor é iniciado, o arquivo de imagem é recebido. Por algum motivo, o indicador é iniciado por 15 a 20 minutos, e somente após esse tempo posso pressionar o botão OK.
O Expert Advisor funcionou normalmente. Tudo o que é necessário para seu funcionamento está na imagem. Mas ele não recebeu dados do indicador (dt, X). Verifiquei no R3.2.0. O problema é com o pacote "svSocet". Algo mudou e a transferência do indicador para o Expert Advisor está bloqueada. É por isso que o indicador trava e não consegue transmitir dados. Embora ele se conecte ao servidor normalmente. Não analisei o motivo. Para verificar ou depurar, crie uma imagem do Expert Advisor e execute-o no Rstudio. Em seguida, crie uma imagem do indicador (send = false) e execute-a no Rgui. No Rstudio, execute as linhas
library('svSocket', quietly = T) s <- startSocketServer()e, em seguida, no Rgui, onde a imagem do indicador está sendo executada, execute as linhas
library("svSocket", quietly=T); con <- socketConnection(host = 'localhost', port = 8888, blocking = FALSE);O indicador (cliente) e o Expert Advisor (servidor) estão conectados. Tente enviar/receber dados entre eles.
Isso deve ser simplificado. Transfira para o Expert Advisor a parte do indicador que coleta e prepara os dados (incluindo, é claro, todas as funções). Tente você mesmo. Se não funcionar, eu escolherei o tempo e o refarei.
Infelizmente, estou muito ocupado e não posso responder rapidamente.
Boa sorte
Oi Vladimir
Antes de mais nada, muito obrigado por fornecer tanto conhecimento. Esse material é realmente interessante. Você não apenas forneceu os dois lados (arquivos mt4 e R), mas também explicou tudo em detalhes. Isso é realmente generoso.
Mas, como Apollo disse antes, nunca consegui fazer o EA funcionar, ou melhor, que o EA como servidor recebesse dados do indicador. É claro que estou tentando encontrar o erro do meu lado. No R-Studio, tudo funciona bem. No entanto, tenho algumas perguntas.
No e_SAE, consigo encontrar o parâmetro "flag". Não o encontro em nenhum outro lugar. Talvez isso não tenha significado. Mas, como Apollo, identifiquei a função GetRes de i_SAE_fun para causar o problema. O SAE-Indicator funciona quando a opção "send to server" é definida como falsa. Se ela for verdadeira, nada acontece. Quando, depois de algumas vezes, paro o indicador e paro o RTerm no gerenciador de tarefas, posso ver o seguinte no dbgview:
00000127 108.28663635 [9960] <0> GetOutput: Error: R não está em execução (mais): source('C:/RData/i_SAE.r')
00000128 108.28672791 [9960] <0> GetOutput: Error: R não está em execução (mais): source('C:/RData/i_SAE.r')
00000129 108.28672791 [9960] Lade nötiges Paket: zoo
00000130 108.28672791 [9960]
00000131 108.28672791 [9960] Attache Paket: 'zoo'
00000132 108.28672791 [9960]
00000133 108.28672791 [9960] Os seguintes objetos são mascarados de 'package:base':
00000134 108.28672791 [9960]
00000135 108.28672791 [9960] as.Date, as.Date.numeric
00000136 108.28672791 [9960]
00000137 108.29270935 [9960] RDeinit: RHandle = 539E61C (87680540)
(Isso não é um erro) ....
mas posso ver no RStudio que essa mensagem é exibida quando o arquivo i_SAE.r é fornecido. Talvez haja um problema com o parâmetro "serv" (?).
Se eu depurar a situação com o metatrader, posso ver que o ea nunca calcula nada.
Após "return(INIT_SUCCEEDED);", ele salta para
102 void OnTimer()
110 sig = GetRes(); depois para
130 int GetRes()
onde ele vai para
if(Rgb("alert1"))
{
Alert("Nenhum resultado de cálculo!" + Symbol());
sig = 0;
return(0);
} .
depois de mais algumas etapas, ele volta para o void OnTimer
Portanto, nada é calculado e nunca será.
Onde está o erro?
Espero que você tenha uma dica, pois depois de uma semana de análise intensiva, não tenho mais nenhuma ideia.
Muito obrigado por sua ajuda
Atenciosamente
rbliuom
(desculpe-me por meu inglês)
Oi Vladimir
Antes de mais nada, muito obrigado por fornecer tanto conhecimento. Esse material é realmente interessante. Você não apenas forneceu os dois lados (arquivos mt4 e R), mas também explicou tudo em detalhes. Isso é realmente generoso.
Mas, como Apollo disse antes, nunca consegui fazer o EA funcionar, ou melhor, que o EA como servidor recebesse dados do indicador. É claro que estou tentando encontrar o erro do meu lado. No R-Studio, tudo funciona bem. No entanto, tenho algumas perguntas.
No e_SAE, consigo encontrar o parâmetro "flag". Não o encontro em nenhum outro lugar. Talvez isso não tenha significado. Mas, como Apollo, identifiquei a função GetRes de i_SAE_fun para causar o problema. O SAE-Indicator funciona quando a opção "send to server" é definida como falsa. Se ela for verdadeira, nada acontece. Quando, depois de algumas vezes, paro o indicador e paro o RTerm no gerenciador de tarefas, posso ver o seguinte no dbgview:
00000127 108.28663635 [9960] <0> GetOutput: Error: R não está em execução (mais): source('C:/RData/i_SAE.r')
00000128 108.28672791 [9960] <0> GetOutput: Error: R não está em execução (mais): source('C:/RData/i_SAE.r')
00000129 108.28672791 [9960] Lade nötiges Paket: zoo
00000130 108.28672791 [9960]
00000131 108.28672791 [9960] Attache Paket: 'zoo'
00000132 108.28672791 [9960]
00000133 108.28672791 [9960] Os seguintes objetos são mascarados de 'package:base':
00000134 108.28672791 [9960]
00000135 108.28672791 [9960] as.Date, as.Date.numeric
00000136 108.28672791 [9960]
00000137 108.29270935 [9960] RDeinit: RHandle = 539E61C (87680540)
(Isso não é um erro) ....
mas posso ver no RStudio que essa mensagem é exibida quando o arquivo i_SAE.r é fornecido. Talvez haja um problema com o parâmetro "serv" (?).
Se eu depurar a situação com o metatrader, posso ver que o ea nunca calcula nada.
Após "return(INIT_SUCCEEDED);", ele salta para
102 void OnTimer()
110 sig = GetRes(); depois para
130 int GetRes()
onde ele vai para
if(Rgb("alert1"))
{
Alert("Nenhum resultado de cálculo!" + Symbol());
sig = 0;
return(0);
} .
depois de mais algumas etapas, ele volta para o void OnTimer
Portanto, nada é calculado e nunca será.
Onde está o erro?
Espero que você tenha uma dica, pois depois de uma semana de análise intensiva, não tenho mais nenhuma ideia.
Muito obrigado por sua ajuda
Atenciosamente
rbliuom
(desculpe-me por meu inglês)
Oi rbliuom, APoLLo_MQL
Neste fim de semana, verifiquei todos os scripts. O problema estava no pacote "svSocket".Não sei os motivos, mas os dados não são transmitidos do indicador para o servidor. Vou reescrever o expert. Simplificarei. Tudo o que transferimos para o especialista. Agora há muito tempo, mas tentarei terminar no fim de semana.
Com os melhores cumprimentos
Vladimir
Oi rbliuom, APoLLo_MQL
Neste fim de semana, verifiquei todos os scripts. O problema estava no pacote "svSocket".Não sei os motivos, mas os dados não são transmitidos do indicador para o servidor. Vou reescrever o expert. Simplificarei. Tudo o que transferimos para o especialista. Agora há muito tempo, mas tentarei terminar no fim de semana.
Atenciosamente
Vladimir
Não me esqueci de sua promessa, mas como o tempo é sempre curto. Feito em um futuro próximo .
Oi Vladimir
Leve o tempo que precisar. Para mim, não há tempo a perder. E há muito know-how em todas essas seções, nas quais devo aprimorar meus conhecimentos, e, além disso, o verão está no auge. Portanto, relaxe e divirta-se.
É necessário simplificar. Transfira para o Expert Advisor a parte do indicador que coleta e prepara os dados (incluindo, é claro, todas as funções). Experimente você mesmo. Se não funcionar, eu escolherei o tempo e o refarei.
Infelizmente, estou muito ocupado e não posso responder rapidamente.
Vladimir, será possível refazer o Expert Advisor para tentar fazê-lo funcionar? O tópico é interessante, mas infelizmente não poderei refazer o Expert Advisor e o indicador para que tudo funcione.