以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  最简单的一个语句,请老师看下  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=49639)

--  作者:bbbcccaaa
--  发布时间:2013/3/13 14:27:27
--  最简单的一个语句,请老师看下


MACD:="MACD"(26,12,9);

a:=CROSS(0,MACD) ;
b:= CROSS(MACD,0)  ;
手数:=1;

开空:BUYSHORT(a AND HOLDING>=0,手数,LIMITR,C);
平空:SELLSHORT(b AND HOLDING<0,手数,LIMITR,C);


//固定止损部分************************

//止盈
IF C-AVGENTERPRICE>50 THEN BEGIN
SELL(1,HOLDING,MARKET);
END

//止损
IF AVGENTERPRICE-C>20 THEN BEGIN
SELL(1,HOLDING,MARKET);
END

 

 

就是一个MACD空头交叉易,问题是我不会弄止损语句.

 

下面的止损语句我是这么理解的,收盘价-持仓成本的结果大于50那么空头平仓,

持仓成本-收盘价的结果大于20那么空头平仓,

 

结果止损语句完全没作用,

 

然后又改为下面的语句:

 

MACD:="MACD"(26,12,9);

a:=CROSS(0,MACD) ;
b:= CROSS(MACD,0)  ;

 

手数:=1;

 

//准备下单条件,以MA2上穿MA1作为开多条件,以MA1下破MA2作为平多条件。
COND1:=a;
COND2:=b;

//下单
开仓:BUYSHORT(COND1,2,MARKET);
SELLSHORT(COND2,HOLDING,MARKET);

//固定止损部分************************

//止盈
IF C-AVGENTERPRICE>50*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);
END

//止损
IF AVGENTERPRICE-C>20*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);
END

//************************************

//其他
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

 

也是止损语句完全不起作用,

该怎么改啊,望指导,

 


此主题相关图片如下:未命名.jpg
按此在新窗口浏览图片

--  作者:jinzhe
--  发布时间:2013/3/13 14:31:36
--  
把公式应用于图,看看图表上的信号是否和测评上的一致