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

 
ERR_REQUOTE 138 - El precio solicitado no está actualizado o la oferta y la demanda están mezcladas.
 
FOReignEXchange:
ERR_REQUOTE 138 - El precio solicitado no está actualizado o la oferta y la demanda están mezcladas.
Envío el pedido en el momento de la recepción de la garrapata. Por eso el deslizamiento se establece para que el pedido sea aceptado aunque el precio cambie.
 

Lo que quería decir es que puede que te hayas confundido. Debe comprar al precio Ask y vender al precio Bid. Al abrir una orden, el precio de apertura puede no ser correcto. Si la orden de venta tiene el precio Ask, la operación no se abrirá.

¿Lo conoces?

 
FOReignEXchange:

Lo que quería decir es que puede que te hayas confundido. Debe comprar al precio Ask y vender al precio Bid. Al abrir una orden, el precio de apertura puede no ser correcto. Si la orden de venta tiene el precio Ask, la operación no se abrirá.

¿Lo conoces?

Bueno, en realidad no lo soy :) Por supuesto, los precios son correctos. Sí y el error sería diferente en este caso.
 
OrderSend(Symbol(),OP_BUY,Lot,Bid,10,0,0);

No te conozco. Una orden como esta no se abrirá. Cuando empecé a escribir EAs, cometí un error de este tipo y no podía entender por qué aparecía el error 138. También he intentado aumentar el deslizamiento pero no ha servido de nada.

No sé qué más puede ser. Sólo hay dos variables que pueden causar este error.

 
cómo sabe el código del indicador que una barra se ha cerrado en D1 si el indicador está en un TF inferior
 

¿Puedes darme una pista?

si (objeto encontrado), entonces....

¿Cómo implementar esta condición si el nombre del objeto no debe tener un valor?

Gracias.

 
IgorM:
¿Cómo puedo saber con el código del indicador que una barra en D1 se ha cerrado, si el indicador está en un marco de tiempo inferior?

Esto es lo que yo haría.

Puede insertar una condición en el código del indicador

if (TimeHour(iTime(NULL,0,0))==0 && TimeMinute(iTime(NULL,0,0)==0))
   {
   }

Es decir, si se cumplen estas condiciones, significa que GTM acaba de empezar un nuevo día y la barra diaria se ha cerrado respectivamente.

Es posible utilizar garrapatas, pero no quiero pensar cómo es posible. Sería demasiado judío.

 
FOReignEXchange:

Esto es lo que yo haría.

Puede insertar una condición en el código del indicador

Es decir, si se cumplen estas condiciones, significa que GTM acaba de empezar un nuevo día y la barra diaria se ha cerrado respectivamente.

Es posible utilizar garrapatas, pero no quiero pensar cómo es posible. Sería demasiado judío.


Gracias, eso es lo que yo también pensaba.

Estoy buscando una solución sin comparación, es decir, mediante el análisis de los cierres/incrementos de barras en el gráfico TF D1

 
IgorM:


Gracias, eso es lo que estaba pensando también.

Buscando una solución sin comparación, es decir, analizando las barras de cierre/incremento en el gráfico TF D1

Así que deja que analice el D1. Sólo tiene que especificar lo que debe analizar. Por ejemplo, el precio de cierre de la barra diaria anterior será iClose(NULL,1440,1) y no importa en qué TF se establezca este análisis. Debe especificar el TF en la función, y eso es todo.

No entiendo el problema.

Razón de la queja: