Cualquier pregunta de un PROFI a un SUPER PROFI - 1. - página 21

 
Te mostré cómo. El puesto ha sido corregido.
 
Ya veo, gracias.
Supongo que puedo olvidarme de trabajar a fondo con MySQL en MQL (sin mis dlls)... lástima...
 

¿Qué es lo que no le gusta de la biblioteca?

En el caso de la devolución de un puntero, tiene que ser estática y en el mismo proceso.

 
Zhunko:

¿Qué es lo que no le gusta de la biblioteca?

Si haces tu propia dll, no tiene sentido dividir parte del código en MQL y parte en la libe. todo MySQL irá dentro de esta dll.

 
Hola a todos. ¿Algún consejo? VPS Windows Web Server 2008 32 bit - no R2 (RAM 256) - ¿funcionará para MT4?
 
sergeev:

Si haces tu propia dll, no tiene sentido dividir parte del código en MQL y parte en lib. todo MySQL irá dentro de esta dll.

Por supuesto. No hace falta que escriba en MQL, si puede. Casi todo está en la DLL. Empezando a transferir todo a mi aplicación. Gestionaré el terminal de forma remota.
 

Algoritmo de enumeración de fracciones

I). Se requiere encontrar un algoritmo para enumerar fracciones, de manera que:

A + B + C + n + ... = 100%

Cada elemento del conjunto {A, B, C, n} debe tener criterios estándar: restricciones de lado máximo y mínimo y paso incremental de tipo: inicio, parada, empinado;

Un ejemplo del problema:

Dado un conjunto

Y{A,B,C,n};

Cada elemento de dicho conjunto puede variar de -100% a +100%, en pasos de 10%. La suma de todos los elementos del módulo debe ser igual al 100%: A+B+C+n=100%.

Encuentre una matriz D(x,número_de_elementos_múltiples_Y) que describa la distribución de todas las fracciones posibles entre A, B, C, n, por ejemplo

A B C

100 0 0

90 10 0

90 0 10

80 10 10

80 0 20

...

Ejemplos de conclusiones incorrectas:

A B C

-50 30 120 - el elemento C es mayor que el límite del 100%

35 30 35 - el paso no es igual al 10%

70 30 10 - suma no igual al 100%

-50 60 90 - suma de todos los elementos módulo no igual al 100% (50+60+90=200)

II*). Encontrar la solución de la búsqueda de fracciones para el conjunto N con el optimizador MT5/MT4 de manera que las restricciones de cada elemento del conjunto se puedan establecer con las restricciones estándar Start, Step, Stop.

 


Como nota introductoria, he aquí un algoritmo que implementa un caso especial del problema:

//+------------------------------------------------------------------+
//|                                                  Optimizator.mq5 |
//|                        Copyright 2011, MetaQuotes Software Corp. |
//|                                              https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2011, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   int A, B, C;
   int handle = FileOpen("test.csv",FILE_WRITE,'\t');
   for(A=0; A<=100;A+=10)
   {
      for(B=0;B<=100-A;B+=10){
         C=100-(A+B);
         FileWrite(handle,A,B,C);      
      }
   }
   FileClose(handle);
  }
//+------------------------------------------------------------------+

Como puede ver, cada elemento del conjunto, excepto el último, requiere un bucle for adicional. Esta no es una buena solución, porque al cambiar el número de elementos del conjunto, hay que insertar o eliminar bucles adicionales.

 
C-4:


Como nota introductoria, he aquí un algoritmo que implementa un caso especial del problema:

Como puede ver, cada elemento del conjunto, excepto el último, requiere un bucle for adicional. Esta no es una buena solución, porque al cambiar el número de elementos del conjunto, hay que insertar o eliminar bucles adicionales.


Haz un solo bucle while para una de las opciones A, B o C.

Dentro de ella, analice si hay lagunas

 
sergeev:

hacer sólo un bucle while en uno de los A, B o C.

Dentro de ella, analizar si para las lagunas que se alcancen


La cuestión es que todavía B y C se combinarán entre sí, y se necesita un nuevo bucle para ello. Quizá este problema pueda resolverse de forma recursiva, aunque puede haber algoritmos más sencillos.
Razón de la queja: