Params
Numeric TimesMaxToday(1); //限制当天开仓最多次数;
Vars
Series<Numeric> OpenToday;
Numeric EndTime(14.50);
Numeric BeginTime(9.00);
Bool TimeCond;
series<numeric> myflag;
Events
onBar(ArrayRef<Integer> indexs)
{
OpenToday=OpenD;
PlotNumeric("OpenToday",OpenToday);
TimeCond=Time>=BeginTime/100&&Time<=EndTime/100;//交易时间限制
if(date!=date[1])
{
myflag =0;
}
If(MarketPosition==0 && myflag<3 AND TimeCond && C[1]<OpenToday &&close[1]<close[2])
{
SellShort(0,O);
myflag = myflag[1]+1;
}
If(MarketPosition==0 && myflag< 3 &&TimeCond && C[1]>OpenToday AND close[1]>close[2])
{
Buy(0,O);
myflag = myflag[1]+1;
}
//平仓
If(MarketPosition==1 && BarsSinceentry > 1)
{
If( C[1]<OpenToday)
{
Sell(0,o);
SellShort(0,O);
}
}else if(MarketPosition==-1 && BarsSinceentry > 1)
{
if( C[1]>OpenToday)
{
BuyToCover(0,O);
Buy(0,O);
}
}
//止盈
If(MarketPosition==1 && BarsSinceentry > 1)
{
If( C[1]>=EntryPrice[1]+100*MinMove*PriceScale &&close[1]<close[3])
{
Sell(0,o);
}
}else if(MarketPosition==-1 && BarsSinceentry > 1)
{
if( C[1]<=EntryPrice[1]-100*MinMove*PriceScale AND close[1]>close[3])
{
BuyToCover(0,o);
}
}
if(Time>=0.1455)
{ if(marketposition==-1)
{ BuyToCover(0,Open); }
if(marketposition==1)
{ Sell(0,Open);}}
}
编译能通过,你指的是什么问题?
这个策略的问题是什么