You must use the braced form of variable expansion:
for i in {1..5}; do touch company-price-${i}_spec.rb; done
otherwise, `bash` will see `$i_spec` as a variable expansion, not `$i`.
From `bash` manual:
The basic form of parameter expansion is ${parameter}. The value of
parameter is substituted. The braces are required when parameter is a
positional parameter with more than one digit, or when parameter is
followed by a character that is not to be interpreted as part of its name.