StockFetcher Forums · Filter Exchange · historical volatility<< 1 2 >>Post Follow-up
freshpotato
36 posts
msg #56369
Ignore freshpotato
11/3/2007 9:53:02 AM

Hello,

This is my first post here, I just bought my membership a few minutes ago :)

Can someone please help me with a filter that can compare todays volatility against let say one year. I am aware of the Historical Volatility command, but don't know how to do the comparison.

I appreciate all help

Have a nice day


freshpotato
36 posts
msg #56370
Ignore freshpotato
11/3/2007 10:05:42 AM

Ok, let me tell you what I will use this filter for so perhaps somebody else can take advantage of it ass well.
I want to search for good butterflies trades, and to do that I will try to use the range filter that cames with SF 2.0. If anybody has another good way to search for rangebond / trending stocks please let me know. I will go through the manual today and see what I can find.

For all of you that criticizes the spelling on the other forum post, let me just inform you rigth away that English is not my native language so we can focus on the trading instead of the harassing, I'm sure many of you will agree with me :)

alf44
2,025 posts
msg #56378
Ignore alf44
modified
11/3/2007 11:48:55 AM

"Can someone please help me with a filter that can compare todays volatility against let say one year"

-------------------------------------------------------------

freshpotato,

First of all welcome...AND...your English is just fine.

You even spelled "potato" correctly...which makes you a more accomplished speller than Dan Quayle. lol

But I digress !

As for your Historical Volatility request, I'm not 100% clear on what you want...BUT...this is how I use the Historical Volatility measure. I look for periods where the Historical Volatility of the last 6 days is 50%...or LESS...than the Historical Volatilty of the last 100 days !

This calculation helps me see when a stock MAY be going through a period of Price Contraction. Often, stocks will explode out of these LOW volatility price contractions. Especially when they are accompanied with Narrow Range Days (like NR4s & NR7s & Inside Days etc...) !

-------------------------------------------------------------

The code for this simple measure is :

Fetcher[ /* Historical Volatility Ratio Calculation (compare a 6 day to a 100 day Historical Volatility) */
set{HistVol6, Historical Volatility(6,1)}
set{HistVol100, Historical Volatility(100,1)}
set{HistVolRatio, HistVol6 / HistVol100}

set{HVRatio, count(HistVolRatio is less than .51, 1)}

Market is NASDAQ 100

add column separator
add column HVRatio {vrat.}
add column HistVolRatio
add column separator

draw EMA(10)
draw EMA(30)

sort column 6 descending

chart-time is 3 Months
]



-----------------------------------------------------------------
The "HistVolRatio" column shows the comparison (ratio) between the 6 day HV and the 100 day HV.

The "vrat" column will display a 1 where the 6 day HV is LESS THAN 50% of the 100 day HV.

I sorted the vrat column in descending order...so that the 1's come to the top.

I applied the scan to the NASDAQ 100


Regards,

alf44


TheRumpledOne
6,359 posts
msg #56379
Ignore TheRumpledOne
modified
11/3/2007 11:49:47 AM

Welcome aboard.

Fetcher[
set{HVyear, Historical Volatility(30,1) 1 year ago }
set{HV1month, Historical Volatility(30,1) 1month ago }
set{HV3month, Historical Volatility(30,1) 3 months ago }
set{HV6month, Historical Volatility(30,1) 6 months ago }
set{HVweek, Historical Volatility(30,1) 1 week ago }

add column Historical Volatility(30,1)

add column HVweek
add column HV1month
add column HV3month
add column HV6month
add column HVyear

draw HVweek
draw Historical Volatility(30,1) on plot HVweek
draw HV1month on plot HVweek
draw HV3month on plot HVweek
draw HV6month on plot HVweek
draw HVyear on plot HVweek

market is NASDAQ 100

Sort column 5 descending
]



Make sure you study my BASIC FILTER FOR NEWBIES.

Fetcher[
/* Basic Filter for newbies and old pros */

set{E36b,days(ema(3) is above ema(6),100)}
set{E36a,days(ema(3) is below ema(6),100)}
set{E3xE6, E36a - E36b}

set{E50200b,days(ma(50) is above ma(200),100)}
set{E50200a,days(ma(50) is below ma(200),100)}
set{M50xM200, E50200a - E50200b}

set{E1326b,days(ema(13) is above ema(26),100)}
set{E1326a,days(ema(13) is below ema(26),100)}
set{E13xE26, E1326a - E1326b}

set{CCb,days(close is above close 1 day ago,100)}
set{CCa,days(close is below close 1 day ago,100)}
set{CxC, CCa - CCb}

set{E5b,days(close is above ema(5),100)}
set{E5a,days(close is below ema(5),100)}
set{CxE5, E5a - E5b}


set{E50b,days(close is above ma(50),100)}
set{E50a,days(close is below ma(50),100)}
set{CxM50, E50a - E50b}

set{E200b,days(close is above ma(200),100)}
set{E200a,days(close is below ma(200),100)}
set{CxM200, E200a - E200b}


set{T10, count(10 day slope of the close above 0,1)}
set{T60, count(60 day slope of the close above 0,1)}
set{T200, count(200 day slope of the close above 0,1)}

Set{a1, T200 * 1}
Set{a2, T60 * 10}
Set{a3, T10 * 100}

Set{aa, a1 + a2}
Set{TREND, aa + a3}

set{v, volume 1 day ago}
set{volinc, volume - v}
set{volpc, volinc / v}
set{volpct, volpc * 100}

set{VolZ, days(volume < 1,100)}
set{VolUp, days(volume is below volume 1 day ago,100)}
set{VolDn, days(volume is above volume 1 day ago,100)}
set{VolCnt, VolUp - VolDn}

set{vck1, volume 1 day ago }
set{vck, volume / vck1 }
set{vdbl, days(vck < 2, 100)}


and add column VolCnt
and add column Vdbl
and add column VolZ

and add column Trend

and add column CxC {CxC_}
and add column CxE5 {CxE5}

and add column E3xE6 {E3xE6}
and add column E13xE26 {E13xE26}


and add column CxM50
and add column CxM200
and add column M50xM200

add column rsi(2)
add column weekly rsi(2)

close above 1
volume above 1000000

sort column 8 descending
]




TheRumpledOne
6,359 posts
msg #56381
Ignore TheRumpledOne
modified
11/3/2007 11:58:22 AM

Fetcher[
/* HISTORICAL VOLATILITY DIFFERENCE DISPLAY */

set{HVyear, Historical Volatility(30,1) 1 year ago }
set{HV1month, Historical Volatility(30,1) 1month ago }
set{HV3month, Historical Volatility(30,1) 3 months ago }
set{HV6month, Historical Volatility(30,1) 6 months ago }
set{HVweek, Historical Volatility(30,1) 1 week ago }

set{day_wk, Historical Volatility(30,1) - HVweek }
set{wk_1mon, HVweek - HV1month }
set{1mon_3mon, HV1month - HV3month }
set{3mon_6mon, HV3month - HV6month }
set{6mon_Year, HV6month - HVyear }

add column day_wk
add column wk_1mon
add column 1mon_3mon
add column 3mon_6mon
add column 6mon_Year

draw day_wk
draw wk_1mon on plot day_wk
draw 1mon_3mon on plot day_wk
draw 3mon_6mon on plot day_wk
draw 6mon_Year on plot day_wk

market is NASDAQ 100

Sort column 5 descending
]



This displays the DIFFERENCE between the historical volatility over the periods.

TheRumpledOne
6,359 posts
msg #56382
Ignore TheRumpledOne
11/3/2007 12:08:10 PM

"If anybody has another good way to search for rangebond / trending stocks please let me know."

Fetcher[
/* BOTTOM CONSOLIDATION FILTER */

/* enter your Upper Limit criteria */
set{UpperLim, High 8 week High}

/* enter your Lower Limit criteria */
set{LowerLim, Low 8 week Low}

set{ULCL, UpperLim - close}

set{LimDiff, UpperLim minus LowerLim}
set{PPDiff, CLOSE minus LowerLim}
set{PPDiv, PPDiff / LimDiff}
set{BallOnx, PPDiv * 100}
set{BallOn, round(BallOnx,0)}

set{consolid8, count( BallOn is between 0 and 10, 20) }

add column BallOn

consolid8 equal 20
]




This version is for consolidation in the 0 - 10% area of the 8 week range over the last 20 days.





TheRumpledOne
6,359 posts
msg #56384
Ignore TheRumpledOne
modified
11/3/2007 12:53:53 PM

Fetcher[
/* HISTORICAL VOLATILITY RATIO DISPLAY */

set{HVweek, Historical Volatility(5,1) }
set{HV1month, Historical Volatility(21,1) }
set{HV3month, Historical Volatility(62,1) }
set{HV6month, Historical Volatility(125,1) }
set{HVyear, Historical Volatility(250,1) }

set{wk_1mon, HVweek / HV1month }
set{wk_3mon, HVweek / HV3month }
set{wk_6mon, HVweek / HV6month }
set{wk_Year, HVweek / HVyear }

add column wk_1mon
add column wk_3mon
add column wk_6mon
add column wk_Year


draw wk_1mon
draw wk_3mon on plot wk_1mon
draw wk_6mon on plot wk_1mon
draw wk_Year on plot wk_1mon

market is NASDAQ 100

Sort column 5 descending
]



Thanks for the lesson and idea Alf.

TheRumpledOne
6,359 posts
msg #56385
Ignore TheRumpledOne
modified
11/3/2007 1:03:54 PM

Fetcher[
/* BOTTOM FINDER - HISTORICAL VOLATILITY 5 PERIOD */

set{HV, Historical Volatility(5,1) }


set{A0, count(HV equal HV 5 day low, 1)}
set{A1, count(HV equal HV 13 day low, 1)}
set{A2, count(HV equal HV 26 day low, 1)}
set{A3, count(HV equal HV 50 day low, 1)}
set{A4, count(HV equal HV 200 day low, 1)}


set{rr1,5 * a0}
set{rr2,8 * a1} /* 8 = 13 - 5 */
set{rr3,13 * a2} /* 13 = 26 - 13 */
set{rr4,24 * a3} /* 24 = 50 - 26 */
set{rr5,150 * a4} /* 150 = 200 - 50 */
set{rra,rr1 + rr2}
set{rrb,rra + rr3}
set{rrc,rrb + rr4}
set{rr,rrc + rr5}

rr above 0

and add column rr

and add column HV 5 day low
and add column HV 13 day low
and add column HV 26 day low
and add column HV 50 day low
and add column HV 200 day low

market is NASDAQ 100

sort column 5 descending

]



This displays stocks with the historical volatility at a 5, 13, 26, 50 or 200 day low.



TheRumpledOne
6,359 posts
msg #56389
Ignore TheRumpledOne
11/3/2007 1:09:43 PM

Fetcher[
/* BOTTOM FINDER - HISTORICAL VOLATILITY 100 periods */

set{HV, Historical Volatility(100,1) }

set{A0, count(HV equal HV 5 day low, 1)}
set{A1, count(HV equal HV 13 day low, 1)}
set{A2, count(HV equal HV 26 day low, 1)}
set{A3, count(HV equal HV 50 day low, 1)}
set{A4, count(HV equal HV 200 day low, 1)}


set{rr1,5 * a0}
set{rr2,8 * a1} /* 8 = 13 - 5 */
set{rr3,13 * a2} /* 13 = 26 - 13 */
set{rr4,24 * a3} /* 24 = 50 - 26 */
set{rr5,150 * a4} /* 150 = 200 - 50 */
set{rra,rr1 + rr2}
set{rrb,rra + rr3}
set{rrc,rrb + rr4}
set{rr,rrc + rr5}

rr above 0

and add column rr

and add column HV 5 day low
and add column HV 13 day low
and add column HV 26 day low
and add column HV 50 day low
and add column HV 200 day low

market is NASDAQ 100

sort column 5 descending

]



Alf, can you please elaborate on which one would be better. I am not a user of historical volatility.

TheRumpledOne
6,359 posts
msg #56391
Ignore TheRumpledOne
modified
11/3/2007 1:18:17 PM

Fetcher[
/* TOP FINDER - HISTORICAL VOLATILITY 5 PERIOD */

set{HV, Historical Volatility(5,1) }


set{A0, count(HV equal HV 5 day high, 1)}
set{A1, count(HV equal HV 13 day high, 1)}
set{A2, count(HV equal HV 26 day high, 1)}
set{A3, count(HV equal HV 50 day high, 1)}
set{A4, count(HV equal HV 200 day high, 1)}


set{rr1,5 * a0}
set{rr2,8 * a1} /* 8 = 13 - 5 */
set{rr3,13 * a2} /* 13 = 26 - 13 */
set{rr4,24 * a3} /* 24 = 50 - 26 */
set{rr5,150 * a4} /* 150 = 200 - 50 */
set{rra,rr1 + rr2}
set{rrb,rra + rr3}
set{rrc,rrb + rr4}
set{rr,rrc + rr5}

rr above 0

and add column rr

and add column HV
and add column HV 5 day high
and add column HV 13 day high
and add column HV 26 day high
and add column HV 50 day high
and add column HV 200 day high

draw HV
draw HV 200 day high on plot HV
draw HV 5 day high on plot HV
draw HV 13 day high on plot HV
draw HV 26 day high on plot HV
draw HV 50 day high on plot HV


do not draw rr

market is NASDAQ 100

sort column 5 descending

]



I don't know if this would be useful or not. You tell me, Alf.

StockFetcher Forums · Filter Exchange · historical volatility<< 1 2 >>Post Follow-up

*** Disclaimer *** StockFetcher.com does not endorse or suggest any of the securities which are returned in any of the searches or filters. They are provided purely for informational and research purposes. StockFetcher.com does not recommend particular securities. StockFetcher.com, Vestyl Software, L.L.C. and involved content providers shall not be liable for any errors or delays in the content, or for any actions taken based on the content.


Copyright 2016 - Vestyl Software L.L.C.Terms of Service | License | Questions or comments? Contact Us
EOD Data sources: DDFPlus & CSI Data Quotes delayed during active market hours. Delay times are at least 15 mins for NASDAQ, 20 mins for NYSE and Amex. Delayed intraday data provided by DDFPlus