Announcement

Collapse
No announcement yet.

Automated Trading with IB

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Automated Trading with IB

    Well,
    it's been a long long time since the heyday and promise of automated trading with IB. I remember the excitement when we were discussing this topic on the Yahoo boards before we got this nice esignal message board.

    I keep waiting for some information to show up, but alas, all I can find is this link:

    http://forum.esignalcentral.com/show...=&threadid=437

    Kind of pititful, actually.

    The one and only example (at the bottom) even has a typo (IBrBroker instead of IBBroker).

    There is mention of declaring a global variable:
    var trade = new IBBroker

    before trying to issue the trade.buy and trade.sell commands, but putting that line into the top of an efs just generates an error.

    I suppose I'm just too dense, unable to truly understand the simplicity of the system. I'm sure there is a lot of information out there, but my poor searching skills have been unable to find this information on the boards or in the EFS Help Center.....shame on me.

    What would be just dandy is if Esignal would take 10 minutes and just type up a simple skeleton, a tiny little efs, an itsy bitsy teenie weenie little example of how to map an efs to see/talk to IB.

    Can it be that hard?
    Or, if Esignal is now backtracking and doesn't want the liability of allowing this particular function.........Then JUST SAY IT, and we'll get on with other things. But something, ANYTHING, would be better than this roaring silence.

    Thanks.

  • #2
    Hi Twitch,

    Thank you for your post. Also, thank you for pointing out the typo, I've now corrected it.

    Our goal is to provide the tools for our clients to develop their own automated trading system. Due to liability reasons, we are unable to provide a fully programmed trading system at this time. That is not to say that we won't at some point in the future.

    For clients who are not JavaScript programmers and need help in developing a trading system within EFS, we do have relationships with 3rd party consultants that can be contracted to do the programming. Here's a link to our EFS Help Center & Library where you can find a page on the left hand side menu for our EFS Consultants.

    Regards,
    Andy

    Comment


    • #3
      Hi Andy

      With your permission i like to say something that I have discovered surfing the Esignal BB forums.

      Among the audience there is a (small) part of people with the strange habit of "asking for free and taking for granted"
      On the other side there is a number of great guys "b....ng their a....." in providing EFS and others script development or adjustment for free to the audience.

      Honestly speaking something sounds strange: and in my personal, humble opinion is the attitude of "the taking for granted and for free" and even complain.......

      Once more thanks to all the wonderful guys that provide me for free in a flash with Tools that in CQG I would have paid not less than 250$ per month.
      Or that would even ever and never exists.

      Cordially

      Last edited by fabrizio; 06-25-2003, 03:34 AM.
      Fabrizio L. Jorio Fili

      Comment


      • #4
        EFS help and development...

        Fabrizio,

        I completely understand your comments and would like to add the following...

        I work for a few clients (developing EFS scripts to their liking - graphics, function, back-test and RT automated trading). Most of these clients know that the time it takes to develop their ideas into a complete system is worth something.

        There are other people here on this BB that I try to help for FREE. Some of them are asking simple questions and just need a "little push" to overcome a "problem" they are having with their EFS code. In this instance, I try to make a judgement as to the difficulty/time required to assist these people.

        If it is going to take me 4~5 hours to develop something for someone, then I'm likely to charge for my time. If it is something I have already developed and not infringing on my client/developer relationship (proprietary code), then I might submit it to try to help.

        Generally, there ARE a bunch of really good people here that try to assist others. I could name probably a dozen.

        I think the difference between developing it yourself and having someone else developing it for you lies in the following areas...

        1. How much time will it take you to develop your code?
        2. How quickly do you want it developed and functional?
        3. Are you willing to work through the issues of coding your system (advanced or not).
        4. Can you use the "Formula Wizard" to create a proto-type?

        In most cases, I can return a piece of code to someone within abour 48 hours (or less - depending on the complexity). I'm sure others can do the same thing. We, the sometimes paid developers, are trying to provide a service to assist people. We give them what they want (quickly and easily) so they can concentrate on improving the system.

        Of course, I still receive great joy in creating things that are complex and unique - like my "speech system".

        Just think about all the code that will be available to esignal in another year or two - systems, indicators, graphics tools - EVERYTHING.

        If you have any feedback that can assist me(all of us) in improving my(our) abilities/services, please let me(us) know.

        Best regards,

        Brad
        (Code-pusher *at-large*)
        Brad Matheny
        eSignal Solution Provider since 2000

        Comment


        • #5
          Proto-typing IB Auto-Trade Code..

          Twitch,

          If you need any help developing an EFS to automatically trade with IB, I can help. Simply email me with your questions/comments and I will provide some answers.

          I have developed well over a dozen systems (for myself and clients) that automatically trade with IB.

          Best regards,

          Brad
          Brad Matheny
          eSignal Solution Provider since 2000

          Comment


          • #6
            Automated trading

            Brad,

            I have been towards the development of an automated system for the emini since the end of last year. The biggest thing holding me back has been the time required and the limited information available. I really appreciate all of assistance you and other contributors to the bulletin board and file share areas have provided. While I do not participate actively in the groups due to my limited knowledge, I routinely comb through the bulletin board and file share areas for those "golden nuggets" of information and insight. As a result of this help, I have developed numerous indicators on different time frames, learning the entire time. I am currently coding an efs which uses dynaorder dlls to comunicate with the IB Trader Workstation (TWS). This package appears to be fairly robust. I have activated the dynaorder paper trade station and am getting pretty excited. edit - dynaOrder is no longer maintaining this software as of 9/2/2006

            My initial approach was to use market orders followed by trailing stops. I would monitor the trade and periodically adjust the trailing stops using parabolic SAR info to tighten the trailing stop towards the end of the trend. I also will monitor my profits and losses and have the efs liquidate my positions and stop trading if my losses become too great. Do you have any advise with using this approach?


            Regards,

            Steve
            Last edited by ; 09-02-2006, 05:12 PM.

            Comment


            • #7
              Position Management...

              Steve,

              I have touched on this subject a bit. Here is what I have done with code I have...

              1. A Loss Counter - how many losses were taken over a given trading day.
              2. A Total Loss Accumulation - how much was lost over a given trading day.

              Loss switch - One of the above or NONE.

              If you were going to try to develop something that tracked long term LOSS, then I suggest using a FILE. It would make sence to me that you could easily create a routine that opens a unique file and records the initial capital, number of trades, number of winners, number of losers and remaining capital. You could also include MAXIMUM $$ LOSS in the file.

              Then, when you code first loads (in premain) open the file and read the variables into global variables. Now you have them stored in memory and can manipulate them at will.

              Every time your automated system takes a trading action, record the information (after you update the variables) to the file.

              This way, your system can keep a running total for everything it does. You could easily create unique names for any system you are running.

              Taking this to another level - you could create a LOG file that records the actions... something like...

              recordlog("es breakout sys v1.txt","Buy@market :"+close());

              This way you can retrace the actions of your system.

              If you need help with the file routines, I can try to help. I have created a file based system that loads specific price levels to be used on the current chart for trading (based around complex trading logic). It is not that hard once you get into it...

              A few things you will need to look into...

              parsefloat() - converts a string to a number.
              split(","); - splits a line based on delimiters
              File Functions (reading and writing)...

              These are the basics of the file system because most of the time you will be using ALL of some of these functions.

              Hope this helps.

              Brad
              Brad Matheny
              eSignal Solution Provider since 2000

              Comment


              • #8
                Hi Andy.

                I saw your post in the Esignal forum and thought you might be able to help.



                I am evaluating Esignal EFS and Tradestation.



                I am a long time programmer and can handle the EFS/JAVA language except for the lack of documentation on its functions. I have searched the forum and the entire web site trying to find documentation on ALL the functions in EFS such as the trade.buy() function. Alas, even the online live help cannot direct me to the documentation. They suggested that I try the forum.



                I searched on the forum for trade.buy and found only one reference in all the rooms. How does anyone become fluent without documentation? Can you point me to the complete reference manuals and docs for EFS? Any help would be greatly appreciated.


                Thanks,

                Bill Thames

                http://www.visions-quest.com/

                [email protected]
                Wiliam Thames

                Comment


                • #9
                  Hello Bill,

                  You can find a document on EFS for IB in your \eSignal\Docs\ folder called IBEFS.doc. You can find more EFS help documentation in our EFS Help Center & Library. There is also a Help File tool put together by Chris Kryza that you can download from his file share group, Specialty Scripts. Hope this helps.
                  Jason K.
                  Project Manager
                  eSignal - an Interactive Data company

                  EFS KnowledgeBase
                  JavaScript for EFS Video Series
                  EFS Beginner Tutorial Series
                  EFS Glossary
                  Custom EFS Development Policy

                  New User Orientation

                  Comment


                  • #10
                    Is more functionality in this area on the way?

                    Specifically, the ability to place stop orders and OCA groups of orders? Also, the ability to cancel an order?

                    I know you could use your EFS code to monitor and exit, thus simulating a stop, but this will require esignal and TWS to be active at the time. Placing the stop order within TWS guarantees it is there even if your machine goes down or you lose connectivity.

                    The inability to cancel an order seems like a real deficiency as well.

                    Thanks.

                    Comment


                    • #11
                      Why is it so difficult for eSignal to post a simple RT working script (with OCO) for its IB plug-in? The demand is certainly there...

                      Simply baffling!

                      Cheers.

                      Andrei

                      Comment


                      • #12
                        Hello Andrei,

                        I'll try to put together some help examples in the near future. I can't make any promises as to when, so if you are in need of immediate development assistance for your personal trading system you may need to contract one of our EFS Consultants.
                        Jason K.
                        Project Manager
                        eSignal - an Interactive Data company

                        EFS KnowledgeBase
                        JavaScript for EFS Video Series
                        EFS Beginner Tutorial Series
                        EFS Glossary
                        Custom EFS Development Policy

                        New User Orientation

                        Comment


                        • #13
                          Any response to my questions?

                          Am I to infer that this functionality may already exist but is just not publicly documented? Is that why you referred to the consultants?

                          Personally, I'm comfortable with the code and don't need examples, just documentation of the functions and how they are used (if they exist).

                          Thanks.

                          Comment


                          • #14
                            I'm currently using an EFS with inbuilt orders directly to IB, using the IB efs formulas.

                            However when I have the EFS running and i'm logged onto IB, i get a esignal feed that flicks on and off and the efs pauses all the time and does not run smoothly. When I disconnect the IB api it works fine the efs and esignal have no probs. But manual trading takes up to much time and it can be stressful watching you money go up and down all day.

                            I can't understand it - could it be my PC, I have a DSL connection + 512M ram with a P2 processor, the efs works and fires the orders to IB it just seems to cause a major slowdown when both connected together???

                            Any ideas whats causing these probs??

                            Regards
                            Spam

                            Comment


                            • #15
                              Thank you!

                              It's been 2 months I've been ranting for a simple RT IB example. Let's hope it won't be another 2 before we got you to fulfill your promise!

                              Cheers.

                              Andrei

                              Comment

                              Working...
                              X