hikyuu2/libs/hikyuu_python/_StockManager.cpp

45 lines
1.7 KiB
C++
Raw Normal View History

2015-01-07 01:26:14 +08:00
/*
* _StockManager.cpp
*
* Created on: 2011-12-4
* Author: fasiondog
*/
#include <boost/python.hpp>
#include <hikyuu/StockManager.h>
using namespace boost::python;
using namespace hku;
2016-04-03 00:08:31 +08:00
BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(getTradingCalendar_overloads,
getTradingCalendar, 1, 2)
BlockList (StockManager::*getBlockList_1)(const string&) = &StockManager::getBlockList;
BlockList (StockManager::*getBlockList_2)() = &StockManager::getBlockList;
2015-01-07 01:26:14 +08:00
void export_StockManager(){
class_<StockManager>("StockManager", no_init)
.def("instance", &StockManager::instance,
return_value_policy<reference_existing_object>())
.staticmethod("instance")
.def("tmpdir", &StockManager::tmpdir)
.def("getMarketInfo", &StockManager::getMarketInfo)
.def("getStockTypeInfo", &StockManager::getStockTypeInfo)
.def("size", &StockManager::size)
.def("getStock", &StockManager::getStock)
2016-04-03 00:08:31 +08:00
.def("getBlock", &StockManager::getBlock)
.def("getBlockList", getBlockList_1)
.def("getBlockList", getBlockList_2)
.def("getTradingCalendar", &StockManager::getTradingCalendar,
getTradingCalendar_overloads())
//.def("getTradingCalendar", &StockManager::getTradingCalendar,
// (arg("market")="SH", arg("start")=Datetime::minDatetime(),
// arg=("end")=Datetime::maxDatetime()))
2015-01-07 01:26:14 +08:00
.def("__len__", &StockManager::size)
.def("__getitem__", &StockManager::getStock)
2016-04-03 00:08:31 +08:00
//.def("__iter__", iterator<StockManager>())
.def("__iter__", iterator<const StockManager>())
2015-01-07 01:26:14 +08:00
;
}