#### Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

# Proper use of "OR" function?

Seems to be an error in the way I'm using the "OR" function .... I get a different number of returns for this scan depending on the order sequence of the scan statements within the scan below .... anyone see what I am doing incorrectly .... thanks.

[[favorites list = 126] or [favorites list = 195] or [favorites list = 115]] and
[weekly sma(20,volume) > 500000] and [weekly ema(50,volume) > 500000] and

[[weekly williams %R(30) X weekly ema(10,Williams %R(30))] and
[weekly ema(10, Fast stoch %K(30,1)) > weekly ema(10, slow stoch %K(30,1))] and
[Weekly RSI(20) > weekly ema(10,RSI(20))] OR

[weekly williams %R(30) > weekly ema(10,Williams %R(30))] and
[weekly ema(10, Fast stoch %K(30,1)) X weekly ema(10, slow stoch %K(30,1))] and
[Weekly RSI(20) > weekly ema(10,RSI(20))] OR

[weekly williams %R(30) > weekly ema(10,Williams %R(30))] and
[weekly ema(10, Fast stoch %K(30,1)) > weekly ema(10, slow stoch %K(30,1))] and
[Weekly RSI(20) X weekly ema(10,RSI(20))]]

• mod
Hi @Abuelo I've reformatted the text and added additional brackets to group the "and" statements within the second OR statement. I didn't check it for logic, just syntax.

I picked up this method of formatting "or" statements (each bracket on an empty line) from other contributors here. Also, to my eyes, starting each line with "and" makes it a little easier to read. I used to do it your way, too, but I think it was @gord who persuaded me this way is clearer.

This passes syntax:

[ // begin OR-1
[favorites list = 126] or [favorites list = 195] or [favorites list = 115]
] // end OR-1

and [weekly sma(20,volume) > 500000] and [weekly ema(50,volume) > 500000]

and

[ // begin OR-2

[ // begin AND group 1

[weekly williams %R(30) X weekly ema(10,Williams %R(30))]
and [weekly ema(10, Fast stoch %K(30,1)) > weekly ema(10, slow stoch %K(30,1))]
and [Weekly RSI(20) > weekly ema(10,RSI(20))]

] // end AND group 1

OR

[ // begin AND group 2

[weekly williams %R(30) > weekly ema(10,Williams %R(30))]
and [weekly ema(10, Fast stoch %K(30,1)) X weekly ema(10, slow stoch %K(30,1))]
and [Weekly RSI(20) > weekly ema(10,RSI(20))]

] // end AND group 2

OR

[ // begin AND group 3

[weekly williams %R(30) > weekly ema(10,Williams %R(30))]
and [weekly ema(10, Fast stoch %K(30,1)) > weekly ema(10, slow stoch %K(30,1))]
and [Weekly RSI(20) X weekly ema(10,RSI(20))]

] // end AND group 3

] // end OR-2

NOTE: I think you have to add "weekly" in front of "Fast Stoch" and "Slow Stoch" and "RSI", etc. within the ema( ) functions - so for instance

weekly ema(10, Fast stoch %K(30,1))

should be

weekly ema(10, weekly Fast stoch %K(30,1))

Otherwise, I believe you are getting the weekly ema of the default daily indicator values.