grep doesn't work like that. grep is looking for patterns, not ranges of lines. You could construct a giant regex to only get those numbers, but that's a lot of work.
You can use head/tail or sed or awk to get only certain lines, for example
history | sed -n '50,200p'
Of course, the results may not actually start with 50-200, but they will be lines 50-200.