The whiter the fish and the less oily it is, the longer it keeps as a rule. Mackeral and bluefish are hard to keep for very long, Cod, snapper and fresh water fish like catfish, walleye etc keep a long time on ice(7-9 days). Ice is the key. Put the fish in a bowl and set a waterproof bag of ice on it.