Color del indicador estándar - página 2

 

¡Buenas tardes, Yedelkin!

Lo siento, aquí están las respuestas a sus preguntas.

MqlParam params[5];
int ma_handle;

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].integer_value = clrBlue;
        
        ma_handle = IndicatorCreate( NULL, PERIOD_CURRENT, IND_MA, 5, params );
        if ( ma_handle != INVALID_HANDLE )
      {
        ChartIndicatorAdd( 0, 0, ma_handle );
      }

El indicador se crea, pero su color es ROJO.

Una cosa más. El mensaje anterior no iba dirigido a ti, sino a stringo,

excepto los parámetros del indicador MA.

Si le ha ofendido de alguna manera, le pido disculpas.

Sinceramente, Mikhail.

 
Mikalas:

Una cosa más. El mensaje anterior no iba dirigido a ti, sino a stringo,

Suelo leer exactamente lo que dice: "¡Buenas tardes, stringo y Yedelkin!". Urain ya señaló ayer que "no sé leer entre líneas".

De la respuesta principal se desprende que no se realiza la puesta a cero del array params (y cada variable de tipoMqlParam tiene 4 campos, no 2). No puedes ver la respuesta al comentario: "Además, el indicador IND_MA(iMA) no tiene el parámetro "Color", mientras que tú sí lo tienes. Puede ver un ejemplo de cómo utilizar iMA aquí: MQL5 Reference / Access to timeseries and indicators / IndicatorCreate".

El código de error devuelto no está especificado.

 

¡Querido Yedelkin!

No es necesario poner a cero el array params, porque es un array estático (params[5]) y I

llenar todos sus campos, por cierto, llenar 2 campos es suficiente. Creo que dependiendo del TIPO uno de 3

campos posteriores.

Sinerror (ma_handle != INVALID_HANDLE), el indicador se crea.

Dime, ¿cuántos parámetros tiene el indicador en la imagen?

MA

Mikhail

 
Mikalas:

No haycódigo de error, el indicador está creado.

Primero escribes"Este código debería haber funcionado, PERO.... por desgracia...". Ahora resulta que"el indicador se está creando". ....To "No error code" - siempre hay un código de error, aunque sea cero.

Sobre la imagen. Reduces repetidamente la pregunta a una discusión sobre un posible, en tu opinión, error. Pero usted ha empezado a hablar de utilizar la función IndicatorCreate() en su código. Como usted mismo entiende, la función IndicatorCreate() no funciona con imágenes. Una vez más le sugiero: revise la documentación y los ejemplos. Encuentre (adivine) por qué en la pestaña de parámetros aparece la opción "Estilo", pero en los parámetros de entrada del indicador iMA no tiene dicha opción. Averigüe qué parámetros de entrada se proporcionan para el indicador que ha elegido y cuáles de ellos deben reflejarse en la función IndicatorCreate().

 

Ya veo, gracias.

 
Mikalas:

Dime, ¿cuántos parámetros tiene el indicador en la imagen?

Hay 7 parámetros en esta pestaña.
 

A diferencia de iMA(4 parámetros), la función

La función IndicatorCreate debe introducir todos los parámetros posibles

Referencia MQL5:

int IndicadorCrear(
cadena símbolo, // nombre del símbolo
ENUM_TIMEFRAMES period, // period
ENUM_INDICATOR indicator_id, // tipo de indicador de la enumeración ENUM_INDICATOR
int parameters_cnt=0, // número de parámetros
const MqlParam& parameters_array[]=NULL, // matriz de parámetros
);

parameters_array[]=NULL

[in] Matriz de tipo MqlParam, cuyos elementos contienen el tipo y el valor de cada parámetro de entrada de un indicador técnico.

¿Me envía al libro de referencia, pero no lo lee?

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Типы индикаторов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Типы индикаторов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Типы индикаторов - Документация по MQL5
 
Mikalas:

¿Me remite a una guía y usted no la ha leído?

Aquí está. Con ese enfoque, puede que te encuentres solo con tu problema.

Sobre el tema. El hecho de que hayas buscado en el manual es bueno. Ahora vuelve a abrirlo en la misma página. Se ve la siguiente línea: "Un array de tipo MqlParam, cuyos elementos contienen el tipo y el valor de cada parámetro de entrada del indicador técnico". Lo que es "parámetro de entrada" es "parámetro de entrada"(MQL5 Reference / MQL5 Basics / Variables / Input variables). Ahora busque la respuesta a la pregunta "¿cuántos parámetros de entrada tiene el indicador técnico iMA?

Mikalas:

A diferencia de iMA (4 parámetros), la función IndicatorCreate debe introducir todos los parámetros posibles

Entonces, si iMA tiene 4 parámetros de entrada, ¿cuántos parámetros de entrada debo "introducir" en IndicatorCreate()? Una vez más: IndicatorCreate() no funciona con imágenes. Para ser más exactos, IndicatorCreate() no trabaja con imágenes, sino con parámetros de entrada del indicador, que pasa directamente al indicador. ¿Por dónde pasará la opción de imagen "Estilo" si el indicador no tiene ese parámetro de entrada?
 

El indicador MA tiene 7 parámetros.

Para la función iMA bastan 4 parámetros

ma_handle = iMA( _Símbolo, TimeFrame, 10, 0, MODE_SMA, PRICE_MEDIAN );,

pero parala función IndicatorCreate() los 7 parámetros del indicador deben ser posibles

parameters_array[]=NULL

[in] Matriz de tipo MqlParam cuyos elementos contienen el tipo y el valor de cada parámetro de entrada del indicador técnico.

Una cosa más... ¿Cuál es su profesión?

 
Mikalas:

y los 7 parámetros del indicadordeben ser posibles paraIndicatorCreate().

Esta es tu conclusión y tienes que vivir con ella :) Service Desk para ayudar.