The system has a very simple view of the market. It keeps a current score. Above a certain number, it buys, below another number, it sells. But it's programmed to believe in a general upward trend in the market so it won't sell at a loss, unless the score falls to a lower-bound. Even then, it won't sell, it'll just b---h at me via SMS until I tell it what to do in the form of placing a standing sell order that will either liquidate when it hits a certain score that I define or cancel itself if the market starts moving the other way. That logic was added because of the market "panics" at Mt Gox (The big one everybody knows of was preceded by a smaller event that shook a lot of market confidence there)
Ok, so the score itself... More than anything it's using the
http://en.wikipedia.org/wiki/Stochastic_oscillator. Since the market doesn't every Close, it calculates every hour. It uses a moving average of a number of periods. If we had a normal daily close, convention is to use a 3 "period" (day) moving average. In my case, the number of HOURLY periods used in my moving average is based on the volume being traded (depth of market).
I tweak it often in ways that truly bada-- automated trading systems probably do automatically -- to try to input market sentiment into the algorithm -- and I try to automate more and more of that as I have time. But I've made attempts at that which, when run against the corpus of market data I have, just don't work.
I've had a lot of fun building this, and it gave me chance to play with Mongo, something I've wanted to do for a while.
My advice: Go for it. Yes, the MtGox issue was deplorable. But I didn't actually lose any money and never really felt i was in danger of losing money, aside from just not being able to participate in the market when it was down. I plan on integrating other exchanges like https://www.tradehill.com/ as they expose APIs. ...I do scrape them for info, though. And it would be very easy to place trades thru their web UI if i had to go that route to dump mtgox entirely. But I don't like adding that complexity and failure point.
Oh, and living in the US, I used Dwolla to fund my account. If you want to do this at all, open a dwolla account and link your checking account -- it took me at least a week to get their microdeposits approved and my first deposit to clear.