Bitcoin Forum

Bitcoin => Project Development => Topic started by: cw on March 15, 2011, 11:37:15 AM



Title: [bitrade] New trading bot: request for comments
Post by: cw on March 15, 2011, 11:37:15 AM
Since I joined the Bitcoin community (very recently), I have been thinking about a project that can fill a gap in the Bitcoin ecosystem and can be useful for me to experiment with my machine learning skills. So I have started to develop a trading bot/library.

I am quite busy with work and I have not set a specific release schedule, but at the moment, I am dumping here what I have done, what I'm planning, and I'd like to hear about what you'd like to see.

It is a Python library + CLI interface + bot. At the moment I have just completed a Mt. Gox interface. It has only methods to match Mt. Gox API.

My current To-Do list looks like this:

  • Cache results from trading APIs. Done.
  • Add helper functions for currency calculations (exchange amounts with fees, compute gains after buy/sell rounds, etc.). Partially done.
  • Monitor all data from Mt. Gox and save it, so it is available later for statistics, forecasting, and trading. Done.
  • Add higher-level actions for Mt. Gox (Sell/buy everything, cancel all orders, etc.). Partially done.
  • Handle currencies other than USD and BTC.
  • Add support for monitoring all currencies. Do you know about any good and free API to check currency exchange rates?
  • Add BTCex.com support. Partially done. I could use some extra BTC for testing.
  • Add basic trading functionality (such as, try to sell everything at the low price over the last 48 hours, then buy everything at high, etc.)
  • Use machine learning to optimize bot trading.
  • Use machine learning for forecasting.
  • Add Google Trends data to the model.

So, what would be your wish-list? What kind of set of actions do you need to simplify? Do you have any suggestion?

License is set GPLv3, but I am accepting (constructive and explained) comments here too.

Eventually, I will set a bounty for the development of some features, such as trading optimization and forecasting, but at the moment, you can donate to 1BK5Ao3fvhzH5wLASizxW3yHMmNQKNk2PD if you want to support it.

EDIT 2011/03/16: I'll set up the project in GitHub as soon as I finish Mt. Gox and BTCex support and a basic example bot.


Title: Re: New trading bot: request for comments
Post by: johnieeliang on March 15, 2011, 03:52:38 PM
optimization is key. thats all im gonna say.


Title: Re: New trading bot: request for comments
Post by: cw on April 02, 2011, 11:10:56 AM
I haven't worked on this lately and it is in no way useful yet. However, foxmulder has asked me for the code, so I set up the GitHub repo just in case anyone wants to look or contribute:

https://github.com/smola/bitrade


Title: Re: [bitrade] New trading bot: request for comments
Post by: ShadowOfHarbringer on April 02, 2011, 09:44:04 PM
For web-based server side software, you might consider AGPL as a better license.

It should protect you better from people who take and don't give anything back.


Title: Re: [bitrade] New trading bot: request for comments
Post by: hozer on April 10, 2011, 04:27:58 AM
What's the status on this?

It would be quite nice if we could get a reasonable Python API and have implementations for both MtGox & BTCex.


Title: Re: [bitrade] New trading bot: request for comments
Post by: xf2_org on April 10, 2011, 04:32:56 AM

Check out http://www.geniustrader.org/

Note that the MtGox / btcex interfacing is the easy part.  The hard part is deciding how much to risk on each trade, observing and dynamically tuning results over time, etc.



Title: Re: [bitrade] New trading bot: request for comments
Post by: ryepdx on April 11, 2011, 08:21:41 PM
  • Add support for monitoring all currencies. Do you know about any good and free API to check currency exchange rates?

Yahoo! Finance delivers:
http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s=USDEUR=X (http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s=USDEUR=X)

The above will get you the USD to EUR exchange rate as a CSV file.

Note that this method of accessing the Yahoo! Finance dataset is deprecated. The new way is through YQL:
http://developer.yahoo.com/yql/ (http://developer.yahoo.com/yql/)


Title: Re: [bitrade] New trading bot: request for comments
Post by: hozer on April 24, 2011, 02:55:24 PM

Check out http://www.geniustrader.org/

Note that the MtGox / btcex interfacing is the easy part.  The hard part is deciding how much to risk on each trade, observing and dynamically tuning results over time, etc.


I'm not looking for genius trades, I'm looking for stupid simple trades ;)
I'll be quite happy with a basic well tested framework with MtGox/btcex/Britcoin support in some reasonable & practical language, such as python. I'm not really interested in over-optimizing the trading strategy... With bitcoin there are still exchanges with no trading fees, which to my understanding is a big cost in 'traditional' trading strategy development.


Title: Re: [bitrade] New trading bot: request for comments
Post by: toffoo on May 18, 2011, 08:42:10 AM
Bump.
Hey cw, how is this project coming?  Anything new?


Title: Re: [bitrade] New trading bot: request for comments
Post by: xf2_org on May 18, 2011, 03:57:17 PM

Check out http://www.geniustrader.org/

Note that the MtGox / btcex interfacing is the easy part.  The hard part is deciding how much to risk on each trade, observing and dynamically tuning results over time, etc.


I'm not looking for genius trades, I'm looking for stupid simple trades ;)
I'll be quite happy with a basic well tested framework with MtGox/btcex/Britcoin support in some reasonable & practical language, such as python. I'm not really interested in over-optimizing the trading strategy... With bitcoin there are still exchanges with no trading fees, which to my understanding is a big cost in 'traditional' trading strategy development.

GeniusTrader can do conservative things like... making sure you spread your risk across multiple trades, or making sure a trade fits within an overall scheme.

I wouldn't assume what GT does, without actually looking at it and reading a bit.  GT works great for dirt-simple trading strategies.



Title: Re: [bitrade] New trading bot: request for comments
Post by: nereer on May 20, 2011, 10:11:01 PM
watching this thread and interested to know progress, thanks


Title: Re: [bitrade] New trading bot: request for comments
Post by: genjix on May 21, 2011, 03:21:31 AM
bitcoinwatch.com has an api


Title: Re: [bitrade] New trading bot: request for comments
Post by: blap on May 31, 2011, 08:27:19 PM
 :)


Title: Re: [bitrade] New trading bot: request for comments
Post by: ender on June 08, 2011, 01:20:19 AM
  • Use machine learning to optimize bot trading.
  • Use machine learning for forecasting.


Machine learning! Yay!!


Title: Re: [bitrade] New trading bot: request for comments
Post by: aandreas on July 11, 2011, 11:26:17 PM


Machine learning! Yay!!

[/quote]

thatīs where all the hashing power should go to...


Title: Re: [bitrade] New trading bot: request for comments
Post by: berlinguyinca on July 11, 2011, 11:37:14 PM
rather interesting, any sourcecode available to checkout?

thanks


Title: Re: [bitrade] New trading bot: request for comments
Post by: Ellen Alemany on July 12, 2011, 03:11:41 AM
  • Use machine learning to optimize bot trading.
  • Use machine learning for forecasting.


Machine learning! Yay!!



I must ask (trying not to sound disrespectful), does anyone of you even know what machine learning means?


Title: Re: [bitrade] New trading bot: request for comments
Post by: Geremia on May 02, 2013, 06:32:42 PM
I must ask (trying not to sound disrespectful), does anyone of you even know what machine learning means?
It means the program learns what we tell it to do. haha


Title: Re: [bitrade] New trading bot: request for comments
Post by: humanbeingbit on November 01, 2017, 05:27:50 PM
I must ask (trying not to sound disrespectful), does anyone of you even know what machine learning means?
It means the program learns what we tell it to do. haha
I have checked the code.
Unfortunately the bot hasn't learned anything new since 2013 :D