//交易规则:
//求25周期的最高点,突破高点开多。
//求15周期的最低点,突破低点开空。
//求25周期的最低点,突破低点平多
//求80周期的最高点,突破高点平空。
//每日最多开仓3次
//开仓时间9.30-14.40
//收盘前平仓14.55
Params
Numeric LengthKaiKong(15);
Numeric LengthKaiDuo(25);
Numeric LengthPingduo(25);
Numeric LengthPingKong(80);
Numeric Lots(5);
Numeric BeginTime1(9300);
Numeric BeginTime2(1440);
Numeric EndTime(1455);
Vars
Series<Numeric> HighestKaiDuo ;//开多上轨
Series<Numeric> LowestKaiKong ;//开空下轨
Series<Numeric> LowestPingDuo ;//平多下轨
Series<Numeric> HighestPingKong ;//平空上轨
Series<Numeric> Freq;//开仓次数赋值
Events
OnBar(ArrayRef<Integer> indexs)
{
HighestKaiDuo=Highest(High[1],LengthKaiDuo);//开多上轨
LowestKaiKong=Lowest(Low[1],LengthKaiKong);//开空下轨
LowestPingDuo=Lowest(Low[1],LengthPingduo);//平多下轨
HighestPingKong=Highest(High[1],LengthPingKong);//平空上轨
//PlotNumeric("开多上轨",HighestKaiDuo);
//PlotNumeric("开空下轨",LowestKaiKong);
//PlotNumeric("平多下轨",LowestPingDuo);
//PlotNumeric("平空上轨",HighestPingKong);
IF(TrueDate(0)!=TrueDate(1))
{
Freq=0;
}
Else If(Time>=BeginTime1*0.0001 And Time<BeginTime2*0.0001)
{
If(Freq<3 And MarketPosition==0)//最多开3次仓 0 1 2
{
If(High>=HighestKaiDuo)
{
Buy(Lots,Max(Open,HighestKaiDuo));
Freq=Freq+1;
Commentary("开多");
}
If(LOW<=LowestKaiKong)
{
SellShort(Lots,Min(Open,LowestKaiKong));
Freq=Freq+1;
Commentary("开空");
}
}
}
//平仓
If(MarketPosition!=0)
{
If(Time<EndTime*0.0001)
{
If(MarketPosition==1 And Low<=LowestPingDuo)
{
Sell(Lots,Min(Open,LowestPingDuo));
Commentary("平多");
}
If(MarketPosition==-1 And High>=HighestPingKong)
{
BuyToCover(Lots,Max(Open,HighestKaiDuo));
Commentary("平空");
}
}
}
Else
{
IF(Time>=EndTime*0.0001)
{
Sell(0,Open);
BuyToCover(0,Open);
Commentary("收盘平仓");
}
}
}
时间问题。
9:30 对应的time=0.0930
9300*0.0001=0.93
哪位大神能指点一下吗?多谢!!