I've done it using Display Suite code field like that:
<?php
$max['amount'] = 0;
$min['amount'] = 0;
$products = field_get_items('node', $entity, 'field_products');
foreach($products as $product) {
$product = commerce_product_load($product['product_id']);
$commerce_price = array_shift(field_get_items('commerce_product', $product, 'commerce_price'));
if($commerce_price['amount'] > $max['amount']) {
$max = $commerce_price;
}
if($commerce_price['amount'] < $min['amount'] || $min['amount'] == 0) {
$min = $commerce_price;
}
}
return $min['amount'] < $max['amount'] ? commerce_currency_format($min['amount'], $min['currency_code']) . ' - ' . commerce_currency_format($max['amount'], $max['currency_code']) : commerce_currency_format($min['amount'], $min['currency_code']);
?>