I tried writing one in 2011-12. I ended up doing a lot of volume, but I only broke even because of the commission. I generated a lot of money for Mt. Gox though!
In general, writing an automated trading program is always going to be a difficult task, because anyone who can write a superior program can cut into the profits of the inferior program, which leads to a development arms race. This is what some hedge funds do (not with Bitcoins), but any models they develop are only expected to make money for a short amount of time.
Even if someone released a high-quality open-source program, it would be difficult to make money by using it because so many people would run it.