Predicting Stock Price Direction Through Data Mining and Machine Learning Techniques