¡Error de MODE_TICKVALUE! - página 3

 
superbem:

[...] ¿Está claro ahora?

No.
 
gordon:
No.


geez



Pregunta al desarrollador de mt4 y al servidor en relación a otros activos que no sean forex:

Teniendo ticksize, lotes, moneda de cotización y por supuesto precios, el broker tiene tickvalue...

Lo que ocurre en un montón de brokers que he probado, es que cuando abro posición compruebo que tienen en el servidor el tickvalue correcto, pero el terminal en la función marketinfo() el modo tickvalue devuelve incompleto...

Porque, y seguro, no vienen las divisas de la cotización del cfd del broker.

Por lo tanto, la función marketinfo() podría ser corregida para devolver el tickvalue correcto teniendo desde el broker el ticksize, lotsize y cfd quote currency... O recuperando el tickvalue del servidor como dice cuando se abre la posición con el beneficio/pérdida correcto como he dicho.

 
superbem:

Pregunta al desarrollador de mt4 y al servidor sobre otros activos que no sean forex:

[...]

No están aquí... Contacta con MetaQuotes.

Vamos a intentarlo una vez más:

...cuando abro posición verifico que tienen en el servidor el tickvalue correcto, pero la terminal en la función marketinfo() el modo tickvalue devuelve incompleto...

¿Cómo verificaste que el servidor tiene el tickvalue correcto? ¿Qué es lo incompleto de MarketInfo(symbol,MODE_TICKVALUE)?

 
gordon:¿Cómo verificaste que el servidor tiene el valor de tic correcto?

Abrí la posición, el precio cae o sube, y la matemática de ganancias/pérdidas es correcta.
gordon:¿Qué hay de incompleto en MarketInfo(symbol,MODE_TICKVALUE)?


Devuelve sin tener en cuenta la moneda de cotización, haciendo la matemática sólo con el ticksize, el lotsize y el precio, faltando la moneda base activa. Los que coinciden con la moneda de depósito devuelve bien.
 

MarketInfo(symbol,MODE_TICKVALUE) es información del broker para tu beneficio, ellos no usan realmente esta información en sus propios cálculos del lado del servidor. Su declaración diaria es así, al igual que los valores MarketInfo(symbol,MODE_SWAP) y MarketInfo(symbol,MODE_SPREAD)

He visto casos en los que MarketInfo(symbol,MODE_SWAP) devolvía valores que no eran nada comparables a los valores de swap que el broker publicaba en su web y acreditaba/debía en las posiciones de mi cuenta (en directo).

No estoy seguro de lo que te preocupa superbem, el hecho del asunto con TICKVALUE es que el valor de tickvalue (incluso cuando se informa correctamente) es dependiente del precio. El tickvalue del USDJPY es diferente si el precio del USDJPY es 81,00 o 101,00.

Entonces, ¿para qué sirve MODE_TICKVALUE? (tiene un uso estrechamente válido, es constante para los pares de divisas en los que la contra-divisa es también la denominación de la cuenta, por ejemplo, EURUSD para las cuentas basadas en USD)

Peor aún, en mi opinión, es que el tickvalue sólo se calcula correctamente para las posiciones LARGAS... por lo que el tickvalue es erróneo TODO EL TIEMPO para las posiciones cortas en USDJPY por ejemplo (así como cualquier par cruzado).

La lección aquí es confiar pero verificar, y cuando la verificación demuestra que la confianza no se merece en una base de corredor por corredor, entonces es el momento de asegurarse de hacer los cálculos usted mismo (esto es lo que hago) o encontrar otro corredor que es más consciente de mantener sus valores marketinfo alineados con lo que realmente están haciendo con los números del lado del servidor.

 

Sus cálculos del lado del servidor deben ser sembrados automáticamente al MODE_TICKVALUE.

Otra cosa es, entiendo que cuando mt4 solo trabajaba con forex, no necesitaba una información con la cotización de la moneda, siempre eran las 3 letras de la derecha. Pero ahora con cfd no hay esa 3 letra, debería tener una variable que almacene esto.

 
superbem:

Sus cálculos del lado del servidor deben ser sembrados automáticamente al MODE_TICKVALUE.

Otra cosa es, entiendo que cuando mt4 solo trabajaba con forex, no necesitaba una información con la cotización de la moneda, siempre eran las 3 letras de la derecha. Pero ahora con cfd no hay esa 3 letra, debería tener una variable que almacene esto.




Y tal vez esta es la raíz de tu decepción... que tengas la opinión de que el broker debería hacer algo no significa que el broker esté roto, sólo significa que preferirías que las cosas se hicieran de cierta manera.

El broker no tiene que sembrar nada, claro que sería bueno que lo hiciera pero no es necesario que lo haga y siga operando la contabilidad de las operaciones correctamente en su lado de la ecuación (que es el único lado de la ecuación que importa en el sentido legal/fiduciario).

Y la contra-moneda no siempre son las 3 letras de la derecha. Con CMS, por ejemplo, las 3 letras de la derecha son siempre "FXF". Y con las cuentas mini de IBFX la última letra de la derecha es una "m" minúscula.

Sí, sería bueno tener alguna forma de extraer la contra-divisa utilizada para las valoraciones de los precios de los cfd, ya sean 3 caracteres o una variable extra que almacene la información... pero de nuevo hay que distinguir entre tus expectativas ("debería...") y lo que el broker puede hacer como nivel mínimo de trabajo y seguir operando sin problemas.

Le daré otro ejemplo... la sincronización de la hora del servidor. ¿No sería bueno que tu broker, y todos los brokers, mantuvieran realmente la hora de su servidor (a la que se accede con TimeCurrent()) sincronizada con una señal de reloj atómico en algún lugar? Es importante cuando se trata de los valores reales OHLC de las velas de corredor a corredor e incluso dentro del mismo corredor si tienen múltiples servidores. Y sin embargo no lo hacen.

Deberían, pero está claro que pueden funcionar a pesar de no hacerlo. Soy yo quien tiene que ajustar mis expectativas de lo que mi broker debería hacer para tener en cuenta la realidad de lo que realmente hacen.
 
La cosa es que no es el corredor, es el software... que desarrollado no le importa.
 
superbem:
La cosa es que no es el corredor, es el software... Que desarrollado no le importa.
No es así. Le venden al corredor un producto. Es él quien debe configurarlo/mantenerlo. Si no estás contento con tu broker tienes 2 opciones: 1. 1. Hablar con su soporte y ver si pueden encontrar una solución para ti. 2. 2. Cambiar de corredor.
 

La cosa es que el broker no puede configurar todo, el software deja la opción de no mostrar algunos datos al cliente...

No sé por qué algunos aquí piensan que este software es perfecto tal y como está.

lol...