求助,小米老师 [开拓者 TB]
high;low;high = Highest(h[1],BackNumber);low = Lowest(l[1],BackNumber);high and Q_Last>h[BackNumber])low and Q_Last<l[BackNumber])
{conshortopen = True;MyShortEntryPrice = l[BackNumber];shortstoplossline = h;}
//进仓条件
//空进仓------------------------------------------------------------------------------------------------
if(conshortopen AND A_TotalPosition ==0 and A_GetOpenOrderCount ==0 and o>=MyShortEntryPrice)
{
A_SendOrder(Enum_Sell,Enum_Entry,lots,MyShortEntryPrice - sp * MinMove * PriceScale);
Commentary("空进仓:"+Text(MyShortEntryPrice - sp * MinMove * PriceScale));
SetGlobalVar(11,1);
SetGlobalVar(21,CurrentBar);
}
//空止损1111111111111111111111111111111111111111111111111111111111111111111111111111
if(GetGlobalVar(11)==1 and A_SellPosition >0 and A_GetOpenOrderCount ==0 and CurrentBar-GetGlobalVar(21)>=1
and Q_Last > shortstoplossline[1])
{
A_SendOrder(Enum_buy,Enum_Exit,lots,shortstoplossline[1] + sp * MinMove * PriceScale);
Commentary("空止损:"+Text(shortstoplossline[1] + sp * MinMove * PriceScale));
SetGlobalVar(11,0);
SetGlobalVar(31,CurrentBar);
}
//距离平空仓2222222222222222222222222222222222222222222222222222222222222222222222222
IF(GetGlobalVar(11)==1 and A_SellPosition >0 and A_GetOpenOrderCount ==0 and CurrentBar-GetGlobalVar(21)>=1
AND Q_Last<=ma5 - DistanceFromMA5 * MinMove * PriceScale)
{
A_SendOrder(Enum_buy,Enum_Exit,lots,ma5 - DistanceFromMA5 * MinMove * PriceScale);
Commentary("距离平空仓:"+Text(ma5 - DistanceFromMA5 * MinMove * PriceScale));
SetGlobalVar(11,0);
SetGlobalVar(31,CurrentBar);
}
//空平仓3333333333333333333333333333333333333333333333333333333333333333333333333333
if(GetGlobalVar(11)==1 and A_SellPosition >0 and A_GetOpenOrderCount ==0 and CurrentBar-GetGlobalVar(21)>=1
and Q_Last > MA5
and CurrentTime*1000000 == Hour*10000 +(Minute+BarInterval-1)*100 + 58)
{
A_SendOrder(Enum_buy,Enum_Exit,lots,Q_Last + sp * MinMove * PriceScale);
Commentary("空平仓MA5:"+Text(Q_Last + sp * MinMove * PriceScale));
SetGlobalVar(11,0);
SetGlobalVar(31,CurrentBar);
}
//平仓BAR不进空仓
if(GetGlobalVar(21)==GetGlobalVar(31))
{conshortopen = FALSE;}
}
endTB技术人员:
A函数下单 的调试,使用fileappend会比commentary更有效。。
自己先使用fileappend记录一下相关的信息,然后看一下日志内容能否找到原因 。 TB客服:
哦,好的,谢谢小米;老师,请问下上边公式你看出什么错误没有?
网友回复:
没看呢。。一段A函数的指令,连barstatus==2以及判断帐户信息有效这样的限制条件都没有的,我觉得没有什么必要性去看啊。。
而且写日志是最快捷有效的调试方式,先试试吧。
{conshortopen = True;MyShortEntryPrice = l[BackNumber];shortstoplossline = h;}
//进仓条件
//空进仓------------------------------------------------------------------------------------------------
if(conshortopen AND A_TotalPosition ==0 and A_GetOpenOrderCount ==0 and o>=MyShortEntryPrice)
{
A_SendOrder(Enum_Sell,Enum_Entry,lots,MyShortEntryPrice - sp * MinMove * PriceScale);
Commentary("空进仓:"+Text(MyShortEntryPrice - sp * MinMove * PriceScale));
SetGlobalVar(11,1);
SetGlobalVar(21,CurrentBar);
}
//空止损1111111111111111111111111111111111111111111111111111111111111111111111111111
if(GetGlobalVar(11)==1 and A_SellPosition >0 and A_GetOpenOrderCount ==0 and CurrentBar-GetGlobalVar(21)>=1
and Q_Last > shortstoplossline[1])
{
A_SendOrder(Enum_buy,Enum_Exit,lots,shortstoplossline[1] + sp * MinMove * PriceScale);
Commentary("空止损:"+Text(shortstoplossline[1] + sp * MinMove * PriceScale));
SetGlobalVar(11,0);
SetGlobalVar(31,CurrentBar);
}
//距离平空仓2222222222222222222222222222222222222222222222222222222222222222222222222
IF(GetGlobalVar(11)==1 and A_SellPosition >0 and A_GetOpenOrderCount ==0 and CurrentBar-GetGlobalVar(21)>=1
AND Q_Last<=ma5 - DistanceFromMA5 * MinMove * PriceScale)
{
A_SendOrder(Enum_buy,Enum_Exit,lots,ma5 - DistanceFromMA5 * MinMove * PriceScale);
Commentary("距离平空仓:"+Text(ma5 - DistanceFromMA5 * MinMove * PriceScale));
SetGlobalVar(11,0);
SetGlobalVar(31,CurrentBar);
}
//空平仓3333333333333333333333333333333333333333333333333333333333333333333333333333
if(GetGlobalVar(11)==1 and A_SellPosition >0 and A_GetOpenOrderCount ==0 and CurrentBar-GetGlobalVar(21)>=1
and Q_Last > MA5
and CurrentTime*1000000 == Hour*10000 +(Minute+BarInterval-1)*100 + 58)
{
A_SendOrder(Enum_buy,Enum_Exit,lots,Q_Last + sp * MinMove * PriceScale);
Commentary("空平仓MA5:"+Text(Q_Last + sp * MinMove * PriceScale));
SetGlobalVar(11,0);
SetGlobalVar(31,CurrentBar);
}
//平仓BAR不进空仓
if(GetGlobalVar(21)==GetGlobalVar(31))
{conshortopen = FALSE;}
}
end
来源:CXH99.COM
自己先使用fileappend记录一下相关的信息,然后看一下日志内容能否找到原因 。
jove99 发表于 2018-7-9 18:12
哦,好的,谢谢小米;老师,请问下上边公式你看出什么错误没有?
没看呢。。一段A函数的指令,连barstatus==2以及判断帐户信息有效这样的限制条件都没有的,我觉得没有什么必要性去看啊。。
而且写日志是最快捷有效的调试方式,先试试吧。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容