Tuesday, April 30, 2013

April Trading Summary

Net $P/L:0

Wednesday, April 24, 2013

ZS1 System

2:20pm CDT - Well after much head banging, compiling, editing, and compiling again, I have finished coding my ZS1 system strategy in Ninjatrader.  This was certainly a learning opportunity and I'm sure I'll be quicker coding future strategies.  Plus ZS1 was never designed with "ease of coding" in mind.  In fact, there was one alternate entry in ZS1 I didn't even bother coding.  More on that later.  But here's the P/L curve:
And here's the exact same period below (same 1 lot trades, same commission/slippage) that I had recorded over past year into Excel after scrolling through the charts and seeing where I would have entered and exited following the same rigid rules I coded into the chart above.
Not quite identical eh?  In fact, they barely look related at all.  Perhaps my alternative entry played a bigger role than I thought?  I may have to look at that more.  And my Ninja code did not consider fast or slow markets - it took every trade.  I'm sure I filtered out some trades during news, etc. in my manually recorded backtest.  And I'm sure there are other reasons that don't come to mind.

A few numbers for you from the Ninja backtest: 135 wins, 114 losses (net after slippage & commissions) or 54.2% win rate. Avg$Win = $211, Avg$Loss = -$217.  Avg$Net per trade per contract is just $14.80 or just over 1 tick.  Not great!

Keep in mind this is all the data I can get for this strategy since it does not use time-based charts.  Normally I would like to test years of data which I can only do with 1-minute or higher timeframes.  And even minute based timeframes aren't easy to test in the grains because I do not have access to a reliable continuous contract.  I have to test each contract separately and piece together.  Below is what I sent both Ninja and DTN:IQ last month but they have no solution.  IQ sets the continuous contract rollover dates based on the contract specifications. 

Friday, April 19, 2013


As mentioned, I attended a Ninjascript programming webinar last weekend.  It was about 9 hrs. total and had lots of good examples and I learned quite a bit.  Watching the instructor (or anyone really) write scripts and talk through his thinking really helps reduce the learning curve.  I'm now pretty confident that I can eventually program most ideas I come up with.  Shoot me an email (see my profile) if you'd like me to email you the few Indicators and Strategies we covered in the class.  If you're new to programming they will provide some good examples on how to do various things.  BMT has lots of good resources and videos too!

So this week I've been attempting to build my ZS1 system strat in Ninja. It has gone slow but I have most of it done.  There are some things that Ninja can't really do easily that I'm having to program.  You'd think the MAE for last trade would be readily available but NO!  You have to actually write code to get this value.  Some examples in the Ninja Forums help.  And reversing a position is next to impossible with the basic "Managed Order" approach.  I don't really want to tackle the "Advanced" approach yet, or ever if possible.  So I may have to have a Part 1 and Part 2 to my strategy and merge results together later in Excel to keep things simple.

Overall, I don't really see myself giving up Ninjascript/C# and my days of manually scrolling through charts and recording trades one by one into Excel are hopefully over!

Monday, April 15, 2013

Hedge Fund Titans

With paydays like some of these guys had, it's no wonder people want to manage OPM!

But the overall realities aren't great:
"For the fourth consecutive year, most hedge funds failed to beat the market. The average hedge fund gained 6.4 percent last year, according to a composite index that tracks 2,200 portfolios compiled by Hedge Fund Research. By comparison, the Standard & Poor’s 500-stock index climbed 16 percent when factoring in dividends. In 2011, the average hedge fund lost more than 5 percent, versus a 2 percent gain for the S&P 500."

Friday, April 5, 2013

Fri. Update

Sorry about the crickets over here in this corner of blogland!  I haven't made any trades this month so that's the reason.  And I totally missed a chance for an April Fool's post...  I am still working on the plan going forward and have decided a few things.

1) I am likely going to be taking a Ninja programming class to attempt to get myself further along the learning curve and actually be able to automate the backtesting of strategies in Ninja rather than the cumbersome scrolling through charts and recording results one-by-one in Excel that I mostly do now.  If anyone has taken this class or has any thoughts I would love to hear from you. 

2) I am taking a break from trading ZS (including my ZS1 system) for at least the month of April. Will decide later if I should resume or not and this will hinge greatly on whether I find better uses of my trading time and capital.

3) And speaking of uses of my trading time, I'm am working on a new mini-Russell 2000 methodology that is mostly discretionary.  I am still ironing out the details but I will be scaling into positions (averaging up and down) with up to 5 lots (1 contract per $10K in account) and will consider the effort successful if I can end most weeks with a profit of ~$1000.  I expect 4 out of 5 days will cancel each other out and the average losing day will be about double the average winning day's take.

The primary reason for the TF contract is simply that, for me, it offers the best bang for my commission buck. Slippage should be minimal as ~80+% of entries and exits will be limit orders.  Anything we can do as traders to stack the deck slightly in our favor should be considered.  Having the past 2 years be gross positive but net negative after commission costs has added to my renewed focus on all factors to the bottom line.

Let the crickets resume, for now....