Quality Gate failed
Failed conditions
31.3% Coverage on New Code (required ≥ 80%)
D Reliability Rating on New Code (required ≥ A)
See analysis details on SonarQube Cloud
Catch issues before they fail your Quality Gate with our IDE extension
SonarQube for IDE
Annotations
Check failure on line 58 in source/shared/tradingDefinitions/variables/strategyVariables.cpp
sonarqubecloud / SonarCloud Code Analysis
Refactor this function to reduce its Cognitive Complexity from 27 to the 25 allowed.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDmxniDbFjbOGenhz&open=AZ_MDmxniDbFjbOGenhz&pullRequest=59
Check failure on line 172 in source/shared/redis/positionClustering.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this "std::function" with a template parameter.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1IiDbFjbOGeniA&open=AZ_MDm1IiDbFjbOGeniA&pullRequest=59
Check warning on line 482 in source/shared/redis/positionManager.cpp
sonarqubecloud / SonarCloud Code Analysis
Avoid explicitly specifying the template arguments by relying on the class template argument deduction.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1iiDbFjbOGeniw&open=AZ_MDm1iiDbFjbOGeniw&pullRequest=59
Check warning on line 338 in source/shared/redis/positionManager.cpp
sonarqubecloud / SonarCloud Code Analysis
Avoid explicitly specifying the template arguments by relying on the class template argument deduction.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1hiDbFjbOGenim&open=AZ_MDm1hiDbFjbOGenim&pullRequest=59
Check warning on line 153 in source/analysis/queue/drainExperiments.cpp
sonarqubecloud / SonarCloud Code Analysis
Extract this nested try block into a separate method.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm5TiDbFjbOGenkm&open=AZ_MDm5TiDbFjbOGenkm&pullRequest=59
Check warning on line 721 in source/run/reporting/elasticPublisher.cpp
sonarqubecloud / SonarCloud Code Analysis
Use std::format instead of concatenating pieces manually.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm35iDbFjbOGenkH&open=AZ_MDm35iDbFjbOGenkH&pullRequest=59
Check warning on line 45 in source/analysis/reporting/experimentResults.hpp
sonarqubecloud / SonarCloud Code Analysis
Use the transparent comparator "std::less<>" with this associative string container.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm5EiDbFjbOGenkc&open=AZ_MDm5EiDbFjbOGenkc&pullRequest=59
Check warning on line 516 in source/run/reporting/elasticPublisher.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "std::thread" with "std::jthread".
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm35iDbFjbOGenkB&open=AZ_MDm35iDbFjbOGenkB&pullRequest=59
Check warning on line 29 in source/run/reporting/outcomeIndices.cpp
sonarqubecloud / SonarCloud Code Analysis
Use "std::string" instead of a C-style char array.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm4YiDbFjbOGenkU&open=AZ_MDm4YiDbFjbOGenkU&pullRequest=59
Check failure on line 249 in source/shared/redis/positionManager.cpp
sonarqubecloud / SonarCloud Code Analysis
Use has_value() or another member function to clarify that the code tests the presence of a value in the "optional", not the contained "bool" value itself.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1hiDbFjbOGenig&open=AZ_MDm1hiDbFjbOGenig&pullRequest=59
Check warning on line 138 in source/shared/ig/igRestClient.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this range for-loop by "std::ranges::any_of".
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm2hiDbFjbOGenjS&open=AZ_MDm2hiDbFjbOGenjS&pullRequest=59
Check warning on line 28 in source/run/reporting/tradeDocument.cpp
sonarqubecloud / SonarCloud Code Analysis
Use "std::string" instead of a C-style char array.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm4RiDbFjbOGenkS&open=AZ_MDm4RiDbFjbOGenkS&pullRequest=59
Check failure on line 358 in source/shared/redis/positionClustering.cpp
sonarqubecloud / SonarCloud Code Analysis
Refactor this code to not nest more than 3 if|for|do|while|switch statements.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1IiDbFjbOGeniG&open=AZ_MDm1IiDbFjbOGeniG&pullRequest=59
Check warning on line 30 in source/run/reporting/outcomeIndices.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "strftime" with equivalent code using "std::chrono".
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm4YiDbFjbOGenkT&open=AZ_MDm4YiDbFjbOGenkT&pullRequest=59
Check warning on line 471 in source/run/reporting/elasticPublisher.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "std::lock_guard" with "std::scoped_lock"
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm35iDbFjbOGenj9&open=AZ_MDm35iDbFjbOGenj9&pullRequest=59
Check warning on line 780 in source/run/reporting/elasticPublisher.cpp
sonarqubecloud / SonarCloud Code Analysis
Fill this compound statement, remove it, or add a nested comment explaining why it is empty.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm35iDbFjbOGenkM&open=AZ_MDm35iDbFjbOGenkM&pullRequest=59
Check warning on line 93 in source/shared/redis/tradeLocks.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "std::lock_guard" with "std::scoped_lock"
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm0uiDbFjbOGenh6&open=AZ_MDm0uiDbFjbOGenh6&pullRequest=59
Check warning on line 121 in source/shared/redis/tradeLocks.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "std::lock_guard" with "std::scoped_lock"
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm0uiDbFjbOGenh9&open=AZ_MDm0uiDbFjbOGenh9&pullRequest=59
Check warning on line 121 in source/shared/redis/tradeLocks.cpp
sonarqubecloud / SonarCloud Code Analysis
Avoid explicitly specifying the template arguments by relying on the class template argument deduction.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm0uiDbFjbOGenh8&open=AZ_MDm0uiDbFjbOGenh8&pullRequest=59
Check warning on line 404 in source/shared/redis/positionManager.cpp
sonarqubecloud / SonarCloud Code Analysis
Avoid explicitly specifying the template arguments by relying on the class template argument deduction.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1hiDbFjbOGeniq&open=AZ_MDm1hiDbFjbOGeniq&pullRequest=59
Check warning on line 82 in source/analysis/reporting/experimentResults.hpp
sonarqubecloud / SonarCloud Code Analysis
implicit conversion from 'const std::uint64_t' (aka 'const unsigned long') to 'double' may lose precision
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm5EiDbFjbOGenka&open=AZ_MDm5EiDbFjbOGenka&pullRequest=59
Check warning on line 307 in source/shared/redis/positionClustering.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "std::lock_guard" with "std::scoped_lock"
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1IiDbFjbOGeniF&open=AZ_MDm1IiDbFjbOGeniF&pullRequest=59
Check warning on line 498 in source/shared/redis/positionManager.cpp
sonarqubecloud / SonarCloud Code Analysis
Replace this use of "std::lock_guard" with "std::scoped_lock"
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1iiDbFjbOGeniz&open=AZ_MDm1iiDbFjbOGeniz&pullRequest=59
Check failure on line 453 in source/shared/redis/positionManager.cpp
sonarqubecloud / SonarCloud Code Analysis
Use has_value() or another member function to clarify that the code tests the presence of a value in the "optional", not the contained "bool" value itself.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm1hiDbFjbOGenit&open=AZ_MDm1hiDbFjbOGenit&pullRequest=59
Check warning on line 95 in source/shared/aws/dynamoAuth.cpp
sonarqubecloud / SonarCloud Code Analysis
Remove the redundant return type of this lambda.
See more on https://sonarcloud.io/project/issues?id=mccaffers_backtesting-engine-cpp&issues=AZ_MDm2ZiDbFjbOGenjO&open=AZ_MDm2ZiDbFjbOGenjO&pullRequest=59