Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.
Frank
Members-
Content Count
398 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Articles
Everything posted by Frank
-
The one 'rule' I take from the above charts is that whether in a declining or rising volatility environment, the S&P futures tend to exceed [~0.7 times the VIX implied range] the vast majority of the time. There seems to be a minimum range that can be counted upon. This is nice information to have when looking for conservative but reasonable price targets. Here is current look (year to date):
-
todays journal entry looks at the nature of time-series data. Financial relationships are dynamic (they change over time). Short-term models are in a way better because they inherently have less 'error'. However, short-term models aren't stable because the less data you have, the less reliability and the less stability of the relationship under statistical investigation. So there is a trade-off. The points is that when looking at time-series data, you must examine the extent to which the relationships are changing. If there is instability in a relationship, any regression that represents the relationship will be unstable. There are statistical ways to deal with the problems presented by time-series data. However, I do not want to be too mathematical about this concept. Instead, I am just going to show the issues we face here. Compare these two time periods from last year. Note how this relationship changed dramatically.
-
todays journal entry is a video discussing this topic of range and using VIX to help decide direction for day and importantly, a way to think about price targets in relation to the odds presented in posts above: copy paste these 2 url addresses together -- (some quirk with the traderslab site forces you to embed it within the thread otherwise): http://www.youtube.com /watch?v=DRouKY4qyco&fmt=18 should read like this:
-
Where todays statistics fall in context of the distribution. Classic consolidation day after a very big move yesterday. Today, slightly less movement than implied by VIX, but right in line with the fat parts of the respective distributions -- and in line with the thesis of this thread.
-
try to post the context (or page number) and maybe can see more exactly what he is saying but here is first thought.. in Markets In Profile, his next book, he goes into the 'inventory positions' of the various timeframes. if the inventory positions are not in balance, say too many shorts relative to 'typical carried inventory' -- then price can auction up just due to lack of sellers (low volume). this happened yesterday actually. always go back to thinking about a brick and mortar 'auction'... except have to adjust thinking to a '2-way auction' --- like there all these participants at the auction that generally hold X or Y or Z levels of inventory. if they are all 'under their normal' (think mutual funds aren't supposed to hold more than 5% cash - say they are all holding 10% cash), then just a lack of selling can get them to start raising their paddles as they try to get cash levels back to 'normal'. they don't want to 'chase' the market higher so they back off as price goes up -- trying to be patient and keeping a lid on volume. dalton also makes the point that lows are often made on low volume -- and that it is the SURGE of buying volume that takes prices back up. that is also in markets in profile. I did a book review here in this thread on the 2nd book. The second book explains a lot of things more clearly --- Mind Over Markets is very poorly written from a literature sense.
-
todays journal entry takes a look at the condition that causes 'outliers'. it was stated above that closing more than 1.1x the VIX implied range was the rarer case (has been less than 1 in 5 days over last 7 years -- not a 'outlier' -- but just the rarer case). for the H contract (including today), there were 12 instances that achieved the condition of closing more than 1.1x the VIX implied range (close vs previous day close divided by the 1-day vix projection). All 12 days had the same thing in common --- directional conviction off the first 30-min bar. today for example, the low for the day was put in on the first 30-min bar and then price traded nothing but UP. The attachment below shows all the days during the H contract (including today) that achieved the >1.1x 'unusual' close distinction. All days from the H contract were ranked by close vs previous close... the box in red shows the bar number (out of all 14 30-min bars) that the final low or high was made (choose low if day traded up, choose high if day traded down). The idea here is to show the types of conditions that defines the 'directional conviction' that causes the outliers to the data set. we have one condition.
-
Elaborating on one thing today. We know that the historical record shows that the relationship between the daily return and that implied by VIX is heavily 'skewed' (Positive Skew). That is, on a frequency basis -- strong majority of days will fall short of what VIX implies. That said, there will be some days that show strong urgency and trade hard away from the previous closing price -- causing the 'fat tail' -- and hurting those traders that do not adjust to this. Still, as day-traders, the odds are in your favor to fade a move away from the previous close on a day in, day out basis. You just better be ready to not get run over (and hopefully participate) in a strong trending move. First chart is a text-book example of 'Positive Skew' The Next Chart is The Actual Frequency Distribution From 2002 - 2009 which is calculated as a ratio of Actual Daily 'Close-to-Close' return. Finally, for a case study. Here are the final results for the ES H9 contract which rolls tomorrow. (I did exclude a few of the christmas holiday days).
-
Wanted to talk about application of this concept. The play today was long -- for reasons other than what this thread is about -- this thread is about relating VIX to intraday range. An application using this long assumption would be to 'stay long biased until XX points of range are achieved' -- and then stop trading and wait for the next day to create new odds-based price targets. Odds over the long run are that market does not close on one side of its range -- but it will do it sometimes. Better to get in, get your piece of the market and then get out. For tomorrow: VIX today closed ~44. ES price close: 715.75 1-day base case median expectation: ES will do about ~20 pts of intraday range When new information arrives tomorrow, adjustments to this baseline forecast will become appropriate.
-
Wanted to continue this thread as kind of a diary with periodic updates. ok, coming into the day the pre-open projections were Monday Closing VIX: 49 Monday ES Close: 675.50 VIX 1-Day Estimate = 3.09% = 0.49 / (252^0.5) 'Expected' Normal Range: 675.50 * 1-Day Estimate = 20.9 pts Tuesday saw a gap up -- opening at 690.00 The early low was put in at 688.50 and price traded up hard Now assuming a strong up day, an initial price projection for day would be 688.50 + 20.9 pts = ~709.50 Trading to that level would be consistent with a 'median' expectation. Price will auction higher than that 50% of days so you need to make a judgment how strong the price action is. Today saw very strong price action, an 'adjusted' estimate could therefore be made to something higher and be consistent with the strong move up. turns out that 10% of days do see 1.8 or better type of range. (7 year data 2002-2009). You could therefore try to rationalize up to maybe 1.8x 21 pts = 37+ pts. off the early low of 688.50, that works out to 726. But let's think about this from the close to close perspective for a cross-check. The distribution of closes vs previous days close vs VIX is skewed. The properties are less predictable given this skew. For this reason, let's use the intraday as primary source for price projections, and only use close to close projections as a 'sanity check'. We know that 80% of days close < 1.2x VIX implies range from the previous close. But here we have a 'gap and go' day with extreme urgency of buyers (open-drive in Market Profile). You must respect the fact the the market is trending. Turns out that a 'top 10%' type of day from close to close is approximately 1.5x the VIX implied range. So upside 'aggressive' projection using 1.5x is 20.9 x 1.5 = ~31.50 pts. Using the previous close at 675.50 and 31.50 pts gets 707.00. Therefore, this sanity check argues that the initial 'intraday range' projection be made more conservative. Somewhere lower than 726 seems appropriate for 'upside case'. But 707 off an intraday low of 688.50 is < 20 pts ... in a market showing urgency, that is too low as our 'primary' projection tool is the intraday range. Perhaps a top quartile projection is 'reasonable'. Top quartile works out to 1.5x VIX implies = 31.35 pts. What happened? Final pit session range was 33.25 pts. 33.25 Pts works out to ~1.6x VIX implied intraday range Close was 715.75 vs 675.50 previous close = +40.25 pts 40.25 pts / 20.9 VIX implied = 1.9x VIX implied close to close move. These numbers are high -- but to some extent, they are completely consistent with the days action. Note how the market did slow down greatly once getting up towards 715. A bit of gravity took hold once got up into 'outlier' zone.... Where on the distributions does such action plot: This analysis is just to show a framework for consideration.
-
So let's put some hard statistics to work within this VIX implied framework - this data is for the past 7 years and includes 1780 days in the sample: 1) Expect the Final RANGE for the day (pit-session only) to get at least >0.8x what VIX implies. If You expect this for all days, you will be right about 80% of time (this stat might be more powerful than as stated given a decent % of the days that fall short are affected by days such as 'day before FOMC meeting', day before holiday etc...) 2) Expect the market to CLOSE less than 1.2x the VIX implied move >80% of time. That is, the closing price vs previous close will have a bit of gravity aspect to it. Summary: The above are guidelines and somewhat at odds with each other. On the one hand, you expect a MINIMUM range and would not be 'surprised' if range extended to 1.4x the implied range (that implied by VIX). On the other hand, and close that goes much more than 1.2x the implied move of VIX and you start to enter 'outlier status'. Let me state again that frequency distributions are good for short-term traders -- as you are playing a tendency that occurs MOST of the time. The key is to find ways to trade WITH the statistical tendencies -- but implement risk-controlled strategies that allow you to participate in the statistical tendencies while not getting caught on the wrong side of the 'outliers.' This should be used as a mental framework only -- and certainly used in conjunction with other concepts in mind.
-
today a good example of what 'fits' the general concept I was trying to relay. The market traded a wide range and recovered late towards the previous days close. Using a VIX of 50 and Thursdays Closing Price of 686.50, a 'normal' day would be a range of 21.5 points and a close back towards the previous days close off the afternoon high or low. Conceptually, this is what happened as from an option traders view, you got paid to sell puts after doing a lot of range. 686.50 Previous Days Close 688.50 Final Close + 2pts Final Change after trading as low as 665.75 (Low of Day)
-
alex, can you post a chart or two of that? also, how do you time this indicator into a trade? thanks for the interesting post.
-
Did some more work on this topic. As previously stated, the VIX is essentially a forecast by market participants about the near-term return volatility. But as I look at the data for the past 7 years, you can see the relationship in the red bars below. Red bars are calculated as follows. Project the close to close volatility (absolute return) based on the previous days close and closing VIX. Then take the actual return and create a ratio of actual vs implied. Do this every day over past 7 years and show: on how many days does it close where VIX implied (absolute so either up or down). This is a frequency distribution --- so what this implies is that the market has lots of 'recovery' days back towards previous days close --- (since median ratio is much less than 1.0). Thus, it also implies that despite the many recovery days that only get 1/2 as far as VIX would imply, you get a small number of LARGE moves that go more than VIX implies. You won't see this in a frequency distribution because frequency is not going to calculate that. Frequency is good for intraday traders because you don't care so much about the outliers (if you are just short-term trading and you use stops). You care more about taking pieces out of the market on all those days where it does what the odds say it will do. I like to think about this like an options trader might. An options trader gets a premium to take 'fat tail' risk. So, once the market has done its range (the move away from previous days close), you can think of it as an options trader selling options premium at inflated prices and playing for the recovery (as it does on majority of days). The problem for option traders comes when you get those small number of days with very large moves -- then the options go in the money and trader loses all those accumulated profits. The way to think about this conceptually is -- figure out your directional bias -- but be wary of late reversals back towards the previous days close once the market gets extended. ie, expect the 'range' to get hit and don't be afraid to go for big win when all lines up --- but at some point, get out -- odds are that on many days, your gains will evaporate if you attempt to hold on until the close. http://www.traderslaboratory.com/forums/attachment.php?attachmentid=9666&stc=1&d=1236347055
-
This link will disappear in a few days but for anyone who is interested in this cool new market replay feature: http://tinyurl.com/cqcyhu http://www.quickfilepost.com/download.do?get=f46fd5a134852c50286de17945bce1b3
-
ok, will update this to both possibly help others and maybe be able to re-read this next time it upgrades to remind me of possible fix. basically, the issue was that somehow the new platform could not read one of my new indicators (it had bug, though it worked in the last platform just fine). the way to fix this was to go into the 'My Custom Indicators' folder in your 'My Documents' folder and go into the sub-folder called 'Import' --- this is where OEC stores your indicators to re-load them... if you move your indicators out of this file, the plug-in then did load. you could then add your indicators back one-by-one until you figure out which one had/has the bug. net net, not hard to do.
-
thx brownsfan, so is your custom indicator on now (with the 3.3 platform)?? this custom indicator is absolutely crucial functionality for me and is a deal-breaker if they drop the ball on this one. I have tried their support people and got someone -- and told them they better get on this ASAP -- cause dropping the ball during a crucial upgrade is a pretty serious offense. Their best people should not be home sleeping. We'll see how it looks come the morning. Hopefully, they will have figured it out by then.
-
Let me be more specific --- the 3.3 platform did download and is live -- however, it loads without the imported indicators plug-in adn when I download the plug-in that enables your own custom indicators, the platform just hangs on the 'Loading' screen and never 'gets there' --- just stuck loading forever. so, my question is -- has anyone been able to get the custom indicator download plug-in to work with the new 3.3 platform??
-
I downloaded the new platform tonight but it is taking one hell of a long time to boot.. stuck on 'loading' --- anyone actually up on the live platform that can shed any light on how it went??
-
Not sure I will use this but posting the links to make it easy to follow: http://www.openecry.com/includes/pdf/softinstall_instructions/MarketReplay.pdf you need to download a plug-in to enable this feature and configure it. then need to re-boot the OEC platform for it to show up. the download plug-in is here: http://www.openecry.com/traderstoolbox/plugin_download.cfm (click on the Live green arrow and follow the menu)
-
FYI, from the Custom Indicators User Guide ( http://www.openecry.com/includes/pdf/softinstall_instructions/CustomIndicators.pdf ) pg 39 Functions The plug‐in provides the ability to add its own EasyLanguage functions. In contrast to TradeStation, the body of functions is a part of the same file as the body of indicator. To separate the code of the indicator and the code of functions, use the directive #function name of function. One indicator file contains the unlimited number of functions. Example: input: Price(Close); Plot1(RoC(Price), "RoC") #function RoC inputs: Data(numericseries); RoC = (Data - Data[1])/Data*100; EasyLanguage code editor also moves functions from another editors. Copy the code of function from elsewhere and execute the command menu Add Function. This command determines the name of the function and inserts it with the #function directive to the end of file. Library of EasyLanguage Functions The user creates an individual library of EasyLanguage functions. Save an EasyLanguage file with an extension .lib.el (for example, MyFunctions.lib.el). All files with this extension are treated as parts of the common library. If the indicator contains a call of some function, the EasyLanguage compiler searches it in this next sequence: 1. Internally supported functions of the compiler (Refer to List of supported EasyLanguage functions) 2. External functions that declared with “external” directive 3. Functions of the same file as the code of indicator (Refer to Functions) 4. Functions of *.lib.el files
-
question for whoever has upgraded: is there any issue with your imported personally written indicators.. I have a decent list of indicators written. Do they go over to the new upgraded platform automatically? thanks frank
-
I am exploring market delta and was curious if anyone had already thought through the issues in OEC relative to MD. Apparently, MD is relatively straightforward to code but there are issues in Tradestation with MD because TS offers only a snapshot of the bid and ask and not a full history of activity 'on' the bid vs 'on' the ask. Does anyone know if OEC keeps a history of this that can be referenced in EasyLanguage code on the OEC Trader platform? Ultimately, I would like to see a histogram with the net delta on a 5-min timeframe (all volume on ask - all volume on bid) = Net Delta thanks for any comments/help, frank
-
Recent Data: The ratio listed represents the relationship between the actual range relative to the projection based on the previous closing VIX.
-
Review for today: After the large 46pt range from tuesday was followed by low range on Feb 11, was expecting a better high to low range today and we got that. I saw 45 VIX and thought this might mean 20-30 pts of range. Final range was 31.25 pts.
-
I wanted to start a discussion on this topic of thinking about the intraday high to low range of the S&P futures and the level of the VIX. I am not an options expert by any means -- but have spoken to some option market makers about this and here are some thoughts. Any options experts that would like to chime in would be great for discussion. 1. VIX and range should be related VIX is 30-day implied volatility of returns. The term 'returns' implies that it is measuring the 'closing price to closing price' volatility. So there is a difference here -- 'close to close' is different than 'range' (ie, the high vs the low). Nevertheless, the ranges will likely be affected by the same things that are causing 'close-to-close return volatility'. 2. VIX Math Basics: VIX is stated as an annual percentage To convert an annual VIX percentage to a single day percentage, the math is to take the square root of the number of trading days in a year. ie 252^(1/2). Divide VIX by this number (~15.9). example, a 30 VIX equates to a single day return volatility of 30 / (252^0.5) =~1.89% This would be the expected average daily % change over the next 30 days. You can re-arrange this formula and ballpark an implied volatility from daily returns. For example, if price has varied by 1.89% -- then you have" (252^0.5) = ~15.9 .0189 x 15.9 = 30 Note, VIX is a weighted average of the current month and next month options volatility. This calculation is done every day such that you are always comparing apples to apples (ie, if you used only the near-term contract then it wouldn't be a consistent 30-day-forward looking calculation). 3. How does VIX do at predicting the forward 30-day close-to-close return volatility? I am not going to go into this as this is a lengthy discussion for which I am not fully qualified. But basically, it does a fair job. 4. How does VIX do at predicting the NEXT DAYS range? I am not going to present all the data here but here are some highlights: over the last 7 years: the S&P futures have achieved the implied range of the previous days closing VIX 54% of the time. In 2008, a year of ever rising VIX, this figure was 65%. The lowest year was 2007 at 42%. Now, let me be clear that this is just a 'thought piece' and not supposed to be used for hard and fast rules. A few ideas: Expect the market to do a range that falls between 0.7 and 1.3x what VIX is implying much of the time. About 5% of the time, the range has been > 2.0x what VIX implied (these are the outliers). About 30% of time, market will do 1.4x or more what VIX implied for a range. (these numbers are based on historical 7 years and should not be thought of as precise forecasts of the future). I have done some quick EasyLanguage code to present a working idea for an indicator for using this concept (note you input the previous days closing VIX -- or some estimate of what you think is the 'right' forward VIX estimate is --- and it spits out the projections to track against the developing high-to-low range): EL Code: inputs: VIX(46); value1=squareroot(252); value2=(VIX/100)/value1; value3=closed(1)*(value2*1.0); value4=highd(0)-lowd(0); value10=closed(1)*(value2*1.0); value11=closed(1)*(value2*0.7); value12=closed(1)*(value2*1.3); if time > 934 then Plot1(value4,"+Range"); if time > 934 then Plot2(value10,"1.0"); if time > 934 then Plot3(value11,"0.7"); if time > 934 then Plot4(value12,"1.3");