StockFetcher Forums · Filter Exchange · ANGLE BETWEEN INDICATORS << 1 2 3 4 >>Post Follow-up
graftonian
927 posts
msg #154229
Ignore graftonian
modified
10/8/2020 11:08:53 AM

No one has posted a filter for a while, and, I've been tinkering with the question "does the difference in slope of two indicators make a difference?". The slope of a line (its tangent) offered little going forward, and the conversion to angle (in degrees) proved to be a ton of code. Thanks to some early work by SF and friends, here are the results/
Graf
Fetcher[
/*ANGLE BETWEEN INDICATORS 10/7/2020*/
NOT OTCBB
CLOSE BETWEEN 1 AND 10
AVERAGE VOLUME(10) > 1000000
/*angle of MA slopes, or your choice of indicator 1 and 2*/
set{indicator1, ema(13)}/*set here*/
set{indicator2, ema(50)}/*and here*/
draw indicator1 on plot price
draw indicator2 on plot price
set{slopeind1, 2 day slope of indicator1}
set{slopeind2, 2 day slope of indicator2}
set{hcircle, 180 / 3.14159}
set{angledegind1, atanind1 * hcircle}
set{angledegind2, atanind2 * hcircle}
set{CrossingAngle, angledegind1 - angledegind2}
/*add the crossing angle and angledeg10ma*/
set{MomentumAngle, CrossingAngle + angledegind1}
/*filter and sort*/
indicator1 crossed above indicator2
sort on column 8 descending
/*bells and whistles*/
set{xxx, close}
draw price line at xxx
]

35 posts
msg #154239
10/8/2020 7:42:46 PM

Thanks for sharing graftonian! Were you able to find an optimal value on the crossangle value?

graftonian
927 posts
msg #154247
Ignore graftonian
10/9/2020 10:00:07 AM

I haven't got that far. I wrote the script so that any two indicators could be used, hoping that people would test it with their favorites. I am currently testing this code with my favorites, the 10 and 50 Hull MAs. An angle over approx. 100 degrees results in large Gap-ups.
Graf

snappyfrog
315 posts
msg #154254
Ignore snappyfrog
modified
10/10/2020 7:08:39 AM

Thank you Graf

I am applying it here with my short term (2 -5 day) style of swing trading using the Stochastic (20,20,2).

Impressive to say the least!

Fetcher[
/*Original Code by GRAFTONIAN*/

/*Adapted to my code for short term swing trades using the Stochastic %K(20,20,2)*/

/*ANGLE BETWEEN INDICATORS 10/7/2020*/
NOT OTCBB
CLOSE BETWEEN 5 and 20
AVERAGE VOLUME(10) > 1000000
optionable
market is not otcbb
market is not etf
/*angle of MA slopes, or your choice of indicator 1 and 2*/
set{indicator1, Stochastic %K(20,20,2)}/*set here*/
set{indicator2, Stochastic %D(20,20,2)}/*and here*/
/*draw indicator1 on plot price
draw indicator2 on plot price*/
set{slopeind1, 2 day slope of indicator1}
set{slopeind2, 2 day slope of indicator2}
set{hcircle, 180 / 3.14159}
set{angledegind1, atanind1 * hcircle}
set{angledegind2, atanind2 * hcircle}
set{CrossingAngle, angledegind1 - angledegind2}
/*add the crossing angle and angledeg10ma*/
set{MomentumAngle, CrossingAngle + angledegind1}
/*filter and sort*/
indicator1 crossed above indicator2
sort on column 10 descending
/*bells and whistles*/
set{xxx, close}
draw price line at xxx
]

xarlor
329 posts
msg #154255
Ignore xarlor
modified
10/10/2020 10:25:42 AM

Expanding on this awesome filter and the collaborations. Simple entry and exit rules for lots of quick wins.

Enter when indicator1 crosses above indicator2 and during a TTM Squeeze.
Exit either when close crosses above Upper BB or below Lower BB.

Fetcher[

/*Original Code by GRAFTONIAN*/

/*Snappyfrog's adapted code for short term swing trades using the Stochastic %K(20,20,2)*/

/*ANGLE BETWEEN INDICATORS 10/7/2020*/
NOT OTCBB
CLOSE BETWEEN 5 and 20
AVERAGE VOLUME(10) > 1000000
optionable
market is not otcbb
market is not etf
/*angle of MA slopes, or your choice of indicator 1 and 2*/
set{indicator1, Stochastic %K(20,20,2)}/*set here*/
set{indicator2, Stochastic %D(20,20,2)}/*and here*/
/*draw indicator1 on plot price
draw indicator2 on plot price*/
set{slopeind1, 2 day slope of indicator1}
set{slopeind2, 2 day slope of indicator2}
set{hcircle, 180 / 3.14159}
set{angledegind1, atanind1 * hcircle}
set{angledegind2, atanind2 * hcircle}
set{CrossingAngle, angledegind1 - angledegind2}
/*add the crossing angle and angledeg10ma*/
set{MomentumAngle, CrossingAngle + angledegind1}

/* TTM Squeeze draw */

set{momo,cema(momentum(16),5)}

set{Pchange1,momentum(16)/momentum(16) 1 day ago}
set{Pchange,Pchange1 - 1}

set{sqz1,count(momo > .01,1)}
set{sqz2,count(momo < 0,1)}
set{sqz3,count(Upper Bollinger Band(20,2) < Upper Keltner Band(20,2),1)}
set{sqz4,count(Lower Bollinger Band(20,2) > Lower Keltner Band(20,2),1)}
set{sqz5,sqz3 * sqz4}
set{sqz6,sqz1 + sqz2}
set{TTM_Squeeze,sqz5 * sqz6}

/*filter and sort*/
set{Squeeze_Length,count(TTM_Squeeze > 0,11)}

set{long1,count(indicator1 crossed above indicator2,1)}
set{long2,count(Squeeze_Length < 11,1)}
set{long3,count(TTM_Squeeze > 0,1)}
set{long4,long1 * long2}
set{long,long3 * long4}
long > 0

set{exit1,count(close crossed above Upper Bollinger Band(20,2),1)}
set{exit2,count(close crossed below Lower Bollinger Band(20,2),1)}
set{exit,exit1 + exit2}
exit > -1

draw momo
draw TTM_Squeeze
plottype{momo,zerobar}

sort on column 10 descending
/*bells and whistles*/
set{xxx, close}
draw price line at xxx
draw indicator2 on plot indicator1
]

sat_stocks
15 posts
msg #154257
Ignore sat_stocks
10/10/2020 11:43:54 AM

Hi,

How to use this filter? My looking at filter can take long/short without looking charts ? If so, please let me know how to use Colum angind1 ,angind2 ..so on

Thanks
Sat

wcurtis
48 posts
msg #154258
Ignore wcurtis
10/10/2020 12:07:01 PM

Thanks

graftonian
927 posts
msg #154259
Ignore graftonian
10/10/2020 12:11:48 PM

Glad to see you folks trying different tacks with this indicator. Some good is bound to come of it.

@sat_stocks,currently I am using momentum angle to sort the results of 1) a Hull MA 10/50 cross, 2) a Schaff Trend Cycle cross above 25, and 3) a favorable Aroon indicator pattern.

Fetcher[
/*STC & Hull 10/50 MA cross*/
NOT OTCBB
CLOSE BETWEEN .50 AND 20
AVERAGE VOLUME(10) > 1000000
chart-time is 6 months
/*schaff trend cycle*/
set{range, MACD (23,50,9) 10 day high - MACD (23,50,9) 10 day low}
set{var2, MACD (23,50,9) - MACD (23,50,9) 10 day low}
set{var3, var2 / range}
set{var6, cema(var3, 3) 10 day high}
set{var5, cema(var3, 3) 10 day low}
set{var7, cema(var3, 3) - var5}
set{var8, var6 - var5}
set{var9, var7 / var8}
set{var10, cema(var9, 3)}
set{STC, 100 * var10}
draw STC
draw STC line at 25
draw STC line at 75
/*H50*/
set{slow1, cwma(close, 25)}
set{slow2, 2 * slow1}
set{slow3, cwma(close, 50)}
set{valslow, slow2 - slow3}
set{H50, cwma(valslow, 7)}
DRAW H50 ON PLOT PRICE
/*H10*/
set{slow1A, cwma(close, 5)}
set{slow2A, 2 * slow1A}
set{slow3A, cwma(close, 10)}
set{valslowA, slow2A - slow3A}
set{H10, cwma(valslowA, 3)}
DRAW H10 ON PLOT PRICE
/*OHLC*/
set{OHLC1, open + high}
set{ohlc2, ohlc1 + low}
set{ohlc3, ohlc2 + close}
set{OHLC, ohlc3 / 4}
draw price line at OHLC

/*angle of MA slopes, or your choice of indicator 1 and 2*/
set{indicator1, H10}
set{indicator2, H50}
set{slopeind1, 2 day slope of indicator1}
set{slopeind2, 2 day slope of indicator2}
set{hcircle, 180 / 3.14159}
set{angledegind1, atanind1 * hcircle}
set{angledegind2, atanind2 * hcircle}
set{CrossingAngle, angledegind1 - angledegind2}
sort on column 8 descending
/*sum the crossing angle and angledeg10ma*/
set{MomentumAngle, CrossingAngle + angledegind1}

close > close 1 day ago
close > open
sort on column 11 descending/*momentumangle*/
/*my purchase info*/
/*bells and whistles*/
draw momentumangle
draw momentumangle line at 0
draw angledegind1 on plot momentumangle
draw angledegind2 on plot momentumangle
draw ind(spy, close)
do not draw OHLC
/* 10% gain and 5% loss lines*/
set{10pctgain, ohlc * 1.1}
set{5pctloss, ohlc * 0.95}
draw price line at 10pctgain
draw price line at 5pctloss
/*filter*/
H10 crossed above H50 within the last 2 days
STC crossed above 25 within the last 2 days
AngleDegInd2 > 0
momentumangle > momentumangle 1 day ago
]

snappyfrog
315 posts
msg #154260
Ignore snappyfrog
10/10/2020 12:12:14 PM

Great work guys!

Took out TTM Squeeze (sorry) and made BB inside Keltner Bands a condition and visual only for those not on Advanced subscription.

I also opened up the price range to anything above 5 and made the condition that Pchange > -2 and indicator2 < 50.

Let me know what you think.

Fetcher[
/*Original Code by GRAFTONIAN*/

/*Snappyfrog's adapted code for short term swing trades using the Stochastic %K(20,20,2)*/

/*Xarlor's adapted code and removing TTM Squeeze, making BB a visual indicator for those not on Advanced Subscription*/

/*Added Pchange > -2 and changed close to close > 5*/

/*ANGLE BETWEEN INDICATORS 10/7/2020*/
NOT OTCBB
CLOSE > 5
AVERAGE VOLUME(10) > 1000000
optionable
market is not otcbb
market is not etf
/*angle of MA slopes, or your choice of indicator 1 and 2*/
set{indicator1, Stochastic %K(20,20,2)}/*set here*/
set{indicator2, Stochastic %D(20,20,2)}/*and here*/
/*draw indicator1 on plot price
draw indicator2 on plot price*/
set{slopeind1, 2 day slope of indicator1}
set{slopeind2, 2 day slope of indicator2}
set{hcircle, 180 / 3.14159}
set{angledegind1, atanind1 * hcircle}
set{angledegind2, atanind2 * hcircle}
set{CrossingAngle, angledegind1 - angledegind2}
/*add the crossing angle and angledeg10ma*/
set{MomentumAngle, CrossingAngle + angledegind1}

/* TTM Squeeze draw */

set{momo,cema(momentum(16),5)}

set{Pchange1,momentum(16)/momentum(16) 1 day ago}
set{Pchange,Pchange1 - 1}
Pchange > -2

draw Upper Bollinger Band(20,2) < Upper Keltner Band(20,2),1)
draw Lower Bollinger Band(20,2) > Lower Keltner Band(20,2),1)

draw momo
plottype{momo,zerobar}

sort on column 12 descending
/*bells and whistles*/
set{xxx, close}
draw price line at xxx
draw indicator2 on plot indicator1
and indicator1 crossed above indicator2
and indicator2 < 50
]

 StockFetcher Forums · Filter Exchange · ANGLE BETWEEN INDICATORS << 1 2 3 4 >>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.