Trading system daily reports, an example

Questions and discussion of Trading Blox and other platforms for non Trading Blox customers. Trading Blox customers should use the Trading Blox Support forum.
Post Reply
sluggo
Roundtable Knight
Roundtable Knight
Posts: 2986
Joined: Fri Jun 11, 2004 2:50 pm

Trading system daily reports, an example

Post by sluggo » Fri Aug 22, 2008 1:27 pm

I've been helping out a friend who is trading a real-money account using a system in Blox. She wanted to get more detailed (and more newbie-friendly) output from Blox. Eventually we settled upon some reports that I think are quite useful, and which other systems traders may want to consider creating, too.

I added some PRINT statements to her Blox system, in the After Instrument Day script (to get instrument-level information on the final day), and also in the After Test script (to get system-level and Suite-level information on the final day).

Then I created a piece of custom software, a "post processor", that reads the stuff that the PRINT statements wrote (Blox sends this to a file called "Print Output.csv"). The post processor software formats the information for human consumption. As the UNIX crowd derisively says, this program pretty-prints the data.

The first piece of output is a daily statement, showing the actual positions in her account, and the associated dollar values (she's a US-based trader). The "Profit in foreign currency" column turns out to be very helpful in reconciling against the statement from the futures broker, since the broker's statement lists all profits and losses in the denominated currency (e.g. in Yen for a Tokyo Rubber position):

Code: Select all

                     till  entry    entry      Last      Profit in      Profit
P #cnt Mon Mkt  CSI  roll  date     price      Close     foreignCur     in USD
-------------------------------------------------------------------------------
L    8 SEP BAX 08/21  17 20080805   96.87000   96.83000     -800.00     -796.50
L   15 MAR ED  08/21  77 20080807   96.87500   97.04500     6375.00     6375.00
S    5 SEP FC  08/21  21 20080804  118.17500  112.67500    13750.00    13750.00
S   21 SEP FEI 08/21  92 20080804   94.99000   95.02500    -1837.50    -2855.29
L    7 SEP FV  08/21  92 20080804  106.18750  112.33594    43039.06    43039.06
S    8 OCT JRU 08/21  10 20080820  300.60000  301.20000   -24000.00     -231.33
S    7 OCT LC  08/21  36 20080804  107.85000  106.30000     4340.00     4340.00
L    2 NOV LKD 08/21  50 20080811 2333.00000 2304.00000     -290.00     -290.00
L   13 SEP MP  08/21  17 20080804   0.088425   0.098650    66462.50    66462.50
L    9 SEP TU  08/21  92 20080804  102.06250  106.43750    78750.00    78750.00
L   10 SEP YBA 08/21  10 20080806   92.77000   92.78000      240.00      227.33

Open Trade Equity                                                  $  208770.78

Tbill 20081009 valued at purchase price                            $  139487.32
Tbill 20081113 valued at purchase price                            $  229914.26
Tbill 20080911 valued at purchase price                            $   79764.87
Cash position                                                      $   94977.65

Total account value (approx)                                       $  752914.88

Info       Cash+OTE are  40.3% of total equity
           suggest moving  213398.64 to Tbills, leaving   90349.79 in Cash+OTE

Next is a report of the positions that Blox thinks she ought to have. We call these "theoretical" positions:

Code: Select all

 1 positions in CURRENCY ---------  MP    
 0 positions in ENERGY -----------  
 0 positions in GRAIN ------------  
 2 positions in LTIR -------------  FV    TU    
 2 positions in MEAT -------------  FC    LC    
 0 positions in METAL ------------  
 2 positions in SOFT -------------  JRU   LKD   
 4 positions in STIR -------------  YBA   FEI   BAX   ED    
 0 positions in STOCKINDEX -------  

     days in   market
     ----------------
         1      JRU
        11      YBA
        13      BAX
        14      LC 
        34      ED 
        50      FEI
       162      FC 
       224      MP 
       232      FV 
       232      TU 
       510      LKD

Then come the day's orders. Here are examples of each of the order types the software can print. (They demonstrate that the system trades using MOO orders exclusively). To produce this output I lied to the software and told it she would be trading from Hawaii:

Code: Select all

Sell  all SEP RZ   on the open: Exit Long  (Standard Exit)

Sell  all SEP BAX  on the open: Exit Long  (Stopped Out!!)

Buy   all DEC FEI  on the open: Exit Short (Standard Exit)

Buy   all SEP FC   on the open: Exit Short (Stopped Out!!)

Buy     6 DEC CC   on the open: Enter Long  Cocoa               
                   Exch= NYBOT
                   1-Lot Entry Risk = $ 616   R1/betsize =  123212.7

Buy     4 SEP AD   on the open: Reenter after stopout Australian_Dollar   
                   Exch= CME
                   1-Lot Entry Risk = $ 924   R1/betsize =  184822.0

Sell   11 SEP EBL  on the open: Enter Short Bund                
                   Exch= EUREX
                   1-Lot Entry Risk = $ 336   R1/betsize =   67208.1

Sell    8 SEP JTI  on the open: Reenter after stopout TOPIX_Index         
                   Exch= TSE-TOKYO
                   1-Lot Entry Risk = $ 461   R1/betsize =   92410.1

Note:   RZ   opens at 0805_New_York     ( 0305_Hawaii ignoring Daylight Savings )
Note:   BAX  opens at 0800_Montreal     ( 0300_Hawaii ignoring Daylight Savings )
Note:   FEI  opens at 0700(24h)_London  ( 2100_Hawaii ignoring Daylight Savings )
Note:   FC   opens at 0905_Chicago      ( 0505_Hawaii ignoring Daylight Savings )
Note:   CC   opens at 0800(elec)_NYC    ( 0300_Hawaii ignoring Daylight Savings )
Note:   AD   opens at 0720_Chicago      ( 0320_Hawaii ignoring Daylight Savings )
Note:   CL   opens at 0900_New_York     ( 0400_Hawaii ignoring Daylight Savings )
Note:   EBL  opens at 0800_Frankfurt    ( 2100_Hawaii ignoring Daylight Savings )
Note:   JTI  opens at 0900_Tokyo        ( 1400_Hawaii ignoring Daylight Savings )
Note:   PL   opens at 0820_New_York     ( 0320_Hawaii ignoring Daylight Savings )

Then there is a (small, we hope) section for Error Messages. On this day,

Code: Select all

Warning:  CGB  will rollover on  Fri 08/22  from SEP to DEC
Warning:  C_   will rollover on  Fri 08/22  from SEP to DEC
Warning:  FEI  will rollover on  Fri 08/22  from SEP to DEC
Warning:  FV   will rollover on  Fri 08/22  from SEP to DEC
Warning:  HG   will rollover on  Fri 08/22  from SEP to DEC
Warning:  KW   will rollover on  Fri 08/22  from SEP to DEC
Warning:  PA   will rollover on  Fri 08/22  from SEP to DEC
Warning:  SI   will rollover on  Fri 08/22  from SEP to DEC
Warning:  TU   will rollover on  Fri 08/22  from SEP to DEC
Warning:  TY   will rollover on  Fri 08/22  from SEP to DEC
Warning:  US   will rollover on  Fri 08/22  from SEP to DEC
Warning:  W_   will rollover on  Fri 08/22  from SEP to DEC

Next there is a summary table showing each market in the portfolio, and details of its position if any. To save space I'll show just the top few lines:

Code: Select all

               days     today's      exit       risk    risk@ profit
P Mon  Mkt       in     close        price      today   entry  in Rs
--------------------------------------------------------------------
- SEP  AD         0     0.876400     0.000000  $ 2505              
L SEP  BAX       13    96.830000    96.753174  $  191  $  266  -0.3
- DEC  BO         0    56.350000     0.000000  $ 2831              
- SEP  BP         0     1.872100     0.000000  $ 2133              
- DEC  CC         0  2841.000000     0.000000  $ 2191              

And lastly there is a table that reminds her of the (date based) rollover schedule she is using:

Code: Select all

Last  Month       Contract                       Next  #days Subsequent
CSI  2trade  Sym  Name                Exchange   Roll   till  Month      Sector
-------------------------------------------------------------------------------
08/21  SEP   AD   Australian_Dollar    CME       09/08   17   DEC      CURRENCY
08/21  SEP   BAX  Can_Bankers_Acceptan MONTREAL  09/08   17   DEC          STIR
08/21  DEC   BO   Bean_Oil             CBOT      11/22   92   JAN         GRAIN
08/21  SEP   BP   British_Pound        CME       09/08   17   DEC      CURRENCY
08/21  DEC   CC   Cocoa                NYBOT     11/09   79   MAR          SOFT
08/21  SEP   CD   Canadian_Dollar      CME       09/08   17   DEC      CURRENCY
08/21  DEC   CGB  Canadian_Govt_Bond   MONTREAL  11/22   92   MAR          LTIR
So far, she has been quite pleased with these reports. They help her understand what's going on in the account, what trades are being tracked, and what rollovers are coming. They're easy to print (unlike the Blox Order Generation Report) and to save in a folder for archiving. All in all, rather a handy thing to have available.

I hope this posting will suggest ideas to other traders, which will help you enhance your reports and, thereby, enhance the "daily operations" portion of your trading.

Best wishes,
+SLUGGO+

RedRock
Roundtable Knight
Roundtable Knight
Posts: 939
Joined: Fri Jan 30, 2004 3:54 pm
Location: Chicago

Post by RedRock » Fri Aug 22, 2008 3:15 pm

She is fortunate to have such a friend! Very nice example of what is possible to make daily trading management easier... (and less human error prone)

LeapFrog
Roundtable Knight
Roundtable Knight
Posts: 695
Joined: Mon May 17, 2004 4:18 pm
Location: Boston, MA

Post by LeapFrog » Sat Aug 23, 2008 11:30 am

Golly Gee Willikers! Very impressive indeed - especially to someone like me who can barely find the "Generate Orders" button, let alone insert all the correct PRINT statements in the correct places within my Blox code, find or create the necessary post processing software and have the programming skills to pull it all together.

It is great to see what can be done though - bravo Sluggo!!!!!

Post Reply