int main ( int argc, char ** argv ) { ifstream mf_file("mutual_funds.txt"); ofstream results("results.txt"); string mf; std::vector<double> rets(8); int num = 30; std::vector<mystruct0> rets; mf = "SPY"; for (unsigned q = 0; q < 8; ++q) { rets[q] = get_return( mf, MARKET_DATA_WEEKLY, NUM_WEEKS_IN_A_QUARTER, q*NUM_WEEKS_IN_A_QUARTER); } mystruct a(mf, rets); rets.push_back(a); print_rets(mf, rets); try { while (mf_file.good()) { getline(mf_file, mf); if (mf.empty()) break; for (unsigned q = 0; q < 8; ++q) { rets[q] = get_return( mf, MARKET_DATA_WEEKLY, NUM_WEEKS_IN_A_QUARTER, q*NUM_WEEKS_IN_A_QUARTER); } print_rets(mf, rets); if (num-- == 0) break; } } catch (exception e) { } mf_file.close(); system("pause"); return 0; }
int Database::ReadFile(int file_num) { printf("*--------------Database Read-----------------*\n"); std::string dir = MACHINEPATH; dir.append("Database/Corpus/"); std::string suffix = ".txt"; char buf[10]; sprintf(buf, "%d", file_num); std::ifstream database_setup; printf("Reading database setup file...\n"); std::string db_file(dir); db_file.append("database_summary_"); db_file.append(buf); db_file.append(suffix); database_setup.open(db_file.c_str()); database_setup >> mfcc_num_coef; database_setup >> fft_frame_length; fft_frame_length += 2; database_setup >> database_frame_num; database_setup >> num_tracks; database_setup.close(); printf("Complete\n"); std::ifstream mfccFile; printf("Reading mfcc file...\n"); std::string mf_file(dir); mf_file.append("mfcc_frames_"); mf_file.append(buf); mf_file.append(suffix); mfccFile.open(mf_file); mfcc_matrix = (double**)malloc(sizeof(double*)*database_frame_num); for(int i = 0; i < database_frame_num; i++){ mfcc_matrix[i] = (double*)malloc(sizeof(double)*mfcc_num_coef); for(int j = 0 ; j < mfcc_num_coef;j++){ mfccFile >> mfcc_matrix[i][j]; } } mfccFile.close(); printf("Complete\n"); std::ifstream fftFile; printf("Reading fft frames file...\n"); std::string ft_file(dir); ft_file.append("fft_frames_"); ft_file.append(buf); ft_file.append(suffix); fftFile.open(ft_file); fft_matrix = (double**)malloc(sizeof(double*)*database_frame_num); for(int i = 0 ; i < database_frame_num; i++){ fft_matrix[i] = (double*)malloc(sizeof(double)*fft_frame_length); for(int j = 0; j < fft_frame_length; j++){ fftFile >> fft_matrix[i][j]; } } fftFile.close(); printf("Complete\n"); debug_print(("Reading track frame lengths...")); std::string track_frame_l_file(MACHINEPATH); track_frame_l_file.append("Database/Corpus/track_frame_lengths.txt"); std::ifstream tr_frm_l_file; tr_frm_l_file.open(track_frame_l_file); track_frame_length = (int*)malloc(sizeof(int)*num_tracks); for(int i = 0 ; i < num_tracks; i++){ tr_frm_l_file >> track_frame_length[i]; } tr_frm_l_file.close(); debug_print(("\tComplete\n")); debug_print(("Reading buf lengths...")); std::string buf_s_file_p(MACHINEPATH); buf_s_file_p.append("Database/Corpus/buffer_sizes.txt"); std::ifstream buf_s_file; buf_s_file.open(buf_s_file_p); track_buffer_sizes = (long*)malloc(sizeof(long)*num_tracks); for(int i = 0 ; i < num_tracks; i++){ buf_s_file >> track_buffer_sizes[i]; } buf_s_file.close(); debug_print(("\tComplete\n")); debug_print(("Number MFCC Coefficients : %d\n",mfcc_num_coef)); debug_print(("Number values p FFT frame : %d\n",fft_frame_length)); debug_print(("Total num frames in database : %ld\n\n",database_frame_num)); printf("*--------------------------------------------*\n"); gr_size = (int)database_frame_num; gr_coef = mfcc_num_coef; gr_fft = fft_frame_length; return 0; }
void func1 ( void ) { matrix<double> etf_returns(100, NUM_WEEKS_IN_A_YEAR); ifstream ifile("etfs.txt"); unsigned etf_i = 0; string line, etf_symbol; while (ifile.good()) { getline(ifile, line); if (line.empty()) break; etf_symbol = get_csv_line_cell_as_string(line, 0); string filename = download_market_data(etf_symbol, MARKET_DATA_WEEKLY); populate_return_vector( filename, NUM_WEEKS_IN_A_YEAR, etf_i, etf_returns); ++etf_i; } ifstream mf_file("mutual_funds.txt"); string mf; unsigned num_mfs = 0; std::vector<mystruct> ret_vector; while (mf_file.good()) { std::vector<multivariate_regression_results_t> results; getline(mf_file, mf); string file_str = download_market_data(mf, MARKET_DATA_WEEKLY); std::vector<double> mf_prices; populate_price_vector( file_str, NUM_WEEKS_IN_A_YEAR, mf_prices); if (mf_prices.size() < NUM_WEEKS_IN_A_YEAR) continue; double _52wk = 100. * (mf_prices[0] - mf_prices[NUM_WEEKS_IN_A_YEAR-1])/mf_prices[NUM_WEEKS_IN_A_YEAR-1]; double _26wk = 100. * (mf_prices[0] - mf_prices[2*NUM_WEEKS_IN_A_QUARTER-1])/mf_prices[2*NUM_WEEKS_IN_A_QUARTER-1]; double _13wk = 100. * (mf_prices[0] - mf_prices[NUM_WEEKS_IN_A_QUARTER-1])/mf_prices[NUM_WEEKS_IN_A_QUARTER-1]; ret_vector.push_back(mystruct(mf, _52wk, _26wk, _13wk)); if (num_mfs++ > 1000) break; } std::sort( ret_vector.begin(), ret_vector.end(), sort_52wk()); }
int Database::ReadFileGroup(int file_num,int s_grouping,int type) { grouping = s_grouping; // grouping must be > 0 printf("\n*--------------Database Group Read-----------------*\n"); std::string dir = MACHINEPATH; switch(type){ case 0: dir.append("Database/Corpus/"); break; case 1: dir.append("Database/Corpus/DB/"); break; } //dir.append("Database/Corpus/"); std::string suffix = ".txt"; char buf[10]; // enough to hold all numbers up to 64-bits sprintf(buf, "%d", file_num); std::ifstream database_setup; printf("Reading database setup file..."); std::string db_file(dir); db_file.append("database_summary_"); db_file.append(buf); db_file.append(suffix); database_setup.open(db_file.c_str()); database_setup >> mfcc_num_coef; database_setup >> fft_frame_length; fft_frame_length += 2; database_setup >> database_frame_num; database_setup >> num_tracks; database_setup.close(); printf("\tComplete\n"); std::ifstream mfccFile; printf("Reading mfcc file..."); std::string mf_file(dir); mf_file.append("mfcc_frames_"); mf_file.append(buf); mf_file.append(suffix); mfccFile.open(mf_file); grouped_size = (long)floor(database_frame_num/grouping); int grouped_coef = mfcc_num_coef * grouping; gr_size = (int)grouped_size; gr_coef = grouped_coef; mfcc_matrix = (double**)malloc(sizeof(double*)*grouped_size); for(int i = 0; i < grouped_size; i++){ mfcc_matrix[i] = (double*)malloc(sizeof(double)*grouped_coef); } for(int i = 0; i < grouped_size ; i++){ for(int j = 0 ; j < grouped_coef;j++){ mfccFile >> mfcc_matrix[i][j]; } } mfccFile.close(); printf("\tComplete\n"); std::ifstream fftFile; printf("Reading fft frames file..."); std::string ft_file(dir); ft_file.append("fft_frames_"); ft_file.append(buf); ft_file.append(suffix); fftFile.open(ft_file); fft_length_grouped = fft_frame_length * grouping; printf("fft len group : %d\n",fft_length_grouped); fft_matrix = (double**)malloc(sizeof(double*)*grouped_size); for(int i = 0 ; i < grouped_size; i++){ fft_matrix[i] = (double*)malloc(sizeof(double)*fft_length_grouped); } for(int i = 0 ; i < grouped_size; i++){ for(int j = 0; j < fft_length_grouped; j++){ fftFile >> fft_matrix[i][j]; // printf("%f ",fft_matrix[i][j]); } } fftFile.close(); printf("\tComplete\n"); gr_size = (int)grouped_size; gr_fft = fft_length_grouped; debug_print(("Reading track frame lengths...")); std::string track_frame_l_file(dir); track_frame_l_file.append("track_frame_lengths.txt"); std::ifstream tr_frm_l_file; tr_frm_l_file.open(track_frame_l_file); track_frame_length = (int*)malloc(sizeof(int)*num_tracks); for(int i = 0 ; i < num_tracks; i++){ tr_frm_l_file >> track_frame_length[i]; printf("Track Length : %d \n",track_frame_length[i]); } tr_frm_l_file.close(); debug_print(("Reading buf lengths...")); std::string buf_s_file_p(dir); buf_s_file_p.append("buffer_sizes.txt"); std::ifstream buf_s_file; buf_s_file.open(buf_s_file_p); track_buffer_sizes = (long*)malloc(sizeof(long)*num_tracks); for(int i = 0 ; i < num_tracks; i++){ buf_s_file >> track_buffer_sizes[i]; } buf_s_file.close(); debug_print(("\tComplete\n")); debug_print(("\tComplete\n")); printf("Num Tracks : %d\n",num_tracks); debug_print(("Number MFCC Coefficients : %d\n",mfcc_num_coef)); debug_print(("Number values p FFT frame : %d\n",fft_frame_length)); debug_print(("Total num frames in database : %ld\n",database_frame_num)); debug_print(("Grouped MFCC num coefs : %d\n",grouped_coef)); debug_print(("Num frames when grouped : %ld\n",grouped_size)); GroupTrackLengths(); printf("*--------------------------------------------------*\n"); return 0; }