I have had a play with both the MCP23017 and MCP23S17 (code examples at
http://andrew.meachen.net/ioexp.html ) and no, they don't do negative volts. How far negative do you have to go? Here a a few suggestions:
1) Run the controller IC from a seperate supply rail so a few volts below ground, so when it swings from 0 to +5 volts the photodiodes see (say) -4 to +1 volts. Ie the photo diode "ground" is at -4V
2) Maxim makes an IC that will simply change a positive rail into a negative one with almost no extra componants. You feed +5V into it and get (almost) -5 volts out of it. Feed +2V in and get -2V.
3) Use a MCP23017 to switch a transitor array or series of relays running from a seperate (negative) supply.
Really, its all about bias.