在公式编辑中,我发现如果将coe值(某个自己设定的参数)设为1,则公式完全不会进行任何交易,应用于图也没有任何信号。
但是只要是0.99等比1小的数字都可以进行正常交易,应用于图也会有信号。
该策略的思路是设定一个上下轨,突破不同的轨分别进行开多或开空操作。coe值是用于计算上下轨的。
以下为代码
//************************************************
coe:=1;//调节系数
yc:=0.5*(High-Low)+0.5*abs(close-open);//昨日波动幅度
u1:=open+yc*coe;//上轨
l1:=open-yc*coe;//下轨
ss:=1; //手数
kd:=(c>u1); //开多条件
variable: kdc=0; //开多计数
variable: kkc=0; //开空计数
pd:=kdc>0 and c<=u1; //平多条件
kk:=(c<l1); //开空条件
pk:=kkc>0 and c>=l1; //平空条件
//开多
if kd THEN
begin
sellshort(1,0,market);
BUY(1,ss,MARKET);
kdc=1;
end
//开空
if kk then
begin
sell(1,0,market);
BUYSHORT(1,ss,MARKET);
kkc=1;
end
你把u1和l1的值都是输出看下,就能发现,都没有满足kd条件的
u1:open+yc*coe;//上轨
l1:open-yc*coe;//下轨
有的,有满足条件的。
但是只要我把coe设定为1或者比1大。
就没有了。(虽然实际上是有的。但是策略判定不出来)
那请用户举例“虽然实际上是有的。但是策略判定不出来”
我设计了一个上轨和下轨,上下轨都是通过coe系数调整计算得出的结果。
应用于图后,图表上明明出现了突破的情况,但是系统却没有提示任何信号