Errores, fallos, preguntas - página 1381

 
Karputov Vladimir:
Por favor, muestreSYMBOL_VOLUME_STEP para estos tres símbolos.

0,01 para ES

0,1 para SPX

1 para RTS.

Una vez más, tengo dos tareas diferentes:

La primera tarea es igualar el volumen de cualquier instrumento del mundo.

La segunda tarea consiste en obtener un presupuesto para cualquier instrumento del mundo a partir del número

Sobre la primera tarea. No sé dónde conseguir información sobre qué valores tiene en principio SYMBOL_VOLUME_STEP.

El hecho de que yo haya encontrado personalmente el 1 y el 0,1 y el 0,01 no es un argumento para decir que siempre habrá sólo eso. ¿Quién dice que no hay, por ejemplo, 0,25 o 0,5?


Sobre el segundo problema. No sé cómo conseguir una compensación. Sólo una vez me he encontrado con un caso tan complicado con una cotización con incrementos de precio de 0,13, 0,38, 0,63, 0,88. Pero, ¿dónde está la garantía de que se trata de una excepción aislada?

¿Es realmente necesario convertirse en un experto en todos los instrumentos del mundo para obtener una cotización exacta en el terminal de un número? ¿Por qué debería ser mi problema?

 
Fry:

...

Sobre la primera tarea. No sé dónde conseguir información sobre qué valores tiene en principio SYMBOL_VOLUME_STEP.

...

Recorra todos los instrumentos en la visión general del mercado y obtengaSYMBOL_VOLUME_STEP para cada uno de ellos. A continuación, realice la misma operación en otro servidor de negociación. Y así sucesivamente, hasta que hayas recorrido todo el mundo.

Entonces sabrá qué valores deSYMBOL_VOLUME_STEP existen en el mundo.

 
Fry:

0,01 para ES

0,1 para SPX

1 para RTS

Una vez más, tengo dos problemas diferentes:

La primera tarea es igualar el volumen de cualquier instrumento del mundo.

La segunda tarea consiste en obtener un presupuesto para cualquier instrumento del mundo a partir del número

Sobre la primera tarea. No sé dónde conseguir información sobre qué valores tiene en principio SYMBOL_VOLUME_STEP.

El hecho de que yo haya encontrado personalmente el 1 y el 0,1 y el 0,01 no es un argumento para decir que siempre habrá sólo eso. ¿Quién dice que no hay, por ejemplo, 0,25 o 0,5?


Sobre el segundo problema. No sé cómo conseguir una compensación. Sólo una vez me he encontrado con un caso tan complicado con una cotización con incrementos de precio de 0,13, 0,38, 0,63, 0,88. Pero, ¿dónde está la garantía de que se trata de una excepción aislada?

¿Es realmente necesario convertirse en un experto en todos los instrumentos del mundo para obtener una cotización exacta en el terminal de un número? ¿Por qué debería ser mi problema?

¿Cuál es el problema? El caso más sencillo es el paso de 0,01, 0,1, 1. En consecuencia, se normaliza el volumen a 2, 1, 0. Si el paso es 0,13, etc., en caso de que el volumen sea fijo y esté especificado en los ajustes de entrada, durante la inicialización se comprueba si el número entero se obtiene al dividir el volumen de entrada por el paso. Si no es así, se ajusta el volumen, por ejemplo, al más adecuado multiplicando el valor entero resultante por el paso.

 
Karputov Vladimir:

Recorra todos los instrumentos de la visión general del mercado y obtengaSYMBOL_VOLUME_STEP para cada uno de ellos. A continuación, realice la misma operación en otro servidor de negociación. Y así sucesivamente, hasta dar la vuelta al mundo.

Entonces sabrá qué valores deSYMBOL_VOLUME_STEP existen en el mundo.

Si esto es un sarcasmo, no entiendo la razón.

Si estás sugiriendo en serio que haga esta mierda de forma habitual, es más fácil cambiar de plataforma. Codificaré, por ejemplo, bajo TSLab o cualquier otra cosa que elija.

No estoy pidiendo algo súper natural. Sólo 2 funciones básicas (de cualquier número, un volumen de igual a igual y una cotización).

Sería bastante lógico esperar un servicio de este tipo sólo de la API, en lugar de hacer "afilar con un archivo" en la situación.

 
Fry:

Si esto es un sarcasmo, no entiendo la razón.

Si estás sugiriendo seriamente que haga esta mierda de forma regular, es más fácil cambiar de plataforma. Codificaré en TSLab, por ejemplo, o en cualquier otra cosa que elija.

No estoy pidiendo algo súper natural. Sólo 2 funciones básicas (de cualquier número, un volumen de igual a igual y una cotización).

Sería bastante lógico esperar un servicio de este tipo sólo de la API, en lugar de hacer "afilar con un archivo" en la situación.

No entiendo su "deseo": existe una función estándarSYMBOL_VOLUME_STEP- utilícela. Puede utilizar cualquier paso para cada instrumento. Si quiere añadir 100 volúmenes mínimos: volume=SYMBOL_VOLUME_STEP*100. Si quiere añadir 12 volúmenes mínimos: volume=SYMBOL_VOLUME_STEP*12. ¿Cuál es el problema?
 
Karputov Vladimir:
No entiendo su "deseo": existe una función estándarSYMBOL_VOLUME_STEP- utilícela. Puede utilizar cualquier paso para cada instrumento. Desea añadir 100 volúmenes mínimos: volumen=SYMBOL_VOLUME_STEP*100. Desea añadir 12 volúmenes mínimos: volumen=SYMBOL_VOLUME_STEP*12. ¿Cuál es el problema?

Ya veo. Bien. Veamos un ejemplo concreto.

Necesito establecer una orden que cierre, digamos, el 70% de la posición, y quiero mantener el resto. Es decir, creo una toma de beneficios parcial.

Una vez que la posición está completamente cerrada, su volumen se conoce fácilmente.

¿Cómo puedo obtener ~ 70% exactamente en SYMBOL_VOLUME_STEP?

Dame la fórmula. =)

 
Fry:

Ya veo. De acuerdo. Veamos un ejemplo concreto.

Necesito establecer una orden que cierre, digamos, el 70% de la posición, y quiero mantener el resto. Es decir, creo una toma de beneficios parcial.

Una vez que la posición está completamente cerrada, su volumen se conoce fácilmente.

¿Cómo puedo obtener ~ 70% exactamente en SYMBOL_VOLUME_STEP?

Dame la fórmula. =)

Así:

MathFloor((POSITION_VOLUME*0,7)/SYMBOL_VOLUME_STEP)

Y un ejemplo en números:

step 0.1
POSITION_VOLUME=12,3
12,3*0,7=8,61
8.61/0.1=86.1
MathFloor(86,1)=>86
86 минимальных шагов

step 0.1
POSITION_VOLUME=0,51
0.51*0.7=0.357
0.357/0.1=3.57
MathFloor(3,57)=>3
3 минимальных шага
 
Fry:

Ya veo. De acuerdo. Veamos un ejemplo concreto.

Necesito establecer una orden que cierre, digamos, el 70% de la posición, y quiero mantener el resto. Es decir, creo una toma de beneficios parcial.

Una vez que la posición está completamente cerrada, su volumen se conoce fácilmente.

¿Cómo puedo obtener ~ 70% exactamente en SYMBOL_VOLUME_STEP?

Dame la fórmula. =)

Hola, si estás dispuesto a analizar este código. El archivo contiene una clase de prueba para las operaciones comerciales estándar - Apertura, Cierre (el volumen de la posición a cerrar se establece en %), Inversión...

y un conjunto de scripts de prueba para demostrar estas funciones

Archivos adjuntos:
MQL5.zip  148 kb
 
Fry:

Ya veo. De acuerdo. Veamos un ejemplo concreto.

Necesito establecer una orden que cierre, digamos, el 70% de la posición, y quiero mantener el resto. Es decir, creo una toma de beneficios parcial.

Una vez que la posición está completamente cerrada, su volumen se conoce fácilmente.

¿Cómo puedo obtener ~ 70% exactamente en SYMBOL_VOLUME_STEP?

Dame la fórmula. =)

Querido, te dije arriba cómo y qué hacer, de alguna manera lo ignoraste. Nadie escribirá esas funciones por su bien. No es una necesidad, es un capricho.

Y sí, el 70% no siempre se puede arreglar. Para eso se inventó SYMBOL_VOLUME_STEP.

 
Tapochun:

Más arriba te dije cómo y qué hacer, pero por alguna razón lo ignoraste. Nadie escribirá esas funciones por su bien. Esto no es una necesidad, es un capricho.

Y sí, el 70% no siempre se puede arreglar. Para eso se inventó SYMBOL_VOLUME_STEP.

No lo he ignorado. No tuve suficiente tiempo para entrar en él. Tu escritura es confusa, y probablemente lo conseguiré mañana. =) Necesito sentarme en silencio, para entender. Gracias por su respuesta, en cualquier caso.


¿Un capricho? ¿Necesidad? Los criterios son borrosos. Para mí una necesidad, para ti una moda.

Tengo la sospecha de que no soy el único que lo necesita. Pero no depende de mí.

El destino y la dirección del producto están en manos de los desarrolladores. Sólo soy un usuario y quizás no por mucho tiempo =)

Razón de la queja: