[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 523

 
Maxaxa:

Para los comediantes que se regodean les explicaré por qué lo pregunto, estamos aquí para escribir un sistema experto por diversión

Si escribe en MT4.

no por el dinero, créeme, sino para resolver otro problema aplicado

No voy a escribirlo en MT4.


PS.
La motivación tiene que estar ahí. Te contradices y no lo revelas.

 
IMHO, tendrá tiempo suficiente para crear y luego enterrar más de una docena de sistemas expertos en MT4 con honores.
 
granit77:
IMHO, tendrá tiempo suficiente para crear y luego enterrar más de una docena de sistemas expertos en MT4 con honores.

Eso es lo que quería oír, gracias. El enterramiento también es un resultado.


sargazo:

La motivación debe estar ahí. Te contradices y no lo revelas.


La motivación siempre está ahí, tienes razón. Sobre la divulgación - aquí, por lo que he notado, muy poca gente divulga sus ideas, a veces brillantes, hasta el final, esto se aplica incluso a las cosas elementales, lo que es hilarante ))))

La motivación para nosotros es un trabajo conjunto, si su resultado será líquido - bueno, cosecharemos las recompensas, ávidamente )))) Si no, o continuamos, porque no se encuentra la solución, o nos retiramos prudentemente, admitiendo la derrota. Aquí es sencillo.

 

Hola. No entiendo por qué se produce constantemente el error 130

int start()
{
//----
OrderSend(Symbol(),OP_BUY,0.05,Ask,2,Bid-30*Point,Bid+50*Point);
int Error=GetLastError();
Alert("Error # ",Error);
//----
return(0)

}

Ayúdame a entenderlo. Al mismo tiempo STOPLEVEL=0

 
VladimirR:

Hola. No entiendo por qué siempre se produce el error 130

int inicio()
{
//----
OrderSend(Symbol(),OP_BUY,0.05,Ask,2,Bid-30*Point,Bid+50*Point);
int Error=GetLastError();
Alert("Error # ",Error);
//----
return(0);

}

¿Ayuda para entender?

https://docs.mql4.com/ru/convert/normalizedouble
 
OrderSend(Symbol(),OP_BUY,0.05,Ask,2,Bid-30*Point,Bid+50*Point);

preste atención al tamaño del lote, ponga 0,1 en lugar de 0,05...

y la desviación máxima del precio - pueden hacerse más grandes, digamos 5.

 
Maxaxa:

preste atención al tamaño del lote, ponga 0,1 en lugar de 0,05...

y la desviación máxima del precio - pueden hacerse más grandes, digamos 5.

Corregido. Lo mismo -paradas equivocadas. Y aumentó la desviación a 5 pips.

 

¿Y qué hay que redondear aquí?

 
Perdonen si probablemente estoy siendo obtuso, vuelvo con la mía. La parte final de la EA no es la eliminación de todos los pedidosUna captura de pantalla y el código. No puedo arreglarlo. Por favor, ayúdenme.
//----
   for ( i=OrdersHistoryTotal();i>0;i--){
    OrderSelect(i-1,SELECT_BY_POS,MODE_HISTORY  );
    if( OrderMagicNumber( )==2000 &&OrderSymbol()==Symbol()&&OrderTakeProfit( )==OrderClosePrice(       )&&wremjapomnim<OrderCloseTime( ) ||
   OrderMagicNumber( )==1000 &&OrderSymbol()==Symbol()&&OrderTakeProfit( )==OrderClosePrice(    )&&wremjapomnim<OrderCloseTime( )){
   Alert ("нашли MODE_HISTORY");
 for ( i=OrdersTotal();i>0;i--){
 Alert ("паследний цикл",i);
  OrderSelect(i-1,SELECT_BY_POS );
  if( OrderMagicNumber( )==2000 &&OrderSymbol()==Symbol()|| OrderMagicNumber( )==1000 &&OrderSymbol()==Symbol()){  
  OrderDelete(OrderTicket( )) ; Alert ("OrderDelete-vse",  GetLastError( ) );  OrderClose( OrderTicket( ), OrderLots( ), OrderClosePrice( ) , 0, CLR_NONE);Alert ("OrderClose-vse",  GetLastError( ) ); C=0; }}}}                              
   
   
//----
 // Alert ("wremjapomnim",  wremjapomnim );
 
//----


   return(0);
  }
//+------------------------------------------------------------------+
Así que, como ves, el último bucle no se borra porstop, la condición si está escrita correctamente;OrderSelect(i-1,SELECT_BY_POS ); será 0 en mi caso primo, cuando i es 1.
 
VladimirR:

¿Y qué hay que redondear aquí?


Precio de apertura, SL y TP
Razón de la queja: