After reading some recent posts, I realized how much isolated knowledge there was on this board. I thought that trying to aggregate our resources may be beneficial. Why should I bother trying to implement FIX if you already know a library that does it for free? Below is a compiled list of the majority of the Automated Trading resources that I know about (and/or care about). Archive of Papers Behavioral Finance http://behaviouralfinance.net/ Forums and Public Resources Tradery http://www.tradery.com/ JavaTraders http://groups.google.com/group/JavaTraders Platforms Commercial MetaTrader http://www.metaquotes.net/ RealTick http://www.realtick.com/ TradeStation http://www.tradestation.co.uk/ WealthLab http://www.wealth-lab.com/Home/Default.aspx NinjaTrader http://www.ninjatrader.com/webnew/index.htm SmartQuant http://www.smartquant.com/ Open Source / Free ActiveQuant http://www.activestocks.de/ EclipseTrader http://www.eclipsetrader.org/ AIOTrade http://blogtrader.net/page/dcaoyuan/category/AIOTrade Merchant of Venice http://mov.sourceforge.net/ Open Java Trading System http://ojts.sourceforge.net/ TrueTrade http://code.google.com/p/truetrade/ Artificial Stock Market http://artstkmkt.sourceforge.net/ iTrade http://itrade.sourceforge.net/ Matlab Automated Trading Toolbox http://sourceforge.net/projects/mlmechtrade NexTick http://nextick.sourceforge.net/ Robotrader http://sourceforge.net/projects/robotrader/ DataFeeds NxCore http://www.nanex.net/ Software R http://www.r-project.org/ Octave http://www.gnu.org/software/octave/ Gretl http://gretl.sourceforge.net/ Sage http://www.sagemath.org/index.html Data Visualizer http://dataviews.sourceforge.net/ Market Analysis System http://eiffel-mas.sourceforge.net/ Matrex http://matrex.sourceforge.net/ Scilab http://www.scilab.org/ jMATLAB http://www.jmatlab.org/index.html Historic Data Historic Futures Data http://www.anfutures.com/data_es.htm Historic Commitment of Traders http://www.cftc.gov/marketreports/commitmentsoftraders/cot_historical.html Historic Forex Data http://disktrading.is99.com/disktrading/ Strategy Discussion Pairs Trading http://yats.com/doc/cointegration-en.html Software Libraries & Source Code Note that many libraries offer APIs in other languages C/C++ QuantLib http://quantlib.org/index.shtml TALib http://ta-lib.org/index.html GECODE http://www.gecode.org/index.html Tokyo Cabinet http://tokyocabinet.sourceforge.net/spex-en.html libmemcached http://tangent.org/552/libmemcached.html TinyXML++ http://ticpp.googlecode.com/svn/docs/ticpp.html QuickFIX http://www.quickfixengine.org/ OpenMP http://openmp.org/wp/ Gzstream http://www.cs.unc.edu/Research/compgeom/gzstream/ libevent http://monkey.org/~provos/libevent/doxygen/ qtstalker http://sourceforge.net/projects/qtstalker/ Erlang Erlang to C++ http://code.google.com/p/eipp/ Ruby EventMachine http://rubyeventmachine.com/ memcached http://www.deveiate.org/code/Ruby-MemCache/ Ruby to Erlang http://rubyforge.org/projects/erlectricity/ Python Twisted http://twistedmatrix.com/trac/ Processing http://pypi.python.org/pypi/processing Stackless http://www.stackless.com/ twill http://twill.idyll.org/python-api.html C# mono http://www.mono-project.com/ Interactive Brokers C# API http://www.dinosaurtech.com/utilities/ QLNet http://www.qlnet.org/ ScienceCode http://www.sciencecode.com/ RabbitMQ http://www.rabbitmq.com/ Java Javolution http://javolution.org/ RabbitMQ http://www.rabbitmq.com/ Matlab Free Packages http://newsgroups.derkeiler.com/Archive/Comp/comp.soft-sys.matlab/2005-10/msg00013.html Matlab Toolboxes http://stommel.tamu.edu/~baum/toolboxes.html Other Indicator Formulas http://trader.online.pl/ Indicator Formulas http://tadoc.org/ GPU VAST/AltiVec http://www.crescentbaysoftware.com/vast_altivec.html PNY http://www3.pny.com/ CUDA http://www.nvidia.com/object/cuda_home.html OpenCL http://en.wikipedia.org/wiki/OpenCL BrookGPU http://graphics.stanford.edu/projects/brookgpu/index.html CG Tutorial http://http.developer.nvidia.com/CgTutorial/cg_tutorial_chapter01.html Matlab GPU http://www.accelereyes.com/ Mac OS X MacResearch http://macresearch.org/ Velocity Engine http://developer.apple.com/hardwaredrivers/ve/ Cloud Computing Eucalyptus http://eucalyptus.cs.ucsb.edu/ GoGrid http://www.gogrid.com/ Skytap http://www.skytap.com/ Sun Grid http://www.network.com/ Amazon Elastic Compute Cloud http://aws.amazon.com/ec2/ Databases PostgreSQL http://www.postgresql.org/ MySQL http://www.mysql.com/ CouchDB http://couchdb.apache.org/ MonetDB http://monetdb.cwi.nl/projects/monetdb//Home/ db4o http://www.db4o.com/ Other NASDAQ Symbol Directory ftp://ftp.nasdaqtrader.com/symboldirectory/ I would love to see some resources that I haven't found yet that would make any job relating to automated trading easier: be it software, library, or data. Hopefully we can make this a great resource.
Add to "Forums and Public Resources" InteractiveBrokers.API.Discussion.Forum http://finance.groups.yahoo.com/group/TWSAPI/ (Not affiliated with Interactive Brokers)
Java Genetic Algorithms lib http://jgap.sourceforge.net/ Java neural nets http://www.jooneworld.com/ Java charting: http://www.jfree.org/ Java XML: http://www.jdom.org/
I love your list Corey! I hope you can post it on tickzoom.org or allow me to do so when the site is up. I agree with many in your list and add: C# / .NET ZedGraph.org for charting library Also, I'm curious since the TickZoom.org test and black box platform will support strategies written in Java, C# or C++, which category would you put it in? And since the software license and source code is free but TickZOOM.org will sell services, would it be in your free or commercial section? I'm not being picky just curious how you think it fits with the other offerings. Sincerely, Wayne
I am currently in Stockholm, so I will make this brief. Here are some good resources for using Google's <a href="http://labs.google.com/papers/mapreduce.html">MapReduce</a> paradigm. The Phoenix System - http://csl.stanford.edu/~christos/sw/phoenix/ Qt Concurrent - http://labs.trolltech.com/page/Projects/Threads/QtConcurrent SkyNet - http://skynet.rubyforge.org/ Disco - http://discoproject.org/ Hadoop - http://hadoop.apache.org/core/ I'll sort these into the list when I get back from my travels... Thanks for the input guys. When I get the time, I hope to write a quick one or two page review of each of the links so that people can better find what they are looking for. Merry Christmas Eve to all...
I would like to add Brokerage API InteractiveBrokers TWS http://www.interactivebrokers.com/en/p.php?f=connAltern&p=i&ib_entity=llc Genesis Securities http://www.gndt.com/automated/download.htm FIX Protocol http://www.quickfixengine.org/ http://www.tradingtechnologies.com http://devnet.tradingtechnologies.com/DevNet/ProductCenter.aspx http://b2bits.com/fixopaedia/index.html Assent Anvil http://www.assent.com/api.php Datafeeds http://www.iqfeed.net/ http://www.esignal.com/ Historical data http://www.tickdata.com/
Just time for a 2 minute brain dump. Will try not to repeat what people have already suggested. Mostly Java stuff, sorry. Libraries and components that may be useful in developing an ATS (all open source, various licences): <b>Misc:</b> Anything on Apache, more specifically: Commons Math http://commons.apache.org/math Commons Pool http://commons.apache.org/pool Java Caching System (JCS) http://jakarta.apache.org/jcs/index.html or EHCache http://ehcache.sourceforge.net <b>JMS Messaging:</b> Apache ActiveMQ http://activemq.apache.org <b>IM:</b> SMACK API for Jabber http://www.igniterealtime.org/projects/smack/index.jsp <b>Rapid protocol client/server network development:</b> Apache Mina (Apache Licence V2.0) http://mina.apache.org or JBoss.org Netty 3 (LGPL) http://www.jboss.org/netty <b>FIX:</b> QuickFix/J http://www.quickfixj.org (QuickFix License V1.0) <b>DB:</b> Berkley DB Java Edition www.oracle.com/technology/products/berkeley-db/index.html <b>CEP/ESP Engines:</b> Esper (also NEsper for .net) http://esper.codehaus.org <b>Distributed Computing/Clustering/Load Balancing/Failover etc.:</b> SHOAL http://wikis.sun.com/display/shoal JESSICA2 http://www.loband.org/loband/filter/hk/hku/csis/www/ /~clwang/projects/JESSICA2.html <b>Open Source ATS platforms:</b> IMVHO, one to keep an eye on: Marketcetera http://www.marketcetera.com Dozens of others have already been mentioned I think. Disclaimer: I have personally used most but not ALL of the above. BMe.
Here is the list, recompiled with your additions... I think I need to come up with a better way of organizing these. For example, I have products in the databases and distributed section that are Java only, Erlang only, C++ only ... et cetera. Some, on the other hand, are generic and language agnostic. So should I put the language specific ones under language libraries, or keep them under the type of library that they are related to? This would be easier if it were multi-page HTML where I could have click throughs... Also, these need short one or two line descriptions. I'll get around to that eventually. Archive of Papers Behavioral Finance http://behaviouralfinance.net/ Forums and Public Resources Tradery http://www.tradery.com/ JavaTraders http://groups.google.com/group/JavaTraders InteractiveBrokers.API.Discussion.Forum http://finance.groups.yahoo.com/group/TWSAPI/ Platforms Commercial MetaTrader http://www.metaquotes.net/ RealTick http://www.realtick.com/ TradeStation http://www.tradestation.co.uk/ WealthLab http://www.wealth-lab.com/Home/Default.aspx NinjaTrader http://www.ninjatrader.com/webnew/index.htm SmartQuant http://www.smartquant.com/ Open Source / Free ActiveQuant http://www.activestocks.de/ EclipseTrader http://www.eclipsetrader.org/ AIOTrade http://blogtrader.net/page/dcaoyuan/category/AIOTrade Merchant of Venice http://mov.sourceforge.net/ Open Java Trading System http://ojts.sourceforge.net/ TrueTrade http://code.google.com/p/truetrade/ Artificial Stock Market http://artstkmkt.sourceforge.net/ iTrade http://itrade.sourceforge.net/ Matlab Automated Trading Toolbox http://sourceforge.net/projects/mlmechtrade NexTick http://nextick.sourceforge.net/ Robotrader http://sourceforge.net/projects/robotrader/ TickZOOM http://www.tickzoom.org Marketcetera http://www.marketcetera.com/ DataFeeds NxCore http://www.nanex.net/ IQFeed http://www.iqfeed.net/ ESignal http://www.esignal.com/ Brokerage API InteractiveBrokers TWS http://www.interactivebrokers.com/en/p.php?f=connAltern&p=i&ib_entity=llc Genesis Securities http://www.gndt.com/automated/download.htm Trading Technologies http://www.tradingtechnologies.com/ (http://devnet.tradingtechnologies.com/DevNet/ProductCenter.aspx) FIXopaedia http://b2bits.com/fixopaedia/index.html Assent Anvil http://www.assent.com/api.php Software R http://www.r-project.org/ Octave http://www.gnu.org/software/octave/ Gretl http://gretl.sourceforge.net/ Sage http://www.sagemath.org/index.html Data Visualizer http://dataviews.sourceforge.net/ Market Analysis System http://eiffel-mas.sourceforge.net/ Matrex http://matrex.sourceforge.net/ Scilab http://www.scilab.org/ jMATLAB http://www.jmatlab.org/index.html Historic Data Historic Futures Data http://www.anfutures.com/data_es.htm Historic Commitment of Traders http://www.cftc.gov/marketreports/commitmentsoftraders/cot_historical.html Historic Forex Data http://disktrading.is99.com/disktrading/ Historical Tick Data http://www.tickdata.com/ Strategy Discussion Pairs Trading http://yats.com/doc/cointegration-en.html Software Libraries & Source Code Note that many libraries offer APIs in other languages C/C++ QuantLib http://quantlib.org/index.shtml TALib http://ta-lib.org/index.html GECODE http://www.gecode.org/index.html Tokyo Cabinet http://tokyocabinet.sourceforge.net/spex-en.html libmemcached http://tangent.org/552/libmemcached.html TinyXML++ http://ticpp.googlecode.com/svn/docs/ticpp.html QuickFIX http://www.quickfixengine.org/ OpenMP http://openmp.org/wp/ Gzstream http://www.cs.unc.edu/Research/compgeom/gzstream/ libevent http://monkey.org/~provos/libevent/doxygen/ qtstalker http://sourceforge.net/projects/qtstalker/ Qt Concurrent http://labs.trolltech.com/page/Projects/Threads/QtConcurrent The Phoenix System http://csl.stanford.edu/~christos/sw/phoenix/ Erlang Erlang to C++ http://code.google.com/p/eipp/ Ruby EventMachine http://rubyeventmachine.com/ memcached http://www.deveiate.org/code/Ruby-MemCache/ Ruby to Erlang http://rubyforge.org/projects/erlectricity/ SkyNet http://skynet.rubyforge.org/ Python Twisted http://twistedmatrix.com/trac/ Processing http://pypi.python.org/pypi/processing Stackless http://www.stackless.com/ twill http://twill.idyll.org/python-api.html disco http://discoproject.org/ C# mono http://www.mono-project.com/ Interactive Brokers C# API http://www.dinosaurtech.com/utilities/ QLNet http://www.qlnet.org/ ScienceCode http://www.sciencecode.com/ RabbitMQ http://www.rabbitmq.com/ ZedGraph http://www.zedgraph.org Java Javolution http://javolution.org/ RabbitMQ http://www.rabbitmq.com/ Java Genetic Algorithms Package http://jgap.sourceforge.net/ Java Object Oriented Neural Engine http://www.jooneworld.com/ JFree (Charting) http://www.jfree.org/ JDOM (XML) http://www.jdom.org/ hadoop http://hadoop.apache.org/ ObjectPool http://commons.apache.org/pool/ Commons-Math http://commons.apache.org/math/ Java Caching System http://jakarta.apache.org/jcs/index.html EHCache http://ehcache.sourceforge.net/ SMACK API for Jabber http://www.igniterealtime.org/projects/smack/index.jsp MINA http://mina.apache.org/ JBoss Netty 3 http://www.jboss.org/netty QuickFix/J http://www.quickfixj.org/ Matlab Free Packages http://newsgroups.derkeiler.com/Archive/Comp/comp.soft-sys.matlab/2005-10/msg00013.html Matlab Toolboxes http://stommel.tamu.edu/~baum/toolboxes.html Other Indicator Formulas http://trader.online.pl/ Indicator Formulas http://tadoc.org/ GPU VAST/AltiVec http://www.crescentbaysoftware.com/vast_altivec.html PNY http://www3.pny.com/ CUDA http://www.nvidia.com/object/cuda_home.html OpenCL http://en.wikipedia.org/wiki/OpenCL BrookGPU http://graphics.stanford.edu/projects/brookgpu/index.html CG Tutorial http://http.developer.nvidia.com/CgTutorial/cg_tutorial_chapter01.html Matlab GPU http://www.accelereyes.com/ Mac OS X MacResearch http://macresearch.org/ Velocity Engine http://developer.apple.com/hardwaredrivers/ve/ Cloud Computing Eucalyptus http://eucalyptus.cs.ucsb.edu/ GoGrid http://www.gogrid.com/ Skytap http://www.skytap.com/ Sun Grid http://www.network.com/ Amazon Elastic Compute Cloud http://aws.amazon.com/ec2/ SHOAL http://wikis.sun.com/display/shoal/Shoal+Home;jsessionid=BD7F428E2C147D75EEAECC0526B205D9 JESSICA2 http://www.loband.org/loband/filter/hk/hku/csis/www/ /~clwang/projects/JESSICA2.html Databases PostgreSQL http://www.postgresql.org/ MySQL http://www.mysql.com/ CouchDB http://couchdb.apache.org/ MonetDB http://monetdb.cwi.nl/projects/monetdb//Home/ db4o http://www.db4o.com/ Berkeley DB http://www.oracle.com/technology/products/berkeley-db/index.html CEP / ESP Esper http://esper.codehaus.org/ Other NASDAQ Symbol Directory ftp://ftp.nasdaqtrader.com/symboldirectory/
More on Ruby, Graphing Toolkits Gruff http://nubyonrails.com/pages/gruff Scruffy http://scruffy.rubyforge.org/ AI RubySVM http://rubysvm.cilibrar.com/ cluster http://rubyforge.org/projects/clusterer/ RubyFANN http://ruby-fann.rubyforge.org/ AI4R http://ai4r.rubyforge.org/ SVD System http://www.igvita.com/2007/01/15/svd-recommendation-system-in-ruby/
Thanks for bringing that all together. There are some interesting papers on this site too: http://www.tradingphysics.com/Resources/Papers/