- 精华
- 0
- 在线时间
- 218 小时
- UID
- 7099
- 积分
- 614
- 帖子
- 120
- 阅读权限
- 60
- 注册时间
- 2010-3-3
- 最后登录
- 2019-3-24
- 精华
- 0
- UID
- 7099
- 积分
- 614
- 帖子
- 120
- 主题
- 22
- 阅读权限
- 60
- 注册时间
- 2010-3-3
- 最后登录
- 2019-3-24
|
老师帮忙看看,原有的buy sell语句,这样翻译是否正确。 感谢troyhou老师提供的代码。还有zejunl老师对A_sendorder的注释。
---------------------------------------------------------------------------------
需要被翻译的代码如下:
If (Condition1 And MarketPosition==-1)
{
BuyToCover(0,0);
Buy(0,0);
}else if (Condition1)
{
Buy(0,0);
}
If (Condition2 And MarketPosition==1)
{
Sell(0,0);
SellShort(0,0);
}else If (Condition2)
{
SellShort(0,0);
}
翻译后的语句:
If ( barstatus==0 )
{
SetGlobalVar(0,SetPos); //setpos,调整初始持仓(我自己是这样理解的,不知道对不对)
}
If ( GetGlobalVar(0)==0 )
{
If ( Condition1 /* 开多仓条件满足 */ )
{
A_SendOrder(Enum_Buy,Enum_Entry,1,Q_AskPrice());
SetGlobalVar(0,1);
}
If ( Condition2 )
{
A_SendOrder(Enum_Sell,Enum_Entry,1,Q_BidPrice());
SetGlobalVar(0,-1);
}
}
If ( GetGlobalVar(0)==1 && Condition2 /* 平多仓条件满足 */ )
{
A_SendOrder(Enum_Sell,Enum_Exit,1,Q_BidPrice());
A_SendOrder(Enum_Sell,Enum_Entry,1,Q_BidPrice());
SetGlobalVar(0,-1);
/* SetGlobalVar(0,0); */
}
If ( GetGlobalVar(0)==-1 && Condition1 /* 平空仓条件满足 */ )
{
A_SendOrder(Enum_Buy,Enum_Exit,1,Q_AskPrice());
A_SendOrder(Enum_Buy,Enum_Entry,1,Q_AskPrice());
SetGlobalVar(0,1);
/* SetGlobalVar(0,0); */
} |
|