Speed up 180M+ rows returned by simple SELECT with PostgreSQL
As you mentioned you are trying to get 80% of the rows of your table and it is normal that postgreSQL optimizer decide to scan the table rather than get data from the index. Unfortunately postgres does not support queries with index hints like MS SQL server, so it is not possible to compare the results of index scan vs sequential scan but I am absolutely sure that you will not get better results with index scan.

Another question is why you need 180mln rows? What do you want to do with this data?
I assume that this is an analytical query so you can try some column store technologies.
Postgres have cstore_fwd extension available so you can try it out.