Announcement

Collapse
No announcement yet.

Live trading orders - ensure better fills

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

  • Live trading orders - ensure better fills

    Hi, i have developed a strategy efs and now i am considering running the strategy live.

    My system uses limit orders and to ensure optimum efficiency and chance of getting 'fills' trading the ES i want the system to send out limit orders and have the ability to constantly cancel and pull bids.

    If i give some detail of how system works maybe someone can help me:
    - I get a signal bar, once this is in place i can technically place a limit order waiting to be filled (i don't know how i would do this as so far i only know that in backtesting only entries that were filled were entered).
    - The time for my order getting filled in real live trading will roughly be between 15-60 mins after the signal was given (sending resting limit order ahead of time will ensure better fill rate).
    - Obviously backtesting is different but i sometimes will have variables which will invalidate the original signal hence i want the system to pull/cancel the order and wait for a new signal.

    Is this even possible in esignal with Interactive Brokers plugin?? I simply wish to place my orders as soon as possible to get a better position in the queue and hence chance of better fill. How would i go about changing my efs script to achieve this??

  • #2
    kingmins,

    This is more of question for the EFS forum rather than the Integrated Trading. But generally speaking with EFS and placing order you'll want certain conditions to be meet before an order is placed. Just like Backtesting uses conditions such as a Moving Average Crossover to execute the strategy you would need to figure out what conditions you want to be meet before your strategy take affect. Hope this helps, please feel free to let me know if you have any other questions.

    AveryH
    eSignal Support

    Comment


    • #3
      Originally posted by eSignal_AveryH View Post
      kingmins,

      This is more of question for the EFS forum rather than the Integrated Trading. But generally speaking with EFS and placing order you'll want certain conditions to be meet before an order is placed. Just like Backtesting uses conditions such as a Moving Average Crossover to execute the strategy you would need to figure out what conditions you want to be meet before your strategy take affect. Hope this helps, please feel free to let me know if you have any other questions.

      AveryH
      eSignal Support

      I also think this is question for EFS forum and that is where i posted it yet it was moved - please Mods can you move this back to relevant forum (the question is purely based on EFS the broker aspect to question is minor).

      I already mentioned in my first post that my system generates a signal to place a limit order well in advance of price hitting said limit order. The only problem i am thinking is that in real live trading the system will not send out order as soon as a signal is generated (therefore ensuring better placement in queue for order fill) and then the ability to cancel order if something invalidates original signal is not possible.

      This is not indicator based strategy.

      Comment


      • #4
        If I'm reading this correctly your EFS is not placing orders as it should when the assumed condition is meet. If this is the case there can be several reasons as to why.
        1- Condition is not being met,
        2- Function you're using to place the order is incorrect.
        3- The Live broker you're using is not set as the default broker for the instrument type.
        The next question would be, do you get any type of error message with the order is suppose to trigger?

        It would help with troubleshooting if we could see the EFS. If you cannot post for any reason you could private message or email it to me at [email protected]. Also if you could let me know what version of eSignal you’re using.

        AveryH
        eSignal Support

        Comment


        • #5
          I think my question was misunderstood - the question was simply about 'limit' orders and how esignal would apply them when it comes to 'live' trading instead of backtesting.

          I am basically looking for generic broker signals. I wish to take my automated strategy live and only now have i learnt that esignal is not capable of doing this??? Also, read something about having to change my code so i no longer use 'Strategy.isLong' logic??

          My strategies involve limit orders for reference.

          Can someone please tell me how i can transform my efs backtesting strategy into a live trading fully automated strategy - the broker i wish to use is Interactive Brokers. Will i require 3rd party software to achieve this?? Can somebody with experience on this help me on my next step forward.

          Thank you

          Comment


          • #6
            kingmins,

            It is possible to have EFS create limit orders for you. This KB list all the function available generic broker functions available for eSignal.

            For Interactive Brokers to work correct with the EFS a slight modification was needed. The expiry requires and integer and not the sting value.

            Here are the changes for the expiry.
            Day orders = 1
            Godd til Canceled = 2.

            Below is a snippet of code that would be used to place a limit order back to IB. Remember the most important part of making sure the order is routed back to IB is going to be that Interactive Broker is set as the Default Broker Connection for whatever instrument it is your trading.

            buyLimit(Symbol, vSize, vPrice, sROUTE, iExpiry);

            buyLimit(getSymbol(), 2, close(-1), GLOBEX, 2);

            If you PM me your email address I can provide you with a copy of the GB Functions for IB that I did the testing with.

            Hope this helps.

            AveryH
            eSignal Support
            Last edited by eSignal_AveryH; 02-12-2013, 11:24 AM.

            Comment


            • #7
              Kingmins,

              You can't get feedback in an EFS on orders being filled (or not). That pretty much rules out having a completely automated trading system.

              Comment


              • #8
                This is a bummer of sorts; I have gone through the generic functions and I think a simple feedback mechanism that tells the efs scripts whether a buy/sell has been successful or not will greatly add value to automated trading efforts. Assuming that the generic broker functions work correctly for all the listed brokers in your website, I think a few more functions can be very helpful:
                1. isintrade()
                2. getMoneyInAccount()
                3. isSellSuccessful()
                4. isBuySuccessful()

                As I keep thinking, a number of other functions come to mind, but I think that the above four apis can really get the initial automated trading efforts going. One option I am considering is have lightspeed as my brokerage firm, develop the above four apis in BDK and rely on esignal's buy/sell functions. I don't want to use interactive brokers since they are too expensive for the type of trades I have in mind.

                Question to eSignal personal: are all the generic broker functions well tested... I am particularly looking at using lightspeed as my brokerage firm and do the generic broker functions work perfectly with light speed? Please confirm this.

                May be MB Trader is also another option I have at hand.

                thanks
                Last edited by p2mat; 03-30-2013, 05:06 AM.

                Comment

                Working...
                X