9 #include <boost/test/unit_test.hpp> 11 #define BOOST_TEST_MODULE test_hikyuu_trade_sys_suite 12 #include <boost/test/unit_test.hpp> 15 #include <hikyuu/StockManager.h> 16 #include <hikyuu/trade_manage/crt/crtTM.h> 17 #include <hikyuu/trade_sys/moneymanager/MoneyManagerBase.h> 26 TradeManagerPtr
getTM()
const {
return m_tm; }
27 int getX()
const {
return m_x; }
28 void setX(
int x) { m_x = x; }
30 virtual size_t _getBuyNumber(
const Datetime& datetime,
const Stock& stock,
31 price_t price, price_t risk, SystemPart from) {
42 return MoneyManagerPtr(p);
59 StockManager& sm = StockManager::instance();
60 Stock stock = sm[
"sh000001"];
61 TradeManagerPtr tm = crtTM();
66 BOOST_CHECK(p->name() ==
"MoneyManagerTest");
67 BOOST_CHECK(p_src->
getTM() == TradeManagerPtr());
69 BOOST_CHECK(p_src->
getTM() == tm);
70 BOOST_CHECK(p->getBuyNumber(Datetime(200001010000), stock, 10.0, 10.0, PART_SIGNAL) == 0);
71 BOOST_CHECK(p->getSellNumber(Datetime(200001010000), stock, 10.0, 10.0, PART_SIGNAL) == Null<size_t>());
72 BOOST_CHECK(p_src->
getX() == 0);
74 BOOST_CHECK(p_src->
getX() == 10);
76 BOOST_CHECK(p_src->
getX() == 0);
80 MoneyManagerPtr p_clone = p->clone();
81 BOOST_CHECK(p != p_clone);
83 BOOST_CHECK(p->name() ==
"MoneyManagerTest");
85 BOOST_CHECK(p_src->
getX() == 10);
TradeManagerPtr getTM() const
virtual size_t _getBuyNumber(const Datetime &datetime, const Stock &stock, price_t price, price_t risk, SystemPart from)
virtual MoneyManagerPtr _clone()
BOOST_AUTO_TEST_CASE(test_MoneyManager)
virtual ~MoneyManagerTest()