以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  开平仓语句出现了问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=50141)

--  作者:Change_1206_
--  发布时间:2013/3/23 22:23:42
--  开平仓语句出现了问题
IF SRX排名=1 and holding=0 and time=145500 then buy(1,1,market) ;

jinkai:=if(barslast(date<>ref(date,1))+1=1,open,0),NOAXIS;

if holding>0 and jinkai-enterprice>=0 then sell(1,ss,limitr,open);

if holding>0 and jinkai-enterprice<0  and time=101500 then sell(1,ss,limitr,open);

if SRX排名=10 and holding=0 and time=145500 then buyshort(1,1,market);

if holding<0 and jinkai-enterprice<=0 then sellshort(1,ss,limitr,open);

if holding<0 and jinkai-enterprice>0  and time=101500 then sellshort(1,ss,limitr,open);

麻烦帮我看一下,这里是白糖合约的多头开仓,平仓和空头的开仓平仓,为什么加载到K线上面,多头开仓和对应平仓都是按照我所设定的条件,但是空头只有开仓是按照我所设定的条件,但是平仓不是,平仓都是在开仓的下一根K线平仓,我想知道为什么??

--  作者:just
--  发布时间:2013/3/25 9:34:54
--  
请贴代码贴全,出现楼主这样的情况,楼主也可以自己学习一下调试语句的方法
[此贴子已经被作者于2013-3-25 9:36:51编辑过]

--  作者:just
--  发布时间:2013/3/25 9:37:32
--  
http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=49428


--  作者:Change_1206_
--  发布时间:2013/3/25 9:44:17
--  
VARIABLE: X[10]=0;
X[1]:=STKINDI(\'RU00\',\'涨跌幅差值.CC\',0,1,0);
X[2]:=STKINDI(\'RM00\',\'涨跌幅差值.CC\',0,1,0);
X[3]:=STKINDI(\'M00\',\'涨跌幅差值.CC\',0,1,0);
X[4]:=STKINDI(\'P00\',\'涨跌幅差值.CC\',0,1,0);
X[5]:=STKINDI(\'Y00\',\'涨跌幅差值.CC\',0,1,0);
X[6]:=STKINDI(\'SRX00\',\'涨跌幅差值.CC\',0,1,0);
X[7]:=STKINDI(\'TA00\',\'涨跌幅差值.CC\',0,1,0);
X[8]:=STKINDI(\'RB00\',\'涨跌幅差值.CC\',0,1,0);
X[9]:=STKINDI(\'J00\',\'涨跌幅差值.CC\',0,1,0);
X[10]:=STKINDI(\'FG00\',\'涨跌幅差值.CC\',0,1,0);


RU排名:HOD2(X,10,X[1]),LINETHICK0;
RM排名:HOD2(X,10,X[2]),LINETHICK0;
M排名:HOD2(X,10,X[3]),LINETHICK0;
P排名:HOD2(X,10,X[4]),LINETHICK0;
Y排名:HOD2(X,10,X[5]),LINETHICK0;
SRX排名:HOD2(X,10,X[6]),LINETHICK0;
TA排名:HOD2(X,10,X[7]),LINETHICK0;
RB排名:HOD2(X,10,X[8]),LINETHICK0;
J排名:HOD2(X,10,X[9]),LINETHICK0;
FG排名:HOD2(X,10,X[10]),LINETHICK0;
input:ss(1,1,100,1);

//放入需要交易的品种,并加载到对应的1分钟K线上//
//****************************************//
IF SRX排名=1 and holding=0 and time=145500 then buy(1,1,market) ;

jinkai:=if(barslast(date<>ref(date,1))+1=1,open,0),NOAXIS;

if holding>0 and jinkai-enterprice>=0 then sell(1,ss,limitr,open);

if holding>0 and jinkai-enterprice<0  and time=101500 then sell(1,ss,limitr,open);

if SRX排名=10 and holding=0 and time=145500 then buyshort(1,1,market);

if holding<0 and jinkai-enterprice<=0 then sellshort(1,ss,limitr,open);

if holding<0 and jinkai-enterprice>0  and time=101500 then sellshort(1,ss,limitr,open);