# A real-time example of trading the Australian sharemarket



## AMSH (6 July 2012)

Hey Guys and Gals,

So I've been meaning to do this for a while, and I'm just about to start live trading again, so there's no better time than the present I guess. I'll probably mess up a few things on the way, but hopefully anybody who reads this will come off better for the experience. I'm also hoping this will help me involve myself more in the teaching/learning aspect of trading and that's always win-win as far as I'm concerned.

So, first off, a little about me, my credentials and why you should perhaps be bothered following along. I studied accounting and finance at uni, came out after 4 years to find that I was expected to work 60 hours a week bearing huge responsibility, do 3 years of post-grad study (CA or CPA) and all the while earn significantly less than I did during my summer jobs while studying. And to top it all off, I had to work with accountants (apologies to any ASF members who are).

So anyway, about 4 years ago I started studying trading. I bought the Guppy Pack (I don't recommend it), then moved on to Tharp (I highly recommend it), then to Bandy (again, highly recommend) etc. I design and trade purely mechanical systems, with little or no subjective component. 

To be upfront, I've only traded live for about 11 months, finishing about a year ago. That being said, in the four years that I've been studying trading and the markets, I waited until I had a reasonable certainty of making money before I committed any money; and as a result, I did. In the 11 months I traded I made just over 25% while the market dropped 16% (41% difference), with about $400k turnover. My exact stats (drawdown, win rate etc.) I'll post once I get a little time to look it up. 

I'm starting this blog to track my trading activity in real time and hopefully to help others learn and to get some feedback that will help me learn. In my next post I'll describe the system I'll be trading, how it was designed, how much capital etc. All the technical stuff.

I'm unsure exactly how blogging works on ASF, so I'm just going to go for it and if I make any major mistakes, I apologise in advance.

AMSH.


----------



## AMSH (6 July 2012)

So, one of the biggest issues that people often have on ASF and elsewhere involves people talking themselves up with no data to back up their strategy and their approach. I intend to post my system stats (though obviously not the code), what I'm expecting and hoping for, and then, in real time, my trades. I'll also discuss how I designed my system, what the pitfalls are and how to avoid them etc.

Some basics first. I trade in a very niche, very specific way. My systems are entirely mechanical, there's no subjective judgement required. The systems are designed using quantitative techniques, we understand how the system is meant to perform and we then trade live. If the results of live trading are outside of what our back-tested results were expected to be, we stop trading. I know a bit about this type of trading, and very little else. I don't know how to trade on fundamentals, I don't know how to trade options, futures or any other derivatives. I don't know what the company does, what industry it's in, what its fundamental outlook is. I don't care. My systems are based on identifying a predictive relationship in the data set, and exploiting it. That's all. My systems are based on equities on the ASX. 

To create IB2, I used Metastock and Tradesim, but I use Amibroker for my current development. I'll discuss what I perceive as the advantages / disadvantages of each in a later post (all up for argument of course).

The system that I'll be documenting here is called the IB System 2 (Interactive Brokers 2, hereafter referred to as IB2), it's a long-only system and it only trades when the All Ords is above an X period exponential moving average (in other words when the XAO is travelling reasonable well). 

System Specs: 01-01-2000 - 31-12-2011
Name: IB System 2
Trade Frequency: 933 (about 1300 available)
Absolute Return over the period: 5900%
Annualized Compound Interest Rate: 40.8670% 
Win Rate: 36.44%
Average Win / Loss Ratio: 4.36
Profit Factor: 2.36
Normalised expectancy: $1.66
Max Peak to Valley Drawdown: 9.37%

I've attached a copy of the stats from Tradesim to this post. 

In my next post, I'll discuss the constraints applied to the system and the ways in which I've attempted to ensure that the live performance will mirror the back-test performance. All comments are welcome of course.
	

		
			
		

		
	

View attachment IB System 2 Stats - 2000 through 2011.pdf


----------



## AMSH (6 July 2012)

The major constraints (or considerations) involved in designing a trading system are as follows (in order of importance, as I see it):

1. No forward looking code 
This seems obvious, but it's incredibly easy to allow forward looking code to exist without realising it. Without fail, forward looking code will make your system look sensational in back testing, and at the same time destroy you in live trading.

2. Volume and liquidity
Trading stocks with insufficient liquidity is a recipe for disaster. Not being able to exit a stock, or being able to exit, but at a far worse price than would be shown in back testing will destroy otherwise stellar systems. It's relatively easy to design a system that will make 100% per year if you ignore volume constraints. Designing a system that makes 50% per year with volume constraints applied is very tricky indeed.

This constraint is dependent upon the amount of capital we intend to invest. The less capital we're trading with, the lower the volume requirement. In other words, the smaller our positions, the less likely we are to move the market when we enter or exit a position. Because we're assuming a relatively low initial investment of between $20,000 and $40,000 we can trade relatively illiquid stocks with IB2.

3. Accurate brokerage
Obviously our back testing needs to reflect the levels of brokerage that we'll experience when we trade live. IB2 is traded using Interactive Brokers, and assumes $6 each way, or 0.08% above $7,500.

4. Realistic entry and exit prices, slippage
IB2 only takes an entry if price moves up from the open during the day. We need to model this in the system code; if we use the open price as our entry (IB2 enters on the open), our results will be overstated. This entry style is easy enough to achieve live using a conditional order on the entry, but we need to make sure that the back testing results reflect the price we'll actually achieve. 

5. Position risk and exposure
Although throwing 100% of our capital at a position might provide better returns overall (when back tested), this isn't possible realistically. The level of drawdown will increase to levels that aren't reasonable. IB2 uses fixed fractional position sizing and would often indicate very large positions (due to the very tight initial stops used) - but in reality, putting more than 20% of our equity in any one position is asking for trouble. As a result, IB2, uses both an upper limit (20% of our capital) and a lower limit ($2,500) designed to restrict the ratio of our brokerage to our position size. Assuming $6 trades each way and $2,500 minimum position size, our brokerage will never represent more than a half of one percent of our position.  

These are the primary considerations used designing IB2. There are other requirements, but these are perhaps the most important. 

In my next post I'll describe how I'm going to document my trading what you (if anybody's actually reading this) can expect.


----------



## AMSH (6 July 2012)

Ok, so the way I'm intending to do this is to post my trades as they come up. IB2 always enters on the open and always exits on the close. I'll post each trade as it comes up, as soon after I take it as possible. I'll do my best to keep up with things but feel free to poke me if I'm slacking off. 

I'm expecting to start live trading in the next 10 days. The XAO just closed above a 50 PEMA of the close which is my basic on/off switch, so I might enter a couple of trades this morning (06-07-12), but we'll see.

Apart from IB2, I'm trying to get a couple of other, semi-intra-day systems up and running, which show incredible promise, if only I can figure out how to get the data issues worked out. If I can, I'll probably move a lot of my capital from IB2 and start trading my other systems. I'll try to document these also, but they'd be easily reverse-engineered so I'll have to figure out how I'll do it without giving away too much.

Regardless, I'm going to try and maintain this blog and hopefully make some money along the way. Any and all feedback, queries, comments, discussion welcome. 

I think I'm done for the night. Happy trading peeps. 

AMSH.


----------



## AMSH (6 July 2012)

No candidates.


----------



## AMSH (11 July 2012)

So although I only started this blog a week or so ago, I'm going to have to make  a fairly major change of tack. I was initially going to post live trades of my IB2 system and explain how it had been designed. In the past couple of days, I've ironed out the majority of the issues with another potential system, and I've ditched IB2 as a result. 

This second system, IBSMS1 is a very short term system (using intraday data, but not quite an intraday system) and because of the relative simplicity of the code, I can't post trades. If I did, the core of the system could be easily reverse engineered, and I'm not willing to share it haha.

Once IBSMS1 has a few trades behind it, I'll contact the mods and/or post some broker statements so that there's some level of justification behind my blog entries (and you know I'm not talking out my ****). If IBSMS1 works as well as expected, I may just post the code for IB2 and discuss in depth how it was created. 

In the meantime, I will post results from IBSMS1 as it's traded, and you'll just have to trust me until I post some broker statements and/or contact the mods. Trust me, it's all on the up-and-up - I may fail miserable and you can all watch, but I'm hoping not.

My next entry will contain details of my first day's trading with IBSMS1.


----------



## AMSH (11 July 2012)

IBSMS1 - Short-term, intraday system

This system is currently being traded on a cash account (pending margin approval) and as such, I'm subject to T+3 settlement meaning I spend an awful lot of time out of the market. Even so, this system shows incredibly strong results, and I'm hoping to make good returns in spite of this. Once the margin account is approved, I can trade far more frequently.

System Performance:

System: IBSMS1
Starting capital: $39,000
Trades taken: 5
Win rate: 80% 
Total exposure: $36,442
Net profit: $191 (0.524%)

I was obviously lucky with the win rate, although all of the wins were relatively small (in comparison to the simulations for this system). Next trades will likely be taken on Friday when my sales clear.


----------

