Oh boy. If you are hoping for a one-word answer, you are out of luck. So let me elaborate a bit:
The German educational system (English version here) has three levels:
- Primary school
Four years, for all children from ca. 6 to 10.
- Hauptschule/Realschule/Gymnasium/Gesamtschule
9/10/12 or 13/various years. Children attend one of these, depending on the desired level of education and personal abilities.
- Vocational Training (Berufsschule)/University
This is slightly simplified, there are a few extra loops and varieties, but this description should be close enough to get the idea. See the links above for more details, if required.
Technically, the translation for high school would be "Sekundarstufe", with "Sekundarstufe I" refering to grade 5-9/10 and "Sekundarstufe II" refering to grades 11, 12 and, if applicable, 13. None of which match the typical age bracket of an american high school.
Problem is, however, that outside an educational context, hardly anyone uses "Sekundarstufe" in everyday language. If you want to translate high school, you should decide for yourself, which idea you want to express. Examples:
- If you want to talk primarily about attending a school, use the name of the type of school (e.g. "Gymnasium") or more general "Weiterführende Schule" (still a technical term, but less so than Sekundarstufe).
- If you are focused on children within a certain age bracket, dump the school reference and go with "Teenager" or "Jugendliche". This can be combined with a general "Schule" or "Schüler" and often gets the idea across quite accurately.
- If you are actually talking about an American (or international) high school, just stick with "high school", because due to the fundamental differences in the educational systems, a translation might be misleading.
"Sekundarschule" and "Oberschule" are quite regional, often referring to only a special variety of "Weiterführende Schule", so use them carefully.