知识库 > 金融建模 > 公用函数 > 金融工程 > Dev

PortfolioCalcSys    

简述
交易策略测试(复杂参数,可选条件)
定义

PortfolioCalcSys(Sector:String,InitMoney:Real,StartDate:TDateTime,EndDate:TDateTime,CommissionCharge:Real,ScaleRestriction:Real,Negotiability:Real,BuyC:Expression,SellC:Expression,MinSell:Integer,MinBuy:Integer,BuyPrice:Expression,SellPrice: Expression,ValuePrice:Expression,MaxBuyRate:Real,
MaxSellRate:Real,MinCommissionCharge:Real,BuyUnit:Integer,
FreeZeRate:Real,BaseMoney:Real,ListDays:Integer): TableArray
参数

Sector:字符串,市场板块
InitMoney:整数,初始资金
StartDate:日期型时间,开始时间
EndDate:日期型时间,截止时间
CommissionCharge:实数,手续费
ScaleRestriction:实数,单支证券比例约束(0.1表示10%)
Negotiability:实数,流通性(0.05表示5%)
BuyC:布尔表达式,买入条件
SellC:布尔表达式,卖出条件
MinSell:整数,最小卖出股数
MinBuy:整数,最小买入股数
BuyPrice:用户自定义,表达式,买入价格
SellPrice:用户自定义,表达式,卖出价格
ValuePrice:用户自定义,表达式,计算价值
MaxBuyRate:实数,最大买入占的比例(和实际交易值比,0.1表示10%)
MaxSellRate:实数,最大卖出比例(和真实交易相比,0.1表示10%)
MinCommissionCharge:实数,最低手续费
BuyUnit:整数,买入单位
FreeZeRate:实数,冻结比例(当日卖出得到的资金不准许买入的比例,1表示全部冻结)
BaseMoney:实数,最低操作资金(防止过多操作)
ListDays:整数,起码上市天数

返回:交易策略测试(复杂参数,可选条件)
  • 说明:
    测试从StartDate开始到EndDate为止,满足交易(买卖)条件且剩余金额足够买入最小买入股数(持有的股数大于最小卖出股数)则买入(卖出)股票。在EndDate结算所有股票市值、现金市值,统计出总市值。
    该函数考虑了费率问题。复权方式为1(比例复权),即考虑为分红再投资。



    范例

      Return PortfolioCalcSys("申万煤炭开采",1000000,inttodate(20120825),
    inttodate(20121023),0,0.2,0.05,@(StockZF3()>8),@(StockZF3()<-3),100,100,@close(),@close(),@close(),0.1,0.1,5,100,1,10000,100);

    //结果:

相关