Cor do indicador padrão - página 4

 

1. isto NÃO é a Média Móvel!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Coloque a Média Móvel e a Média Móvel de Castom no gráfico !

MA

Aqui estão os parâmetros para a Média Móvel - os seus 7!!!!!!!!!!!!!!!!!!!!!!!!!!

2. Sim? Então porque não o pode alterar a partir do seu código?

 
Mikalas:

1. isto NÃO é a Média Móvel!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Coloque a Média Móvel e a Média Móvel de Castom na tabela !

2. Sim? Então porque não pode mudar do seu código?

1. A sua afirmação precisa de provas rigorosas

2. Porque a cor não tem qualquer efeito nos cálculos. Porque quando se cria um indicador a partir de um Expert Advisor, apenas a sua parte de cálculo é criada sem a parte de interface, o que não faz sentido para o Expert Advisor.

 
Mikalas:
...

2. Sim? Então porque não pode mudar do seu código?

Deixe-me perguntar-lhe novamente:

Quer saber a razão pela qual não pode,

ou

Quer dizer aos criadores que deve ser possível?

 
Mikalas:


Aqui estão os parâmetros de entrada para a Média Móvel - há 7!!!!!!!!!!!!!!!!!!!!!!!!!!

Porquê 7? Siga o link e leia

int  iMA(
   string               symbol,            // имя символа
   ENUM_TIMEFRAMES      period,            // период
   int                  ma_period,         // период усреднения
   int                  ma_shift,          // смещение индикатора по горизонтали
   ENUM_MA_METHOD       ma_method,         // тип сглаживания
   ENUM_APPLIED_PRICE   applied_price      // тип цены или handle
   );

excepto para o período do símbolo, existem apenas 4 parâmetros de entrada

 

Urain!

Quero saber porque não podem e transmitir a mensagem aos programadores de que este deve ser o caso!

stringo!

Para que é que eu afixei a fotografia?

Ir para a referência IndicatorCreate(), não para a referência iMA

e leia-o cuidadosamente:

int  IndicatorCreate(
   string           symbol,                            // имя символа
   ENUM_TIMEFRAMES  period,                            // период
   ENUM_INDICATOR   indicator_id,                      // тип индикатора из перечисления ENUM_INDICATOR
   int              parameters_cnt=0,                  // количество параметров
   const MqlParam&  parameters_array[]=NULL,           // массив параметров
   );

onde MqlParam

parameters_array[]=NULL

[em] Conjunto de tipo MqlParam cujos elementos contêm tipo e valor de cada parâmetro de entrada do indicador técnico.

A propósito, existem apenas 3 parâmetros de entrada em Média Móvel Personalizada!

A Média Móvel NÃO é uma Média Móvel Personalizada!

A função iMA() foi concebida para simples adição ao gráfico do indicador, e a função IndicatorCreate() foi concebida para criação avançada.

Por exemplo, FileCreate() e FileCreateEx();

Mikhail

 

Mikalas:

[em] Conjunto do tipo MqlParam, cujos elementos contêm o tipo e o valor de cada parâmetro de entrada do indicador técnico.

A cor não é um parâmetro de entrada de um indicador técnico.
 
Mikalas:

Urain!

Quero saber porque não podem e transmitir a mensagem aos programadores de que este deve ser o caso!

stringo!

Para que é que eu afixei a fotografia?

Ir para a referência IndicatorCreate(), não para a referência iMA

e leia-o cuidadosamente:

onde MqlParam

parameters_array[]=NULL

[em] Conjunto de tipo MqlParam cujos elementos contêm tipo e valor de cada parâmetro de entrada do indicador técnico.

A propósito, existem apenas 3 parâmetros de entrada em Média Móvel Personalizada!

A Média Móvel NÃO é uma Média Móvel Personalizada!

Michael

Todos os parâmetros necessários (e mesmo aqueles que não são necessários ou utilizados nos cálculos) para os cálculos no indicador e para a análise no Expert Advisor podem ser registados nas variáveis de entrada do indicador personalizado (auto-escrito). Estes parâmetros estarão disponíveis ao anexar o indicador a um gráfico e ao ser chamado programmaticamente pelo Consultor Especialista.

Andrey

 

Caros colegas!

Para a Moving Average é um contributo!

Não existe um código para a Média Móvel (QUANDO COMPROMETE?) Existe um para a Média Móvel Personalizada.

Escrevi para o apoio técnico. Vamos ver o que dirão.

Mikhail

 
Mikalas:

Urain!

Quero saber porque não podem e informar os programadores de que este deve ser o caso!

Em primeiro lugar, a sua comparação da interface dos indicadores padrão e dos indicadores personalizados não é totalmente correcta.

Os indicadores padrão são indicadores que foram fortemente optimizados, e como se pode ver a sua interface é ligeiramente diferente.

Agora porque não

a cor do indicador é definida na directiva do pré-processador, é carregada primeiro, seguida dos parâmetros de entrada.

As directivas do pré-processador são imutáveis do exterior, pelo menos porque a MQL5 não tem excepções #if #endif.

não se pode criar uma directiva de pré-processador personalizável.

A saída para esta situação é utilizar o método descrito acima, colocar a cor em instâncias e defini-la explicitamente através de PlotSet...

 

Urain!

Sem código de média móvel!

O que é que o pré-processador tem a ver com isto?

Eu não crio um indicador e depois mudo a sua cor!

O indicador é criado com um parâmetro de cor.

params[0].type = TYPE_INT;
        params[0].integer_value = 10;
        
        params[1].type = TYPE_INT;
        params[1].integer_value = 0;
        
        params[2].type = TYPE_INT;
        params[2].integer_value = MODE_SMA;
        
        params[3].type = TYPE_INT;
        params[3].integer_value = PRICE_MEDIAN;
        
        params[4].type = TYPE_COLOR;
        params[4].double_value = clrBlue;
        
        ma_handle = IndicatorCreate( NULL, PERIOD_CURRENT, IND_MA, 5, params );
        if ( ma_handle != INVALID_HANDLE )
      {
        ChartIndicatorAdd( 0, 0, ma_handle );
      }

Mikhail