givemefood
New member
Here's a code I drafted early last week to produce a list of S&P500 stocks that match the 3 EMA (15, 50, 100) criteria on a 5 min aggregation period. The scanner produces nothing. However, when I manually search for the last 5-minute candles of S&P500 stocks, a number of stocks matched the criteria.
What's wrong with the code? What do I need to fix?
Please help.
Many thanks.
What's wrong with the code? What do I need to fix?
Please help.
Many thanks.
Code:
input choice = {default "Above","Below"};
input price = close;
input start_price = open;
input AverageType = averagetype.EXPONENTIAL;
def ma1 = movingAverage(averageType,price,15);
def ma2 = movingAverage(averageType,price,50);
def ma3 = movingAverage(averageType,price,100);
plot scan;
switch (Choice){
case "Above":
scan = ((start_price >= ma2) OR (start_price < ma2) AND start_price > ma3) AND (price < ma1 AND price < ma2 AND price < ma3);
case "Below":
# scan = price < ma1 < ma2 < ma3;
scan = (start_price <= ma3 AND start_price < ma2) AND (price > ma2 AND price > ma1);
}