StockFetcher Forums · Filter Exchange · Tails, ODRs & ROCdiv...OH MY !!!<< 1 2 3 4 5 ... 52 >>Post Follow-up
alf44
2,025 posts
msg #80806
Ignore alf44
modified
10/7/2009 9:59:50 PM


This is a "Scan / Filter / System" that I have been refining for some time !!!
____________________________________________

I continue to "refine" it and tweak it ...

That said ... I AM currently trading it with great success !!!

I reluctantly share it now !

"Reluctantly"... mainly because I'm fairly certain it will be completely lost on most of the readers of these forums...and...frankly...because I don't really have the will, the energy...or, the inclination to try to explain it !

If there's interest...maybe !
--

Nevertheless...


...it WILL pick off ... EVERY pivot HIGH ... EVERY pivot LOW ... EVERY Price Swing !!!


It is truly uncanny and very powerful. It becomes even MORE powerful... if you actually put in some time and effort...and learn HOW to use it properly !

I designed it to find BOTH ... LONG & SHORT trading set-ups...a "One-Stop-Shop" !!!
---

3 simple REVERSAL patterns...that are very very powerful !!!

3 simple REVERSAL patterns...that very often represent a major shift in the balance of power between Bulls and Bears !!!


* The 3 patterns...as I have defined them here are...


1. Tails :

"Bottoming Tails" ... are candles with shadows (ie. tails) BELOW the candle body and that are greater than 50% of the total
daily range...and that occur after 2 or more consecutive DOWN days...and whose Close is BELOW the EMA(10).

"Topping Tails" ... are candles with shadows (ie. tails) ABOVE the candle body and that are greater than 50% of the total
daily range...and that occur after 2 or more consecutive UP days...and whose Close is ABOVE the EMA(10).


2. ODRs (One Day Reversals) :

"ODR UP" ... are candles that have made a new 5 day LOW and that Close
in the TOP 50% of the Day's Range.

"ODR DOWN" ... are candles that have made a new 5 day HIGH and that Close
in the BOTTOM 50% of the Day's Range.


3. ROCdiv (ROC 2 Divergence) :

"ROCdiv BULL" ... are candles that have made a new 3 day LOW...while the ROC(2) indicator
has changed direction...DOWN to UP.

"ROCdiv BEAR" ... are candles that have made a new 3 day HIGH...while the ROC(2) indicator
has changed direction...UP to DOWN.

---

In an effort to streamline the filter results page and to reduce the number of columns...I wrote this filter
in such a way that...rather than have 2 columns for each of the 3 patterns...the presence of BOTH
"Long" OR "Short" trading set-ups for each of the 3 patterns is displayed in just ONE column for EACH pattern.

In other words, both Bottom or Top Tails will appear in the "tail" column...
both UP or DOWN ODRs will appear in the "odr" column...and both
Bull or Bear ROCdiv will appear in the "div" column.

Then...by glancing over to ... the ( 10^ ) ... the ( lo^ ) ... the ( hi^ ) ... the ( dp ) ... and the ( roc^ ) columns ...
it's pretty easy (with some practice) to determine from just the column info which Tail, ODR, ROCdiv you have.

Obviously, you can further determine this by pulling up the chart... but I intentionally designed the filter
and the column display this way to give it this "at a glance" functionality.


Invest some time ... git yer hands dirty ... kick the tires ... play with it ... learn it ... embrace it ... LOVE IT !!!

----------

Tails, ODRs & ROCdiv...OH MY !!!

Fetcher[/* Tails, ODRs and ROCdiv */

/* Tails */

/* Bottoming Tails */

/* Consecutive Down Days */
set{daysClose_Down, days(Close above Close 1 day ago,100)}

set{RangeA, High - Low}
set{MinCloOp, min(Close,Open)}
set{TailRngA, MinCloOp - Low}
set{TailRatioA, TailRngA / RangeA}

set{Tail_A, count(daysClose_Down 1 day ago above 1, 1)}
set{Tail_B, count(Low is below MinCloOp, 1)}
set{Tail_C, count(TailRatioA is above .50, 1)}
set{Tail_D, count(Close below EMA(10) , 1)}
set{Tail_1, Tail_A * Tail_B}
set{Tail_2, Tail_1 * Tail_C}
set{TailBot, Tail_2 * Tail_D}
/* ---------- */

/* Topping Tails */

/* Consecutive Up Days */
set{daysClose_Up, days(Close below Close 1 day ago,100)}

set{RangeAA, High - Low}
set{MaxCloOp, max(Close,Open)}
set{TailRngAA, High - MaxCloOp}
set{TailRatioAA, TailRngAA / RangeAA}

set{Tail_AA, count(daysClose_Up 1 day ago above 1, 1)}
set{Tail_BB, count(High is above MaxCloOp, 1)}
set{Tail_CC, count(TailRatioAA is above .50, 1)}
set{Tail_DD, count(Close above EMA(10), 1)}
set{Tail_11, Tail_AA * Tail_BB}
set{Tail_22, Tail_11 * Tail_CC}
set{TailTop, Tail_22 * Tail_DD}
/* ---------- */

/* Tails Top OR Bottom */
set{Tail_topORbot, TailBot + TailTop}
/* ---------- */

/* 20 Day High/Low Breakout Check ("20hilo") */

/* 20 day HIGH */
set{20dayhi, count(High reached a new 20 day High, 1 )}

/* 20 day LOW */
set{20daylo, count(Low reached a new 20 day Low, 1)}

/* 20 day HIGH or LOW */
set{20day_hiORlo, 20dayhi + 20daylo }
/* ---------- */

/* Consecutive days Close either Above(+) or Below(-) the EMA(10) --> ("..10^") */
set{daysCloseAbove10, days(Close below EMA(10) 1 day ago,100)}
set{daysCloseBelow10, days(Close above EMA(10) 1 day ago,100)}
set{daysClosecurdir10, daysCloseAbove10 - daysCloseBelow10}

/* Consecutive days Close either Up(+) or Down(-) --> ("..clo^") */
set{daysCloseUp, days(Close below Close 1 day ago,100)}
set{daysCloseDown, days(Close above Close 1 day ago,100)}
set{daysClosecurdir, daysCloseUp - daysCloseDown}

/* Consecutive days LOWS either Up(+) or Down(-) --> ("..lo^") */
set{daysLOWSUp, days(Low below Low 1 day ago,100)}
set{daysLOWSDown, days(Low above Low 1 day ago,100)}
set{daysLOWScurdir, daysLOWSUp - daysLOWSDown}

/* Consecutive days HIGHS either Up(+) or Down(-) --> ("..hi^") */
set{daysHIGHSUp, days(High below High 1 day ago,100)}
set{daysHIGHSDown, days(High above High 1 day ago,100)}
set{daysHIGHScurdir, daysHIGHSUp - daysHIGHSDown}
/* ---------- */

/* Day Position Calculation ("..dp") */
set{Range1a, High - Low}
set{CloLodiffa, Close - Low}
set{dayposclo, CloLodiffa / Range1a}
/* ---------- */

/* One Day Reversal ("odr") (5 Day H / L w/Up or Down Close Above/Below 50% Day Position) */

/* "ODR" 50% Day Position Calculation */
set{HLrng, High - Low}
set{HLrng50, HLrng * .50}
set{DP50, Low + HLrng50}

/* "ODR" UP */
set{5daylo, count(Low reached a new 5 day Low, 1)}
set{ODR_UpClo, count(Close is above DP50, 1)}
set{ODR_Up, 5daylo * ODR_UpClo}

/* "ODR" DOWN */
set{5dayhi, count(High reached a new 5 day High, 1 )}
set{ODR_DwnClo, count(Close is below DP50, 1)}
set{ODR_Dwn, 5dayhi * ODR_DwnClo}

/* "ODR" UP or DOWN */
set{ODR_upORdwn, ODR_Up + ODR_Dwn}
/* ---------- */

/* 2 PERIOD ROC STUFF */

/* ROC(2) Divergence (".div") (3 Day H / L with a one day ROC2 pos/neg divergence with Close) */

/* ROC(2) Bullish Divergence Calculation */
set{3daylo, count(Low reached a new 3 day Low, 1)}
set{ROCdivpos1, count(ROC(2) above ROC(2) 1 day ago, 1)}
set{ROCdivpos2, count(ROC(2) 1 day ago below ROC(2) 2 days ago, 1)}
set{ROCbulldiv1, 3daylo * ROCdivpos1}
set{ROCbulldiv2, ROCbulldiv1 * ROCdivpos2}

/* ROC(2) Bearish Divergence Calculation*/
set{3dayhi, count(High reached a new 3 day High, 1)}
set{ROCdivneg1, count(ROC(2) below ROC(2) 1 day ago, 1)}
set{ROCdivneg2, count(ROC(2) 1 day ago above ROC(2) 2 days ago, 1)}
set{ROCbeardiv1, 3dayhi * ROCdivneg1}
set{ROCbeardiv2, ROCbeardiv1 * ROCdivneg2}

/* ROC(2) Bullish OR Bearish Divergence */
set{ROCbullORbeardiv, ROCbulldiv2 + ROCbeardiv2}
/* ---------- */

/* ROC2 Pivot ("rocpiv") */

/* ROC2 Pivot Calculation --> (Closing price (tomorrow) that will either maintain the current direction of the ROC(2) indicator...OR...turn it in the other direction) */

set{ROCpivA, Close - Close 2 days ago}
set{ROCpiv, ROCpivA + Close 1 day ago}
/* ---------- */

/* ROC2 Momentum ("roc^") */

/* ROC2 Momentum Calculation --> Days ROC2 either Up(+) or Down(-) */
set{daysROCup, days(ROC(2) below ROC(2) 1 day ago,100)}
set{daysROCdwn, days(ROC(2) above ROC(2) 1 day ago,100)}
set{dayscurdir, daysROCup - daysROCdwn}
/* ---------- */

/* NR7s ("nr.7") (Narrowist Range of the last 7 days) */
set{NR7, count(Day Point Range reached a new 7 day Low, 1)}

/* ---------- */

/* Doji ("doji") (H / L Rng above .20 w/Candle Body less than 30% of H / L Rng) */
set{HiLoRng, High - Low}
set{ClOpRng, abs(Close minus Open)}
set{ClOp_HiLo_ratio, ClOpRng / HiLoRng}
set{Range, count(HiLoRng is above .20, 1)}
set{Body, count(ClOp_HiLo_ratio is less than .30, 1)}
set{doji, Range * Body}

/* ---------- */

/* Bang For The Buck */

/* A check to see which stocks move the most "intra-day" ...WRT TO SHARE PRICE ---> HIGHER the Bang...the MORE VOLATILE the stock (just an interesting thing to know - imo) */

/* 30 Day Average Daily Range check */
set{30DayRngSum, sum(Day Point Range, 30)}
set{30AvgDayRng, 30DayRngSum / 30}

/* 60 Day Average Daily Range check */
set{60DayRngSum, sum(Day Point Range, 60)}
set{60AvgDayRng, 60DayRngSum / 60}

/* 90 Day Average Daily Range check */
set{90DayRngSum, sum(Day Point Range, 90)}
set{90AvgDayRng, 90DayRngSum / 90}

/* 30/60/90 Day Average Daily Range check */
set{3060AvgDayRngSum, 30AvgDayRng + 60AvgDayRng}
set{306090AvgDayRngSum, 3060AvgDayRngSum + 90AvgDayRng}
set{306090AvgDayRng, 306090AvgDayRngSum / 3}

/* "Bang for the Buck" check */
set{Bangratio, 306090AvgDayRng / Close}
set{Bangpercent, Bangratio * 100}
/* ---------- */

/* Pattern Fetcher */

set{X, Tail_topORbot * 1 }
set{Y, ODR_upORdwn * 1}
set{Z, ROCbullORbeardiv * 1}

set{XY, X + Y}
set{XYZ, XY + Z}
/* ---------- */

/* Technical Indicators */

/* Defining "myOSC(3,8)" Indicator */
set{myOSC, EMA(3) - EMA(8)}

/* Defining "trend(13) of myOSC(3,8)" Indicator */
set{myOSCtrend, CEMA(myOSC,13)}

/* Defining "my ROC(2)" Indicator */
set{myROC, ROC(2)}

/*Chikou Span - today's Close displaced 26 day's backward */
set{Chikou, DMA(1,-26)}

/*Kijun-Sen - 26 day average of price's Highest HIGH & Lowest LOW */
set{diff26KS, high 26 day high + low 26 day low}
set{Kijun, diff26KS / 2}
/* ---------- */

/* Symbol Selection */

Show stocks where XYZ is above 0

Market is NASDAQ 100
/* ---------- */

/* Columns */

add column separator
add column separator
add column RSI(2) {r2}
add column Slow Stochastic Fast %K(8, 1) {%K}
add column separator
add column separator
add column 20day_hiORlo {20hilo}
add column separator
add column daysClosecurdir10 {...10^}
add column daysClosecurdir {..clo^}
add column daysLOWScurdir {..lo^}
add column daysHIGHScurdir {..hi^}
add column separator
add column separator
add column dayposclo {..dp}
add column separator
add column separator
add column NR7 {nr.7}
add column doji
add column separator
add column separator
add column Tail_topORbot {tail}
add column separator
add column separator
add column ODR_upORdwn {odr}
add column ROCbullORbeardiv {div}
add column separator
add column dayscurdir {ROC^}
add column ROCpiv {ROCpiv}
add column separator
add column Bangpercent {Bang}
add column separator
add column separator

/* Indicators */

/* just an FYI on the EMAs (think about it) ... 10 day EMAs = 2 week EMAs / 150 day EMAs = 30 week EMAs */

draw indicator EMA(10)
draw Kijun on plot price
draw Chikou on plot price
draw Parabolic SAR
draw EMA(150)

draw indicator CEMA(myOSCtrend, 1)
draw CEMA(myOSCtrend, 1) line at 0

draw indicator CEMA(myROC, 1)
draw CEMA(myROC, 1) line at 0

draw indicator Slow Stochastic Fast %K (8,1)
draw Slow Stochastic Fast %K (8,1) line at 20
draw Slow Stochastic Fast %K (8,1) line at 80

do not draw xyz

chart-time is 55 days
sort column 26 descending
]



----------

Submitted FREE OF CHARGE ... WORTH A KING'S RAN$OM ! ! ! (uhhh ... imho)



Regards,

alf44


johnpaulca
11,312 posts
msg #80807
Ignore johnpaulca
10/7/2009 10:35:20 PM

Very sweet Alf, very good information.

trendscanner
265 posts
msg #80817
Ignore trendscanner
10/8/2009 7:23:57 AM

Excellent and thanks for posting. I'll definitely spend some time digesting this.



drew9
171 posts
msg #80831
Ignore drew9
10/8/2009 1:10:32 PM

Hi alf, please feel free to explain further as I would like to understand what metrics you key in on for your selections and when to pull the trigger. I noticed you are sorting on column 20 which appears to be Analysis so I am having a hard time knowing what columns you prioritize? Thanks!

alf44
2,025 posts
msg #80836
Ignore alf44
modified
10/8/2009 4:39:14 PM


"Hi alf, please feel free to explain further as I would like to understand what metrics you key in on for your selections and when to pull the trigger. I noticed you are sorting on column 20 which appears to be Analysis so I am having a hard time knowing what columns you prioritize? Thanks!"

----------

drew, I sort column 20 ... make that ... "26" descending so the "Tails" will pop to the top.

Since the scan is targeting 3 patterns (ie. Tails, ODRS & ROCdiv) ...and the ODRS & ROCdiv patterns happen a bit more frequently ... I just wanted to ensure that Tails (if they are present) always pop to the top of the list. Now...many times a price bar will be ALL 3 (or, a combination of) ... a Tail, a ODR and ROCdiv. All the more reason I want to have the Tails at the top...so I can quickly see this event.

As for "priority" of columns...obviously I'm looking for the 3 patterns...BUT...

I look at...ALL THE PATTERNS...within the context of the other column info AND within the context of the chart and technical indicators !!!

In other words, a Tail (for example) that comes after 5 consecutive lower LOWS or CLOSES or, both...gets my attention. A Tail (or, ODR etc...) that comes after 5 consecutive higher HIGHS or CLOSES would also warrant a closer look. Add to that a 20 day HIGH or 20 day LOW...now I'm really interested. Add further...an extreme RSI(2) reading or an OB / OS Stochastic reading...well...you get the idea. I will even manually sort these other columns to see what pops to the top.

Trend is obviously an important consideration and weighs heavily in the decision of whether I'm seeing a possible LONG or SHORT trade. The "Chikou" (a component of Ichimoku charting) gives me an at-a-glance look at (intermediate-term) bullish or bearish sentiment.


ALSO...whether the price action is above or below it's 10 period EMA...AND...by how much...is VERY important.

If price strays too far from it's EMA(10) ... it will ALWAYS pull-back to it !!!

A sort of "reversion to the mean" !!!


The interaction between "myosctrend" and "myROC" is a subject unto itself. Briefly, I use "myosctrend" as an indicator of the trend of momentum. The 2 period ROC (myROC) is an indicator of short-term momentum. I look for what I call "slope opposition" when using these two together.

So...if "myROC" is going DOWN (I like to see at least 2 days) while "myosctrend" is sloping UP (ie. "slope opposition") ... I look for a LONG entry...AND...the opposite scenario would have me looking for a SHORT. The theory being...price will "usually" flip back in the direction of the longer term momentum.

There is much more but I guess this a good place to stop for now !


Regards,

alf44


choymi8828
47 posts
msg #80837
Ignore choymi8828
modified
10/8/2009 4:57:48 PM

Altf44,

Thanks for the sharing again.

Konwledge is POWER.


Mike

drew9
171 posts
msg #80917
Ignore drew9
10/9/2009 3:23:00 PM

Certainly much more clear now. Nicely done and thanks again!

alf44
2,025 posts
msg #80933
Ignore alf44
modified
10/9/2009 10:09:38 PM

..."clear" as mud...huh ???

It's certainly not for everybody !

------

These 3 patterns are fairly easily identifiable "footprints" ... that when learned/ followed ... can lead you to a better understanding of how price action works (imo) ... how the daily battle back and forth between Bulls and Bears plays out...and...oh yeah, by the way...can potentially make you a lot of money !

But...it DOES require a commitment and study...

Something that is in very short supply !!! fwiw


"You can lead a horse to water...but you can't make him drink !"



Regards,

alf44


ossi
2 posts
msg #80948
Ignore ossi
10/10/2009 1:52:17 PM

Hi alf,

thanks for your time and for sharing this script with us and please excuse the ignorance in my question but I am new to the scripting in stockfetcher.

you have the following line,

set{daysCloseUp, days(Close below Close 1 day ago,100)}

is it not the case that "Close below Close 1 day ago" is a down day? is this a mistake in the script or is it a missunderstanding on my part? I suspect it is the later as you seem to have this logic in a number of subsequent lines but if you could confirm!?

thanks

alf44
2,025 posts
msg #80949
Ignore alf44
modified
10/10/2009 3:02:27 PM

..."ossi" - the "days" feature is actually returning the number of "days since" a particular event occurred.


So...

...in the case of the statement --> set{daysCloseUp, days(Close below Close 1 day ago,100)}


I am looking for the number of days SINCE the Close (ie. today's Close) was below the Close 1 day ago !

This will then return the number of consecutive HIGHER CLOSES a stock has had !

Stated another way...the number of days SINCE the stock has had a DOWN Close !

Hope that makes "SINCE" ... errr ... I mean SENSE !!! LOL


Regards,

alf44


StockFetcher Forums · Filter Exchange · Tails, ODRs & ROCdiv...OH MY !!!<< 1 2 3 4 5 ... 52 >>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