[¡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 805

 
¡Hola! ¡Por favor, ayuda! ¡Hay una función que devuelve en cada tick el valor de OrderCloseTime de la última posición cerrada! ¿Cómo puedo comparar este valor con el valor anterior de OrderCloseTime y, si es mayor, hacer un seguimiento? Gracias de antemano.
 
dimon74:
¡Hola! ¡Por favor, ayuda! ¡Hay una función que devuelve en cada tick el valor de OrderCloseTime de la última posición cerrada! ¿Cómo puedo comparar este valor con el valor anterior de OrderCloseTime y, si es mayor, hacer un seguimiento? Gracias de antemano.
¿Qué quiere decir con anterioridad? ¿Quiere comparar la hora posterior con la anterior? Obviamente, el más nuevo siempre será más grande que el más antiguo.
 
Techno:
¿Qué quiere decir con "antes"? ¿Quiere comparar una época posterior con otra anterior? Obviamente, el más nuevo siempre será más grande que el más antiguo.
Sí, pero ¿cómo puedo hacer un seguimiento basado en esta comparación?
 
dimon74:
Sí, pero ¿cómo puedo hacer un seguimiento basado en esta comparación?
¿Te das cuenta de que la condición (si ayer es pasado y hoy es presente) no tiene sentido? ya que siempre volverá lo mismo.
 
PapaYozh:

Es difícil saber qué tienes ahí. Personalmente, no veo que "La posición de compra se cerró de golpe en el nivel de TakeProfit de una posición de venta ya cerrada". La posición de venta bajo la que se dibuja la flecha no parece contener ningún guión.

¿No utiliza OrderCloseBy() en su código?

Es extraño que no puedas verlo. Ok - He corregido la imagen:


1 - esta es la posición con el billete 88

2 - SellStop pendiente con ticket 89

3 y 4 son posiciones de venta

3.t y 4.t - son líneas que indican los niveles de Takei de las posiciones de Venta 3 y 4 ya cerradas

3,1 y 4,1 - puntos de cierre de las posiciones 3 y 4, y la posición de venta 3 se cerró con pérdidas

1.1 - este es el punto de cierre de la posición de Compra con Ticket 88 - hay una línea vertical turquesa y una línea horizontal de nivel de precio de Oferta,
que justo cruza la línea roja 3.t - el punto donde se cerró la posición de Venta 3...

No utilizo OrderCloseBy(), aunque inicialmente se me ocurrió...

La idea es la siguiente: cuando se cierra una serie de posiciones perdedoras, se comprueba la posibilidad de abrir una nueva posición, y si queda una cierta cantidad de dinero,
, se elimina el stop de la última posición perdedora (se puede ver en la imagen - la línea azul debajo de la posición de compra), y se coloca una orden pendiente.
Cuando una operación pendiente se convierte en una operación de mercado, los tickets de estas dos posiciones (Compra (ticket 88) y Venta (ticket 89)) se memorizan y además se "gestionan" ya como una posición agregada
y se cierran por la ganancia (pérdida) agregada. En este caso se prohíbe la negociación en compra hasta que se cierren estas dos posiciones, mientras que la negociación en venta está permitida en cualquier caso.

Y aquí es donde ocurre lo curioso: la posición de compra se cierra por sí sola de una manera que no está especificada en el código... No tengo ni idea de cómo... Inmediatamente después aparecen un montón de errores en el registro en
- aparecen en cada tic. Oh, hombre... ya lo cerró... si la memoria no me falla - error 5048... boleto equivocado para OrderClose()
Algo así... Y luego otro error de modificación de orden - un billete desconocido # 88 también se escribe...

Buscándolo por tercer día...

 
dimon74:
¡Hola! ¡Por favor, ayuda! ¡Hay una función que devuelve en cada tick el valor de OrderCloseTime de la última posición cerrada! ¿Cómo puedo comparar este valor con el valor anterior de OrderCloseTime y, si es mayor, hacer un seguimiento? Gracias de antemano.
En esta condición, siempre devolverá el mismo valor. Esta será la hora de cierre de la última posición cerrada. En cuanto se abre y se cierra una nueva posición,
es cuando su función comenzará a devolver un valor diferente.

Obviamente, se necesita también el tiempo de la penúltima posición que se cierra, para poder comparar algo con algo. O bien, cada vez que necesite almacenar el tiempo devuelto por su función en alguna variable datetime o int, y tan pronto como el nuevo valor ya no sea igual al valor anterior devuelto por su función - esta será la señal para
"... realizar alguna acción de seguimiento...".
 
PapaYozh:

Le sugiero que lea detenidamente la descripción de la función OrderSelect().

El parámetro pool se ignora si el pedido se selecciona por número de ticket

¡¡¡Mierda!!! ¡¡Semyon Semyonych!!

Maldita sea, ¡siempre tengo la ayuda del terminal delante! ¡¡¡Ha matado tres noches en el más simple!!! Y la ayuda (en este lugar exacto) nunca pareció... :)

Acertadamente dijo Matroskin: "Sharik, eres un tonto...". Así es como me convertí en Sharik en tres noches... :)

¡Muchas gracias! Me han tocado las narices en un sitio decente y estoy encantado y agradecido... :) De verdad, gracias...
Uh-uh-uh-uh... r-r-r-r-r-r-i-t-i-t-i-t!!! Vamos a movernos por fin... :)

 
artmedia70:
En esta condición siempre tendrá el mismo valor devuelto. Esta será la hora de cierre de la última posición cerrada. En cuanto se abre y se cierra una nueva posición,
sólo entonces su función comenzará a devolver un valor diferente.

Obviamente, se necesita también el tiempo de la penúltima posición que se cierra, para poder comparar algo con algo. O bien, cada vez que necesite almacenar el tiempo devuelto por su función en alguna variable datetime o int, y tan pronto como el nuevo valor sea diferente del valor anterior devuelto por su función - esto será una señal para
"... realizar alguna acción de seguimiento...".
Sí. Entiendo la lógica, pero ¿es posible implementarla en código y, si es así, cómo?
 
Dersu: Hola usuarios del foro.

Mis abuelos me dijeron que era el día de la luna de miel. Felices vacaciones a todos.

Y estoy con mi... Drknn dice que es posible procesar las lecturas de los indicadores.

¿Es posible sumar A / D para un período determinado y la misma cantidad OBV, y luego dividirlos entre sí (OBV en el numerador)

El denominador es A/D + coeficiente con salida a los ajustes.

Cero en el centro, los bordes son flotantes.

Suma-NO TOTAL. Cada movimiento por valor absoluto.

Te mostraré una inversión del euro.

Escribimos un indicador con un solo búfer. Primero leemos un indicador y lo ponemos en una variable. A continuación, tomamos la lectura de otra y también la ponemos en una variable. A continuación, sumamos ambas lecturas, las dividimos entre dos y ponemos el resultado en la memoria intermedia del indicador. Es tan sencillo como eso. No veo cuál es el problema. En la ignorancia de la lengua, así, a continuación, hacer una rama separada en la que escriben, necesitan pavo - listo para pagar por su producción. El pliego de condiciones está aquí. Eso es...

¿El problema del dinero? Lee un manual y prográmalo tú mismo. O la opción número dos - en la misma rama cartas diciendo, están allí dispuestos a trabajar de forma gratuita - la idea - sólo super, probado cinco años - funciona sin reservas - aquí está el número de cuenta, aquí está su contraseña de inversión - echar un vistazo - harto de trabajar manualmente - Quiero un piloto automático. Quiero el piloto automático, ¡y punto!

 

GRACIAS por su atención, drknn.

He estado pensando en mi tiempo libre: mi segunda idea es un poco húmeda.

La primera idea era más eficaz, pero no se puede hacer.

Y la segunda es una de las formas de salir de la situación.

Lo pensaré un poco más.