How do you capture the open price accurately?

This is a discussion on How do you capture the open price accurately? within the First Steps forums, part of the Reception category; Hello all! This is my first post, and I know of T2W's vast knowledge base of the users. Thanks in ...

Reply
 
LinkBack Thread Tools Search this Thread
Old Feb 17, 2011, 5:39am   #1
 
8 Posts
Joined Feb 2011
How do you capture the open price accurately?

Hello all! This is my first post, and I know of T2W's vast knowledge base of the users. Thanks in advance. On to the question:

I developed a trading system that requires entering trades at the open of the trading day. I've implemented the system with an API through Trader Workstation with Interactive Brokers, and I need to know what the best method for capturing open prices is. My current method for entering a trade at the open is as follows:

1. Before the market opens, transmit a market buy order (for example) for 100 MSFT at 8:42AM Eastern Time.
2. The system tells me that my order will be held until the market opens at 9:30AM. No problem, this is what I want.
3. The market opens, but my order fills a minute or so later (trade fills at 9:31:08AM for example). The fill price is worse than the open price (typically).

I understand that market orders are filled on a first-come first-serve basis with most exchanges (I specify these orders to be SMART routed), so I'm not surprised by the lag in time. However, the execution price is usually worse than the opening price of the day. (for example MSFT opens at 27.25, but I end up getting filled at 27.34 on a long trade)

I've heard of the arrival price algo that IB has, but there are so many order types to choose from. I'm not sure what is best. It would be fantastic if I can pick my stocks before the market opens, and guarantee that my trade entries will fill at the open price for the day. Does anyone know how best to do this?
wheresthejelly is offline   Reply With Quote
Old Feb 17, 2011, 7:47am   #2
Joined Sep 2010
Re: How do you capture the open price accurately?

You have asked your broker to execute your Market Order at the most volatile time of the day at 9.30am.
You have basically given them the right to tell you that they filled your order at any price they like within that minute. Expect to get screwed over. Because they can screw you with that type of Order.

Alternatively, if you still want to be executed at the Open of trade, then accept that you will invariably get filled at the worst price within that first minute. You are a gift of around 10-20 points per trade to the broker every day you trade.
traderman1 is offline   Reply With Quote
Old Feb 17, 2011, 9:21am   #3
 
donaldduke's Avatar
Joined Jan 2004
Re: How do you capture the open price accurately?

It shouldnt take that long to fill.

If you were to place a manual market at 9:30 does it take over 1 minute to fill?
donaldduke is offline   Reply With Quote
Old Feb 17, 2011, 3:57pm   #4
 
8 Posts
Joined Feb 2011
Smile Re: How do you capture the open price accurately?

wheresthejelly started this thread
Quote:
Originally Posted by donaldduke View Post
It shouldnt take that long to fill.

If you were to place a manual market at 9:30 does it take over 1 minute to fill?
I tried placing a market order for 50 MSFT at exactly 9:30AM. I basically hit the transmit button right when my atomic clock struck 9:30AM. The order filled at exactly 9:30:10AM at 26.96. The reported open price for today is 26.96, so that seemed to work.

However, I want to have Trader Workstation do this for me without needing my presence. I tried the "Arrival Price" algo on 3 different stocks and got mixed results. One filled at a better price than the open, but two filled at worse prices than their respective opens.
wheresthejelly is offline   Reply With Quote
Old Feb 18, 2011, 10:53pm   #5
Joined Sep 2010
Re: How do you capture the open price accurately?

Quote:
Originally Posted by wheresthejelly View Post

However, I want to have Trader Workstation do this for me without needing my presence. I tried the "Arrival Price" algo on 3 different stocks and got mixed results. One filled at a better price than the open, but two filled at worse prices than their respective opens.
That will work better. On average, the pluses and minuses will negate each other out over the bigger number of order fills.

If you are trying to get the exact Open price on every order, you are trying to be the FIRST order to be filled EVERY time. (It won't happen! Especially in the more liquid stocks)
traderman1 is offline   Reply With Quote
Old Feb 19, 2011, 4:54am   #6
 
8 Posts
Joined Feb 2011
Re: How do you capture the open price accurately?

wheresthejelly started this thread
Quote:
Originally Posted by traderman1 View Post
If you are trying to get the exact Open price on every order, you are trying to be the FIRST order to be filled EVERY time. (It won't happen! Especially in the more liquid stocks)
I agree traderman1. I know I am small fry in the market, and there's no chance I will be the first trade of the day. However, is there some way to have Trader Workstation observe the opening price and then 0.002 seconds later, place a limit order for that exact price?

For example, the first trade at 9:30:00AM of the day for MSFT is recorded as 26.53. I could come in 1 minute later (because I'm slow like this) and manually set a limit order for 26.53, but I would love for TWS to do this automatically. Is this what the Arrival Price algo does? I set the "beginning time" criteria to 9:30:00AM for my tested trades, but I plan on trying 9:29:59AM as well to account for latency.
wheresthejelly is offline   Reply With Quote
Old Feb 19, 2011, 5:07am   #7
Joined Sep 2010
Re: How do you capture the open price accurately?

Quote:
Originally Posted by wheresthejelly View Post
I agree traderman1. I know I am small fry in the market, and there's no chance I will be the first trade of the day. However, is there some way to have Trader Workstation observe the opening price and then 0.002 seconds later, place a limit order for that exact price?
.
Not that I know.

Quote:
Originally Posted by wheresthejelly View Post
For example, the first trade at 9:30:00AM of the day for MSFT is recorded as 26.53. I could come in 1 minute later (because I'm slow like this) and manually set a limit order for 26.53, but I would love for TWS to do this automatically. Is this what the Arrival Price algo does?
Why would you want to set it to the Opening Price AFTER the market has opened. Surely you would want to buy or sell at the NEW price IF it has moved in your favour.
If it has moved against you then you would not want the Open price

Quote:
Originally Posted by wheresthejelly View Post
I set the "beginning time" criteria to 9:30:00AM for my tested trades, but I plan on trying 9:29:59AM as well to account for latency.
Tell us how that works after you have tried it. I expect that it will simply be placed in the queue of orders at the Open and filled within the first minute.
traderman1 is offline   Reply With Quote
Old Feb 19, 2011, 11:30am   #8
Joined Sep 2008
Re: How do you capture the open price accurately?

A limit order will never guarantee you a fill. No matter how fast you place your order the only guarantee fill is a market order and I don't recommend it on open. There is no way to get the exact opening price every time for numerous reasons. You really need to understand how the markets opens before you try to get your orders filled.

Peter
wackypete2 is offline   Reply With Quote
Old Feb 19, 2011, 8:21pm   #9
 
8 Posts
Joined Feb 2011
Re: How do you capture the open price accurately?

wheresthejelly started this thread
Quote:
Originally Posted by traderman1 View Post

Why would you want to set it to the Opening Price AFTER the market has opened. Surely you would want to buy or sell at the NEW price IF it has moved in your favour.
If it has moved against you then you would not want the Open price.
Ideally, I would like to be the first trade in for the day. However, that's not possible. I'm developing a system that requires entering trades at the open price. I've been trading this system for a month now but only with Market orders submitted at the open. The slippage is deadly, and slippage is the only thing keeping my system from being profitable.

I followed my simulator trade-for-trade and dollar-for-dollar this past month trying to mirror its trading decisions and position sizes. The funny thing is my simulator came out profitable, but I lost money. I then compared the entry and exit prices for my trades vs. my simulator's trades and noticed HUGE slippage at the entry and exit prices. So, I'm trying to fix this. I can live with slippage working in my favor but not against me.

traderman1, you just brought up a great point that if the stock price goes against me straight from the open, I should not enter. For example if my system wants to short MSFT at the open, and MSFT opens at 26.96 and then immediately trades up to 27.04, I would be glad to short at 27.04 because it's a better entry price than what my simulator would obtain (it would obtain the open price of 26.96). The order type that would operate like this is the "Trailing Limit if Touched", which is offered in Trader Workstation:

http://institutions.interactivebroke...mitTouched.php

I will try all these order types and report the results on Monday some time after the US stock market open:
1. MKT with time in force set to "OPG" ("opening" in Trader Workstation-speak) and a condition of time >= 9:30:00AM. Will try 3 different positions.
2. MKT with "Arrival Price" algorithm with time between 9:29:59AM and 9:40:00AM and urgency set to "Get Done". This is supposed to guarantee me the market price at the time I placed the order. Details: http://institutions.interactivebroke...ib_entity=inst I will try this on 3 different positions.
3. Trailing LIT with trail amount set to 0.1% of stock price. will try 3 different positions.
wheresthejelly is offline   Reply With Quote
Old Feb 20, 2011, 12:32am   #10
Joined Sep 2008
Re: How do you capture the open price accurately?

You don't know what you are doing if don't understand why your simulator is profitable but you are not. Time is not the issue.

NOWHERE on Interactive Brokers page does it say you are guaranteed any fill or price no matter what settings you use. The GET DONE is an urgency feature, NOT a guarantee feature.

Also, if I am reading it right, you could get filled much much later at the opening price if/when the market crossed that price later in the day?

The speed of your orders is limited heavily by the platform you are using. This is not a shot at IB, but you are using a platform or API that submits orders to the IB servers first, then IB routes the order. This is how most retail platforms work. You would need a direct access platform for speed.

You obviously are putting in the time and effort needed to be a profitable trader, so kudos for that. Let us know how you make out for 1 week. My guess is you will not get the price you are looking for right at the open on any consistent basis no matter how hard you try.

Peter
wackypete2 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Similar Threads
Thread Thread Starter Forum Replies Last Post
Graph. Last price - today's open price rahul100 Trading Software 8 Nov 9, 2010 6:39pm
Significance of the OPEN price of the day scipio Technical Analysis 1 Jan 9, 2006 3:22pm
DAX Future open price Finlayson Indices 15 Oct 25, 2003 12:28am

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)