def testValidateBal2(self): file = join(get_current_path(), 'samples', 'CLM BAL 2018-05-31.xls') records, summary = readFile(file) equityRecords = list(filter(equity, records)) self.assertEqual(len(equityRecords), 26) record = equityRecords[17] self.assertEqual(record['ticker'], '6886 HK') self.assertEqual(record['quantity'], 60000)
def open_dif(inputFile, portValues, outputDir, prefix): """ Read an input file, write 3 output csv files, namely, 1. HTM positions 2. AFS positions 3. cash the output file should be written to outputDir, and output file names should follow the below convention: <prefix>_yyyy-mm-dd_cash.csv <prefix>_yyyy-mm-dd_afs_positions.csv <prefix>_yyyy-mm-dd_htm_positions.csv output: return 3 string, for the full file path to the 3 output csv files. side effect: populate the portValues dictionary with The interface is exactly the same as the old DIF package's open_dif.open_dif() function, to replace it. """ from os.path import join records, summary = readFile(inputFile) portfolioId = records[0]['portfolio'] valuationDate = records[0]['valuation_date'] if portfolioId == '19437': prefix = 'DIF_' cashCsvFile = join(outputDir, prefix + valuationDate + '_cash.csv') afsCsvFile = join(outputDir, prefix + valuationDate + '_afs_positions.csv') htmCsvFile = join(outputDir, prefix + valuationDate + '_htm_positions.csv') writeCashCsv(cashCsvFile, records) writeAfsCsv(afsCsvFile, records) writeHtmCsv(htmCsvFile, records) portValues['valuation_date'] = valuationDate portValues['portfolio'] = portfolioId for key in ['nav', 'number_of_units', 'unit_price']: portValues[key] = summary[key] return [cashCsvFile, afsCsvFile, htmCsvFile]
def getRecordsGnt(): file = join(get_current_path(), 'samples', 'CLM GNT 2017-10-25.xls') return readFile(file)
def getRecordsBal(): file = join(get_current_path(), 'samples', 'CLM BAL 2017-07-27.xls') return readFile(file)
def getRecords(): file = join(get_current_path(), 'samples', 'CL Franklin DIF 2018-05-28(2nd Revised).xls') return readFile(file)