So, in certain contexts "Вы можете говорить по-русски?" is a good translation of "Can you speak Russian?"..."Can you speak English?" might be interpreted sometimes as meaning "Could you speak English?" rather than "Are you capable of speaking English?"
Do you speak English =Can you speak English? - WordReference Forums