I manage to fixed this the problem was type => ‘numeric’
$query = new WP_Query( array(
'post_type' => post,
'posts_per_page' => -1,
'category_name' => $category,
'meta_query' => array(
'relation' => 'AND',
'price_clause' => array(
'key' => 'price',
'type' => 'numeric',
'compare' => 'EXISTS'
),
'external_clause' => array(
'key' => 'external_link',
'compare' => 'EXISTS'
)
),
'orderby' => array(
'external_clause' => 'DESC',
'price_clause' => 'DESC',
),
) );