Cómo optimizar correctamente un asesor - página 5

 
Loring писал (а) >>
No pretendo ser omnipotente... >> Todavía está crudo, pero parece que tiene derecho a la vida... Necesito personas afines (programadores) que puedan ayudar con la idea... En algún lugar y los ayudaré. Tengo experiencia...

¿Puede ser más específico? Si eres tímido (es broma), las coordenadas están en el perfil.

 

Vinin, revisa tu correo electrónico... Estoy leyendo su Juego VininE ahora mismo. Muy elegante. Rusia es rica en gente inteligente...

 
Se ha encontrado un desafortunado error en el cálculo del tamaño del lote. Me disculpo por adelantado... Sin ánimo de ofender... Antecedentes pedagógicos...
       double lot = NormalizeDouble(AccountFreeMargin() * MaximumRisk/100000/step,1); //*step
Gran algoritmo de reinversión. No lo entiendo. Miraré los manuales mientras el Asesor Experto está funcionando en el probador...
 
Loring писал (а) >>
Se ha encontrado un desafortunado error al calcular el tamaño del lote. >> Me disculpo por adelantado... Sin ánimo de ofender. Antecedentes pedagógicos. Gran algoritmo de reinversión. No lo entiendo. Miraré los manuales mientras mi Expert Advisor está funcionando en el probador...

Tal vez me olvidé de multiplicar por paso. Y redondeando 0.

 

Por el contrario, hice una multiplicación extra... El lote disminuyó inmediatamente en un orden de magnitud y el algoritmo siempre lo suavizó a 0,1... Tengo la sensación de que puede no funcionar en japonés. Dividido por un coeficiente fijo, y debería, como parece, estar dominado por Punto... Lo comprobaré más tarde.

Pero la forma en que tragó mucho... Los beneficios crecen a pasos agigantados. Sólo el riesgo no está absolutamente claro. ( Entiendo 1/Riesgo Máximo). Lo convertiré en porcentajes para mí... Es bueno cuando tengo el código fuente, de lo contrario me preguntaba por qué el riesgo se establece como un número entero, y con un punto decimal....

 
Loring писал (а) >>

Por el contrario, hice una multiplicación extra... El lote disminuyó inmediatamente en un orden de magnitud y el algoritmo siempre lo suavizó a 0,1... Tengo la sensación de que puede no funcionar en japonés. Dividido por un coeficiente fijo, y debería, como parece, estar dominado por Punto... Lo comprobaré más tarde.

Pero la forma en que tragó mucho... Los beneficios crecen a pasos agigantados. Sólo el riesgo no está absolutamente claro. ( Entiendo 1/Riesgo Máximo). Lo convertiré en porcentajes para mí... Es bueno cuando tengo el código fuente, tenía mucho tiempo para entender por qué el riesgo se da como un número entero, y con un punto decimal....

Esta es mi función.

double getLots() {
   if (MaximumRisk>0) {
      double minlot=MarketInfo(Symbol(),MODE_MINLOT);
      double maxlot = MarketInfo(Symbol(), MODE_MAXLOT);       
      double step=MarketInfo(Symbol(),MODE_LOTSTEP);

      double lot = NormalizeDouble(AccountFreeMargin() * MaximumRisk / 100000.0/step, 0)*step; 
      lot=MathMax(MathMin(lot,maxlot),minlot);
      
   }
   else lot=Lots;
   return(lot); 
}
Y la carta fue leída y contestada. Pero hay más preguntas que respuestas.
 

Gracias por la respuesta...

Y NormalizeDouble redondea a un entero y el paso de lote es 0,1 ... El resultado es lote =0 y

lot=MathMax(MathMin(lot,maxlot),minlot);
lo alinea con el minlot... Probado más de una vez por simples impresiones de registro... Después de corregir el redondeo salió una multiplicación extra por paso... También comprobé... Si lo sustituye por mi variante, entonces se habilita el algoritmo de reinversión y cada lote posterior crece con el riesgo permitido... o no entiendo el programa... Te mostraré lo que tengo.
 
Loring писал (а) >>

Gracias por la respuesta...

Y NormalizeDouble redondea a un entero y el paso de lote es 0,1 ... El resultado es lote =0 y

>> lo iguala a minlot... Comprobado más de una vez por simples impresiones de registro... Una vez corregido el redondeo, ha salido una multiplicación extra por paso... También comprobé... Si lo sustituye por mi variante, entonces se habilita el algoritmo de reinversión y cada lote posterior crece con el riesgo permitido... o no entiendo el programa... Te mostraré lo que tengo.

Tal vez haya un 0 más en la división.

Y me gustaría ver el resultado.

 

Así que eso es lo que salió...

 
y en consecuencia