def mor_pending(): d = (datetime.today() + relativedelta(weekday=FR(-1))).strftime('%Y-%m-%d') df = pd.read_csv( r'I:\FINANCE\ACCOUNTING\UPRR\Pending Reports\MOR\{0}.csv'.format(d), parse_dates=['Process Date']) df['age_weeks'] = np.ceil( ((datetime.today() + relativedelta(weekday=FR(-1))) - df['Process Date']) / np.timedelta64(1, 'W')) df['rev_amt'] = df['Proc.Fee Amount'] + df['BOI Fee Amount'] grp = df.groupby('age_weeks')['rev_amt'].sum() df2 = pd.DataFrame(grp).reset_index() return df2
def Portfolio_to_UDMPortfolio(portf: Portfolio): horizion = 21 # number of trading days per month end_date = datetime.now() + relativedelta(weekday=FR(-1)) start_date = end_date + relativedelta(weekday=FR(-27)) VaR = portfolio_var(portf, str(start_date), str(end_date), horizion) # portfolio_var returns a negative percent stopValue = round(portf.BuyingPower * (1 + VaR), 2) holdings = Assets_to_UDMHoldings(portf) # risk is at medium for all portfolios UDMportf = UDMPortfolio(-1, -1, False, str(datetime.now()), portf.BuyingPower, stopValue, Risk.Med, holdings) return UDMportf
def _populate(self, year): # Public holidays self[date(year, JAN, 1)] = "Nytårsdag" self[easter(year) + rd(weekday=SU(-2))] = "Palmesøndag" self[easter(year) + rd(weekday=TH(-1))] = "Skærtorsdag" self[easter(year) + rd(weekday=FR(-1))] = "Langfredag" self[easter(year)] = "Påskedag" self[easter(year) + rd(weekday=MO)] = "Anden påskedag" self[easter(year) + rd(weekday=FR(+4))] = "Store bededag" self[easter(year) + rd(days=39)] = "Kristi himmelfartsdag" self[easter(year) + rd(days=49)] = "Pinsedag" self[easter(year) + rd(days=50)] = "Anden pinsedag" self[date(year, DEC, 25)] = "Juledag" self[date(year, DEC, 26)] = "Anden juledag"
def released_last_friday(album_date): try: last_last_friday = datetime.now() + relativedelta(weekday=FR(-2)) last_friday = datetime.now() + relativedelta(weekday=FR(-1)) curr_date = datetime.strptime(album_date, '%Y-%m-%d') if curr_date.date() <= last_friday.date(): return curr_date.date() > last_last_friday.date() except Exception as e: try: last_friday = datetime.now() + relativedelta(weekday=FR(-1)) curr_date = datetime.strptime(album_date, '%Y') return curr_date.date() >= last_friday.date() except Exception as ex: print(e) return False
def __init__(self, *args, **kwargs): super(PaymentsReportForm, self).__init__(*args, **kwargs) # initial datetime spec: # end set to be the last Friday at 10:00 pm AEST even if it is a Friday # start exactly one week before end now = timezone.localtime(timezone.now()) # create a timezone aware datetime at 10:00 pm AEST today_ten_pm_aest = timezone.make_aware( datetime.datetime(now.year, now.month, now.day, 22, 0), timezone=pytz.timezone('Australia/Sydney')) # convert to local today_ten_pm_aest_local = timezone.localtime(today_ten_pm_aest) # back to previous friday (even if we are friday) delta = relativedelta(weekday=FR(-1)) \ if today_ten_pm_aest_local.weekday() != FR.weekday else relativedelta(weekday=FR(-2)) end = today_ten_pm_aest_local + delta start = end + relativedelta(weeks=-1) banked_start = (start - datetime.timedelta(days=start.weekday())).replace(hour=0, minute=0) banked_end = (banked_start + datetime.timedelta(days=6)).replace(hour=23, minute=59, second=59) self.fields['start'].initial = start self.fields['end'].initial = end self.fields['banked_start'].initial = banked_start self.fields['banked_end'].initial = banked_end
def _populate(self, year): # New Years self[date(year, JAN, 1)] = "Año Nuevo [New Year's Day]" # Maundy Thursday self[easter(year) + rd(weekday=TH(-1))] =\ "Jueves Santo [Maundy Thursday]" # Good Friday self[easter(year) + rd(weekday=FR(-1))] = "Viernes Santo [Good Friday]" # Labor Day self[date(year, MAY, 1)] = "Día del Trabajo [Labour Day]" # Revolution Day if 2020 >= year >= 1979: self[date(year, JUL, 19)] = "Día de la Revolución [Revolution Day]" # Battle of San Jacinto Day self[date(year, SEP, 14)] =\ "Batalla de San Jacinto [Battle of San Jacinto]" # Independence Day self[date(year, SEP, 15)] =\ "Día de la Independencia [Independence Day]" # Virgin's Day self[date(year, DEC, 8)] = "Concepción de María [Virgin's Day]" # Christmas self[date(year, DEC, 25)] = "Navidad [Christmas]" # Provinces festive day if self.prov: if self.prov == 'MN': # Santo Domingo Day Down self[date(year, AUG, 1)] = "Bajada de Santo Domingo" # Santo Domingo Day Up self[date(year, AUG, 10)] = "Subida de Santo Domingo"
def _obtain_week_range_from_date(raw_date): """Obtain the start/end date of the week the specified date falls in. Start of week: Saturday 1200 hrs End of week: Friday 1159 hrs NOTE Function is specific to EIA source, since metrics are reported in terms of weekly output. However, analysts want total volume across the entire week the metric is reported in. Args: raw_date (str): Returns: Tuple[str, str]: tuple of (start_date, end_date) of the week Examples: >>> _obtain_week_range_from_date('2018-09-21T00:00:00') ('2018-09-15T00:00:00', '2018-09-21T00:00:00') >>> _obtain_week_range_from_date('2018-09-14T00:00:00') ('2018-09-08T00:00:00', '2018-09-14T00:00:00') """ end_date = parse_date(raw_date, dayfirst=False) + relativedelta(weekday=FR(-1)) start_date = end_date + relativedelta(weekday=SA(-1)) return (start_date.isoformat(), end_date.isoformat())
def _get_start_of_week(self, span): user_lang = self.env['res.lang'].search([('code', '=', self.env.user.lang)]) week_start_map = {'1': MO(-1), '2': TU(-1), '3': WE(-1), '4': TH(-1), '5': FR(-1), '6': SA(-1), '7': SU(-1)} week_start_delta = relativedelta(weekday=week_start_map.get(user_lang.week_start, MO(-1))) if span == 'week': return week_start_delta return START_OF[span] + week_start_delta
def get_ticker_missing(ticker_data, ticker_map, last_friday=datetime.today() - relativedelta(weekday=FR(-1))): tickers_available_data = ticker_data.groupby('bloomberg_ticker').agg( {'date': [max, min]}) tickers_available_data.columns = ['date_max', 'date_min'] eligible_tickers_available_data = ticker_map.merge( tickers_available_data.reset_index(), on='bloomberg_ticker', how='left') ticker_not_found = eligible_tickers_available_data.loc[ eligible_tickers_available_data.date_max.isna(), ['bloomberg_ticker', 'yahoo']] ticker_not_found['start'] = '2002-12-01' last_friday_20 = last_friday - relativedelta(days=20) tickers_outdated = eligible_tickers_available_data.loc[( (eligible_tickers_available_data.date_max < last_friday. strftime('%Y-%m-%d')) & (eligible_tickers_available_data.date_max > last_friday_20. strftime('%Y-%m-%d'))), ['bloomberg_ticker', 'yahoo', 'date_max']] tickers_outdated['start'] = (tickers_outdated['date_max'] + pd.DateOffset(1)).dt.strftime('%Y-%m-%d') tickers_outdated.drop(columns=['date_max'], inplace=True) return pd.concat([ticker_not_found, tickers_outdated])
def set_next_relative_date(start_date, day_of_week, week_of_month, separation_count): arg = MO(1) if day_of_week == 1: arg = MO(week_of_month) if day_of_week == 2: arg = TU(week_of_month) if day_of_week == 3: arg = WE(week_of_month) if day_of_week == 4: arg = TH(week_of_month) if day_of_week == 5: arg = FR(week_of_month) if day_of_week == 6: arg = SA(week_of_month) if day_of_week == 7: arg = SU(week_of_month) if week_of_month == -1: return start_date + relativedelta( day=31, months=+separation_count, weekday=arg) return start_date + relativedelta( day=1, months=+separation_count, weekday=arg)
def R7_parser(self): self.START_DATE = self.gdate if "MONTHS" in self.kwargs: self.START_DATE = delta(self.START_DATE, months=self.kwargs["MONTHS"]) if "DAYINDEX" in self.kwargs and "DAYNAME" in self.kwargs: if self.kwargs["DAYINDEX"] - 2 == 0: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=MO(self.kwargs["DAYNAME"])) if self.kwargs["DAYINDEX"] - 2 == 1: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=TU(self.kwargs["DAYNAME"])) if self.kwargs["DAYINDEX"] - 2 == 2: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=WE(self.kwargs["DAYNAME"])) if self.kwargs["DAYINDEX"] - 2 == 3: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=TH(self.kwargs["DAYNAME"])) if self.kwargs["DAYINDEX"] - 2 == 4: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=FR(self.kwargs["DAYNAME"])) if self.kwargs["DAYINDEX"] - 2 == 5: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=SA(self.kwargs["DAYNAME"])) if self.kwargs["DAYINDEX"] - 2 == 6: self.START_DATE = self.START_DATE + relativedelta( day=1, weekday=SU(self.kwargs["DAYNAME"]))
def _populate(self, year): # New Year's Day self[date(year, JAN, 1)] = "Nieuwjaarsdag [New Year's Day]" # Carnaval Monday self[easter(year) + rd(days=-48)] = "Maandag na de Grote Karnaval \ [Carnaval Monday]" # Good Friday self[easter(year) + rd(weekday=FR(-1))] = "Goede Vrijdag [Good Friday]" # Easter Monday self[easter(year) + rd(days=1)] = "Di Dos Dia di Pasku di Resureccion \ [Easter Monday]" # King's Day if year >= 2014: kings_day = date(year, APR, 27) if kings_day.weekday() == 6: kings_day = kings_day - rd(days=1) self[kings_day] = "Koningsdag [King's Day]" # Queen's Day if 1891 <= year <= 2013: queens_day = date(year, APR, 30) if year <= 1948: queens_day = date(year, AUG, 31) if queens_day.weekday() == 6: if year < 1980: queens_day = queens_day + rd(days=1) else: queens_day = queens_day - rd(days=1) self[queens_day] = "Anja di La Reina [Queen's Day]" # Labour Day labour_day = date(year, MAY, 1) if labour_day.weekday() == 6: labour_day = labour_day + rd(days=1) self[labour_day] = "Dia di Obrero [Labour Day]" # Ascension Day self[easter(year) + rd(days=39)] = "Hemelvaartsdag [Ascension Day]" # Dia di Himno y Bandera self[date(year, JUL, 2)] = "Dia di Himno y Bandera \ [National Anthem & Flag Day]" # Dia di Pais Kòrsou self[date(year, OCT, 10)] = "Dia di Pais Kòrsou \ [Curaçao Day]" # Christmas Day self[date(year, DEC, 25)] = "Kerstdag [Christmas]" # Second Christmas self[date(year, DEC, 26)] = "2de Kerstdag [Second Christmas]"
def _populate(self, year): holidays.Canada._populate(self, year) tito = discord.utils.get(self.bot.emojis, guild__name="Friends Chat", name="tito") self[date( year, 1, 1 )] = f"Male Kelly's birthday. He's {year-1900} years old according to most websites" self[date( year, 1, 31 )] = f"Erin and Taras' Anniversary. It's been {year-2010} entire years" self[date(year, 2, 2)] = "Groundhog Day" self[date(year, 2, 14)] = "Valentine's Day" self[date( year, 3, 9 )] = f"Lachlan's Birthday. He is {year-1989} years old. All hail this magnificent and unsurpassed achievement in longevity. Glory be unto him" self[date(year, 3, 14)] = f"Pi Day ({math.pi})" self[date(year, 3, 17)] = "St. Patrick's Day" self[date( year, 3, 20 )] = f"Tom and Kelly's real wedding anniversary. They've been real together for {year-2015} years" self[date( year, 3, 25 )] = "The Day the One Ring was cast into the fires of Mt. Doom, bringing about the fall of Sauron" self[date(year, 4, 12)] = "National Grilled Cheese Day" self[date(year, 5, 1) + rd(weekday=SU(+2))] = "Mother's Day" self[date(year, 5, 7)] = f"Bro Tito Day {tito}" self[date(year, 5, 25)] = "Towel Day! DON'T PANIC :thumbsup:" self[date(year, 6, 1) + rd(weekday=SU(+3))] = "Father's Day" self[date(year, 6, 21)] = f"Erin's Birthday. She's {year-1991} years old" self[date(year, 9, 8)] = f"Dan's Birthday. He {year-1989} old" self[date( year, 9, 26 )] = f"Tom's Birthday. He's {year-1990} years old. How he made it this far, we'll never know" self[date( year, 10, 7 )] = f"Delta's Birthday. He's {year-2015} years old and is a good boy" self[date( year, 10, 11 )] = "Leif Erikson Day. Hinga Dinga Durgen! https://tenor.com/view/viking-spongebob-squarepants-durgen-fall-down-hard-gif-7302846 " # intentional trailing space for gif self[date(year, 10, 31)] = "Halloween" self[date( year, 11, 10 )] = f"Tom and Kelly's fake wedding anniversary. They've been fake together for {year-2014} years" self[date( year, 11, 12 )] = f"Sabrina's Birthday. She is {year-1996} years old. Good work on surviving" self[date(year, 11, 1) + rd( weekday=FR(+4))] = "Black Friday. I hope I can get some new socks" self[date(year, 12, 2)] = f"Female Kelly's Birthday. She's {year-1989} years old" self[date( year, 12, 3 )] = f"DuckBot's Inception Day. I'm about {(now()-datetime(2020, 12, 3, 10, 39, tzinfo=timezone())).seconds}s old" self[date(year, 12, 5)] = f"Taras' Birthday. He's {year-1989} years old"
def stand_up_view(request): # if no tickets have been claimed for today's stand up, show the option to select tickets today = datetime.date.today() previous_date = "" if today.weekday() == 0: previous_date = today + relativedelta(weekday=FR(-1)) else: previous_date = today - datetime.timedelta(1) projects = Project.objects.all() tasks = Task.objects.filter( task_created=previous_date).order_by('task_name') tickets = Ticket.objects.filter( ticket_created=previous_date).order_by('ticket_name') road_blocked_tickets = Ticket.objects.filter(ticket_status="Road Block") road_blocked_tasks = Task.objects.filter(task_status="Road Block") claimed_tickets = StandUpTickets.objects.filter(date=today).filter( user=request.user.id) claimed_tasks = StandUpTasks.objects.filter(date=today).filter( user=request.user.id) ticket_activity = TicketHistory.objects.filter( activity_date=previous_date).filter( ticket_active_user=request.user.id).order_by('ticket__ticket_name') task_activity = TaskHistory.objects.filter( activity_date=previous_date).filter( task_active_user=request.user.id).order_by('task__task_name') task_history = dict() for task in task_activity: try: task_history[task.task.task_name].append(task) except: task_history[task.task.task_name] = list() task_history[task.task.task_name].append(task) ticket_history = dict() for ticket in ticket_activity: try: ticket_history[ticket.ticket.ticket_name].append(ticket) except: ticket_history[ticket.ticket.ticket_name] = list() ticket_history[ticket.ticket.ticket_name].append(ticket) context = { 'projects': projects, 'task_activity': task_history, 'tasks': tasks, 'tickets': tickets, 'ticket_activity': ticket_history, 'road_blocked_tickets': road_blocked_tickets, 'road_blocked_tasks': road_blocked_tasks, 'claimed_tickets': claimed_tickets, 'claimed_tasks': claimed_tasks } return render(request, "stand_up.html", context)
def make_submit(test_data: pd.DataFrame, live_data: pd.DataFrame): last_friday = datetime.now() + relativedelta(weekday=FR(-1)) diagnostic_df = pd.concat([test_data, live_data]) diagnostic_df['friday_date'] = diagnostic_df.friday_date.fillna( last_friday.strftime('%Y%m%d')).astype(int) diagnostic_df['data_type'] = diagnostic_df.data_type.fillna('live') return diagnostic_df[['bloomberg_ticker', 'friday_date', 'data_type', 'signal']].reset_index(drop=True)
def dte_rnge(): l_fri = datetime.today() + relativedelta(weekday=FR(-1)) l_mon = l_fri + relativedelta(weekday=MO(-1)) two_sats_string = (l_fri + relativedelta(weekday=SA(-1))).strftime('%Y-%m-%d') #needs dashes for SQL query params last_sat_string = (l_fri + relativedelta(weekday=SA(1))).strftime('%Y-%m-%d') #needs dashes for SQL query params l_fri_string = l_fri.strftime('%Y-%m-%d') #need dashes to read correct string for filepath l_mon_string = l_mon.strftime('%Y%m%d') #need without dashes to filter correct dates in pending reports return {'as400start': l_mon_string, 'as400end': l_fri_string, 'keastonestart':two_sats_string, 'keastoneend':last_sat_string}
def _next_expiry_date(base_datetime): next_expiry = base_datetime + relativedelta(weekday=FR(1)) next_expiry = next_expiry.replace(hour=8, minute=0, second=0, microsecond=0) if base_datetime >= next_expiry: next_expiry += timedelta(days=7) return next_expiry
def loadticks(self, now, is_closed): ''' tz info back and forth is too much, clean that up ''' now = now.replace(tzinfo=None) if is_closed: m = int(59 - self.minutes) cutoff = (now + relativedelta(weekday=FR(-1)))\ .replace(hour=14, minute=m, second=55) else: cutoff = now - timedelta(minutes=self.minutes) cutoff = cutoff.replace(tzinfo=None) for table in self.tables: tname = table.__tablename__ market_id = market_ids[tname] price_type = price_types[tname] while True: # if latest_ts >= now: don't scrape # elif cutoff < latest_ts < now: scrape from latest_ts # elif latest_ts < cutoff : scrape from cutoff is_current, latest_ts = self.db_is_current(table, cutoff) if is_current: break # leave while loop, continue for loop if cutoff < latest_ts < now: l_ts = int(latest_ts.timestamp()) elif latest_ts < cutoff: # l_ts = int(cutoff.timestamp()) l_ts = int( (dt.datetime.now()-timedelta(minutes=self.minutes) ).timestamp()) if is_closed: # enough already l_ts = int(cutoff.timestamp()) ticks, status_code = self.get_ticks_after( market_id, l_ts, price_type ) # if session_id is invalid, get new and try again self.check_error(ticks, status_code) rows = [ table( timestamp=self.convert_wcf( int(tick['TickDate'][6:-2]) ), rate=tick['Price'] ) for tick in ticks['PriceTicks'] ] if len(rows) == 4000: self.db.session.add_all(rows) self.db.session.commit() elif len(rows) < 4000 and len(rows) > 0: self.db.session.add_all(rows) self.db.session.commit() break elif len(rows) == 0: break
def placeholder_dates(self): d = date.today() - relativedelta(months=1) first_day = d - relativedelta(days=d.day - 1) temp_d = d+relativedelta(day=31, weekday=FR(-1)) + \ relativedelta(weeks=1, days=1) if temp_d.day != 7: last_day = d+relativedelta(day=31, weekday=FR(-1)) + \ relativedelta(weeks=1, days=1) else: last_day = d+relativedelta(day=31, weekday=FR(-1)) + \ relativedelta(days=1) first_day = "{0}/{1}/{2}".format( str(first_day.month).zfill(2), str(first_day.day).zfill(2), first_day.year) last_day = "{0}/{1}/{2}".format( str(last_day.month).zfill(2), str(last_day.day).zfill(2), last_day.year) return first_day, last_day
def getLastFriday(date=None): """ 获取上周五的日期 :return: datetime.datetime """ if date is None: date = datetime.now() n = 1 if date.weekday() < 4 else 2 lastFri = date + relativedelta(weekday=FR(-n)) return datetime(lastFri.year, lastFri.month, lastFri.day)
def _populate(self, year): # New Year's Day self[date(year, JAN, 1)] = "Aña Nobo [New Year's Day]" # Dia di Betico self[date(year, JAN, 25)] = "Dia Di Betico [Betico Day]" # Carnaval Monday self[easter(year) + rd(days=-48)] = "Dialuna di Carnaval \ [Carnaval Monday]" # Dia di Himno y Bandera self[date(year, MAR, 18)] = "Dia di Himno y Bandera \ [National Anthem & Flag Day]" # Good Friday self[easter(year) + rd(weekday=FR(-1))] = "Bierna Santo [Good Friday]" # Easter Monday self[easter(year) + rd(days=1)] = "Di Dos Dia di Pasco di Resureccion \ [Easter Monday]" # King's Day if year >= 2014: kings_day = date(year, APR, 27) if kings_day.weekday() == 6: kings_day = kings_day - rd(days=1) self[kings_day] = "Aña di Rey [King's Day]" # Queen's Day if 1891 <= year <= 2013: queens_day = date(year, APR, 30) if year <= 1948: queens_day = date(year, AUG, 31) if queens_day.weekday() == 6: if year < 1980: queens_day = queens_day + rd(days=1) else: queens_day = queens_day - rd(days=1) self[queens_day] = "Aña di La Reina [Queen's Day]" # Labour Day self[date(year, MAY, 1)] = "Dia di Obrero [Labour Day]" # Ascension Day self[easter(year) + rd(days=39)] = "Dia di Asuncion [Ascension Day]" # Christmas Day self[date(year, DEC, 25)] = "Pasco di Nacemento [Christmas]" # Second Christmas self[date(year, DEC, 26)] = "Di Dos Dia di Pasco di \
def _populate(self, year): # New years self[date(year, JAN, 1)] = "Nieuwjaarsdag" easter_date = easter(year) # Easter self[easter_date] = "Eerste paasdag" # Good friday self[easter_date + rd(weekday=FR(-1))] = "Goede Vrijdag" # Second easter day self[easter_date + rd(days=1)] = "Tweede paasdag" # Ascension day self[easter_date + rd(days=39)] = "Hemelvaart" # Pentecost self[easter_date + rd(days=49)] = "Eerste Pinksterdag" # Pentecost monday self[easter_date + rd(days=50)] = "Tweede Pinksterdag" # First christmas self[date(year, DEC, 25)] = "Eerste Kerstdag" # Second christmas self[date(year, DEC, 26)] = "Tweede Kerstdag" # Liberation day if year >= 1945 and year % 5 == 0: self[date(year, MAY, 5)] = "Bevrijdingsdag" # Kingsday if year >= 2014: kings_day = date(year, APR, 27) if kings_day.weekday() == SUN: kings_day = kings_day - rd(days=1) self[kings_day] = "Koningsdag" # Queen's day if 1891 <= year <= 2013: queens_day = date(year, APR, 30) if year <= 1948: queens_day = date(year, AUG, 31) if queens_day.weekday() == SUN: if year < 1980: queens_day = queens_day + rd(days=1) else: queens_day = queens_day - rd(days=1) self[queens_day] = "Koninginnedag"
def pel_proj_sales(sql, conn): df = pd.read_sql(sql['pelsalesproj'], conn, parse_dates=['proj_dte']) df.set_index('proj_dte', inplace=True) df2 = df.resample('W-FRI', how='sum') df2['age_weeks'] = np.floor( ((datetime.today() + relativedelta(weekday=FR(-1)) - df2.index) / np.timedelta64(1, 'W'))) df3 = df2[df2['age_weeks'] < 0] df4 = df3.head(13).copy() df4.sort('age_weeks', inplace=True) return df4
def getURL(): today = datetime.datetime.today() monday = today-relativedelta(weekday=MO(-1)) #gets last friday datetime obj. global friday friday = today-relativedelta(weekday=FR(-1)) #Source reports data with Monday's date, but we stored it as a Friday date. global url url = 'https://market.jsda.or.jp/en/statistics/bonds/prices/otc/files/{year}/ES{date}.xls'.format(year = monday.strftime('%Y'), date = monday.strftime('%y%m%d'))
def cut_data(self, data, creation_time): today = str((now() + relativedelta(weekday=FR(-1))).date()) creation_time = str(creation_time) idx1 = 0 idx2 = 0 for idx, i in enumerate(data): if i['date'] == creation_time: idx1 = idx if i['date'] == today: idx2 = idx return data[idx1:idx2]
def next_friday_date_func(): next_friday_date_label = Label(startpage_top_right_frame, text="Next Friday:", bg="white") next_friday_date_label.grid(row=5, column=0) next_friday_date_date_var = StringVar() next_friday_date_date_entry = Entry( startpage_top_right_frame, textvariable=next_friday_date_date_var) next_friday_date_date_entry.grid(row=5, column=1) next_friday_date_date_check = (( today - relativedelta(weekday=FR(+1))).strftime("%d-%m-%Y")) if next_friday_date_date_check == today: next_friday_date_date_var.set( (today - relativedelta(weekday=FR(+2))).strftime("%d-%m-%Y")) else: next_friday_date_date_var.set( (today - relativedelta(weekday=FR(+1))).strftime("%d-%m-%Y"))
def predict(gbm: lgb.Booster, test_data: pd.DataFrame, full_data: pd.DataFrame, feature_names: List[str]): last_friday = datetime.now() + relativedelta(weekday=FR(-1)) date_string = last_friday.strftime('%Y-%m-%d') print(date_string) live_data = full_data.loc[date_string].copy() live_data.dropna(subset=feature_names, inplace=True) live_data[PREDICTION_NAME] = gbm.predict(live_data[feature_names]) test_data[PREDICTION_NAME] = gbm.predict(test_data[feature_names]) return dict( predicted_live_data=live_data, predicted_test_data=test_data )
def last_friday_date_func(): last_friday_date_label = Label(startpage_top_right_frame, text="Last Friday:", bg="white") last_friday_date_label.grid(row=4, column=0) last_friday_date_date_var = StringVar() last_friday_date_date_entry = Entry( startpage_top_right_frame, textvariable=last_friday_date_date_var) last_friday_date_date_entry.grid(row=4, column=1) last_friday_date_date_check = (( today - relativedelta(weekday=FR(-1))).strftime("%d-%m-%Y")) if last_friday_date_date_check == today: last_friday_date_date_var.set( (today - relativedelta(weekday=FR(-2))).strftime("%d-%m-%Y")) else: last_friday_date_date_var.set( (today - relativedelta(weekday=FR(-1))).strftime("%d-%m-%Y"))
def main(): """ Creates example_signal_upload.csv to upload for validation and live data submission """ # choose data as of most recent friday last_friday = datetime.now() + relativedelta(weekday=FR(-1)) feature_names, train_data, test_data, live_data = download_data( last_friday) model = train(train_data, feature_names, MODEL_ID, MODEL) predictions = predict(test_data, live_data, last_friday, feature_names, model) submit(predictions, "example_signals.csv", MODEL_ID)
def _populate(self, year): # New Year's Day self[date(year, JAN, 1)] = "Año Nuevo [New Year's Day]" # Feast of Saints Peter and Paul name = "San Pedro y San Pablo [Feast of Saints Peter and Paul]" self[date(year, JUN, 29)] = name # Independence Day name = "Día de la Independencia [Independence Day]" self[date(year, JUL, 28)] = name name = "Día de las Fuerzas Armadas y la Policía del Perú" self[date(year, JUL, 29)] = name # Santa Rosa de Lima name = "Día de Santa Rosa de Lima" self[date(year, AUG, 30)] = name # Battle of Angamos name = "Combate Naval de Angamos [Battle of Angamos]" self[date(year, OCT, 8)] = name # Holy Thursday self[easter(year) + rd(weekday=TH(-1))] = "Jueves Santo [Maundy Thursday]" # Good Friday self[easter(year) + rd(weekday=FR(-1))] = "Viernes Santo [Good Friday]" # Holy Saturday self[easter(year) + rd(weekday=SA(-1))] = "Sábado de Gloria [Holy Saturday]" # Easter Sunday self[easter(year) + rd(weekday=SU(-1))] = "Domingo de Resurrección [Easter Sunday]" # Labor Day self[date(year, MAY, 1)] = "Día del Trabajo [Labour Day]" # All Saints Day name = "Día de Todos Los Santos [All Saints Day]" self[date(year, NOV, 1)] = name # Inmaculada Concepción name = "Inmaculada Concepción [Immaculate Conception]" self[date(year, DEC, 8)] = name # Christmas self[date(year, DEC, 25)] = "Navidad [Christmas]"