Student or Learner
Are the following questions grammatically correct?
-Do you speak English?
-Did you speak English?
-Are you speaking English?
"Do you speak English?" means "Are you able to speak English?" or "Do you know the English language well enough to converse in it?"
"Did you speak English?" refers to a past event. It could be used, for example, if someone had been to a language exchange where one of the languages used was English. The person might speak more than one language and you want to know if they spoke English at that event.
"Are you speaking English?" is an odd question. If someone is speaking directly to you, you probably recognise the language they are speaking. It could be used sarcastically. If someone is using very complicated language or technical language and you don't really understand what they're talking about, you could jokingly say "Are you speaking English?" The meaning would be similar to "I speak English. The words you are saying sound like English but I can't fathom what you're talking about. It seems like you're speaking a foreign language!"
Remember - if you don't use correct capitalisation, punctuation and spacing, anything you write will be incorrect.