def run(self, symbol, market_data_source, date_start=datetime.date.today() - datetime.timedelta(days=1), date_end=datetime.date.today()): symbol_data = DailySymbolData.objects.filter( symbol=symbol, data_souce=market_data_source, date=date_end) if symbol_data.exists(): symbol_data = DailySymbolData.objects.get( symbol=symbol, data_souce=market_data_source, date=date_end) inverted_paper_umbrella_candle = self.is_candlestick_inverted_paper_umbrella( symbol_data) self.populate_todays_trend_confidence(symbol_data) day_difference = get_num_trading_sessions(date_start, date_end, symbol, market_data_source) if day_difference > 0: is_previously_upward = symbol_data.is_previously_upward_trend( num_days=day_difference, percent_upward=60) else: is_previously_upward = True if is_previously_upward and inverted_paper_umbrella_candle and self.is_symbol_data_tradeable( symbol_data): return (True, self.confidence_metrics, self.extra_info) else: return (False, self.confidence_metrics, self.extra_info) else: return (False, self.confidence_metrics, self.extra_info)
def run(self, symbol, market_data_source, date_start=datetime.date.today() - datetime.timedelta(days=1), date_end=datetime.date.today()): symbol_data = DailySymbolData.objects.filter( symbol=symbol, data_souce=market_data_source, date=date_end) if symbol_data.exists(): symbol_data = DailySymbolData.objects.get( symbol=symbol, data_souce=market_data_source, date=date_end) is_bullish_engulfing = self.is_bullish_engulfing(symbol_data) day_difference = get_num_trading_sessions(date_start, date_end, symbol, market_data_source) if day_difference > 0: is_previously_downward = symbol_data.is_previously_downward_trend( num_days=day_difference, percent_downward=60) else: is_previously_downward = True if is_bullish_engulfing and is_previously_downward and self.is_symbol_data_tradeable( symbol_data): return (True, self.confidence_metrics, self.extra_info) else: return (False, self.confidence_metrics, self.extra_info) else: return (False, self.confidence_metrics, self.extra_info)