NEWS AND NOTES FOR THE PENN-LEHMAN AUTOMATED TRADING PROJECT
Prof. Michael Kearns
mkearns@cis.upenn.edu
I'm going to try to minimize email traffic, and assume that all project participants are regularly reading this web site (at least once a day if you are doing a Senior Design or independent study). Below I will post news about upcoming meetings and events, major updates to the site, deadline information, and so on.
News and Notes 5/09/03: PPC 2003 FINAL RESULTS!
Though subject to final verification, we have final results for the Platinum Platter Competition 2003:
Congratulations!!!
There were other notably strong performances in the competition, and I was generally very pleased with the results. I will shortly post some additional analyses and citations for good performance; Client Shah deserves special mention. In the meantime, PLEASE CHECK YOUR SCORES AND IDENTIFY ANY ERRORS IMMEDIATELY, and, most importantly, ENJOY THE SUMMER.
DAILY RESULTS:
News and Notes 5/08/03: MAY 8 RESULTS.
Comments on the trading day:
DAILY RESULTS:
News and Notes 5/07/03, PART 2: MAY 7 RESULTS IN.
Comments on the trading day:
DAILY RESULTS:
News and Notes 5/07/03, PART 1: FINAL REPORTS; COMPETITION COMMENTS.
A number of you have asked me for guidance on the form of your final report. Basically, it should be similar in length, depth and detail as your final reports from last term. In addition to a detailed description of your final strategies and analyses of your competition performance, please include any supplementary experimental plots, testing, etc.
And one other thing: please send your reports by Friday by email as an attachment. In the text body of the message, please include a succinct one- or two-sentence summary of your strategy, and please be sure that all team members names are on your report. I'd like ALL TEAMS, even those external to Penn or not receiving any kind of formal credit, to send this email. I ask for this because we are in the process of writing a paper on the project, and want to include brief descriptions of all your strategies.
Some comments on recent activity in the competition:
News and Notes 5/06/03: MAY 6 RESULTS IN.
DAILY RESULTS:
News and Notes 5/05/03: MAY 5 RESULTS IN.
DAILY RESULTS:
News and Notes 5/02/03: HALFTIME!
DAILY RESULTS:
News and Notes 5/01/03, Part 2: MAY 1 RESULTS IN.
Comments on the trading day:
DAILY RESULTS:
News and Notes 5/01/03: APRIL 30 RESULTS.
Comments on the trading day:
DAILY RESULTS:
News and Notes 4/30/03: BLUE BULLS RUSH IN.
Comments on the trading day:
DAILY RESULTS:
News and Notes 4/29/03: FINAL COMPETITION UNDERWAY.
We're off and running in PPC 2003; daily results are posted below. Some quick comments:
DAILY RESULTS:
News and Notes 4/25/03: CLIENTS FOR COMPETITION DUE TODAY.
Folks, here are the instructions for turning in your code. We need executables, scripts, and source.
1. There is a new world-writable directory on gradient, which is /pxs/final-comp. This directory has two sub-directories, exec and src.
2. In the directory /pxs/final-comp/exec, you should place ALL FILES necessary to run your client:
3. In the directory /pxs/final-comp/src, you should:
In all cases above, it is your responsibility to make sure all files are readable by us!
DEADLINE: 6 PM FRIDAY.
Good Luck!
News and Notes 4/24/03: IMPORTANT CLOSING TIME CHANGE.
It has been pointed out that the NASDAQ closing is at 4 PM, not 4:30, so competition simulations will be run from 9:30 AM to 4:00 PM.
News and Notes 4/23/03: MEETING TOMORROW; COMPETITION LOOMS.
Tomorrow at 10 AM will be the last weekly meeting for the year. I am out of town but Luis will be on hand to answer last-minute questions prior to Friday's deadline for submitting executables and scripts. Details will be given shortly about where to put your code.
Miscellaneous tidbits:
News and Notes 4/21/03: VARIOUS UPDATES.
First of all, please remember the upcoming deadlines, specified in the 4/11 News and Notes; we will continue to adhere to the schedule given there. The first major deadline is for your client executables and invocation scripts this Friday. At this point you should be fine-tuning and testing your strategy, not implementing major revisions.
There are new and improved versions of the plotting scripts, including the addition of a plot showing the total volume of shares matched by the simulator (for all clients), and the total volume of shares matched by the simulator in which your client was part of the transaction. These plots will play an important role in a revision of the risk saturation scoring criterion discussed below. As before, the new plotting scripts are in the directory /home/pxs/bin/plotting, and you should copy everything there to your local directory. We have renamed the main script plotall.pl, so to execute you should do "./plotall.pl out.client".
IMPORTANT: Revised "Risk Saturation" scoring criterion: After some thought and conversations, I have decided that the Risk Saturation scoring criterion --- which was an attempt to make sure clients engage in enough trading given their share position limit --- was overly strict, and in particular would punish market-making and similar strategies, whose very goal is to trade in high volumes but maintain a position near 0. While leaving the original way of earning the points, I have added a second way which simply asks that your client trade at least half of "its share" of the overall matched volume. The revised criteria are here.
News and Notes 4/16/03: NEW PLOTTING SCRIPTS.
Many thanks to Narayanan Mahesh, who has generously provided us all with very nice new scripts to plot various quantities from the client output of the beta simulator. In order to obtain and use these new scripts:
This will produce the following files:
After making local copies of these scripts, you can of course modify them to suit your own needs and taste.
News and Notes 4/16/03: MEETING TOMORROW.
We will have our usual weekly meeting tomorrow at 10 AM at IRCS. Luis and I will be on hand to answer questions about the competition criteria, the beta simulator, etc., or to provide advice on your strategies.
News and Notes 4/11/03: IMPORTANT UPDATES.
The following note contains important information and updates on the following topics:
1. price information and valuation in the simulator
2. revised schedule and deadlines for the competition
3. multi-client testing
First, some comments on the difference between the Island last price and inside market, and the simulator last price and inside market, all of which are now provided in the client output file (as well as available to clients directly via internal variables). Recall that the Island last price is always the last price that Island executed a trade at, however long ago that was. In the case of Island, the time intervals between trade executions is quite small during regular trading hours, but tends to lengthen after 4:30 PM or so.
Similarly, the simulator last price is, by definition, the last price at which the simulator executed a trade. Remember that the simulator only executes trades in which at least one side, and possibly both, is a virtual client order. Thus the rate of change of the simulator last price is determined entirely by the frequency of client orders matched, and thus will be slow during periods in which there is little client activity. In particular, if you are running your client solo with the simulator, unless you are frequently having trades matched, you will find that the simulator last price is indeed very slow to change.
The Island inside market and simulator inside markets are simply the prices at the top of the buy and sell queues in Island and the simulator, respectively.
Why should your client care about all these different values? Your client should definitely care about the simulator inside market and last price, because it is at these approximate prices that the internal simulator market is showing liquidity, and thus determines where you must place orders in order to get matched. The simulator and Island markets could be wildly far apart, so if you placed orders according to the Island info, you could be way off. (And this was a flaw in the pre-beta simulator, which only gave you access to the Island info.)
The reason you should care about the Island last price is becuase it is Island last price that will be used to compute your client's valuation at the end of the day. This decision is somewhat arbitrary, but there is a rationale for it. Recall that when we value your clients holding, we are doing so under an "infinite liquidity" assumption --- i.e. that you could unwind your current position at the current last price without moving the market at all. This is an unrealistic assumption (somewhat but not entirely moderated by the 100K limit on your position). We feel that this assumption is more warranted in the external Island market than in our simulator, so we will apply Island last price when doing valuations for the purposes of the competition.
In summary:
Now, on the logistics: at the request of a number of teams, I am pushing all the deadlines back by a week, except for the final report deadline. Thus the schedule is now as follows:
Note that the shift in deadlines means that your final reports will be due before you've had time to fully digest all results of the competition, but you should have enough partial info to do your write-up.
Some teams have complained that they are unable, due to load limit restrictions and lack of access to other team's clients, to run simulations that approach the conditions of the competition. We don't have the time to coordinate such testing for you, but in response to these concerns are doing the following:
And again, please follow N&N for updates, including to the scoring criteria for the competition.
News and Notes 4/8/03: THE 2003 PLATINUM PLATTER COMPETITION (PPC 2003).
I couldn't resist giving the hokey name above to the final competition that will close out the first year of the PLAT project. This News and Notes entry describes the logistics, guidelines, and judging of PPC 2003. Please note that in addition to the satisfaction of a job well done, PPC 2003 performance will form a non-trivial portion of the grade for senior design and independent study students. Please read on.
First, some quick logistics and deadlines:
Now for details on the scoring of clients. All year I have stressed the importance of proper testing and calibration of clients, including volume of trading, risk saturation, position unwinding, robustness to varied market conditions, etc. Many of these properties will be put to the test in PPC 2003 scoring. More precisely, the PPC 2003 performance for a client will be determined by points assigned from a number of categories, and aggregated to give an overall score. Below is a link to the preliminary list of categories and point values. This list is nearly certain to change and expand over the next two weeks, so please monitor closely. I am also willing to hear suggestions for point categories.
News and Notes 4/2/03:
We will have our weekly meeting tomorrow at 10 AM at IRCS. I will not be there, but Luis Ortiz will be available to answer questions and provide individual help regarding the new simulator.
News and Notes 3/28/03:
News and Notes 3/26/03: WEEKLY MEETING TOMORROW AT 10; NEW RELEASE OF PXS!!!
There is a new release of the simulator, available immediately; details are available here and may be updated frequently. The new pxs will be used for all future competitions, and it is your responsibility to make sure you understand it, adapt your stategies to it (though Luis Ortiz has given you a head start on this), and experiment with it.
I will not make a formal assignment regarding the new pxs, but during the next week or so we will be very sympathetic to emails sent to pxs asking questions about it, or asking for help in its use; and much beyond this period we will be very unsympathetic. So procrastinate at your own peril...
Luis Ortiz will be available to answer questions about the new simulator at tomorrow's meeting.
News and Notes 3/19/03: FINALS COMPLETED, YU IS CHAMPION; IMPORTANT WEEKLY MEETING TOMORROW AT IRCS.
Ronggang Yu of the University of Texas is the champion of our 3-round competition, with his client making a strong showing on the final day of a difficult five-day final round. Congratulations Ronggang! Final spreadsheet and client plots below.
We will resume our weekly meetings tomorrow at 10 AM at IRCS. There are a number of potentially important agenda items for tomorrow, so if at all possible I suggest that every team try to have a representative there, for your own benefit. Items to be discussed include the following:
News and Notes 3/18/03: DAY FOUR COMPLETED.
...And the grimness continues. Client Yu suffered spectacular losses, and now it's a toss-up heading into today, the last day of the finals.
News and Notes 3/17/03: DAY THREE COMPLETED.
With the continued inability of client Luss to adjust to bullish days, client Yu from Texas has pulled out to a comfortable lead following a modest gain on Friday.
News and Notes 3/14/03: WALL STREET RALLY WASTED.
It seems our finals clients are firmly tuned for a bear market; while Wall Street had its best day since October yesterday, we suffered painful losses. Can either client climb back into the black in the remaining three days?
News and Notes 3/13/03: A DISMAL START.
Both clients took heavy short positions and were badly hammered by a late MSFT rally on Day One of the finals.
News and Notes 3/12/03: ROUND TWO COMPLETE; CLIENTS LUSS AND YU MEET IN FINALS.
Client Luss made a strong final push and Client Yu (UT) hung on to second place despite losses, and will now meet in the five-day finals. Since it is Penn Spring break, there will be no modifications allowed to either clients or scripts, and we will begin the finals immediately with today's MSFT data.
Congratulations to the finalists.
News and Notes 3/11/03: ROUND TWO, DAY FOUR COMPLETE; RACE WIDE OPEN.
With only one day to go in Round Two, heavy losses brought all but one team into the red for cumulative four-day earnings. The race is now quite tight, with several teams in contention for the second spot in the finals. Fifth and final day will be today.
All six clients finished in the red as they could not shake off negative sentiment despite a bull day for MSFT.
News and Notes 3/7/03: ROUND TWO, DAY TWO COMPLETE.
We've completed Day Two, and the race is beginning to shape up:
Details below.
News and Notes 3/6/03: ROUND TWO, DAY ONE COMPLETE; ALL-TEXAS FINAL???
We have completed the first day of Round Two, and our two clients from the University of Texas Austin have pulled out to early leads, being the only clients finishing in the black, and doing so by healthy margins. Are we heading for an All-UT final? Food for thought. Details are below.
News and Notes 3/5/03: NO MEETING TOMORROW.
There will be no weekly PLAT meeting tomorrow, as I am out of town. Round Two of the competition will proceed with today's MSFT data as scheduled.
News and Notes 3/4/03: ROUND ONE COMPLETE; ROUND TWO QUALIFIERS MAY UPDATE EXECUTABLES.
Round One of the competition has completed, and we have our winners:
Client Chi had third-place earnings in the Red Pool, but was disqualified for its third share position limit violation in five days. I might have forgiven this had the gap between clients Chi and Mahesh not been so close.
Congratulations to the Round Two qualifiers.
As described previously, the six clients above will now advance to Round Two, facing off in a single pool over a five-day trading period to determine the two finalists to meet in Round Three. Round Two will begin TOMORROW (Mar 5). We will skip today's MSFT data to permit Round Two qualifiers to update their executables and shell scripts (see below for instructions).
Detailed Round One results:
ROUND TWO QUALIFIERS: You are permitted, at your own risk, to update your executables and the one-line script command invoking your client. (I advise you not to forget that your current executable got you this far.) You have only until MIDNIGHT TONIGHT (Weds) to do this. As before, you should copy client.lastname, script.lastname, and any other files needed, to the writable directory /pxs/clients-exec on gradient (do NOT copy to the source directory). As always, don't forget to set the permissions properly. If you decide to update your client and/or script, you might want to send me mail so I know. Teams for which there is no new client or script will automatically have their Round One submission used; there will be no modifications allowed after midnight tonight until the competion of Round Two.
Good Luck!
News and Notes 3/1/03: DAY FOUR OF ROUND ONE COMPLETE; MONDAY IS FINAL DAY.
Important note: teams that advance to round two will have the opportunity to provide new executables and invoking scripts for the second round; details to be announced. It is expected that only minor adjustments to your existing strategies will be done.
News and Notes 2/28/03: COMPETITION UPDATE.
Don't forget that all teams must provide their client source code by 6 PM today; see yesterday's N&N.
We have now completed 3 of the 5 days for Round One of the competition, and things are starting to shape up. You can see where things stand in the following links:
Some further remarks and observations:
News and Notes 2/27/03: REVISED DAY ONE RESULTS; SOURCE CODE ASSIGNMENT
Due to the premature termination of a client in the red pool on Day One that was not the fault of the client itself, I have rerun the red pool simulation for Day One and the revised results are available here. The results are qualitatively similar for all teams, but there are quantititive differences. The blue pool results are unaltered for Day One. I am currently running the simulations for Day 2 (Weds) and will do Day 3 (Thursday) overnight, so keep an eye out for updates.
Source code assignment: I would now like fully compilable source code for all of the clients for the competition. In addition to wanting to examine your code, we are actively working on a new release of the simulator and want the source code for testing purposes and backwards compatibility.
In the publicly-writable directory /pxs/clients-source on gradient, there is a writable subdirectory for each last name under which a client was submitted for the competition. Each team should place in that directory all files required to compile and execute your strategy. If you have not modified the makefile, and do not call any external programs or code, then probably all that you need to copy there is your strategy.c. If you have other material (code or executables) that is needed, please copy it there with a README explaining anything we need to know to compile and execute. Don't forget to set the permissions properly in your subdirectory by executing "chmod a+rwx *".
DEADLINE FOR THE ASSIGNMENT: FRIDAY (TOMORROW) BY 6 PM. This assignment should be a trivial file-copying exercise.
News and Notes 2/26/03: NO MEETING THURSDAY; LOST DATA YESTERDAY, COMPETITION CONTINUES TODAY.
I am out of town and returning Thursday AM, probably not in time to hold our weekly meeting. It's possible I will be around later that morning however, so teams interested in meeting with me briefly can send email and see if it works with our schedules.
Yesterday we did not get data from Island due to a network problem, which hopefully will not recur today. We'll thus be skipping Tuesday in the competition, and Day 2 will be Wednesday. I will just shift the schedule forward as needed to make sure we get five days of trading in each of the three rounds.
News and Notes 2/25/03: ROUND ONE, DAY ONE.
The first day of the first round of the competition was run overnight, and the results are summarized here. Please note the annotations on several of the client results, some of which will involve subsequent rulings. I'm not entirely decided yet, but I am inclined to "forgive" share position violations that I deem having been the cause of losses.
For those of you seeing the value and share plots for your clients and the other clients, they are available in postscript format from this directory.
Finally, I the raw output files are available on gradient at /pxs/results/Feb* under the appropriate date. I do not promise that these files will remain there indefinitely, so you might want to do any analysis sooner rather than later.
News and Notes 2/24/03: FORMAT OF THE COMPETITION.
I have now received client executables and invoking scripts from all teams, and from a very brief and preliminary test it appears they all run properly. We thus have a healthy pool of 13 clients for the current competition.
My main goal in the competition is to try to get some more reliable results than last term, and the main way we will achieve this is by simply running more simulations. To keep things interesting, I am going to structure this as a 3-week, 3-round tournament. The first round will take place this week.
For the first round, I have again divided the 13 clients into
two pools. On each day of MSFT trading this week, I will run two
simulations, one for each pool, and aggregate the total returns
for the week for each client. As always, I will rule on any
violations of the share position limit, abnormal termination of
clients, or other controversies. The pools for the first round
are as follows:
The top three performing clients from each pool will advance to the second round. Thus, the second round will contain six clients. These will all be run in a single simulation on each day of trading next week (the week of March 3).
The top two performing clients in the second round will meet in the finals, to be held the week of March 10. Again, there will be a simulation for each trading day and the results aggregated.
Some remarks about how I plan to run the simulations: I generally plan to run the simulations at night on the previous day's data, in order to reduce the load on gradient during working hours. For this reason, all teams are requested to refrain from running any simulations during the hours of 7 PM to 7 AM each night during the three weeks of the competition.
Good Luck!
News and Notes 2/22/03: CLIENT SUBMISSIONS DUE TOMORROW.
Tomorrow you should all submit executable (not source) code for your trading clients for the coming competition. Here's how to do it:
News and Notes 2/12/03: WEEKLY MEETING TOMORROW.
We will have our usual weekly meeting tomorrow at IRCS at 10 AM. At this meeting, I will have no prepared remarks other than reviewing the upcoming deadlines and assignments; Luis Ortiz and I will then spend time chatting with individual teams that want help or advice on their strategies.
News and Notes 2/10/03: PROGRESS REPORTS; NEXT COMPETITION; LOAD POLICY; PORT ASSIGNMENTS.
First, a quick update: It appears that the debugging of the next release of the simulator (which would enable faster simulation on historical data) is proceeding more slowly than expected, so we will carry on for now with the extant version and its API.
There are two upcoming deadlines for the project, elaborated on below:
While the details of the competition the week of 2/23 are not yet fixed and will be elaborated upon later, PLAT staff will run the competition, so all you need to provide are your executable and script. The competition will likely average your performance over several simulations on live and historical MSFT data, and rotate your strategy into direct competition with several sets of other strategies. An effort will be made to run enough simulations and variations to get more reliable indications of the success of your strategies.
As in last term, there is a simple rule that your share position must never exceed 100K shares (long or short) at any time during the trading day. Violations are grounds for disqualification from the competition.
We will once again need to manage the load we generate on gradient during the two weeks between now and the competition. I urge you to not wait until the last second to work on this --- we reserve the right, as needed, to implement sudden policy changes restricting your simulations if the load becomes too high. For now, I want to try to keep the policy lightweight, so we will try the following: if you see more than 5 simulations running (try the unix command ps -aux | grep "/home/pxs/bin/pxs"), you should not start a new one until there are fewer than 5; and if you complete a simulation, you should wait for at least 12 hours before running another. We will be running a script that monitors exactly who is running simulators and when they started; egregious violators of the policy may have their simulation rights suspended for a period of time to give others a chance. Please try to be cooperative; I hope to not need to implement a more complex policy.
Finally, there are some new participants on the project who do not have ports assigned yet; if this includes you, please contact me for an assignment.
News and Notes 2/4/03: Thanks again to Michael Bos and Andy Ellner of Lehman Brothers for their visit last week!
As mentioned in an email sent just now, there will be no weekly meeting this week due to Prof. Kearns moving residences. However, please follow News and Notes daily, as we will shortly release a new version of the simulator allowing much faster historical simulations, and a related assignment.
Meanwhile, diligent teams will continue to brainstorm on their planned strategies, and should feel free to begin testing on the current version of the simulator.
News and Notes 1/29/03: LEHMAN VISIT TOMORROW. I repeat several points I made in an email just sent to all of you:
News and Notes 1/27/03:
News and Notes 1/22/03: Don't forget your proposals are due today; please send them by email under the subject heading "PLAT proposals". And we have our usual weekly meeting tomorrow at 10 AM at IRCS, where there will be time to discuss your ideas.
News and Notes 1/19/03: LEHMAN VISIT; FIRST ASSIGNMENT OF THE NEW TERM. We are confirmed for our first visit from Lehman Brothers on Jan 30 as previously discussed. At this point, nobody has sent me email saying they cannot make this date. I am expecting each of you to be there for this if you haven't told me otherwise, including people who don't attend the regular meetings. Send me mail immediately if you cannot make it.
Your first assignment of the new term: I want everyone to think of 2-3 different ideas for trading strategies that you might be interested in building this term. You should submit to me a brief description of your ideas (say around half a page for each strategy) by 6 PM on this coming Wednesday, Jan 22. The point of this assignment is to get you started in the process of settling on an interesting strategy, and to give us material to discuss. Please try to think of a variety of different strategies, and not just describe several small variations on a basic theme. Larger teams might want to generate even more ideas.
I realize the deadline is short, but you are being asked for just a short and informal write-up. I want to have these in time for Thursday's weekly meeting, which will be devoted to me and Luis Ortiz spending individual time with your group representatives at the meeting to chat about your ideas, help you refine and improve them, etc.
News and Notes 1/17/03: Today we are running a competition among the strategies that use order book data. (Note: this simulation seems to have died sometime in the morning. I will try running it again on Tuesday; Monday the markets are closed for MLK day.)
News and Notes 1/14/03: LIVE BLUE POOL COMPETITION; THOUGHTS FOR STRATEGIES. Primarily to remind myself how to run all the scripts for a competition, I am running an informal live competition of the blue pool from last term. From the results, it looks like the bull market is back in 2003!
To help get your creative juices flowing, below I am listing a few broad categories of trading strategies that seem interesting or promising to me that you might want to contemplate for the coming term:
News and Notes 1/13/03: Our first weekly meeting of the new term will be this Thursday, Jan 16 at 10 AM at IRCS. At this meeting, we will spend some time discussing the live competition results, and also discussing the structure of the project for the Spring term; for those of you unable to attend in person, here is a brief description of the planned structure.
Last semester we learned some basics, and had a rushed competition towards the end among interesting but hastily-designed and hastily-implemented trading strategies. Now we have the luxury of a working simulator and four months to work, so we're going to raise the bar a bit.
In general, I anticipate that the bulk of your work for the term will be designing, implementing, testing and competing with a single strategy. We will have multiple competitions of varying formats.
I want to stress that at this point, everyone is free to change from the strategy they built last term. I encourage all of you to consider doing so --- this is an opportunity to do something really interesting and novel, and to have time to do it properly, a luxury you didn't have last term. And this time, we will take a stronger hand in vetting and approving your strategies --- you will probably all explain and "defend" your strategies in informal discussions with me, the group, the Lehman folk, etc. There should be a simple and reasonable economic or market "theory" or story behind the strategy you build, and you should be ready to articulate it. More guidance about promising directions, and about the process of getting your strategy approved, will be discussed Thursday and posted here as well.
You are also all free to change, add, or drop partners. These will be people you will work with closely all term, so choose wisely. More will definitely be expected of larger teams, so if larger teams find themselves unable to justify their headcount for the strategy they have chosen, they should consider breaking up into smaller groups.
News and Notes 1/11/03: TENTATIVE VISIT FROM LEHMAN FOLKS: JAN 30. We have tentatively arranged for a group of our sponsors/mentors from Lehman to visit us at Penn for a few hours on Thursday, Jan 30 at IRCS, starting at our usual weekly meeting time of 10 AM. While I realize that many of you cannot make the weekly meetings on a regular basis, I strongly encourage all of you to make an exception to your schedules if neccessary to make this. They are a valuable resource to us intellectually, and may form valuable professional contacts for many of you as well. You'll also be working with them over the coming term, so getting a face-to-face introduction is essential.
I will let you all know when this date is finalized, but wanted to give early notice.
News and Notes 1/10/03: WELCOME BACK.
News and Notes 12/21/02: FINAL REPORTS. For those of you who have not emailed them to me already, please remember that the drop-dead date for your final reports is tomorrow (Sunday).
News and Notes 12/20/02: RELATIVE SOURCES OF LIQUIDTY FROM LIVE COMPETITION. An interesting question to ask of the live competition, and future ones, is how much of the liquidity was provided by Island and how much by client-client trading. To give a quick-and-dirty sense of this, here is a plot (PDF format) for the red pool competition. This plot shows, as a function of time, the fraction of the volume in the top 15 orders of the simulator buy and sell books that was placed by our clients (versus coming from the Island books). The raw plot of these fractions is extremely noisy --- meaning that the fraction of liquidity generated by our clients can jump from near 0 to near 1 in just a few time steps --- so I have smoothed the plot by averaging over 250 time steps. The left-hand side of the plot should thus be ignored. For a slightly different view of the same data, here is a plot (PDF format) that ignores volume, and just shows the number of orders in the top 15 of the simulator buy and sell queues that were placed by our clients. Again, smoothing over 250 steps was performed.
There are a number of points to make about these plots:
Now here are the same plots for the blue pool competition: fraction of client volume plot (PDF format) and the number client orders in the top 15 (PDF format). Compared to the red pool, it seems that
News and Notes 12/19/02 (Part 3): OUTPUT FILES FROM YESTERDAY. For those of you wishing to analyze your performance from yesterday, the raw output files for all of your clients and the two pxs processes should be accessible to you at /pxs/results on gradient.
News and Notes 12/19/02 (Part 2): It seems that the top four earners from yesterday were trash-talking around the water cooler, and have decided to face off in an informal live competition today at 9:30. Check it out. (For some reason, on the live updates page the refresh/reload seems to work better in Internet Explorer than in Netscape.)
News and Notes 12/19/02 (Part 1):
Once again,
yesterday's live competition
was a great success and a great way to finish the semester. I want to take the occasion to single
out for special thanks the team that developed the simulator and the project over the last 8 months:
A couple of final notes before you all head off for the break:
Thanks to all of you for participating, have a great break, and see you next term!
News and Notes 12/18/02 (Part 2): LIVE COMPETITION COMPLETED. I will post some further remarks here later, but the live competition has completed and the final result are here.
News and Notes 12/18/02 (Part 1): LIVE COMPETITION TODAY; LEHMAN BROTHERS SPONSORSHIP. Just in time for today's exciting live-data competition to end the first term ever of the project, I am happy to announce the official sponsorship of Lehman Brothers, which now makes us the Penn-Lehman Automated Trading Project (PLAT). In addition to generous financial support, the Quantitative Trading group at Lehman will be interacting with us via visits and lectures both here and there, mentorship and advising to teams designing strategies, acting as judges on our competitions, and so on. Many thanks to Lehman Brothers!
Now, on with business: today the live trading competition begins at market open at 9:30 AM, and ends at 4 PM. The usual plots of profit and loss, share position, and MSFT price for every team will be posted live throughout the day of here.
Good Luck to everyone!
News and Notes 12/16/02 (Updated 6 PM): ALL TEAMS ORDERED OFF GRADIENT; LIVE COMPETITION POOLS; MORE COMPETITION DETAILS. Since we need to run some preliminary testing for Wednesday's competiton, and also need to keep the load on gradient down, all teams should end all jobs currently running on gradient, and refrain from starting new ones until the completion of the competition.
The draw for the live competition has been preliminarily set as follows:
Also, a few other comments/clarifications about the competition:
News and Notes 12/15/02 (Part 2): HISTORICAL COMPETITION RESULTS AVAILABLE. The (tentative) results of the historical phase of the competition are now available here, along with some brief analysis. You should examine these results not only to see how you fared compared to others, but to see the descriptions of what kinds of strategies others have implemented. Eventually these results will give links to the team reports as well.
News and Notes 12/15/02 (Part 1):
Don't forget: copy your executable code, script files and readmes to
/home/pxs/public by midnight tonight (see yesterday's N&N).
Please remember: you are providing us
a single, binary executable
for your client,
not source code.
We should not (and will not) compile anything for you.
Several people have asked for a little more detail about what is expected for your final reports, due to me this Friday. Let me begin by telling you what components it should contain:
A formatting note: I will be especially grateful to those teams that figure out a way of giving all of the above elements in a single file containing everything (text, plots, code, etc.). Since we do everything electronically, it's a real hassle for me to have to deal with multiple attachments.
Now let me indicate some of the main criteria I will apply in evaluating and judging your final reports:
News and Notes 12/14/02 (updated 11:20 AM --- hint for strategies added at end): First, just a quick clarification --- your code and script are due Sunday at midnight, meaning between Sunday and Monday, not between Saturday and Sunday.
Next, here are details for getting us your code on Sunday. We have created the directory /home/pxs/public on gradient for you to place the relevant files in. By tomorrow night at midnight, every team should have placed at least two and possibly three files there. It is absolutely essential that you not just put the files there, but set the permissions on them properly so that we can access them, since you are the owner of the files. The simplest way of doing this is to execute chmod a+rx filename for each file you place in that directory. You can always verify you have set the permissions properly with "ls -l".
The three files are as follows; in each, "lastname" should be the last name of a team member who will be present on Wednesday, thus at the same time letting us know who to expect then.
IMPORTANT NOTE ABOUT PLOTTING: We will assume that the output of your mytrader contains price, value and share information formatted exactly as in the original client shell we provided. Additionally, some (hopefully all) of you will also write additional values to the output that are specific to your strategy, and will do so in a way that makes it easy to extract and plot them over time. The output files for your trader for Wednesday will be made readable to you following the competition so you can plot whatever you like for your final report.
A number of you have asked about how to plot values written to your client output. Rather than trying to continually modify the scripts we have already written for the diverging needs of the groups, we want all of you to become adept at doing such plotting yourselves. The most basic tool you want is the unix command grep. If, for example, you have written lines of the form "myvalue=x", where x is some number and myvalue is just a string tagging such output lines, then doing cat outputfile | grep myvalue will produce only those lines containing the string "myvalue" from the file outputfile. You can then dump this to a file, use your favorite programming language to strip off all but the numeric values, and give the resulting datafile to gnuplot to produce a plot.
HINT ON RISK SATURATION: There is one hint I want to offer for tuning your strategies for the live competition. This hint is based on an observation about the historical results. In the historical competition, a number of strategies did not "saturate their allowed risk". For example, some strategies never exceeded +/- 50,000 shares on any day, even though +/- 100,000 was allowed. In general I expect that the winners of both phases of the competitions will be teams that, at least at some point, come close to the allowed limit of shares. This is not to say that by approaching this saturation point you might not lose larger amounts rather than making larger amounts. But if you figure that some teams are going to make money, and that your strategy will make money also (which you might as well assume, since otherwise you probably won't win anyway), you want to (sometimes almost) saturate --- but not exceed --- the allowed risk.
News and Notes 12/13/02 (Part 2): While today I am only asking for raw plots of value, shares and price, let me emphasize something I have repeated many times. In your final report, I expect to see plots of the other quantities relevant to your trading strategy. For example, if your strategy involves trading based on differences with a moving average of some sort, it makes sense to plot that moving average and those differences. Entirely independent of performance, I will look most favorably on reports that show these strategy-specific quantities and analyze their behavior carefully.
News and Notes 12/13/02 (Part 1): HISTORICAL COMPETITION COMPLETED; RESULTS SUMMARY DUE; DETAILS FOR LIVE DATA COMPETITION. The historical phase of our competition is now complete, and I am expecting plots summarizing your performance for each of the three days by Friday at noon.
Please remember that the live data day of the competition is this coming Wednesday, December 18 at 9 AM at IRCS. Every team is expected to provide at least one representative for the first couple of hours to make sure your client is running properly.
Furthermore, every team must provide us with executable code for your client, and a single-line shell script that invokes your client exactly as you wish it to be invoked, by this Sunday, December 15 at midnight. In subsequent N&N I will post details about how to get this to us, as you cannot email the binary executables; probably we will simply set up a directory on gradient you can copy your executable to with a name that identifies your team. The only things in the shell script you do not need to worry about are the port number the simulator is running on (as we will determine this), and the name of the client output file, which we will set. Note that for the live data competition, you must commit to a single setting of your strategy parameters, and set these in the script you provide to us.
The way the live competition will work is basically as follows: there are roughly 10 or so different strategies teams have implemented. We will divide these into two groups of approximately equal size; the division will be based on a combination of historical competition performance and the nature of the strategies in a way to make it hopefully as interesting as possible. For each group, a separate copy of the simulator will be running, and we will create a single script for each group that first starts the simluator, and then starts each of your client strategies using the script line you provided for us (with the port and output file set appropriately by us).
For the live competition, we will retain the restriction that all strategies must keep their share positions between -100,000 and 100,000 at all times during the day; violoation of this may result in disqualification. Note that in the live competition, there may be signficantly greater liquidity and different trading patterns present due to the fact that you will possibly executing trades with other clients in your pool.
News and Notes 12/12/02: Today is the third and final blue team day. Please remember that all teams should send me plots of their three days worth of historical data, along with a numeric summary for each day providing final value, and the max shares owned or owed for that day. This is due to me by email by NOON ON FRIDAY. Also, don't forget the live competition at IRCS on Wednesday; further details on this to follow.
News and Notes 12/11/02: Wednesday is the third and final red team day.
News and Notes 12/10/02: OK, it is now Tuesday and therefore a blue team day.
News and Notes 12/9/02: It is now Monday AM and thus the beginning of the second red day of the historical simulation. All blue teams must kill all simulator jobs NOW.
News and Notes 12/8/02: APPROACHING DEADLINES. Now that the competition is well under way, I want to specify a little further what I expect from each team over the coming two weeks, and when: