RCOMM 2011 Announced – Call For Papers

The Rapid-I gang just announced a call for papers for RCOMM 2011! This year they’re hosting it this year at the Institute of Technology Blanchardstown (ITB Dublin)!  No doubt Markus Hoffman will be running the show at the ITB and I suspect its going to be a bigger turnout that last year!

I highly suggest attending if you’ve been using Rapidminer to solve your complex problems.  RCOMM is a great way to meet and greet the Rapid-I team, fellow practitioners, and learn about the cutting edge technology that Rapidminer has in store for us.  Last year they unveiled so many new extensions, the most notably one being R, which has said to be a disruptive technology.

Posted in Random | Tagged | 4 Comments

Breakout Stock Pattern Recognition

I love trading breakouts and piling into trends.  As such I’ve been spending an awful lot of time trying to understand patterns that the assets make prior to breaking out and forming new trends.

It’s not rocket science, from a chart perspective breakouts happen when an asset hits a resistance line, then breaks through it, and continues higher.  The resistance line is typically a 52 week or all time high, or some other “line” in the asset’s class price action based on some previous event in time.

Breakouts are also a function of news, such as fundamental changes in outlook of a particular asset.  Perhaps Apple came out with a new product like the iPoop and this causes investors, funds, traders, etc to pile into or out of the stock. When they do, they leave clues in the price/volume action on charts.

Devoid of reading the news, the only way we can see changes in trader/investor psychology is through these price and volume clues.  This is why  I’m a big on understand candlesticks.  I like to look at charts and find where there are hammers, spinning tops, engulfing candles, and other “trend changing” formations.

However there is no way that, I as a human, can see subtle changes in price/volume changes in stocks that may be hiding clues in market psychology, but a computer can.  That’s where Rapidminer is helping me decipher these subtle clues and patterns.

Below is a chart of the ETF GWX.  It broke out around September 13th, 2010 and seems to be trending higher.  Ideally, a trend trader would probably get long above the August 6th spinning top and the resistance line around $26.40ish.  Now wouldn’t it have been better to have gotten long sometime around August 24th?

The answer is YES but would a trader do so? NO! You’d be concerned that the price could drop and you’d wait for the bounce to follow through and might even make a small trade to ride it back up to the resistance line.  However, once the resistance breaks, you can bet people will pile in (see the volume action in October).

So I’ve been working on a model to try and identify when a new trend, and a subsquent break of the resistance line, is going to happen.  When will the odds be in my favor? What is the right time to establish a position before the masses do?

Well, it ain’t easy but I think I’m making progress.  Take a look at the Rapidminer chart below:

The red line activity (my break out signal) coincides with the breakout of GWX (blue line)for the Sept 13th period.  So the model is now identifying breakouts, which is progress in my book.  However, the trick is for the model tell me to get long on August 24th, which it doesn’t do right now.

Posted in RapidMiner, Stocks, Trends | 9 Comments

Rapidminer pushes the envelope with Information Extraction

I’ve been waiting for this plugin ever since Felix Jungermann showcased it at RCOMM 2010! It seems all the really cool things were showcased there and I wonder what’s in store for RCOMM 2011, but I digress.

Felix has been busy since then and he’s finally released a compiled .JAR file for his Information Extraction plugin.  This is a quantum leap in text mining, in my opinion, and will be the next big thing.  Now you can parse text data and find associated information with your word tokens.  Wild.

It’s really easy to get started with this.  Just download the .JAR file and save it under the /lib/plugins director in your Rapid-I directory.  Then load up RM and it shows up as a new set of operators.

Have a fun sleepless weekend playing with this.

Posted in RapidMiner, RCOMM | 5 Comments

RapidAnalytics released into the wild!

This maybe old news to some but to those that don’t know, RapidAnalytics has been released to the community!  I got to watch Simon Fischer of the Rapid-I team give a great demo of it at RCOMM 2010 and was waiting for it to be released.

Here’s Simon talking about this really cool web server application.

Posted in RapidMiner | 2 Comments

A Botched “R” plugin installation in Rapidminer – Solution

I decided to install the “R” plugin in Rapidminer recently and seriously botched the process.  I botched it so bad that Rapidminer got stuck in an installation loop that would ask me to “Exit – Restart Rapidminer” continuously.  I couldn’t get Rapidminer to load and I was stuck.  So what’s the course of action if something like this happens to you?

First and foremost, go to the experts.   I went to the Rapid-I forums and searched for “R plugin” and in about 10 seconds I found the answer to what I was looking for. Following Sebastian’s answer to a poster’s similar problem,  I found my extensions.xml file and edited it.  Then I restarted Rapidminer and all was well again the land of data analytics.

So if this happens to you, just search for the extensions.xml file in your \.RapidMiner5\managed\ directory and delete out offending plugin.

Posted in RapidMiner | 6 Comments

Learning Python helps me with Excel

I use Excel extensively at work and I’ve always wished to write intricate macros but never understood the complexities of Visual Basic.  After spending a few weeks learning Python, I’ve managed to build an Excel formula in VB that creates an “IF” statement formula if a hammer candlestick formation has occurred.  I use this as a macro function and apply it automatically to my downloaded data using TraderXl.

The formula is generates a 1 if a hammer has formed or a 0 if not. Assuming you’ve downloaded 153 rows of a stock’s date, open, high, low, close, volume in the A, B, C, D, E and F columns respectively. The output is in column P; you may modify it as you see fit.

Whoop-de-doo, right?

Well here it is:

Range("P1").Select
ActiveCell.FormulaR1C1 = "Hammer Formula"
Range("P2").Select
ActiveCell.FormulaR1C1 = _
"=IF(AND((RC[-13]-RC[-12])>(3*(RC[-14]-RC[-11])),(((RC[-11]-RC[-12])/(0.001+(RC[-13]-RC[-12])))>0.6),(((RC[-14]-RC[-12])/(0.001+(RC[-13]-RC[-12])))>0.6)),1,0)"
Range("P2").Select
Selection.Copy
Range("P3:P154").Select
ActiveSheet.Paste

Secret link to my trading code/strategy.

Posted in Excel, Python | 12 Comments

Happy Holiday’s and Happy New Year!

I’m taking the rest of the month off from blogging and hopefully tie up a few loose ends before the year is over.  That said, I wanted to wish my readers and friends a Happy Holiday and a Happy New Year!  You guys made 2010 a banner year for this blog and I just wanted to say thanks!

All the best for you in 2011!

Cheers!

Posted in Random | 10 Comments

$1,000 Forex Experiment

I think I’ll restart my $100 Forex Experiment again in 2011 but up the ante this time to $1,000.  I probably won’t start trading until mid January to early February after I recompile and rebuild some neural net models.  If you remember from my old $100 Forex Experiment, I witnessed about an 11% drawdown the first month as I was fiddling around with my system,. I hope to avoid that in 2011, but you never know.

My process is simple. I use neural nets or SVM’s to confirm that the trend remains intact for some currency pairs, and then use good ol’ support/resistance spots to go long or short as the case may be.  I like to place limit orders for overnight moves to capitalize on London’s open and then close any trades before 8AM NYC time.   Yes, its that simple.

Let’s see if I can recreate the 50% return again.

Posted in Forex | 9 Comments

Particle Swarm Optimization in Python

I found and installed the ECSPY evolutionary computation package and fiddled around with it.  Considering I learned how to define and use functions in Python now, the example code (txt) for this Particle Swarm Optimiztation (PSO) chart below is beginning to make sense.

Long time Neural Market Trends readers might be wondering why I’m suddenly posting about Python and not Rapidminer? It’s a valid question and I do have answers.

First off, I always wanted to learn a programming language because I’ve felt that not knowing a programming language has held me back career wise, especially when I’m manipulating and data mining oodles of financial data.

Second, Python is a great way to get my feet wet learning programming! Its  fun and easy so far!  Ultimately the goal is to learn Java so I can truly extend Rapidminer by creating custom operators, but learning Java at this stage of the game is like swallowing a whole elephant at once; not going to happen!  So I’ll start with eating a Python first.

Posted in Python, RapidMiner | 6 Comments

A Simple INTC Chart

After yesterday’s “not so simple GOOG chart” adventure, I spent more time digging around the matplotlib website and discovered the matplotlib.finance module.  Grabbing a python chart example code from the matplotlib site and applying the axis labeling lessons I learned from previous day, I was able to create this $INTC red/green candlestick chart.

Granted, I still don’t understand all the code in the example, but its becoming less of a mystery to me. There are bits and pieces I understand and I’m able to tweak things. After all, it would be silly to reinvent the wheel all over again! Right?

Posted in Python, Stocks | Leave a comment

A Not So Simple GOOG Chart

What I am about to post is a simple $GOOG chart created by a python script that I grabbed off Trainee Trader’s site.  While creating a line chart of GOOG’s stock price is really basic finance, it does represent something very important to me.  It means that I’m learning and troubleshooting python at a fast pace.

I just started learning python about a week ago with absolutely no knowledge in programming (except for Frotran 77 a long time ago), but I am armed with an engineer’s logic and enthusiam. I’ve worked on about 15 exercises in a training course I’m taking, and have read up on all the neat things python can do.   I installed python 2.6, matplotlib, and the ystockquote module from Cory Golberg on my development machine and configured the correct paths.  Then I then tried to copy and paste TT’s google chart python script to see if I could recreate his chart.  I typed it verbatim and fired it up in python hoping to see the chart!

Instead of seeing a nice GOOG chart, it crashed on me!!! Yep, it failed and I had no idea what the error messages were telling me.

Fast forward one week and I’m picking up this language quick.  So I took TT’s code again, checked out the documentation for the matplotlib module, troubleshot it, and got the damn thing to plot!  Go me!

Of course a sophisticated programmer would laugh at my silly plot, but to me it’s awesomeness.

Update: Here’s the revised python script (txt): GOOGChart2.txt

Posted in Python, Stocks | Leave a comment

Learning Python – The Hard Way?

I’m teaching myself, through hand’s on exercises, how to code  (script) in Python.  So far its been a breeze, but that’s because I’ve found a great course for free.  I’m reading and following along with “Learn Python the Hard Way,” written by Zed Shaw.  Zed made his book available for free download in PDF and I highly recommend it to programming novices, such as myself.

Posted in Python | 2 Comments