Advertisement
Maurizio-Ciullo

Resample Dati Giacomo Calca

Nov 3rd, 2022
548
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.94 KB | None | 0 0
  1.  
  2.                                                         # RESAMPLE DATI #  
  3.                                                      # AUTORE GIACOMO CALCA #
  4.                                                        
  5.     # IL FILE DA EFFETTUARE IL RESAMPLE SI DEVE TROVARE NELLA CARTELLA VENV E' DEVE ESSERE 1 SOLO PER NON FARE CONFUSIONE
  6.     # IL NUOVO FILE RESEMPLATO VERRA' CREATO NELLA STESSA CARTELLA VENV
  7.    
  8.     # QUANDO SI CARICANO I DATI SU TRADESTATION L'ORARIO DELLA SESSION DA IMPOSTARE COME INIZIO E FINE PUO' FAR RITORNARE DEGLI ORARI SULLE
  9.     # CANDELE DIVERSI DA TRADINGVIEW, QUINDI TROVARE LA CORRETTA SESSIONE DI INIIO E FINE ES: 23:00 TO 23:00 OPPURE 00:00 TO 00:00
  10.     # E VERIFICARE POI SE I GLI INDICATORI SULLE SESSIONI DI TRADESTATION COMBACIANO CON QUELLE DI TRADINGVIEW.
  11.     # DI SOLITO STO' CARICANDO SESSIONI SU TRADESTATION DA 23:00 TO 23:00 E CON GLI INDICATORI DI SESSIONE PTN NON HO AVUTO PROBLEMI.
  12.  
  13.  
  14.  
  15.  
  16. import pandas as pd
  17. import glob
  18. import matplotlib.pyplot as plt
  19.  
  20.  
  21. def resampler():
  22.     '''
  23.    Il programma converte tutti i file a 15 minuti
  24.    che stanno nella sua stessa cartella in 45 minuti
  25.    creandone una copia gia rinominata correttamente
  26.    '''
  27.     files = glob.glob('*15m.csv')                          # CAMBIA I MINUTI DELLA FONDTE DEL DATAFEED !!!
  28.     for file in files:
  29.         df1 = pd.read_csv(file)
  30.         df = pd.read_csv(file)
  31.  
  32.         df['time'] = pd.to_datetime(df['time'] + ' ' + df['date'])
  33.         df.set_index('time', inplace=True)
  34.         df['volume'] = df['volume'].resample('45T').sum()   # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  35.         df['low'] = df['low'].resample('45T').min()         # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  36.         df['high'] = df['high'].resample('45T').max()       # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  37.         df['open'] = df['open'].resample('45T').first()     # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  38.         df['close'] = df['close'].resample('45T').last()    # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  39.         df = df.reset_index()
  40.         df.set_index('date', inplace=True)
  41.         df['time'] = df['time'].dt.strftime('%H:%M:%S')
  42.         df.dropna(inplace=True)
  43.         name = file[0:-7] + '45m.csv'                       # CAMBIA IL NOME DEL RESMPLE CHE TI INTERESSA !!!
  44.         df.to_csv(name, header=True)
  45.  
  46.  
  47. resampler()
  48.  
  49.  
  50.  
  51.  
  52.                             # ESEMPIO RESAMPLE FONTE DATAFEED 5 MINUTI SU RESAMPLE DI 60 MINUTI
  53.                            
  54. """
  55. import pandas as pd
  56. import glob
  57. import matplotlib.pyplot as plt
  58.  
  59.  
  60. def resampler():
  61.    '''
  62.    Il programma converte tutti i file a 15 minuti
  63.    che stanno nella sua stessa cartella in 45 minuti
  64.    creandone una copia gia rinominata correttamente
  65.    '''
  66.    files = glob.glob('*5m.csv')                          # CAMBIA I MINUTI DELLA FONDTE DEL DATAFEED !!!
  67.    for file in files:
  68.        df1 = pd.read_csv(file)
  69.        df = pd.read_csv(file)
  70.  
  71.        df['time'] = pd.to_datetime(df['time'] + ' ' + df['date'])
  72.        df.set_index('time', inplace=True)
  73.        df['volume'] = df['volume'].resample('60T').sum()   # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  74.        df['low'] = df['low'].resample('60T').min()         # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  75.        df['high'] = df['high'].resample('60T').max()       # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  76.        df['open'] = df['open'].resample('60T').first()     # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  77.        df['close'] = df['close'].resample('60T').last()    # CAMBIA I MINUTI DEL RESAMPLE CHE TI INTERESSA !!!
  78.        df = df.reset_index()
  79.        df.set_index('date', inplace=True)
  80.        df['time'] = df['time'].dt.strftime('%H:%M:%S')
  81.        df.dropna(inplace=True)
  82.        name = file[0:-7] + '60m.csv'                       # CAMBIA IL NOME DEL RESMPLE CHE TI INTERESSA !!!
  83.        df.to_csv(name, header=True)
  84.  
  85.  
  86. resampler()
  87. """
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement