Ayuda a la codificación - página 251

 

Todavía no, lo haré si él está de acuerdo. Desgraciadamente hay un cambio de horario en Japón, así que tengo que esperar hasta más tarde.

 
Ovo:
Todavía no, lo haré si está de acuerdo. Desafortunadamente hay cambio de horario a Japón, así que tengo que esperar hasta más tarde.

Turno de noche ________________________

Mi pensamiento original era este :

Supongamos que TimeCurrent() y CopyRates() funcionan correctamente. En ese caso, devolvería ese resultado verdadero sólo si no hubiera datos en el archivo histórico de 1 minuto en absoluto (o sólo se hubiera guardado una barra en ese archivo histórico), lo cual es difícil de creer.

Así que, si por alguna razón, TimeCurrent() devuelve 0 en algunos casos entonces tendrías ese error

O, si se excluye todo lo anterior, CopyRates() puede funcionar mal. Yo no he tenido problemas con ella pero en metatrader 5 hay casos frecuentes en los que una función muy similar (CopyTime()) hace un completo disparate: en un tick funciona, en el siguiente devuelve "error de marco de tiempo inválido" y luego en el siguiente vuelve a funcionar bien (la variable de marco de tiempo nunca ha cambiado mientras tanto, por supuesto). Como la base de ambos es la misma ahora, no es difícil suponer algo similar

________________________

Debemos tener en cuenta lo que CJA dijo una vez : "Después de todo, estamos hablando de la nueva metatrader 4" que es cualquier cosa menos libre de errores

 
mladen:
Turno de noche

________________________

Mi pensamiento original era este :

Supongamos que TimeCurrent() y CopyRates() funcionan correctamente. En ese caso, devolvería ese resultado verdadero sólo si no hubiera datos en el archivo histórico de 1 minuto en absoluto (o sólo se guardara una barra en ese archivo histórico), lo cual es difícil de creer.

Así que, si por alguna razón, TimeCurrent() devuelve 0 en algunos casos entonces tendrías ese error

O, si se excluye todo lo anterior, CopyRates() puede funcionar mal. Yo no he tenido problemas con ella pero en metatrader 5 hay casos frecuentes en los que una función muy similar (CopyTime()) hace un completo disparate: en un tick funciona, en el siguiente devuelve "error de marco de tiempo inválido" y luego en el siguiente vuelve a funcionar bien (la variable de marco de tiempo nunca ha cambiado mientras tanto, por supuesto). Como la base de ambos es la misma ahora, no es difícil suponer algo similar

________________________

Debemos tener en cuenta lo que CJA dijo una vez : "Después de todo, estamos hablando de la nueva metatrader 4" que es cualquier cosa menos libre de errores

Lol, que suena de miedo. Yo dependo totalmente de este comando. Hice algunas pruebas y no se comportaba de forma muy lógica, pero tampoco aleatoria. Así que espero que hayan hecho mejor trabajo que con el MT5.

 

Hola,

Puede alguien ayudarme a codificar lo siguiente:

Necesito el código para abrir órdenes pendientes de compra y venta (martingala creo que es el nombre para esto) a la distancia "a + x + y" desde el punto de partida en un momento determinado "z".

distancia "x" = Spread en el momento "z" + 0.1 pip, stop mínimo permitido por mi broker

distancia "y" = pips para hacer de la orden pendiente una orden de mercado

De esta manera, esta martingala abriría una orden pendiente de compra en el punto de la posición ("a") + Spread + 0,1 pip ("x") + "y" pips, y establecería el stop loss en "x" con "y" pips SL.

"y" pips = 1 para un spread superior a 35 puntos

"y" pips = 2 para un spread inferior a 35 puntos

la idea es incluir la variable spread en los puntos de la orden pendiente de apertura del ea y no solo una orden pendiente de compra o venta con una cantidad de pips para todos los casos.

Gracias

Daniel

 

necesito un script para el control del tiempo

quiero que ea comience a una hora específica gm+2 y se detenga a una hora específica

me refiero a la hora de inicio y la hora de cierre de todos los abiertos

 
dasssi:
necesito un script para controlar el tiempo

quiero que ea comience a una hora determinada gm+2 y se detenga a una hora determinada

me refiero al tiempo de inicio y al tiempo de cierre de todos los abiertos

dasssi

Primero esta pregunta : ¿Por qué no se añade el filtro de tiempo en el propio EA?

PD: se puede hacer, pero entonces se detiene o habilita a todos los expertos, no solo a uno, por eso hago la pregunta superior

 

Hola puede alguien ayudarme porque este código no funciona...(solía funcionar bien en la build 509)

en la build 610 compila sin errores pero mi terminal se cuelga y no puede cargar...

int inicio()

{

int counted_bars=IndicatorCounted();

if(counted_bars>0) counted_bars--;

int limit=Barras_contadas;

for(int i=0; i<limit; i++)

{

BUFFER_1 = iCustom(NULL,0, "MYindicator",Period,3,iBarShift(NULL,0,Time,false));

 

tenía un problema de compilación pero lo he superado y he cambiado el ea

gracias

 
mladen:
Turno de noche ________________________

Mi pensamiento original era este :

Supongamos que TimeCurrent() y CopyRates() funcionan correctamente. En ese caso, devolvería ese resultado verdadero sólo si no hubiera datos en el archivo histórico de 1 minuto en absoluto (o sólo se guardara una barra en ese archivo histórico), lo cual es difícil de creer.

Así que, si por alguna razón, TimeCurrent() devuelve 0 en algunos casos entonces tendrías ese error

O, si se excluye todo lo anterior, CopyRates() puede funcionar mal. Yo no he tenido problemas con ella pero en metatrader 5 hay casos frecuentes en los que una función muy similar (CopyTime()) hace un completo disparate: en un tick funciona, en el siguiente devuelve "error de marco de tiempo inválido" y luego en el siguiente vuelve a funcionar bien (la variable de marco de tiempo nunca ha cambiado mientras tanto, por supuesto). Como la base de ambos es la misma ahora, no es difícil suponer algo similar

________________________

Debemos tener en cuenta lo que CJA dijo una vez : "Después de todo, estamos hablando de la nueva metatrader 4" que es cualquier cosa menos libre de errores

Lol, finalmente tenías razón. Después de sustituir el TimeCurrent por un entero el código funciona en todo el mundo. Parece que dependía de la zona horaria. Me costó un día de mi vida.

 
dasssi:
tenía un problema de compilación pero lo superé y cambié el EA gracias

Por cierto: aquí hay un indicador (no un script) que puede activar o desactivar todos los EAs y scripts en un momento determinado. Los límites de tiempo deben ser su tiempo local (ordenador). No depende de los ticks, por lo que se deshabilitará o habilitará el comercio incluso si los ticks no están llegando

Archivos adjuntos:
Razón de la queja: