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

 
pu6ka:

¿Marco las curvas con flechas?

No, necesitas una línea de paso. Aunque en este caso no es realmente una línea de paso... ¿Puede publicar este indicador? Me refiero al de la foto. Lo investigaré...
 
Arles:
No, necesito una línea en pasos. Aunque, en este caso, no serán pasos del todo. ¿Puede publicar este indicador? Me refiero al de la foto. Lo investigaré.

Este es el indicador de velocidad ROC del libro de texto, ligeramente modificado. Hay una línea de referencia, una línea de velocidad y una línea suavizada a partir de ella. La intersección entre la línea de velocidad y la media de su período se indica con una flecha. Acabo de decolorar todos menos uno en la captura de pantalla.

Pero probablemente se necesite un algoritmo que marque con una flecha el valor máximo y mínimo de la MA en este intervalo cada n barras?

Archivos adjuntos:
 
Usual_Trader:

El error de Ticket se debe probablemente a que su variable Ticket se inicializa dos veces: al principio y en la función

Prueba con otro nombre en la función, al menosTicket1 :)


Gracias)), Me ha dado otra idea, lo he resuelto))
 
pu6ka:


Si la variable es declarada a nivel global, entonces no es necesario pasarla a sus propias funciones, sólo hay que usar las variables Ticket y Ans, serán visibles en las funciones.

Escribes en los comentarios que M_1 y S_1 son la primera barra, y en la función iStochastic() extraes el valor para ellos en la barra cero. Si realmente necesita datos sobre la barra cero, entonces, en primer lugar, compruebe las órdenes de cierre y luego, si va a trabajar con una orden, salga por condición: if(Total > 0) return; y sólo entonces una condición para la apertura de una nueva orden. Si se planea trabajar en TFs grandes, entonces sería mejor reemplazar la condición de salida por la siguiente: si la orden se abre en la barra actual, todavía no se abre nada nuevo en la barra actual. De lo contrario, en H4, una orden puede abrirse en una barra varias veces y activar un stop loss en una condición.

Esto es lo que ocurre en este momento: la barra principal ha cruzado la de señal, por ejemplo, hacia arriba, se abre la orden de compra. En el siguiente tick, la condición se guarda, pero tiene Total más que cero y la condición de cierre trata de dispararse, y trata de usar su función Close_Order_S() para cerrar la posición de Compra al precio de Venta. Comprueba el tipo de orden y una función para cerrarla, pasa Ask o Bid en los parámetros, dependiendo del tipo de orden.


Muchas gracias)), el cierre de la orden funciona, sin errores, pero de nuevo los criterios no funcionan como deberían((, adjunto código y captura de pantalla, Ayuda por favor....
Archivos adjuntos:
 
Equilibrium:

Muchas gracias)), el cierre de la orden funciona, sin errores, pero de nuevo los criterios no funcionan como deberían((, adjunto código y captura de pantalla, Ayuda por favor....
        if (Total>1)                           // Вместо этой строки           
        if (Total>=1)                          // Поставьте эту
        if (Total>0)                           // Или эту

 
Dime, ¿tienes 5.000 dólares que no te importa poner en tu cuenta? ¿Qué tan seguro es?
 
Beowulf:
Dime, ¿tienes 5.000 dólares que no te importa poner en tu cuenta? ¿Qué tan seguro es eso?

¿Quién dice 5.000? Empieza con 100, ponte a prueba a ti mismo y a tu corredor, y luego decide con seguridad. ¡El dinero es tuyo!
 
¿Puede aconsejar un EA para colocar una orden pendiente en el indicador SAR parabólico y arrastrarlo en consecuencia... gracias
 
danilakoks:
¿Puede aconsejar un EA para colocar una orden pendiente en el indicador SAR parabólico y arrastrarlo en consecuencia... gracias

Hay muchos Asesores Expertos en CodeBase que trabajan con este indicador. Buscar en la parte superior derecha. Buena suerte.
 
Equilibrium:

Muchas gracias)), el cierre de la orden funciona, sin errores, pero los criterios no funcionan como se esperaba de nuevo((, código y captura de pantalla adjuntos, Ayuda por favor...
if (M_2 < S_2 && M_1>=S_1) 
      { 
       if (Total>0)
         {
          Close_Order (Lts,Tip);
         } 
       if (Total==0 тут критерий не сработает, так как переменная Total еще равна предыдущему значению, т.е. 1 и ордер открываться не будет
				 нужно использовать OrdersTotal() или перерассчитывать ее

       
         {                                          
          Open_Order_B (Lts);     
         }                                      
      }
   if (M_2 > S_2 && M_1<=S_1 ) 
      { 
       if (Total>0)
          {
           Close_Order (Lts,Tip); 
          }
       if (Total==0)         то же самое
          {                                          
           Open_Order_S (Lts);                                               
          }


A simple vista, lo que veo en la función de cierre de órdenes, necesitas seleccionar la orden por el ticketOrderSelect(Ticket, SELECT_BY_TICKET), el número de lotes no lo indica la variable Lts, porque se recalcula cada vez, sino que usas OrderLots() Y otra cosa, sigues trabajando en la barra 0, respectivamente, los criterios en una barra pueden desaparecer, tus órdenes pueden no abrirse donde te gustaría. Sustituya la barra 0 por la 1 y la 1 por la 2 en los parámetros del indicador