I know about zipline and ultrafinance, but as far as I know, they don't support fx trading. Which libraries do?
I currently use a combination of matplotlib and Oanda's FX API. Their API is REST based, and would essentially allow for any type of library to handle calculations. A python wrapper for the Oanda API is on github
Backtesting.py framework is completely agnostic with regards to the type of data you feed it, as long as it's OHLC data.
Zipline can support any instrument type when used outside of Quantopian. You will need to pass in some price feeds for the Forex pairs that you are backtesting then run your tests.