- 精华
- 0
- 在线时间
- 50 小时
- UID
- 220027
- 积分
- 42
- 帖子
- 28
- 阅读权限
- 10
- 注册时间
- 2015-9-18
- 最后登录
- 2017-5-24
- 精华
- 0
- UID
- 220027
- 积分
- 42
- 帖子
- 28
- 主题
- 8
- 阅读权限
- 10
- 注册时间
- 2015-9-18
- 最后登录
- 2017-5-24
|
小米 发表于 2017-3-31 15:00
如果是今天开的仓,试一下enum_exittoday?
整个代码是这样的:
//------------------------------------------------------------------------
Params
//此处添加参数
Numeric N(21);
Numeric Lots(1);
Vars
//此处添加变量
NumericSeries BarIndex(0);
NumericSeries A(0);
NumericSeries B(0);
NumericSeries BD(0);
NumericSeries DiffBBD(0);
Numeric OpenOrderNum(0);
Numeric i;
Begin
//此处添加代码正文
if(BarStatus==0)
{
SetGlobalVar(0,0); //是否已经进场
SetGlobalVar(1,0); //当前K线是否已经判断
BarIndex=0;
}
Else
{
BarIndex=BarIndex[1]+1;
}
A=(3*C+L+O+H)/6;
B=(20*A+19*A[1]+18*A[2]+17*A[3]+16*A[4]+15*A[5]+14*A[6]+13*A[7]+12*A[8]+11*A[9]+10*A[10]+9*A[11]+8*A[12]+7*A[13]+6*A[14]+5*A[15]+4*A[16]+3*A[17]+2*A[18]+A[20])/210;
BD=averageFC(B,N);
PlotNumeric("DKX",B);
PlotNumeric("DKXMA",BD);
DiffBBD=B-BD;
If(GetGlobalVar(1)<BarIndex)
{
SetGlobalVar(1,BarIndex);
if(DiffBBD[1]>0 and DiffBBD[2]<=0 and GetGlobalVar(0)<=0)
{
if(GetGlobalVar(0)==-1 and A_SellPosition()<>InvalidNumeric)
{
if(A_SellPosition()>0 and A_GetOpenOrderCount()==0)
{
If(BarStatus==2) A_SendOrder(Enum_Buy,Enum_ExitToday,A_SellPosition(),Q_AskPrice());
}
}
BuyToCover(1,Open);
SetGlobalVar(0,0);
if(BarStatus==2)
{
A_SendOrder(Enum_Buy,Enum_Entry,Lots,Q_AskPrice());
SetGlobalVar(0,1);
}
Buy(1,open);
}
else if(DiffBBD[1]<0 and DiffBBD[2]>=0 and GetGlobalVar(0)>=0)
{
if(GetGlobalVar(0)==1 and A_BuyPosition()<>InvalidNumeric)
{
if(A_BuyPosition()>0 and A_GetOpenOrderCount()==0 )
{
if(barstatus==2) A_SendOrder(Enum_Sell,Enum_ExitToday,A_BuyPosition(),Q_BidPrice());
}
}
Sell(0,open);
SetGlobalVar(0,0);
if(BarStatus==2)
{
A_SendOrder(Enum_Sell,Enum_Entry,Lots,Q_BidPrice());
SetGlobalVar(0,-1);
}
SellShort(1,Open);
}
}
End
//------------------------------------------------------------------------
|
|