Robot inteligente

MQL5 Asesores Expertos C++

Tarea técnica

drán índices de grupos de parámetros.

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit() {
   // Load strategy parameter sets
   int totalParams = LoadParams(fileName_, params);

   // If nothing is loaded, report an error 
   if(totalParams == 0) {
      PrintFormat(__FUNCTION__" | ERROR: Can't load data from file %s.\n"
                  "Check that it exists in data folder or in common data folder.",
                  fileName_);
      return(INIT_PARAMETERS_INCORRECT);
   }

   // Selected set groups
   string strGroups[] = {"55,12,3,35,48,54,16,40",
                         "11,54,33,30,62,6,10,23",
                         "50,15,8,34,2,36,4,9",
                         "26,42,25,22,36,51,53,0"
                        };

   // Scaling factors for selected set groups
   double scales[] = {4.16,
                      3.40,
                      3.33,
                      2.76
                     };
                     
   // Set parameters in the money management class
   CMoney::DepoPart(expectedDrawdown_ / 10.0);
   CMoney::FixedBalance(fixedBalance_);

   // Create an EA handling virtual positions
   expert = new CVirtualAdvisor(magic_, "SimpleVolumes_OptGroupForwardCluster");

   CVirtualStrategyGroup *groups[ArraySize(strGroups)];

   FOREACH(strGroups, {
      // Form the string from the parameter set indices separated by commas
      string strIndexes = strGroups[i];

      // Turn the string into the array
      string indexes[];
      StringSplit(strIndexes, ',', indexes);

      // Create and fill the array of all strategy instances
      CVirtualStrategy *strategies[];

      FOREACH(indexes, {
         // Remove the cluster number from the parameter set string
         string param = CSVStringGet(params[StringToInteger(indexes[i])], 0, 11);
         // Add a strategy with a set of parameters with a given index
         APPEND(strategies, new CSimpleVolumesStrategy(param))
      });

      // Add the strategy to the next group of strategies
      groups[i] = new CVirtualStrategyGroup(strategies, scales[i]);
   });

   // Form and add the group of strategy groups to the EA
   expert.Add(CVirtualStrategyGroup(groups, scale_));

   return(INIT_SUCCEEDED);
}

Han respondido

1
Desarrollador 1
Evaluación
(28)
Proyectos
39
23%
Arbitraje
14
0% / 93%
Caducado
4
10%
Libre
2
Desarrollador 2
Evaluación
(184)
Proyectos
317
24%
Arbitraje
23
35% / 13%
Caducado
23
7%
Libre
Ha publicado: 3 ejemplos
3
Desarrollador 3
Evaluación
(144)
Proyectos
186
41%
Arbitraje
24
58% / 21%
Caducado
13
7%
Libre
4
Desarrollador 4
Evaluación
(298)
Proyectos
477
40%
Arbitraje
105
40% / 24%
Caducado
81
17%
Trabajando
Ha publicado: 2 ejemplos
5
Desarrollador 5
Evaluación
(3)
Proyectos
6
17%
Arbitraje
0
Caducado
3
50%
Libre
Solicitudes similares
Descripción del proyecto Busco un desarrollador con experiencia real en entornos de brokers para implementar una lógica en cTrader que permita monitorizar el volumen (lotaje) operado por clientes con cuentas tipo cent y clasificar su comportamiento para una futura gestión A-Book / B-Book. Requisitos principales: •⁠ ⁠Desarrollo en cTrader (cAlgo / C# o Open API) •⁠ ⁠Monitorización del volumen (lotaje) por cuenta en
Encargar tarea 1000+ USD
Sort (cost=8.73..8.73 rows=1 width=723) Sort Key: m.created_lt -> Nested Loop (cost=2.00..8.72 rows=1 width=723) -> Nested Loop (cost=1.30..5.76 rows=1 width=693) -> Index Scan using messages_created_at on messages m (cost=0.59..2.83 rows=1 width=668) Index Cond: ((created_at > (EXTRACT(epoch FROM to_timestamp('2025-11-29 00:00:00'::text, 'YYYY-MM-DD HH24:MI:SS'::text)))::bigint) AND

Información sobre el proyecto

Presupuesto
50+ USD