Como liberar recursos indicadores? indicador chamado de EA
Results 1 to 7 of 7

Thread: Como liberar recursos indicadores? indicador chamado de EA

  1. #1
    Com
    http://docs.mql4.com/indiors/icustomEu estou chamando um indicador.
    Vai ficar lento, mas não o problema.

    Na EA há um tick e toda vez que ele chama e fica sem resposta e não pode completar um check (não uma otimização)
    Eu estou querendo saber se devo aplicar algo para poupar os recursos do indicador?

    Meu indicador usa buffers auxiliares para filtragem de sinal e é semelhante a isto:
    Código inserido int OnInit () {//- 4 buffers extras são usados ​​para contagem. Bugs de Indicador (4 4);
    Eu acho que pelo menos esses 4 não são excluídos.

    Qualquer ajuda?

  2. #2
    Da minha experiência uma coisa, que está muito a abrandar o iCustom, é a passagem de parâmetros os parâmetros de entrada mais longos o seu indicador, o iCustom mais lento seria para trabalhar sobre isso, o melhor é chamar iCustom sem qualquer parâmetro e usar as configurações padrão do indicador

  3. #3
    Oi, eu não encontrei um mecanismo para liberar fundos de um indicador assim que você incluiu incluídochamado em um EA (ou um indicador diferente) via iCustom (). Eu também não tenho experiência relacionada à experiência do iwjw - mas é interessante !!! Diversas coisas podem ajudar na solução do seu problema: 1. Verifique detalhadamente o que acontece nos seus indicadores e no seu EA, e avalie quanto tempo as partes únicas de seus cálculos levam: Você pode usar t0 = GetTickCount (). . .do loopcalculations .... t1 = GetTickCount () imprima com algumas informações extras para permitir a análise 2. Você realmente precisa calcular seu indicador com cada tick? Sua eégia precisa de compreensão de tudo o que seu indicador calcula em cada tick, ou você poderia simplesmente acessar as informações do indicador no início de uma nova barra e então permitir a entrada no comércio no início da nova barra se as condições estiverem corretas. Se o último for verdadeiro. . você pode simplesmente manter o acesso a um indi em uma construção como: if (NEWBAR) .... acessar icustom (indi) .... Faça o seu negócio baseado em cálculos 3. Se o acesso ao indi for exigido a cada tick, e quando a alternativa de iwjw também não ajuda, porque você precisadeseja mudar esses parâmetros, então você pode mover os cálculos e a lógica do indicador para o seu EA. A principal diferença entre indicador e código EA (para sua pergunta) é que em um EA você não tem acesso a buffers. Dependendo da estrutura do código no indicador e também de como os dados dos buffers nas barraschamadas anteriores afetam o valor dos buffers no pub atual, você pode considerar uma implementação do seu indicador menos os buffers.Se possível Para chamar seu indicador em NEWBAR, você pode armazenar o (s) valor (es) precedente (s) de fatores relacionados em uma matriz curta, ou talvez fatores individuais antes de descobrir os valores para seu pub atual. A desvantagem é que você precisa fazer alguma manipulação de dados por conta própria (e precisa descobrir isso - e pensar em consequências imprevistas), mas o lado positivo é enorme, porque evita chamar o iCustom (indicador). Espero que isso ajude. Mas: se seu terminal congela devido a chamar o iCustom (indicador), pode haver algo errado em seu indicador. A menos que o seu indicador faça um número estridente de cálculos. Eu implementei vários EAs com acesso a indicadores complexos e demorados. Em tais situações, o terminal desacelerou e, em tais situações, o terminal imprime instruções no arquivo de registro ao longo das linhas de ”criação do indicador, pois demora muito para ser calculado”. A entrada na profundidade da carne do indicador tende a resolver o problema. Cheerio, John

  4. #4
    Alguém me deu um tipp como não é culpa do indi, mas o EA, porque eu estou verificando minhas ordens presentes e assim por diante. Eu removi quase tudo da EA e deixei apenas duas. Código inserido duplamente ExtBufUpValue = iCustom (Symbol (), PERIOD_CURRENT, myIndi, My12ParForIndi, 0); if (ExtBufUpValue gt; 0)/Sinal estendido: todo o código eliminado do EA para teste else double ExtBufDownValue = iCustom (Símbolo (), PERIOD_CURRENT, myIndi, My12ParForIndi 1, 1); deve (ExtBufDownValue gt; 0)/Sinal curto: todo o código eliminado do EA para teste Esta parte do código será EXPONENCIALMENTE DESACELERANDO. Eu quero negociar apenas o que o Indi mostra. Se eu pegar toda a lógica de Indi para EA, então não será um pouco lento, apenas lento, como estou usando no MT4. BTW: este indi tem: Código inserido iLowest Código inserido iHighest junto com chamadas de código iMAOnArray de código inserido para executar suas coisas. Na opinião do gráfico normal, vejo que é um problema óbvio para ele e executar muito-muito lento no tempo (carregar e descarregar) e cliching diferentes prazos não ajuda: torna-se mais lento, mas pode ser 6-7 vezes apenas.

  5. #5
    Existe o problema:
    https://www.tradingintuitivo.com/tra...t-trading.htmlCódigo inserido iMAOnArray tem um fluxo, MT4.0 Build 840, 12 jun2015 - que o mais recente em meu corretor

  6. #6
    1 Anexo (s)
    Metaquotes confirmou o inseto e eles respondem 1. Você precisa abrir uma conta demo no servidor MetaQuotes-Demo e fazer o login. Contas Abra uma conta clique em adicionar novo corretor ... entrada demo.metaquotes.net clique em Digitalizar selecione demo.metaquotes.net clique em Avançar. 2. Reinicie o terminal. 3. Aguarde até que o registro finalizado do LiveUpdate apareça na guia Diário. 4. Reinicie o terminal. 5. Verifique a construção do terminal.

  7. #7
    Felicidades ... não é realmente maravilhoso. . .at tudo .... mas pelo menos tem sido resolvido? Cheerio, John

Permissões de Publicação

  • Não pode publicar novos tópicos
  • Não pode publicar respostas
  • Não pode publicar anexos
  • Não pode editar as suas publicações
  •  
  • Código BB está Ativo
  • Smilies estão Ativos
  • Código [IMG] está Ativo
  • Código [VIDEO] está Ativo
  • Código HTML está Desligado
O site da tradingintuitivo utiliza cookies
O site da tradingintuitivo utiliza cookies, alguns já foram definidos. Pode ler sobre a nossa utilização de cookies aqui. Por favor, clique no botão à direita para aceitar os nossos cookies. Se continuar a usar o site da tradingintuitivo, vamos supor que aceita os nossos cookies.