⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 do_portfolio.h

📁 股票分析源代码
💻 H
字号:
#ifndef __HBSTOCK_DO_PORTFOLIO_H__
#define __HBSTOCK_DO_PORTFOLIO_H__

#include "gnu/config_file_map.h"

#include "hbstock2/portfolio.h"
#include "hbstock2/stock_selector_manger.h"

namespace hbstock2
{

struct PflFileData
{
	std::string name;
	std::string title;
	
	bool is_selected;	
	bool is_cluster;
	
	gnu::VectConfigFileItemPtr vect_item_ptr;
	
public :
	PflFileData() :
		name("w"),
		title("w"),
		is_selected(false),
		is_cluster(true),
		vect_item_ptr(gnu::VectConfigFileItemPtr(new gnu::VectConfigFileItem))
	{
		
	}
	
};

typedef std::vector<PflFileData> VectPflFileData;

void init_portfolio_tool();
void fini_portfolio_tool();

bool PflFileDataSort (const PflFileData& data1,
	const PflFileData& data2);
	
bool PflDataSort (const PflData& data1,
	const PflData& data2);
bool PflDataSort_selector_name (const PflData& data1,
	const PflData& data2);
	
void get_last_cmb_key(std::string& str_cmb_key,const unsigned int i_size);

std::string get_pfl_data_file_name(void);
void check_pfl_flag(bool& is_write_self_stocks,
	bool& is_include_test_data,
	bool& is_only_include_selected_data);
void create_pfl_config_file(const char* p_ch_pfl_config_file_name);

void write_self_pfl_title(const SetStockSelectorPtr& set_selector_ptr);

// add it after executing selector 
void write_self_pfl_stocks(const std::map<int,VectSelectorDataPtr>& map_data);

// add it after executing portfolio
void write_self_pfl_stocks_pfldata(const MapPflSumData& map_data,
	const bool is_test_treate = false);

bool check_pfl_tool();
bool get_pfl_file_data_from_file(VectPflFileData& vect_pfl_file_data,
	std::string& str_file_name);
void check_pfl_file_data(VectPflFileData& vect_pfl_file_data,const std::string& str_select);

PflSumDataPtr find_map_pfl_sum_data(const std::string& str_market_code,
	const MapPflSumData& map_pfl_sum_data);

void init_map_pfl_sum_data(MapPflSumData& map_pfl_sum_data,
	const bool is_user_defined_type=false,
	const char* p_ch_date = NULL);

void obtain_pfl_data(MapPflSumData& map_pfl_sum_data,
	const std::map<int,VectSelectorDataPtr>& map_data,
	const char* p_ch_date = NULL);

void obtain_pfl_data_from_file(MapPflSumData& map_pfl_sum_data,
	const VectPflFileData& vect_pfl_file_data,
	const char* p_ch_date = NULL);
	
void treat_portfolio(MapPflSumData& map_pfl_sum_data,
	const unsigned int pfltool_id,	
	const char* p_ch_date = NULL,const char* p_file_name = NULL);

void print_pfl_result(std::ostream& ofs ,
	const MapPflSumData& map_pfl_sum_data,
	const PortfolioToolPtr& pfl_tool_ptr,	
	const char* p_ch_prefix=NULL);

void pring_pfl_market_info_text(std::ostream& ofs,
	const PflSumDataPtr& pfl_sum_data_ptr,
	const bool is_print_bad_stock_of_userdefined = false,
	const bool is_print_bad_stock_of_selector = true);	

} // namespace hbstock2

#endif  // #ifndef __HBSTOCK_DO_PORTFOLIO_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -