- 精华
- 0
- 在线时间
- 14 小时
- UID
- 17218
- 积分
- 67
- 帖子
- 11
- 阅读权限
- 30
- 注册时间
- 2010-10-7
- 最后登录
- 2012-11-4
- 精华
- 0
- UID
- 17218
- 积分
- 67
- 帖子
- 11
- 主题
- 3
- 阅读权限
- 30
- 注册时间
- 2010-10-7
- 最后登录
- 2012-11-4
|
下面这个程序 它有输出到c盘符下debug文件中.这里面记录发给你们看看
此次操作时间10:0:0
全局变量初始化GetGlobalVar=0
--------------------------------------
此时全局变量GetGlobalVar=0
此次操作时间10:1:0
If(con2 && GetGlobalVar(0)==0)中,全局变量GetGlobalVar=1
--------------------------------------
我很疑惑,为什么没有执行相应的动作.
比如If(con2 && GetGlobalVar(0)==0)满足,应该执行
A_SendOrder(Enum_Sell,Enum_Entry,tradelots,Q_BidPrice - 2*MinMove);
再将它输出到日志文件debug中.
但是结果就是只看到输出到日志文件没看到指令被执行.
困惑啊!
//------------------------------------------------------------------------
// 简称: AQ
// 名称: AQ
// 类别: 交易指令
// 类型: 多头建仓
// 输出:
// 说明: 规定全局变量为0时可开仓,为1时不可开仓.
// 在第一根bar时初始化全局变量GetGlobalVar(0)=0, 每次开仓时修改全局变量SetGlobalVar(0,1)下一根bar线来时,其全局变量GetGlobalVar(0)为1,如果不满足平仓条件那么全局变量值未变,满足平仓条件,则将修改全局变量SetGlobalVar(0,0),如此则可继续开仓.
//------------------------------------------------------------------------
Params
Numeric FastLength( 6 );
Numeric SlowLength( 13 );
Numeric MACDLength( 4 );
Numeric tradelots(1);
Vars
NumericSeries MACDValue;
NumericSeries AvgMACD;
NumericSeries CCb;
NumericSeries CCs;
Bool con1;
Bool con2;
Begin
MACDValue = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;
AvgMACD = XAverage(MACDValue,MACDLength);
Con1 = MACDValue > AvgMACD ;
Con2 = MACDValue < AvgMACD ;
CCb=A_BuyPosition;
CCs=A_SellPosition;
If(((Hour==9)&&(Minute<=05)) ||(CurrentTime()<0.0906))
{
Return;
}
If(BarStatus==0 || GetGlobalVar(0) == InvalidNumeric)
{
SetGlobalVar(0,0);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","全局变量初始化GetGlobalVar=" + Text(GetGlobalVar(0)));
FileAppend("C:\\debug.txt","--------------------------------------");
}
If(A_TotalPosition <> 0)
{
If(CCb>0 && Con2)
{
A_SendOrder(Enum_Sell,Enum_ExitToday,CCb,Q_BidPrice);
SetGlobalVar(0,1);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","满足Con2平仓后,全局变量GetGlobalVar=" + Text(GetGlobalVar(0)));
FileAppend("C:\\debug.txt","--------------------------------------");
}
If(CCs>0 && Con1)
{
A_SendOrder(Enum_Buy,Enum_ExitToday,CCs,Q_AskPrice);
SetGlobalVar(0,1);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","满足Con1平仓后,全局变量GetGlobalVar=" + Text(GetGlobalVar(0)));
FileAppend("C:\\debug.txt","--------------------------------------");
}
}
If(Con1 && GetGlobalVar(0)==0)
{
A_SendOrder(Enum_Buy,Enum_Entry,tradelots,Q_AskPrice + 2*MinMove);
FileAppend("C:\\debug.txt","此时全局变量GetGlobalVar=" + Text(GetGlobalVar(0)));
SetGlobalVar(0,1);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","If(con1 && GetGlobalVar(0)==0)后,全局变量GetGlobalVar=" + Text(GetGlobalVar(0)));
FileAppend("C:\\debug.txt","--------------------------------------");
}
If(Con2 && GetGlobalVar(0)==0)
{
A_SendOrder(Enum_Sell,Enum_Entry,tradelots,Q_BidPrice - 2*MinMove);
FileAppend("C:\\debug.txt","此时全局变量GetGlobalVar=" + Text(GetGlobalVar(0)));
SetGlobalVar(0,1);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","If(con2 && GetGlobalVar(0)==0)中,全局变量GetGlobalVar=" + Text(GetGlobalVar(0)));
FileAppend("C:\\debug.txt","--------------------------------------");
}
If (((Hour==14)&&(Minute>=54))||(CurrentTime()>0.1455)) //图表时间、本地时间共同约束)
{
If(CCb>0)
{
A_SendOrder(Enum_Sell,Enum_ExitToday,CCb,Q_BidPrice);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","最后时间,持有多单,平多");
FileAppend("C:\\debug.txt","--------------------------------------");
} //如果持有多单,平多
If(CCs>0)
{
A_SendOrder(Enum_Buy,Enum_ExitToday,CCs,Q_AskPrice);
FileAppend("C:\\debug.txt","此次操作时间" + Text(Hour) + ":" + text(Minute) + ":" + Text(Second));
FileAppend("C:\\debug.txt","最后时间,持有空单,平空");
FileAppend("C:\\debug.txt","--------------------------------------");
} //如果持有空单,平空
}
End
//------------------------------------------------------------------------
// 编译版本 GS2004.06.12
// 用户版本 2010/10/22 13:01
// 版权所有 fengtao_xp
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TrabeBlazer公式修改和重写的权利
//------------------------------------------------------------------------ |
|