Saturday 7 December 2019

Ipustom moving average


Eu sou novo em codificar, e estou aprendendo muito, no entanto, acertei algo que não consigo entender naquele momento. Estou tentando chamar o resultado de um teste em um dos meus indicadores, para um e, para que ele possa adicioná-lo aos seus próprios testes antes de colocar um comércio. A ea é uma cruz simples de média móvel. O indicador é um indicador de tendência ou variação. Anexei o código do indicador. Gostaria de ajuda e, se possível, explicasse simplesmente para que eu pudesse entender como deveria ser configurado dentro do indicador, para que a EA reconhecesse. Depois de ter o indicador ordenado, irei para a EA. O indicador possui dois testes, nos quais gostaria de adicionar a função iCustom. Nesta fase, só estou querendo adicioná-lo em um teste, não importa o que, como eu estou tentando entender. Qualquer pessoa que esteja disposta a ajudar e a explicar simplesmente. Seria muito benéfico - não consigo encontrar nada em linha que explique isso, então eu entendo isso. O resultado do teste poderia simplesmente ser quottruequot. Agradecemos antecipadamente por você. Mike iCustom permite que você acesse os seus buffers Indicadores. é simples assim. Por exemplo, você está escrevendo uma EA que possui uma estratégia baseada em 2 Indicadores, você pode construir o código do Indicador na EA, isso é possível, mas é um pouco envolvido porque os buffers Indicadores não funcionam em EAs, você teria que usar arrays e Lidar com eles em uma série de quotas de moda. A alternativa é ter os Indicadores em execução e acessar seus buffers da EA. Isso facilita o iCustom. Não são necessárias mudanças nos Indicadores. A EA simplesmente acessa os buffers que precisa nos valores de mudança que ele precisa. Na chamada iCustom, também pode passar todas as variáveis ​​externas que são necessárias para configurar o Indicador, conforme aplicável, o iCustom permite que você acesse os seus buffers Indicadores. é simples assim. Por exemplo, você está escrevendo uma EA que possui uma estratégia baseada em 2 Indicadores, você pode construir o código do Indicador na EA, isso é possível, mas é um pouco envolvido porque os buffers Indicadores não funcionam em EAs, você teria que usar arrays e Lidar com eles em uma série de quotas de moda. A alternativa é ter os Indicadores em execução e acessar seus buffers da EA. Isso facilita o iCustom. Não são necessárias mudanças nos Indicadores. A EA simplesmente acessa os buffers que precisa nos valores de mudança que ele precisa. Na chamada iCustom, também pode passar todas as variáveis ​​externas que são necessárias para configurar o Indicador, conforme aplicável. Obrigado por esse RaptorUK, no entanto, é a codificação real com a qual estou tendo dificuldades. Eu sou muito novo para o MQL4, e só o fiz há alguns meses, e ainda estou aprendendo - então estou precisando de uma explicação simples sobre a codificação e como configurá-lo no uso de programas Indicados. Anteriormente De acordo com as regras comerciais do MQL4, as funções comerciais não podem ser usadas em indicadores personalizados, é por isso que, para negociação automatizada, especialistas em Expert ou scripts devem ser usados. No entanto, a tecnologia de economia de recursos usada para cálculos em indicadores (veja Criação de Indicadores Personalizados) é amplamente utilizada na criação de programas de negociação. Na maioria dos casos, em indicadores personalizados, pode-se calcular de forma eficiente os valores dos elementos da matriz de indicadores necessários para a formação dos critérios de negociação e a tomada de decisões comerciais em Assessores Especializados. Os cálculos realizados em indicadores personalizados tecnicamente também podem ser implementados em Expert Advisors, mas isso pode levar à duplicação de cálculos em diferentes programas de aplicativos e a desperdícios não razoáveis ​​de recursos e, em alguns casos (quando são realizados cálculos intensivos em recursos) Uma decisão comercial tomada tarde. Nos casos em que é necessário usar os resultados de cálculo de indicadores personalizados em um Expert Advisor ou script, a função iCustom () pode ser usada. Função iCustom () Cálculo do indicador personalizado fornecido. O indicador personalizado deve ser compilado (arquivo. ex4) e localizado no diretório Indicadores do terminalcatalogueexperts. Símbolo - símbolo nome de uma segurança, nos dados dos quais um indicador será calculado. NULL indica o símbolo atual. Período de tempo - período. Pode ser um dos períodos de gráfico. 0 significa o período do gráfico atual. Nome - nome do indicador personalizado. . - Lista de parâmetros (se necessário). Os parâmetros passados ​​devem corresponder com a ordem de declarar e o tipo de variáveis ​​externas de um indicador personalizado. Modo - Índice de uma linha indicadora. Pode ser de - para 7 e deve corresponder ao índice usado por qualquer uma das funções SetIndexBar. Turno - Índice do valor obtido a partir de um buffer de indicador (deslocamento em relação a uma barra atual por um número especificado de barras). Vamos considerar como o iCustom () pode ser usado na prática. Deixe-nos resolver o seguinte problema: Problema 30. Uma estratégia de negociação é baseada nos dados do indicador personalizado rocseparate. mq4. Se a linha ROC no cronograma atual (laranja) cruza uma linha de taxa média suavizada (grosso vermelho) abaixo de um certo nível de baixo para cima, este é um critério relevante para comprar (abrir Comprar e fechar Vender). Se houver condições contrárias, considere este um critério relevante para vender. Escreva um código implementando esta estratégia. O princípio da construção do indicador personalizado rocseparate. mq4 é descrito em detalhes na seção Indicador personalizado ROC (Taxa de variação de preço). FIG. 131 ilustra dois pontos, em que a linha ROC no atual cronograma (M15) cruza a linha de mudança de velocidade suavizada. No ponto A, a linha laranja cruza o vermelho de baixo para cima e o local da primeira interseção está abaixo do nível -0.001. No ponto B, a linha laranja cruza o vermelho na direção descendente e o ponto cruzado está acima do nível 0,001. O fato desse cruzamento deve ser detectado no Consultor Especialista e ser considerado como sinal de compra (ponto A - fechar Vender e abrir Compra) ou vender (ponto B - fechar Comprar e Vender Vender). FIG. 131. O cruzamento de linhas de indicadores personalizados é considerado como um critério de negociação. Ao resolver esses problemas, um conselheiro experiente pronto pode ser usado, alterando a ordem dos critérios de negociação de cálculo nela. Neste caso, podemos tomar como base o Consultor Especial tradingexpert. mq4 descrito na seção Consultor Especial Simplificado. O EA shared. mq4 que calcula os critérios de negociação com base em um indicador personalizado parecerá o seguinte: Analise quais alterações foram feitas no código-fonte (tradeexpert. mq4). A parte principal do consultor especialista usado como básico não mudou. As mudanças foram feitas em dois blocos - bloco 1-2 - e bloco 5-6. No bloco 5-6, os critérios comerciais são calculados. Na EA descrita, uma estratégia de negociação baseia-se em dois critérios de negociação: critério para abrir Compra e critério para abrir Venda. A estratégia utilizada no Expert Advisor permite a presença de apenas um pedido de mercado aberto, não sendo permitidas ordens pendentes. A estratégia também pressupõe o fechamento de uma ordem oposta quando um critério para abrir gatilhos, por exemplo, se o critério para abrir uma ordem Comprar é relevante, significa que uma ordem de Venda deve ser fechada. Para usar nos resultados EA shared. mq4 dos cálculos realizados no indicador personalizado rocseparate. mq4, a função iCustom () deve ser executada: neste caso, os parâmetros formados especificados na chamada iCustom () indicam o seguinte: NULL - cálculos no indicador são Executado com base em dados da segurança atual neste caso, o EA é anexado à janela EURUSD, então os dados de EURUSD serão usados ​​(veja a Fig. 131) 0 - nos cálculos, os dados do período atual são usados ​​neste caso, o tempo atual é M15, então os dados correspondentes a M15 serão usados ​​quotrocseparatequot - name de um indicador personalizado, no qual os cálculos serão feitos. H, P, B, A - lista de parâmetros ajustáveis. Nesse caso, o indicador personalizado rocseparate. mq4 possui parâmetros ajustáveis ​​(bloco 2-3 do código rocseparate. mq4). Para que um usuário possa configurar valores desses parâmetros a partir da EA, eles são especificados na lista de parâmetros passados ​​da função iCustom (). No Expert Advisor, os valores desses parâmetros podem ser diferentes dos especificados no indicador. Nesse caso, durante os cálculos no indicador exatamente esses valores passados ​​serão usados. Estes parâmetros indicam o seguinte: H - número de barras no histórico de cálculo P - período de cálculo MA B - número de barras para cálculo de taxa A - número de barras para suavização. (O significado desses parâmetros é explicado em detalhes na seção Indicador personalizado ROC (Taxa de variação de preço). 1 (5) - linha de índice do indicador. No indicador personalizado rocseparate. mq4 6 matrizes de indicadores são usadas. ROC line in O cronograma atual (laranja) é construído com base nos valores Line1, para os quais é usado o buffer com o índice 1. A linha de taxa média suavizada é baseada em valores de elementos da matriz Line5, o índice do buffer usado é 5. 0 - índice de valor Obtido a partir de um buffer de indicador (mudar de volta em relação a uma barra atual pelo número especificado de períodos). Neste caso, os valores de linhas de indicadores na barra de zero são usados, é por isso que o índice 0 é especificado. Para que um usuário possa Altere os parâmetros do indicador ajustável na EA manualmente, as variáveis ​​externas são especificadas no bloco 1a-1b (do Expert Advisor). No bloco 5-5a os valores desses parâmetros são atribuídos a outras variáveis ​​com nomes mais curtos - isso é feito por conveniência de Apresentação do código no bloco 5a - 5b. Assim, um usuário pode especificar em parâmetros shared. mq4, com quais cálculos no indicador personalizado rocseparate. mq4 serão conduzidos. Após a execução, a função iCustom () retornará o valor correspondente a um valor de elemento especificado da matriz de indicadores especificada, calculada no indicador usando valores especificados de parâmetros ajustáveis. Durante a operação prática, é conveniente ver em uma janela de segurança linhas do indicador, elementos da matriz dos quais são usados ​​no consultor especialista (veja a figura 131). Ao mesmo tempo, a execução do iCustom () não está conectada com a presença do indicador na janela de segurança, bem como com os valores de seus parâmetros ajustáveis. A execução do iCustom () não requer a anexação de um indicador correspondente a uma janela de segurança. Além da chamada de iCustom () de qualquer programa de aplicativo, não resulta na anexação de um indicador correspondente a uma janela de segurança. A anexação de um indicador técnico a uma janela de segurança também não leva à chamada do iCustom em qualquer programa aplicativo. Os critérios de negociação na EA (bloco 5-6) são calculados com base nos valores dos elementos da matriz obtidos usando a função iCustom (). Por exemplo, um critério para abrir o Buy and closing Sell é calculado da seguinte forma: Se o último valor conhecido de uma linha de taxa média suavizada (L5) for menor que o nível especificado (valor do parâmetro ajustável, Nível 0.001) e o último valor conhecido Da linha ROC no prazo atual (L1) é maior do que a linha de taxa média suavizada (L5), o critério para abrir uma ordem de compra e fechar uma ordem de venda é considerado relevante. Para a confirmação da relevância de critérios opostos que refletem condições são usadas. Os critérios de negociação aceitos neste exemplo são usados ​​somente para fins educacionais e não devem ser considerados como diretriz ao negociar em uma conta real.

No comments:

Post a Comment