hikyuu2/hikyuu_cpp/hikyuu/trade_manage/imp/ZeroTradeCost.h

51 lines
1.2 KiB
C++

/*
* ZeroTradeCost.h
*
* Created on: 2013-3-3
* Author: fasiondog
*/
#pragma once
#ifndef ZEROTRADECOST_H_
#define ZEROTRADECOST_H_
#include "../TradeCostBase.h"
namespace hku {
class HKU_API ZeroTradeCost: public TradeCostBase {
TRADE_COST_NO_PRIVATE_MEMBER_SERIALIZATION
public:
ZeroTradeCost();
virtual ~ZeroTradeCost();
/**
* 计算买入成本
* @param datetime 交易日期
* @param stock 交易的证券对象
* @param price 买入价格
* @param num 买入数量
* @return CostRecord 交易成本记录
*/
virtual CostRecord getBuyCost(const Datetime& datetime,
const Stock& stock, price_t price, size_t num) const;
/**
* 计算卖出成本
* @param datetime 交易日期
* @param stock 交易的证券对象
* @param price 卖出价格
* @param num 卖出数量
* @return CostRecord 交易成本记录
*/
virtual CostRecord getSellCost(const Datetime& datetime,
const Stock& stock, price_t price, size_t num) const;
/** 子类私有变量克隆接口 */
virtual TradeCostPtr _clone();
};
} /* namespace hku */
#endif /* ZEROTRADECOST_H_ */