[ARCHIVO] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 3. - página 133

 

El TickSave del compostador falla algunos ticks, y también cuando el servidor de la demo se reconecta no crea una nueva carpeta y no escribe en la antigua

Aún así, ¿cuál es el mejor script o Asesor Experto para recoger las garrapatas?

 

Dime cuántos decimales debe tener la coma.

Ejemplo.

En la terminal el precio es de 1,44996. Sin embargo, todas las funciones sólo devuelven 1,4499 o 1,4450. ¿Existe algún método para buscar valores con 5 decimales?

Debido a esto no puedo averiguar qué hacer con el stop loss. Me guié por la lectura del terminal 1.4xxx. Y puse un stop loss en 200 puntos. Normalmente se sitúa en 1,40000 - 200 = 1,39800, por ejemplo.

Sin embargo, lógicamente, la función devuelve sólo 1,4xxx debería ser 1,4000 - 200 = 1,3800. ¿Qué estoy haciendo mal? =(

 
DoubleToStr
 
sergeev:
DoubleToStr

Oooh.... Gracias.

Así que había un redondeo automático a 4 después del punto decimal.

 
ChAnton:

Oooo.... Gracias.

Así que había un redondeo automático a 4 después del punto decimal.


Cuando se imprime en Impresión/Comentario sin ningún otro texto, sí.

Pero el número sigue siendo un número. Así que no olvides aplicar NormalizeDouble cuando envíes solicitudes de intercambio

 

El segmento horizontal se ajusta de la siguiente manera (estará a la derecha de Time[0]):

         datetime Time_TLINE_Left  = Time[0]         + Period()*60*15;
         datetime Time_TLINE_Right = Time_TLINE_Left + Period()*60*10;

         if(ObjectFind("MyLine_Buy")==-1) {
            string       Line_Buy  = "MyLine_Buy";
            ObjectCreate(Line_Buy, OBJ_TREND,  0,  Time_TLINE_Left,Ask,  Time_TLINE_Right,Ask);
            ObjectSet(   Line_Buy, OBJPROP_STYLE, STYLE_SOLID);
            ObjectSet(   Line_Buy, OBJPROP_RAY,   False);
            ObjectSet(   Line_Buy, OBJPROP_WIDTH, 3);
            ObjectSet(   Line_Buy, OBJPROP_BACK , True);
            ObjectSet(   Line_Buy, OBJPROP_COLOR, Color_Only_Buy);
         }

Con cada nueva barra se borra el segmento y se vuelve a dibujar.

De vez en cuando se pierde un día después del actual (es decir, no está en el gráfico, pero se intenta dibujar un segmento para él), por ejemplo, los fines de semana:

La hora[0] corresponde al viernes, y el segmento se crea para el sábado, cuando no hay comercio.

En este caso, la lógica está rota.

- Tenemos que encontrar una manera de identificar esos días que no existen, y no dibujar segmentos de línea para ellos.

¿Tal vez alguien tenga una idea de cómo hacerlo?

(Marcar el día de la semana no cubre todas las opciones posibles, como los días festivos)

Gracias.

 
chief2000:

¿Alguien tiene idea de cómo hacerlo? (Comprobar los días de la semana no cubre todas las posibilidades)

Necesitamos detectar un hueco en las cotizaciones, comparar el Tiempo[0] y el Tiempo[1] en días... Si no hay hueco, dibujamos como siempre, si lo hay hay que pensar qué hacer en este caso.

 
splxgf:

Necesitamos detectar un hueco entre comillas, comparar el Tiempo[0] y el Tiempo[1]... Si no hay hueco, entonces lo dibujamos como siempre, si hay hueco, entonces debemos pensar qué hacer en este caso.

El tiempo[1] está a la izquierda del tiempo[0] y el segmento se dibuja a la derecha del tiempo[0] a cierta distancia de éste.

Pensé que un segmento dibujado para un día inexistente (por ejemplo, el sábado) debería tener algunas propiedades únicas, como un punto. Pero el problema es que este punto tiene el tiempo correcto en sus propiedades - las coordenadas izquierda y derecha de este punto de segmento no tienen el mismo tiempo (para un punto real el tiempo sería el mismo).

Si fuera posible encontrar algo específico, entonces sería posible simplemente eliminar dicho segmento.

 

comparar con Tiempo[1] sólo para detectar los días festivos/fines de semana.

Y por qué hay un intento de redibujar, no hay ticks, se puede comprobar que las operaciones están cerradas para los scripts en bucle.

 
splxgf:

comparar con Tiempo[1] sólo para detectar los días festivos/fines de semana.

Y por qué hay un intento de redibujar, no hay ticks, se puede comprobar que las operaciones están cerradas para los scripts en bucle.

El problema se produce en la primera barra del primer día de la semana de negociación: el segmento cruza Time[0] aunque debería estar siempre a una distancia determinada (fija) de él.

Al principio de la semana, resulta que el tiempo de la coordenada izquierda del segmento es menor que el tiempo de apertura de Time[0].

Tal vez tu solución de comprobar un hueco entre Time[0] y Time[1] pueda resolver el problema, pero tendré que sacrificar los primeros compases del principio de la semana (esto es aceptable). Lo comprobaré mañana.

Gracias.