Adding a class for creating IB combo orders is easy. I actually have most of it already. Code for monitoring order execution is already part of JBT and seems to work well. Somehow, it does not work for the second instrument, - must be a logic flaw in the way a second instrument was added. My problem is understanding the overall structure of JBT (or JArb) and interconnections between its many classes. Class and sequence diagrams here would be so useful! If I knew which classes need to be modified, I would figure out how to do it.
Do you know which classes need to be modified in JBT to add multi-instrument functionality? My background is in math, statistics and finance. I have programmed in FORTRAN, SAS and MATLAB. My Java coding skills are very uneven. I have learned Java specifically for this project and have coded a few utilities for JArb and JBT as well as many trading strategies that use external statistical libraries. ________________________________ From: ShaggsTheStud <[email protected]> To: [email protected] Sent: Thu, January 13, 2011 9:55:42 PM Subject: Re: [JBookTrader] proposal Well I think you will find that you need to address all these issues in JBT when you go after them. There are API messages you could tap into to check availability of shares to short. You can also "pre-borrow" shares to short at the beginning of the day, to guarantee you have them on hand. Things to think about. I assume you can code. If you can't, you really shouldn't be using these software packages! On Thu, Jan 13, 2011 at 6:03 PM, Astor <[email protected]> wrote: I started out using JArb because, in theory, it has the features that I need. I think I was the only one using it. > >The problem with JArb is that the trading orders for each instrument are sent >to >IB separately, instead of as IB's Combo Order. Since orders are submitted >separately and JArb does not monitor if both legs have been executed, I often, >unsuspectingly, ended up holding only one side of the long /short trade. When >I >had discovered that I held the unhedged position, I had to exit JArb and close >the postion manually from TWS. > >Another problem was that at times JArb tried to place the order a second time, >so that the unhedged position had doubled but JArb was not aware of it and >continued to show the original position size. > >JBT, as far as I can tell, is far more stable and does not have those issues. > >As far as trading instruments go, I have generally traded ETFs because >the bid-ask spread is minimal, shorting is not a problem and there are so many >of them now that a large number of economically linked pairs (or groups) can >be >defined. > ________________________________ From: ShaggsTheStud <[email protected]> >To: [email protected] >Sent: Thu, January 13, 2011 6:24:43 PM >Subject: Re: [JBookTrader] proposal > > >I'm confused, why would you port JArbitrager's features to JBT, when it sounds >like the features you want are what JArb is built to do (except you want more >instruments) > >Note I've not yet played with JArb > >Also, curious, what instruments are you thinking about trading? > > >On Thu, Jan 13, 2011 at 3:02 PM, Astor <[email protected]> wrote: > >I know it is a lot of work. But it also would add tremendous capability to the >platform. Cross-market technical analysis is used by a large number of hedge >funds. A really good book on that is: "Intermarket Technical Analysis: Trading >Strategies for the Global Stock, Bond, Commodity, and Currency Markets (Wiley >Finance)" by John Murphy. >> >>In terms of monitoring the books, - it would be interesting but not necessary >>for my purposes. I have tried volume, book, etc but could not find a working >>strategy and do not know anyone who has. I think it is because there are so >>many algo programs whose primary and only purpose is to create misleading >>book >>signals. IB has several available as well. >> >>My strategies are based only on price. I watch short term trends among >>long-term >>correlated/co-integrated instruments. If the trends diverge, I go long/short >>against the trend. If the trends are aligned, confirming each other, I follow >>the trend. >> >> >> >> >Another goal is to provide the same functionality with the >>price/bid/ask feed only. This is useful for going beyond 3 instruments. >> >>This approach would work very well for me. >> >>You make great points about complexity of the project. I hope that some or >>most >>of those have already been addressed in JArbitrager. Your point #4 probably >>is the most important. >> >>So, what do you think? Is it doable? >> >> ________________________________ >>From: ShaggsTheStud <[email protected]> >>To: [email protected] >>Sent: Thu, January 13, 2011 12:18:50 PM >>Subject: Re: [JBookTrader] proposal >> >> >>What are you looking at doing. Do you want to monitor the books of multiple >>instruments, or is price sufficient? >> >>My thoughts on plan of attack are two fold. >> >>One goal would be to provide the ability to monitor multiple instruments from >>the same strategy, and set positions from that strategy, using the same type >>of >>feed and data for each instrument. >> >>Another goal is to provide the same functionality with the price/bid/ask feed >>only. This is useful for going beyond 3 instruments. >> >>I was looking into this at one point, but there is a LOT of issues with doing >>this >> >>1) You need to create an interface for various indicators of various >>instruments, with an easy way to differentiate them. If memory serves me >>correct, you can only graph one copy of each indicator class at a time (JBT >>will >>get confused if you have to of the same type of indicator with different >>parameters). >>2) You need to create a good interface for setting orders for multiple >>instruments, and make sure that all maps out properly. >>3) You need a way to visualize all the data. >>4) You need to create a way to store the backtest data, and handle alignment >>of >>reading back the data such that all the instruments data is aligned in time >>(note, there are often times where the datafeed is broken on an instrument). >> >>I hope this shows the complexity involved. Also note that I think the >>performance will be terribly slow for optimization. That aside, I think the >>platform would be great for trading and backtesting. >> >> >>On Thu, Jan 13, 2011 at 8:09 AM, Astor <[email protected]> wrote: >> >>There is a data converter in the older version of JBT (ver. 6.01): >> CMEDataConverter.java in the UTIL package of that release. >>> >>>However, I would be willing to purchase and contribute some data in exchange >>>for >>>porting JArbitrager's capability to trade several instruments to JBT (or >>>guiding >>>me in that process). >>> >>>I would also be willing to help develop stat arb strategies, using that >>>capability and provide a java library with classes with tools needed to do >>>that. >>> >>>Even if you are not interested in hedged, market-neutral positions, because >>>markets are linked, there is a lot of lead-lag information cross-market >>>that may >>>improve any strategy in JBT. For example, if you trade currencies, you may >>>find >>>that interest-rate sensitive bond ETFs will be a leading indicator while >>>inflation-sensitive gold and oil ETFs will provide confirming signal. If you >>>trade ES, then SPY and HYG will provide confirming signals, etc. >>> >>> ________________________________ From: ShaggsTheStud <[email protected]> >>>To: [email protected] >>>Sent: Fri, January 7, 2011 10:00:37 PM >>>Subject: Re: [JBookTrader] Re: 321: Error validating request:-'hb' : cause - >>>The >>>account code is required for this operation. >>> >>>I have a converter, but I haven't messed with it in a while. The data is >>>what I >>>consider to be very expensive, but I do not remember the number off hand. >>>$200 >>>for a months worth?? that might be completely wrong. >>> >>> If you decide to buy the data, I would be willing to trade you my code for >>>some >>>of the data you purchase (and I will verify it works using that data). >>> >>> >>> >>>On Fri, Jan 7, 2011 at 8:29 AM, nonlinear5 <[email protected]> wrote: >>> >>> >>>> >>>> >>>>> >>>>>Eugene, which vendor do you use for historical pricing data, compatible >>>>>with >>>>>JBT? Is there a utility that converts vendor's historical data into JBT >>>>>compatible format? >>>>> >>>>> >>>I am only aware of one source for historical market data which contains >>>market >>>depth, and that is the Chicago Mercantile Exchange: >>>http://www.cmegroup.com/market-data/datamine-historical-data/marketdepth.html >>>> >>>>I made a couple of purchases from them in the past. The data files are >>>>gigantic >>>>(one day worth of data is about 1 million lines). They ship the data on the >>>>DVDs. Up until the middle of last year or, so, they had their data in a >>>>specific >>>>format, and I had a converter program in the standard JBT distribution. >>>>Since >>>>then, they've changed their data format to FIX, and I do not have the >>>>corresponding converter. However, I know that at least 2 people in this >>>>group >>>>have written such converters (fellows, please step forward), and validated >>>>them. >>>> >>>> >>>> -- >>>>You received this message because you are subscribed to the Google Groups >>>>"JBookTrader" group. >>>>To post to this group, send email to [email protected]. >>>>To unsubscribe from this group, send email to >>>>[email protected]. >>>>For more options, visit this group at >>>>http://groups.google.com/group/jbooktrader?hl=en. >>>> >>>-- >>>You received this message because you are subscribed to the Google Groups >>>"JBookTrader" group. >>>To post to this group, send email to [email protected]. >>>To unsubscribe from this group, send email to >>>[email protected]. >>>For more options, visit this group at >>>http://groups.google.com/group/jbooktrader?hl=en. >>> >>>-- >>>You received this message because you are subscribed to the Google Groups >>>"JBookTrader" group. >>>To post to this group, send email to [email protected]. >>>To unsubscribe from this group, send email to >>>[email protected]. >>>For more options, visit this group at >>>http://groups.google.com/group/jbooktrader?hl=en. >>> >>-- >>You received this message because you are subscribed to the Google Groups >>"JBookTrader" group. >>To post to this group, send email to [email protected]. >>To unsubscribe from this group, send email to >>[email protected]. >>For more options, visit this group at >>http://groups.google.com/group/jbooktrader?hl=en. >> >> >>-- >>You received this message because you are subscribed to the Google Groups >>"JBookTrader" group. >>To post to this group, send email to [email protected]. >>To unsubscribe from this group, send email to >>[email protected]. >>For more options, visit this group at >>http://groups.google.com/group/jbooktrader?hl=en. >> >-- >You received this message because you are subscribed to the Google Groups >"JBookTrader" group. >To post to this group, send email to [email protected]. >To unsubscribe from this group, send email to >[email protected]. >For more options, visit this group at >http://groups.google.com/group/jbooktrader?hl=en. > > >-- >You received this message because you are subscribed to the Google Groups >"JBookTrader" group. >To post to this group, send email to [email protected]. >To unsubscribe from this group, send email to >[email protected]. >For more options, visit this group at >http://groups.google.com/group/jbooktrader?hl=en. > -- You received this message because you are subscribed to the Google Groups "JBookTrader" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/jbooktrader?hl=en. -- You received this message because you are subscribed to the Google Groups "JBookTrader" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/jbooktrader?hl=en.
