8 #ifndef TRADE_SYS_PORTFOLIO_PORTFOLIO_H_ 9 #define TRADE_SYS_PORTFOLIO_PORTFOLIO_H_ 11 #include "../allocatefunds/AllocateFundsBase.h" 12 #include "../selector/SelectorBase.h" 14 #if HKU_SUPPORT_SERIALIZATION 15 #include <boost/serialization/shared_ptr.hpp> 16 #include <boost/serialization/assume_abstract.hpp> 17 #include <boost/serialization/base_object.hpp> 37 string name()
const {
return m_name; }
38 void name(
const string& name) { m_name =
name; }
40 void run(
const KQuery& query);
58 void rebuildOnlyTotalTM();
72 #if HKU_SUPPORT_SERIALIZATION 74 friend class boost::serialization::access;
75 template<
class Archive>
76 void save(Archive & ar,
const unsigned int version)
const {
78 ar & boost::serialization::make_nvp(
"name", name_str);
79 ar & BOOST_SERIALIZATION_NVP(m_params);
80 ar & BOOST_SERIALIZATION_NVP(m_se);
81 ar & BOOST_SERIALIZATION_NVP(m_af);
82 ar & BOOST_SERIALIZATION_NVP(m_tm);
85 template<
class Archive>
86 void load(Archive & ar,
const unsigned int version) {
88 ar & boost::serialization::make_nvp(
"name", name);
90 ar & BOOST_SERIALIZATION_NVP(m_params);
91 ar & BOOST_SERIALIZATION_NVP(m_se);
92 ar & BOOST_SERIALIZATION_NVP(m_af);
93 ar & BOOST_SERIALIZATION_NVP(m_tm);
96 BOOST_SERIALIZATION_SPLIT_MEMBER()
106 typedef shared_ptr<Portfolio>
PFPtr;
void setTM(const TMPtr &tm)
Definition: Portfolio.h:46
TMPtr getTM()
Definition: Portfolio.h:42
SEPtr m_se
Definition: Portfolio.h:63
void setAF(const AFPtr &af)
Definition: Portfolio.h:48
shared_ptr< Portfolio > PortfolioPtr
Definition: Portfolio.h:52
void name(const string &name)
Definition: Portfolio.h:38
按索引方式查询K线数据条件
Definition: KQuery.h:19
#define GBToUTF8(s)
Definition: util.h:55
void load(Archive &ar, hku::Block &blk, unsigned int version)
Definition: Block_serialization.h:34
TMPtr m_tm_shadow
Definition: Portfolio.h:67
shared_ptr< TradeManager > TradeManagerPtr
客户程序应使用此类型进行实际操作
Definition: TradeManager.h:635
Definition: Portfolio.h:26
#define HKU_API
Definition: DataType.h:12
AFPtr m_af
Definition: Portfolio.h:64
void save(Archive &ar, const hku::Block &blk, unsigned int version)
Definition: Block_serialization.h:20
HKU_API std::ostream & operator<<(std::ostream &os, const Block &blk)
Definition: Block.cpp:13
shared_ptr< SelectorBase > SelectorPtr
客户程序都应使用该指针类型
Definition: SelectorBase.h:135
SEPtr getSE()
Definition: Portfolio.h:43
string m_name
Definition: Portfolio.h:61
shared_ptr< Portfolio > PFPtr
Definition: Portfolio.h:106
string name() const
Definition: Portfolio.h:37
shared_ptr< SelectorBase > SEPtr
Definition: SelectorBase.h:136
#define PARAMETER_SUPPORT
Definition: Parameter.h:233
AFPtr getAF()
Definition: Portfolio.h:44
void setSE(const SEPtr &se)
Definition: Portfolio.h:47
TMPtr m_tm
Definition: Portfolio.h:62
#define UTF8ToGB(s)
Definition: util.h:56
shared_ptr< TradeManager > TMPtr
Definition: TradeManager.h:636
Hikyuu核心命名空间,包含股票数据的管理、指标实现、交易系统框架等
Definition: Block.cpp:11
shared_ptr< Portfolio > PortfolioPtr
客户程序都应使用该指针类型
Definition: Portfolio.h:105
shared_ptr< AllocateFundsBase > AFPtr
Definition: AllocateFundsBase.h:181