January 15, 2010

Trying Out Python

With the encouragement of @W0nk0, I've decided to start fooling around with the scripting language Python.  It appears to be an easy script language to learn and I hope to build various routines that will help me with my Automated Trading System.  There's also an open source ANN library for Python (and others) that I plan on fooling around with too.  That, coupled with ibPY, will let me finally build my ATS over the course of the year(s) and hook it up to Interactive Brokers.

July 27, 2009

S&P500 Option Volatility Scorecard

The results are in this morning and the prediction was wrong this time!  Last Friday’s historical volatility close was 0.1444, DOWN from 0.214090  the Friday before that.  For the last two predictions the model made, I had one correct and one wrong.

For this week’s prediction, you have to read my S&P500 Option Volatility tweet (you can follow me on Twitter here), I will continue to keep score on Monday mornings to see if this model truly is 60% accurate for predicting the direction of volatility.

July 20, 2009

S&P500 Option Volatility Scorecard

As I wrote in my last S&P500 Option Volatility Report, I predicted that volatility in S&P500 options would close higher on this past Friday than the Friday before that.  The results are in this morning and sure enough the prediction was correct!  Last Friday’s historical volatility close was 0.214090, UP from 0.213821 the Friday before that. 

For this week’s prediction, you have to read my S&P500 Option Volatility tweet (you can follow me on Twitter here), I will be keeping score on Monday mornings to see if this model truly is 60% accurate for predicting the direction of volatility.

SP500 HV-07209

 

July 16, 2009

S&P500 Option Volatility Report

I know that this is late but I just dusted off my S&P500 option volatility prediction model.  For this week only, I will be posting my S&P500 volatility predictions on my blog, after that I will be posting the predictions on Monday mornings via my Twitter account. 

You can follow me on Twitter here

FYI, this model is correct roughly 60% for the direction of volatility only, its no good for actual magnitude. 

Some strategies to use in cases where the index option volatility is predicted to increase would either be a long straddle or long strangle.  In cases where the volatility is predicted to decrease you’d consider using a short straddle or short strangle instead.  60% odds are very good and with good money management you have a great edge!

Here is the prediction: For the week ending 7/17/09, a historical volatility (HV) predicted close for the S&P500 is 0.2736, UP from last week’s close of 0.2183. Remember, the direction is what counts in this model (UP or DOWN), not the actual HV number.

SP500-HV-071509

July 15, 2009

Actual vs Predicted Spreads NFL Football Neural Net Model

NFL Predication SetI wanted to take a moment and say thanks to Tibor, one of my 12 readers, for forwarding me some really interesting research papers on modeling NFL and NBA games with neural nets. There are some really good nuggets of information in those papers, especially the discussion on setting the right momentum and learning rates.

I used that information to fiddle around with my neural net model and I’m posting some recent results from my DRAFT NFL neural net point spread model.  As you can see, the model is pretty good at determining if the home or visiting team will win (a negative sign means the home team wins) but the predicted spreads are way off relative to actual spreads.

This leads me back to developing some sort of ranking system to feed the model, which I wrote about in my "Thoughts on Ranking Football Teams" post.  The good news is that the research papers that Tibor sent me allude to a type of football match system where the model learns the results of previous games and then applies its statistical analysis to new match ups.  Despite this good nugget of information, I feel that I have a long way to go to get something solid before the season starts.

In the interest of science, and because I love my 12 readers, I’m uploading my EasyNN Plus data file for this particular model.  However, you’ll have to have the full version of EasyNN Plus to use this file because the model uses 980+ example rows and the test version only allows you 100 rows.  If you follow the link above and buy EasyNN Plus from there, I will get a small commission from Steve.

 

July 13, 2009

Predicting Winners in Football

nfl-logoI’ve made some serious headway last week in analyzing NFL football data to model game point spreads.  I was able to determine with great accuracy (84%), using backfitting, what team would win a matchup. I did this by building a backpropogation model from 2007-2008 data with about 20 matchups as the prediction set.  The only bad thing I discovered was that the point spread prediction was way off.

As I wrote before, backfitting is NOT the way to go for building this type of  model and the fact that the magnitude of the actual point spread was off bore that out.  You might be asking yourself right about now, "if this is not the way to go, why did Tom do this?" 

I did this because I’m still in my data discovery phase looking for relationships and tinkering around.  Now that I understand various data relationships and can detemine the winners relatively well, the next step, and perhaps the hardest now, is determining the ranking system.  I suspect that the ranking system will help get the game spreads closer to what they should be for future games.  If all goes well I should be making spread calls on this blog for the next season as a way to determine if my model is worth a sh*t.

 

July 8, 2009

Thoughts on Ranking Football Teams

The problem with developing a point spread betting system for football teams is that you can’t initially use a neural net. This is because backfitting raw stat data could lead to poor forecasting, or handicapping. What you have to do is come up with a method where you rank teams first and then feed them into a neural net system to forecast the estimated handicap or point spread.

Why? Teams change over the season; they may lose a key player to injury or evolve their strategies per game. Although neural nets are fantastic, they can’t cope with these paradigm shifts easily. However, if they are fed a ranking system that gets updated weekly based on data from played games, those rankings can be fed into the model and compared to opposing teams in the next game.

Now the trick is to develop this ranking system without backfitting data. How do you do this? It’s not easy but the route to use in my mind is to use neural net clustering to first identify if any pieces of data seem to drive the point spread. Once you know that, then its a matter of devising a mathematical model to help you rank the teams.

FYI, I am using EasyNN Plus for this project. I may or may not post my data files.

Next Page »