[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. No puedo ir a ningún sitio sin ti - 4. - página 585

 
lottamer:

Esto es lo que ya he escrito:

-------------------------------------------

int inicio()

{

condición de compra,

la propia compra,

y modificación

return(0);

}

-----------------------------------------

El problema es que ahora tengo que introducir condiciones NUEVAS, condiciones de cierre, y luego se cierra solo, y mi EA empieza a modificarse infinitamente (el stop y la toma son fijos, pero el mensaje de modificación exitosa aparece con cada tick).

¿Cómo puedo ahora crear un bucle dentro de este inicio para las nuevas condiciones y el cierre, por lo que la primera parte de la EA no se verá afectada hasta que se cierre por completo?


Por favor, publica el código para que podamos resolverlo y ayudarte.

 
Ekburg:


todo está bien allí, cuando estas funciones no estaban, todo funcionaba como un reloj! y ahora funciona, pero el error durante la modificación se produce en la propia función

Tengo una idea, ¿tal vez este error se produce porque la función de modificación está en la función de usuario, no en el cuerpo start()?


Es importante que la descripción de la función esté fuera de otras funciones y que se pueda llamar desde cualquier lugar.
 
rigonich:

Dice que no hay que construir un rayo para un objeto llamado Su_Nombre.

Me disculpo por ser meticuloso, sólo quiero entender por qué el autor añadió estas líneas al código.

Básicamente, construimos dos líneas gruesas (cuerpo de la vela), finas (sombras), cambiamos el color y el texto, pero por qué han añadido un rayo allí.

Es casi la 1 de la mañana localmente, así que tal vez estoy empezando a bajar el ritmo.

 
Pacman:

Pido disculpas por ser meticuloso, sólo quiero entender por qué el autor añadió estas líneas al código.

Básicamente, construimos dos líneas gruesas (cuerpo de la vela), finas (sombras), cambiamos el color y el texto, pero por qué añadieron una viga allí.

Es casi la 1 de la mañana localmente, así que tal vez estoy empezando a bajar el ritmo.


Porque no hay ningún objeto como una vela, y sólo se pueden crear objetos que estén en el terminal, y todos ellos tienen sus propios conjuntos de propiedades.
 
Pacman:

Me disculpo por ser meticuloso, sólo quiero entender por qué el autor añadió estas líneas al código.

Básicamente, construimos dos líneas gruesas (cuerpo de la vela), finas (sombras), cambiamos el color y el texto, pero por qué han añadido un rayo allí.

Es casi la 1 de la mañana localmente, así que tal vez estoy empezando a bajar el ritmo.

Todo lo que se dibuja en un gráfico (tabla) es un objeto (gráfico). Los objetos tienen propiedades. Una vela se dibuja en un gráfico mediante un objeto llamado línea de tendencia(OBJ_TREND). Se define mediante 2 puntos en un gráfico. Puede establecerse como un segmento o como un rayo - esto es definido por su propiedad mencionada OBJPROP_RAY.
 
Pacman:


Publica el código para que pueda resolverlo y ayudarte.


Por el contrario, he querido simplificar su tarea y ocultar los bloques que ya funcionan y no necesitan ser analizados o corregidos.

es decir, las CONDICIONES, la APERTURA y la MODIFICACIÓN ya están apiladas dentro de la función de inicio.

¿las siguientes condiciones deben estar dentro de la misma función? Es que todavía no he escrito estas condiciones, porque no sé dónde ponerlas...

 
lottamer:


Por el contrario, he querido simplificar su tarea y ocultar los bloques que ya funcionan y no necesitan ser analizados o corregidos.

es decir, las CONDICIONES, la APERTURA y la MODIFICACIÓN ya están apiladas dentro de la función de inicio.

¿las siguientes condiciones deben estar dentro de la misma función? Es que todavía no he escrito estas condiciones, porque no sé dónde ponerlas...

Deja el teclado - lee y estudia, también puedes hacerlo, y luego coge un lápiz y dibuja un esquema de tu EA, cuando lo dibujes - vuelve al teclado. :)))
 
lottamer:

Esto es lo que ya he escrito:

-------------------------------------------

int inicio()

{

condición de compra,

la propia compra,

y modificación

return(0);

}

-----------------------------------------

El problema es que ahora tengo que introducir condiciones NUEVAS, condiciones de cierre, y luego se cierra solo, y mi EA empieza a modificarse infinitamente (el stop y la toma son fijos, pero el mensaje de modificación exitosa aparece con cada tick).

¿Me puedes decir cómo crear un bucle dentro de este inicio para nuevas condiciones y cierre, para que la primera parte del EA no se vea afectada hasta que se cierre completamente?

Si tiene sl y tp fijos, ¿por qué necesita otras condiciones para el cierre? Su trailing stop se comporta de la misma manera que el estándar de la terminal - modifica la orden en cada tick, si el precio va en la dirección deseada (sube el stoploss). Si quiere que no se modifique en cada tick, añada la condición - no modificar si la diferencia entre el stoploss de la orden y el precio actual es menor que el nivel definido(nivel del trailing stop + paso de modificación).

En cuanto a la colocación - los operadores se ejecutan en orden, de arriba a abajo de izquierda a derecha si no hay operadores de bifurcación entre ellos (if else)/.

 

¡Muchas gracias, chicos!

Lo tengo:) La línea de tendencia se dibuja inicialmente como una semirrecta y la ponemos en falso, es decir, la línea se dibujará desde el punto A hasta el punto B.

Ahora podemos ir a la cama)

 
rigonich:


He mirado tu código y no sé qué decir. Como dijoTarasBY más arriba, es más fácil decir lo que está bien en él:

Como le dije anteriormente -- las funciones Seconds(),Minute(),Hour() devuelven la hora de inicio del servidor, y bajo esta condición si (Hour()==10), su función no funcionará si no inició su Asesor Experto a las 10 en punto. Estas condiciones se dan todo el tiempo. Lea atentamente la descripción de las funciones en la Ayuda.

2.if (TIMECLOSEHIGH19>TIMEOPENLOW19) y if (TIMECLOSELOW19<TIMEOPENHIGH19) -- estas son condiciones que siempre funcionarán.

3. No escribas 3 o 4 funciones casi idénticas en un mismo programa, haz una sola función y pásale los parámetros necesarios al llamarla. Esto no es un error, pero hace que tu código sea engorroso y difícil de leer.

4) Utiliza cualquiera, pero siempre el mismo sistema de disposición de los caracteres sintácticos (espacios, tabuladores, saltos de línea, paréntesis), de lo contrario te confundirás y confundirán a los demás.

Por ahora es suficiente, arreglarlo y luego ya veremos.

))) Veo, voy a tratar de hacer, aunque me pareció que todo aquí es correcto y muy simple))) Muchas gracias por su tiempo.