diff --git a/src/Cross3T.php b/src/Cross3T.php index 04da8c6..160340f 100644 --- a/src/Cross3T.php +++ b/src/Cross3T.php @@ -41,7 +41,6 @@ public function run(array $balances, array $orderbooks): array ); $results[] = $this->getResults( - $this->config['min_profit'][$combinations['main_asset_name']], $this->config['max_deal_amounts'][$combinations['main_asset_name']], $this->config['max_depth'], $this->config['rates'], @@ -58,7 +57,7 @@ public function run(array $balances, array $orderbooks): array } - $best_result = $this->getBestResult($results); + $best_result = $this->getBestResult($results, $this->config['min_profit']); if (DEBUG_HTML_VISION) $this->madeHtmlVision($results, $best_result); @@ -71,9 +70,10 @@ public function run(array $balances, array $orderbooks): array * Возвращает самый лучший результат * * @param array $results Результаты + * @param array $min_profit Минимальная прибыль в main_asset_name * @return array Лучший результат */ - public function getBestResult(array $results): array + public function getBestResult(array $results, array $min_profit): array { foreach (array_column($results, 'results') as $items) @@ -84,7 +84,10 @@ public function getBestResult(array $results): array $array = array_column($all_results, 'result_in_main_asset'); - return $all_results[array_keys($array, max($array))[0]]; + $best_result = $all_results[array_keys($array, max($array))[0]]; + + if ($best_result["result"] >= $min_profit[$best_result['main_asset_name']]) + return $best_result; } diff --git a/src/Main.php b/src/Main.php index 7487315..053db76 100644 --- a/src/Main.php +++ b/src/Main.php @@ -96,7 +96,6 @@ public function madeHtmlVision(array $results, array $best_result): void /** * Возвращает результат треугольника * - * @param float $min_profit Минимальная прибыль в main_asset * @param float $max_deal_amount Максимальный размер сделки в main_asset * @param int $max_depth Максимальная глубина в стакан * @param array $rates Курсы @@ -106,7 +105,6 @@ public function madeHtmlVision(array $results, array $best_result): void * @return array Отдает массив результатов и reason */ public function getResults( - float $min_profit, float $max_deal_amount, int $max_depth, array $rates, @@ -175,7 +173,7 @@ public function getResults( $max_deal_amount ); - if ($result["status"] && $result["result"] > $min_profit) { + if ($result["status"]) { $results[] = $result;