Aggiunta DeepCopy libreria Config delle strategie

This commit is contained in:
andrea.villa
2025-03-14 08:42:48 +01:00
parent 89d92bdcb4
commit 1a455e66de
3 changed files with 25 additions and 18 deletions
+11 -6
View File
@@ -384,16 +384,21 @@ end
-- N.B. : I parametri personalizzati non più presenti tra i default della strategia, verranno ignorati. Quelli extra avranno valore di default
-- Il controllo deve essere fatto SEMPRE all'inizio di ogni strategia, per controllare conformità parametri custom
function BeamLib.GetUpdateCustomParameters( CustomStrategyParamList, DefaultStrategyParamList)
if CustomStrategyParamList and #CustomStrategyParamList > 0 then
for i = 1, #DefaultStrategyParamList do
for j = 1, #CustomStrategyParamList do
if DefaultStrategyParamList[i].sName == CustomStrategyParamList[j].sName then
DefaultStrategyParamList[i].sValue = CustomStrategyParamList[j].sValue
local UpdatedParamList = BeamLib.TableCopyDeep( DefaultStrategyParamList)
-- se esistono i parametri di default (normalmente ce n'è sempre almeno uno)
if UpdatedParamList then
for i = 1, #UpdatedParamList do
table.insert( UpdatedParamList, UpdatedParamList[i])
if CustomStrategyParamList then
for j = 1, #CustomStrategyParamList do
if UpdatedParamList[i].sName == CustomStrategyParamList[j].sName then
UpdatedParamList[i].sValue = CustomStrategyParamList[j].sValue
end
end
end
end
end
return DefaultStrategyParamList
return UpdatedParamList
end
-------------------------------------------------------------------------------------------------------------