Конвертация 7 функций из кода C++ в MQL5

MQL5 Autre Convertir C++

Spécifications

Необходимо конвертировать функции из кода C++ по этой ссылке в MQL5.

Требуется только математика.

Список функций:

THolder<IBinarizer> MakeBinarizer(const EBorderSelectionType type) {
switch (type) {
case EBorderSelectionType::UniformAndQuantiles:
return MakeHolder<TMedianPlusUniformBinarizer>();
case EBorderSelectionType::GreedyLogSum:
return MakeHolder<TGreedyBinarizer<EPenaltyType::MaxSumLog>>();
case EBorderSelectionType::GreedyMinEntropy:
return MakeHolder<TGreedyBinarizer<EPenaltyType::MinEntropy>>();
case EBorderSelectionType::MaxLogSum:
return MakeHolder<TExactBinarizer<EPenaltyType::MaxSumLog>>();
case EBorderSelectionType::MinEntropy:
return MakeHolder<TExactBinarizer<EPenaltyType::MinEntropy>>();
case EBorderSelectionType::Median:
return MakeHolder<TMedianBinarizer>();
case EBorderSelectionType::Uniform:
return MakeHolder<TUniformBinarizer>();
}

Описание методов можно посмотреть по ссылке.


Результатом работы должны быть такая функция

void Quant (int Type_Quant,int N, 
float  &arr_In[],float &arr_Out[])
{
}
//Type_Quant - выбор метода
//N - максимальное число сплитов
//arr_In - массив с входными данными для поиска сплитов
//arr_Out - массив со значением сплитов

Внимание, ссылки не открываются корректно - нужно убирать адрес портала MQL5.

https://github.com/catboost/catboost/blob/3cde523d326e08b32caf1b8b138c2c5303dc52e5/library/cpp/grid_creator/binarization.cpp

https://catboost.ai/en/docs/concepts/quantization

Визуально это выглядит так - точки данные, а вертикальные линии - сплиты.

Нужно находить значения этих сплитов, можно реализовать по формулам и описанию, что я дал выше, главное, что б результат был такой же, как в CatBoost (как там получить - расскажу).


Répondu

1
Développeur 1
Évaluation
(54)
Projets
102
23%
Arbitrage
12
25% / 17%
En retard
13
13%
Gratuit
2
Développeur 2
Évaluation
(295)
Projets
471
39%
Arbitrage
102
40% / 24%
En retard
78
17%
Occupé
Publié : 2 codes

Informations sur le projet

Budget
50+ USD
Délais
de 14 à 30 jour(s)