Visual programming for Automated Trading Systems?

The EquaMetrics company has announced a new product called RIZM which is a “visual programming” platform for trading systems (or algos, as they are known). This looks really cool, but I am skeptical. The idea is that you can “visually design complex trading strategies without a single line of code” according to the product literature.

We know how complex trading algorithms can be, and that a huge amount of testing and parameter tuning is required to make a system backtest well enough to trade with in a live account.  Can that be done without code?

When Microsoft first released Visual Basic, there was a big concern among programmers that they (we) were becoming obsolete.  I mean, if anyone could create a program by moving blocks around on the screen, who needs programmers?  It turned out that the best Visual programmers were exactly that — programmers.  The developers who already understood program structure, logical organized thinking, how to connect program modules together, and how to properly test software.  Many things you couldn’t do with just visual blocks on the screen; you had to get behind the blocks and get into the code.

I suspect the same might be true about RIZM. It might be a way to get into algo programming, but the best visual algo programmers will be the algo programmers who already understand coding for trading systems, and the same programmers would probably just prefer to write code.

We’ll see.  I may sign up for an account to get a first-hand view of the platform.

 

Trader Tech Talk 004: Quantitative Trading Systems Book Review (part 1)

In Episode 4, John reviews the book Quantitative Trading Systems by Howard Bandy.

John discusses some of the strategies that Bandy outlines in his book, such as

  • Trending Systems
  • Mean Reversion Systems
  • Seasonality Systems

Additionally, John discusses a bit about the Amibroker trading and programming platform.  Later this month, John will review the second half of Quantitative Trading Systems.

Don’t forget to review this podcast in iTunes!  Thank you for your support!

 

 

How’d you like to learn my best kept secret?

What if I told you there was a tool out there that would analyze market data, figure out which strategies could best trade that market, optimize those strategies, tell you your likelihood of profit, and then produce source code that you could dump into your trading software and begin using in the real markets?

Let’s just say this mythical program exists.  What would the features of this program be?  It would have to be able to import any kind of historical trading data, for one.  You’d want it to be able to analyze data from equities markets, futures markets and Forex markets; you’d want it to be able to analyze any time frame of data, from minute charts to daily, weekly, or monthly charts.

Builder

Adaptrade Builder

You would also want it to be able to give it some guidance as to what kinds of strategies to look for, especially if you knew something about the market data you are analyzing.  So, if you knew that a particular market moved in trends, you’d want to include moving averages in the strategy; if you knew the market data had frequent breakouts, you’d want to include Average True Range in the strategy; if you had traded that market well with Bollinger Bands, then you’d want to include that in the strategy.

Ok, so what else?  This mythical program would need to try a few strategies, and give you some feedback on how well they worked, then eliminate the less profitable ones, and improve the ones that looked good.  Then the program would want to start with a pool of fairly good strategies, and improve those, and again, eliminate the losing ones, and improve the profitable ones. You would want to see the program in action, displaying equity curves and profitability reports as it did its work, yes?  Then, maybe over a number of iterations, you might start to see some really good systems come forward.

You would definitely want to be able to see any strategy that looked good, and be able to save it for further analysis later; you’d want it to be able to show you all the statistics about a strategy, such as percentage of winning trades versus losing trades; average winning and losing trade amounts, consecutive wins and losses; things like Expectancy, R-value, Maximum Adverse Excursion, Kelly ratios and all the little detailed numbers that would tell you how well this strategy would perform in the real world.

Then, if we were really optimistic, this tool would then be able to just produce some source code that you could plop into a trading platform, of say, Metatrader or Tradestation, and begin using in the real markets.  Wouldn’t that be amazing?

You could just feed the program some market data, give it some starting parameters, and then watch it go to town.  In a few hours of processing, you could take an algorithm and test it out in the markets.

Wouldn’t that be totally amazing?  Seriously, could such a thing exist?

This program exists.  It is called Builder.

Adaptrade’s Builder is my secret weapon.  Part of me wants to keep it a secret because it is such an amazing powerful tool, but the bigger part of me wants you to succeed in your trading systems beyond your wildest dreams, and Builder needs to be a part of your toolbox.

When I first learned about Builder, I thought it had to be too good to be true; I mean, how could such an amazing program exist?  And how could it be affordable? I downloaded the trial, and worked with it for a couple weeks, testing it, building strategies, back-testing, tweaking parameters, and running the resulting strategies.  And then I bought it.  It felt like I’d discovered a hidden secret. Make no mistake, this program is real, it is affordable, and it works.

Builder is a complex tool; there are many parameters to adjust, and many things you can do to change how it builds strategies, and how it picks winning strategies and eliminates losers.  You will need time to get this program up and running.  Thankfully, the author of the tool, Mike Bryant, has provided extensive documentation. There are tutorials, sample data sets and parameters, walk-throughs and some bonus ready-to-go strategies.  There is a Google group for Builder users, in which Mr. Bryant actively participates.  You will have all the support you need to get up and running, and if you get stuck, you can ask questions in the Google group, or you can write me here.  (Just post a question to our Contact Us page.)

I use builder frequently, and it has had another effect on my programming.  When I am coding a trading strategy by hand (which I still do), I will often compare the back-testing results of my hand-coded strategy with a winning strategy that Builder has created.  It gives me a frame of reference for what might be possible or achievable for a given market data set.

You need to try Builder. When you do, don’t keep it a secret.  Build.  Succeed.  Share your success.

 

2nd Annual Chicago Algorithmic Trading Conference Review

This past Wednesday, I attended the Chicago Algorithmic Trading Conference, hosted by Options City.  It was a half-day conference, consisting of 6 sessions and a networking hour atAlgo Trading Conference the end (with an open bar!)

The first two sessions focused on optimization; the first session was on optimizing Java code, led by Freddie Guime of Options City.  I have a few Java projects in the wings, but I am not currently doing any code optimization, so Freddie’s talk gave me some good ideas.  He showed 3 or 4 different optimization schemes for processing large amounts of data (such as market tick information), and how the schemes compare.  One scheme is to use a “divide and conquer” algorithm; another method used caching; another method used the idea of sending complex computations over to the GPU (graphics processing unit) instead of using the CPU.

The second session, led by Robert Engels, also of Options City, dealt with optimization in the Linux Operating system.  I’m a big fan of Linux, and it was nice to see what kinds of opportunities are available for real-time processing in Linux.

Both of these first two sessions were interesting, but not in my current scope of work.  Nonetheless, I was glad to get to know what are the current areas of focus in the algorithmic trading world.

The third session was a round-table discussion with developers of various capital management groups, hedge funds, and of course, Options City.  The questions dealt with how financial programming might be different than other kinds of programming (financial programming is very concerned with latency); how to get solutions to market quickly (use time wisely, automate your tests, don’t overthink the idea; be comfortable with code maintenance); balancing latency and coding creativity (both are important); and the most important resource in a trading shop (good people make all the difference).

Session four was a video and showcase of the University of Chicago Trading Competition, held for university students earlier in the year.  The professor in charge of the competition was Darrell Zechman; both the U of C team and a team from St. Louis were on stage to talk about how the competition was structured and what some of the challenges were.  The successful approach was to get the finance majors and programmers to work together; one group specifying a solution in English, and the other group coding that idea into Java.  The platform that the competition was held on was Options City’s own Freeway platform.  I’ll have a lot more to say about that in an upcoming post.

The most interesting session by far was the “Bringing Algos to Life” session, led by Andrew Lisy and Ben Sandman, both of Options City.  They demonstrated how a trading idea can be written out in pseudo code, and then coded in Java and then uploaded to the Freeway platform in a matter of minutes.  They spent quite a bit of time on the “buy versus build” decision that programmers must often make when designing new software.  This session was exceptionally well run, and demonstrated both the capabilities of the Freeway platform and the coding methods in Java that are useful for creating trading systems for Freeway.

The “buy versus build” discussion was demonstrated when the programmers pointed out that while the program would need an order entry method, and a method for representing tick data as bars or candlesticks, it was better to purchase these two components from the Algo Store, rather than spend precious development time writing these from scratch.  The development time was spent creating the trading algorithm, which was a simple divergence strategy based on price and On Balance Volume (OBV).  (As an aside, the two components cost $250 and $300, for a total of $500, if you were to do this project yourself.)

I learned a lot about Freeway in this session too; Freeway is Options City’s platform for creating algorithmic trading systems,written in Java, and one that supports trading code written in Java.  I was surprised to see that very few indicators were available in the platform without purchasing them, or writing them yourself.  In the case of writing automated trading systems retail trading software, such as TradeStation, Trade Navigator, Metatrader and AmiBroker, you get all the common indicators you want for free — they’re built into the platform. In Freeway, you have to buy each one, or write them yourself.  Maybe that’s because coders working for hedge funds don’t use indicators in their trading systems, or maybe it’s because they want to have their own code running in pure Java, so that they can optimize it. I’m not sure, but that was something I hadn’t expected.

The last session was a CTO round-table, which discussed what CTOs look for in an applicant, buy versus build, programming languages, the cloud and other semi-relevant topics.

I would highly recommend this conference for anyone involved in automated trading systems development.  I learned a lot of what was available in the market, what programmers of these types of firms were concerned with, and the teamwork that goes on between the programming staff and the trading staff at trading firms.  This was their second year running the conference, and as such, it was small.  But all conferences start small, and I am looking forward to next year, with more sessions, maybe separate tracks, and more good information.

 

Annual Chicago Algorithmic Trading Conference

This week Wednesday, I will be attending the 2nd Annual Chicago Algorithmic Trading Conference.  This is a fairly new conference, and I am really excited to be going to this.  I have a chance to meet others in this line of work, and possibly meet some of the movers and shakers in the industry.

I am quite interested in learning about Options City’s Freeway platform, an algorithmic trading platform built on Java, for options trading programs.  I’ve heard a bit about it, but haven’t been able to contact anyone who is programming for it.

More to come…