[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 13

 

Qué clase de hombres sois, no podéis ayudar a una pobre chica, todo lo que pido es una nimiedad.

Aquí hay un enlace a MA coloreado, por ejemplo.https://www.mql5.com/ru/code/9145

Sólo necesito un ejemplo, pero más sencillo y claro con una línea de color en los máximos o mínimos de las barras, sin algoritmos de cálculo.

Por favor, respondan a mi petición. Gracias de antemano.

 
rigonich:


Para dibujar una línea indicadora, debes:

1. crear matrices con determinadas propiedades, denominadas buffers indicadores, de las que se tomarán las coordenadas de los puntos utilizados para construir la línea indicadora. Para ello, se utilizan las funciones integradas en el terminal.

2. Establezca el estilo de dibujo de la línea indicadora seleccionándolo entre las opciones disponibles. esto también se puede hacer utilizando las funciones integradas del terminal.

3. rellenar este array con algunos valores. esto se hace en la función de inicio del indicador. e iniciar el programa dibujando el indicador.

El terminal no tiene ninguna función incorporada que cambie el estilo de dibujo de un búfer, es decir, puede dibujar diferentes partes de una línea en diferentes estilos. Esto requiere la creación de una función personalizada, pero no es fácil, y debes conocer al menos los fundamentos de la programación.

Lo entiendo, no sé cómo detener la línea roja en una barra, por ejemplo i=20, iniciar la línea verde desde esta barra, etc.
 
Yulia:

Qué clase de hombres sois, no podéis ayudar a una pobre chica, todo lo que pido es una nimiedad.

Aquí hay un enlace a MA coloreado, por ejemplo.https://www.mql5.com/ru/code/9145

Sólo necesito un ejemplo, pero más sencillo y claro con una línea de color en los máximos o mínimos de las barras, sin algoritmos de cálculo.

Por favor, respondan a mi petición. Gracias de antemano.


Hay ejemplos de este tipo de indicadores en kodobase, pero no son sencillos, porque este indicador no se puede hacer usando sólo las herramientas incorporadas en el terminal, porque el terminal no tiene las herramientas incorporadas necesarias para ello (me refiero a las herramientas para construir indicadores).
 

Profesionales, ¿cómo puedo almacenar los datos durante varios días y luego editarlos?

Sé de php, pero la base de datos MySQL se utiliza para almacenar algunos datos,

No puedo entender cómo almacenar cierta información y dónde ponerla para poder usarla y editarla más tarde?

Si existe tal cosa en mql4 por favor explíquelo con un pequeño ejemplo.

Esto es lo que tengo que hacer: tomar la cantidad de fondos disponibles en la cuenta en ese momento, introducirla en la base de datos, y después de que el EA haya operado un 10% más o menos, aumentamos el lote o lo reducimos en función de la nueva cantidad.

Para eso está la base de datos, para recordar que ahora hay 1000 dólares en la cuenta

Una vez que el EA haya alcanzado los 1.100 dólares, aumenta el lote.

Suma = 1100; // la cantidad actual es de $100 más, el Asesor Experto ha operado con éxito.

procent = 10; // 10 %.

baza = 1000; // hemos extraído la cantidad anterior de la base de datos.

raznica = (baza/porcentaje)+baza;// tomamos 1000/10=100, la diferencia es el 10% y lo sumamos a la cantidad de la base obtenemos 100+1000=1100


if (Suma>=raznica ) // 1100 >=1100 compare si el importe actual es superior a la suma de la base + 10%;

{

aumentamos el lote y añadimos la cantidad de 1100 a la base; después de que el EA negocie la cantidad del 10% de 1100=110, volvemos a aumentar el lote y añadimos la nueva cantidad a la base, etc.

}


Espero haberlo explicado bien. ¿Quizás haya otras ideas o soluciones sobre cómo implementar esto?

 
pasha5282:

Profesionales, ¿cómo puedo almacenar los datos durante varios días y luego editarlos?

Sé de php, pero la base de datos MySQL se utiliza para almacenar algunos datos,

No puedo entender cómo almacenar cierta información y dónde ponerla para poder usarla y editarla más tarde?

Si existe tal cosa en mql4 por favor explíquelo con un pequeño ejemplo.

Esto es lo que tengo que hacer: tomar la cantidad de fondos disponibles en la cuenta en ese momento, introducirla en la base de datos, y después de que el EA haya operado un 10% más o menos, aumentamos el lote o lo reducimos en función de la nueva cantidad.

Para eso está la base de datos, para recordar que ahora hay 1000 dólares en la cuenta

Una vez que el EA haya alcanzado los 1.100 dólares, aumenta el lote.

Suma = 1100; // la cantidad actual es de $100 más, el Asesor Experto ha operado con éxito.

procent = 10; // 10 %.

baza = 1000; // hemos extraído la cantidad anterior de la base de datos.

raznica = (baza/porcentaje)+baza;// tomamos 1000/10=100, la diferencia es el 10% y lo sumamos a la cantidad de la base obtenemos 100+1000=1100


if (Suma>=raznica ) // 1100 >=1100 compare si el importe actual es superior a la suma de la base + 10%;

{

aumentamos el lote y añadimos la cantidad de 1100 a la base; después de que el EA negocie la cantidad del 10% de 1100=110, volvemos a aumentar el lote y añadimos la nueva cantidad a la base, etc.

}


Espero haberlo explicado bien. ¿Quizás haya otras ideas o soluciones sobre cómo implementar esto?


Para ello se utilizan variables o matrices de variables. De hecho, MySQL es también un array de variables y un conjunto de reglas que permiten trabajar con este array.
 
Yulia:
Lo tengo claro, no sé cómo en una barra, por ejemplo i=20 para detener la línea roja, a partir de esta barra iniciar la verde, etc.
Para que una línea se dibuje en diferentes colores (se ensambla a partir de "trozos" separados de líneas de diferentes colores), es necesario activar tantos búferes como colores quiera tener la línea que se está dibujando.

En tu ejemplo, en la vigésima barra los valores deben ponerse en el buffer que dibuja la línea verde, y todos los demás buffers de esa barra deben tener un valor Vacío que no se dibuja en el gráfico. El valor por defecto es EMPTY_VALUE.


P.D. El enlace de MA de color que has citado es elemental y muy claro para poner en práctica lo que te he escrito arriba.

 
TarasBY:
Para que una línea se dibuje en diferentes colores (se ensambla a partir de "trozos" separados de líneas de diferentes colores), debes utilizar tantos topes como quieras que se dibuje la línea.
En su ejemplo, en la barra 20, usted pondría valores en el búfer que dibuja la línea verde, mientras que todos los demás búferes de esa barra deberían tener un valor vacío que no se dibuja en el gráfico. El valor por defecto es EMPTY_VALUE.

para ser más precisos, no cuántos colores, sino cuántas barras, y el número máximo de búferes de indicadores -- 8...
 
TarasBY:
Para que una línea se dibuje en diferentes colores (se recoge a partir de "trozos" separados de líneas de diferentes colores), es necesario utilizar tantos tampones, como colores quieras para la línea dibujada.
En tu ejemplo, en la barra 20, pondrías valores en el buffer que dibuja la línea verde, y todos los demás buffers de esa barra deberían tener un valor vacío que no se dibuja en el gráfico. El valor por defecto es EMPTY_VALUE.

He probado todo, si pongo el valor de la barra 20 en el buffer verde entonces el rojo se dibuja más, si asigno EMPTY_VALUE al buffer rojo 20, entonces el rojo a 20 no se dibuja. Por favor, muéstreme un ejemplo, le estaría muy agradecido

//--------------------------------------------------------------------
// userindicator.mq4 // Destinado a ser utilizado como ejemplo en el tutorial de MQL4.
//--------------------------------------------------------------------
#propiedad ventana_del_gráfica_del_indicador//El indicador se dibuja en la ventana principal
#property indicator_buffers 2 // número de búferes
#property indicator_color1 Rojo// color de la primera línea
#property indicator_color2 Verde// color de la segunda línea

doble Buf_0[],Buf_1[]; //declaración de matrices (para los búferes indicadores)
//--------------------------------------------------------------------
int init() {// Función especial init()
SetIndexBuffer(0,Buf_0);// asignación de un array al buffer
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3);//Estilo de línea
SetIndexBuffer(1,Buf_1);// asignar un array al buffer
SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,3);//Estilo de línea
volver; // Salir de la init especial. init()
}
//-------------------------------------------------------------------
int inicio() { // función especial start( )
int i,// índice de la barra
Barras contadas; // Número de barras contadas
//--------------------------------------------------------------------
Counted_bars=IndicatorCounted();//número de barras calculadas
i=Barras-Contadas_barras-1;// Índice del primero no contado

while(i>=0) // bucle a través de las barras no contadas
{

Buf_0[i]=Alto[i];
Buf_1[i]=
i--;

}
volver;
}

 
¿Cómo consigo el código aquí? ¿Tengo que usar Scr o algo así? ¿Qué tengo que hacer para poner el código en el comentario?
 
rigonich:

Para ser más precisos, no cuántos colores, sino cuántas barras, y el número máximo de buffers de indicadores -- 8...

¿Has pensado bien en las barras? Mira la MA coloreada en el enlace, ponla en tu gráfico con un periodo de, por ejemplo, 14, y cuenta el número de barras de diferentes colores que hay.

O tú estás hablando de "Thomas" y yo de "Eurya"...