I thought I’d start a series of posts on how to track your trades. As I work in IT, I thought I’d leverage those skills and build myself a proper database so that I have all the information I need on my trades at my fingertips. I am also creating a paper trading journal in a moleskine notebook and will be printing out the charts as I enter and when I exit along with my thoughts before and during the trade.

I will be using this to record my thoughts during the trades
Tools
- The database engine is Microsoft SQL Server 2008 R2.
- I am developing the database in Microsoft Visual Web Developer 2010
- I am using ASP.NET 4.0 and some code in C#
The database is accessed via a web browser to a virtual web server I have running on my VMware ESXi host. The virtual web server connects to a SQL Server 2008 R2 back-end virtual database server. VMware ESX is used in data centers, but I thought I’d have one at home as it allows you to build many computers and have them virtualised all in one computer. I currently have over ten virtual servers with six running at any one time, and I also have my main trading machine virtualised on VMware so that it does not get contaminated with anything. The only thing installed in the Trader Workstation (as I call it) is MT4, antivirus and FireFox. Nothing else. The other VMs I have are: firewall, file server, backup server, DNS/DHCP server, web server, database server, and some test ones. Anyway, I digress and can elaborate on these in another post if anyone’s interested.
Screenshots
Version 1.0 of MooDB looks like this on the front screen:

Home page for the trading database
New Trade screen (where new trades are entered):

Enter new trades on this screen
Add Order screen (add scale-ins, scale-outs and exits here):

Add Order screen for Scale-ins, scale-outs and exits
Trade Info screen (browse trades and edit):

Browse and Edit trades on this screen
By the way none of the data you see on those screens is real – it’s just test data. The real “live” database has the real data in it. I have several databases that I point the webserver to when I’m developing so that I don’t spoil the main database. What you’re seeing there is the development version.
I’ve never written in ASP.NET before or done any web development whatsoever so I’m quite pleased with what I’ve come up with. It’s not perfect because I don’t have time to make it so and I’m not a highly skilled web developer, but it makes data entry into the SQL Server database much quicker than typing database code into a stored procedure (and slightly nicer). For the more technical among you I will give a tour of the database design in a future post in case you want to set something up similar yourself.
Reports
I am also building a Reporting Server that will report on the data that has been entered. The system I’ve just shown you is a data entry platform, not an analytic one. The report server will have trade analysis in it and will show things like avg win., avg. loss, sharpe ratio, win rates, etc. so that I can fine tune my trades. I intend the reporting database to be able to slice and dice my trading information in any way I want, so I could ask questions like:
- Show me the average win rate for my long trades
- Show me the sharpe ratio for trades on the H4 timeframe
- Show me the best signals on all timeframes
- Show me the win rate for trades taken on a friday on the five-minute time frame
- etc
There is no limit to the questions I can ask, if I record all the information I need at the start of each trade.
I would be very interested to hear feedback from any of you that have done something like this yourself – perhaps we can work together to enhance the design? Sharing and building on each other’s designs is a great way to accelerate a product.