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

 
Hola. Puede que sea una pregunta tonta, pero tal vez haya una solución. Entiendo que las recotizaciones son gestionadas por un servidor en una empresa de corretaje, pero ¿quizás haya una forma programática de gestionarlas? ¿Es posible reducir su tiempo? Mi corredor a veces tarda entre 7 y 10 segundos. Esto es una pesadilla.
 
Shniperson:
Hola, esta es probablemente una pregunta tonta, pero tal vez haya una solución. Entiendo que las recotizaciones las hace el servidor de corretaje, pero tal vez haya una forma programática de tratar las recotizaciones. ¿Es posible reducir su tiempo? Mi corredor a veces tarda entre 7 y 10 segundos. Esto es una pesadilla.


No. Lo único que tiene a su disposición es el manejo de las recotizaciones por parte del software. Ejemplo - Función OpenPosition() para online de Kim I.V. - en la última línea del ciclo de procesamiento de recotizaciones

 if (err!=135) Sleep(1000*7.7);

En general, los errores #135 y #138 - implican el mismo procesamiento, según tengo entendido...:-))

ERR_PRICE_CHANGED 135 Precio cambiado
ERR_OFF_QUOTES 136 Sin precio
ERR_BROKER_BUSY 137 Corredor ocupado
ERR_REQUOTE 138 Nuevos precios

En mi búho esta línea se puntúa de la siguiente manera

if ((error != ERR_PRICE_CHANGED) && (error != ERR_REQUOTE)) Sleep(1000*7.7);
      


	          
 
Roman.:


No. Sólo tiene que tratar de forma programática las recotizaciones. Ejemplo - Función OpenPosition() de Kim en la última línea del bucle para el procesamiento de requotes

En general, los errores #135 y #138 - implican el mismo procesamiento, según tengo entendido...:-))

ERR_PRICE_CHANGED 135 Precio cambiado
ERR_OFF_QUOTES 136 Sin precio
ERR_BROKER_BUSY 137 Corredor ocupado
ERR_REQUOTE 138 Nuevos precios

En mi búho esta línea se rellena de la siguiente manera


No entiendo cómo el retraso del software permite "luchar" contra las recotizaciones.

Significa que los DTs están retrasando la apertura de la orden, y también hay un retraso en el software.

La única manera de "luchar" contra ella:

a) utilizar un gran deslizamiento

b) utilizar órdenes pendientes

Mi empresa de corretaje ha comenzado últimamente a retrasar las órdenes hasta un minuto, por lo que no puedo operar mediante órdenes de mercado.

 
nadya:
¿Por qué no calcula usted mismo el importe mediante la función OrderCommission()?

int n=OrdersTotal();
double Comission=0;
while (n>0)
 {
 OrderSelect(n-1,SELECT_BY_POS,MODE_TRADES);
 Comission=Comission+OrderCommission();
 n--;
 }
No estoy seguro de que este código lo calcule correctamente
 
abolk:


...

a) utilizar un gran deslizamiento

b) utilizar órdenes pendientes

...con órdenes de mercado simplemente no es posible.

a) - es la opción por defecto.

b) - si las órdenes de mercado se abren, por qué no utilizarlas también...

 
Amigos, respondan a mi mensaje anterior, por favor
 

Encontrar el valor medio

MathAbs(iClose(NULL,0,i)-iOpen(NULL,0,i));

Ejecútalo en el probador para n velas y sácalo en Alerta

No consigo que funcione.

Ayuda

 
palesandr:

Encontrar el valor medio

MathAbs(iClose(NULL,0,i)-iOpen(NULL,0,i));

Ejecútalo en el probador para n velas y sácalo en Alerta

No consigo que funcione.

Ayuda

Muéstranos cómo no funciona y lo arreglaremos
 


extern double n = 360;


int start()
{

double v, vol;

for(int i=1;i<=n;i=i+1)
{
v=MathAbs(iClose(NULL,0,i)-iOpen(NULL,0,i));
vol=(vol+v);
}
Alert ("vol=", vol );
return;
}

 
palesandr:


extern double n = 360;


int inicio()
{

doble v, vol;

for(int i=1;i<=n;i=i+1)
{
v=MathAbs(iClose(NULL,0,i)-iOpen(NULL,0,i));
vol=(vol+v);
}
Alerta ("vol=", vol );
volver;
}


vol = vol / n;
Alert ("vol=", vol );
Razón de la queja: