Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 484

 
366366:

Estoy optimizando un EA, hay mucho overshoot, unos 10^17 grados, y hay más parámetros, pero no se pueden optimizar más. ¿Por qué existen estas restricciones?

Además de una pregunta sobre el algoritmo genético. Parece que deja de funcionar correctamente con datos tan grandes, el beneficio final salta de forma bastante dramática, a menudo a la baja. Es decir, ahora ha encontrado ajustes rentables, pero no en cualquier otro momento. ¿Los desarrolladores lo van a arreglar?


Hace tiempo que dejé de lado este "algoritmo genético". Las matemáticas requieren precisión, y con este algoritmo genético corremos el riesgo de "derramar el bebé". Es mejor optimizar la apertura de los bares en la M1. Obtendrá mejores resultados y ahorrará tiempo. No tiene sentido perseguir a las garrapatas, ¡mienten muchísimo!
 
borilunad:

Hace tiempo que abandoné este "algoritmo genético". Las matemáticas requieren precisión, y con este algoritmo genético corremos el riesgo de "derramar el bebé". ¡Es mejor optimizar en las barras de apertura en M1! Obtendrá mejores resultados y ahorrará tiempo. No tiene sentido perseguir a las garrapatas, ¡mienten muchísimo!

No estoy compitiendo con los ticks, sólo me baso en las aperturas de las barras. Pero tampoco se puede hacer sin algoritmo genético, me llevará unos 10 años.
 
366366:

No estoy compitiendo con ticks, sólo con aperturas de barras. Pero tampoco se puede hacer sin algoritmo genético, me llevará unos 10 años.

¡Es necesario optimizar por grupos de parámetros y con pasos más grandes al principio!
 
evillive:



no funcionó (( EURUSD,M15: OrderClose error 138

 
miha91:

no ayudó ((( EURUSD,M15: OrderClose error 138

¿Estábien si la venta está cerrada por Ask?
 

Muchas gracias!!!! ))))
 
miha91:

Muchas gracias!!!! ))))
Siempre es un placer ;)
 
Zhunko:

De dos maneras.

1. Lee el archivo en un array. Edite la matriz según sea necesario, y luego sobrescriba el archivo con esta matriz.

2. Calcula la posición del puntero del archivo al principio y al final de los datos que se van a reescribir. Leemos la parte final en el buffer y la guardamos. Entonces sobrescribimos lo que se necesitaba. Entonces sobrescribimos lo que hemos leído y recordado antes del buffer.


¡¡¡Gracias!!!
 

¿Pueden decirme cómo modificar una orden de stop y de toma, utilizando un EA como ejemplo? Hay CCs que requieren que primero se abra una orden y luego se establezca una toma y un stop por modificación.


//+------------------------------------------------------------------+
//|                                                       martin.mq4 |
//|                      Copyright © 2006, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"
 
 
extern int distance=30; 
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   MathSrand(LocalTime());
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
 
int err = 0;
double Lot = 0.1;
double Ballance=0.0;
int start()
  {
//----
   if (OrdersTotal()==0&&err==0)
     {
       if (Ballance!=0.0)
         {
           if (Ballance>AccountBalance())
             Lot=2*Lot;
           else
             Lot=0.1;
         }
       Ballance=AccountBalance();
         
       int order;
       if (MathRand()%2==0) 
         order=OrderSend(Symbol(),OP_BUY,Lot,Ask,5*Point,Bid-distance*Point,Ask+distance*Point);
       else
         order=OrderSend(Symbol(),OP_SELL,Lot,Bid,5*Point,Ask+distance*Point,Bid-distance*Point);
         
 
       
       if(order<0)
         {
           if (GetLastError()==134) 
             {
               err=1;
               Print("NOT ENOGUGHT MONEY!!");
             }
           return (-1);
         }
       //n++;
       
     }
   
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
 
chevalier:

¿Pueden decirme cómo modificar una orden de stop y de toma, utilizando un EA como ejemplo? Hay CCs que requieren que primero se abra una orden y luego se establezca una toma y un stop por modificación.


¿Por qué?