以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  现在的问题是:1分钟条件符合,5分钟MACD_DEA5>0不符合,1分钟也开口。  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=66814)

--  作者:IFIF14
--  发布时间:2014/7/1 14:31:06
--  现在的问题是:1分钟条件符合,5分钟MACD_DEA5>0不符合,1分钟也开口。

BOLL开口描述:
//5分钟 BOLL
mid_5:stkindi(\'\',\'b.mid\',0,2,-1);
upper_5:stkindi(\'\',\'b.upper\',0,2,-1);
lower_5:stkindi(\'\',\'b.lower\',0,2,-1);
sg5:upper_5>ref(upper_5,1);//上轨向上
zg5:mid_5>ref(mid_5,1);//中轨向上
xg5:lower_5<ref(lower_5,1);//下轨向下
zgx5:mid_5<ref(mid_5,1);//中轨向下

//1分钟 BOLL
mid_1:stkindi(\'\',\'b.mid\',0,1,0);
upper_1:stkindi(\'\',\'b.upper\',0,1,0);
lower_1:stkindi(\'\',\'b.lower\',0,1,0);
sg1:upper_1>ref(upper_1,1);//上轨向上
zg1:mid_1>ref(mid_1,1);//中轨向上
xg1:lower_1<ref(lower_1,1);//下轨向下
zgx1:mid_1<ref(mid_1,1);//中轨向下

MACD描述:
//5分钟 MACD
MACD_5:stkindi(\'\',\'MACD.macd1\',0,2,0);//7.1 add -1=>0
MACD_DEA5:stkindi(\'\',\'MACD.DEA\',0,2,0);//7.1 add -1=>0
MACD_DIFF5:stkindi(\'\',\'MACD.DIFF\',0,2,-1);//6.12加
ld5:ref(macd_5,1)<macd_5 and macd_5<0;//绿柱缩短
hc5:0<ref(macd_5,1) and ref(macd_5,1)<macd_5;//红柱申长
lc5:macd_5<ref(macd_5,1) and ref(macd_5,1)<0;//绿柱申长
hd5:0<macd_5 and macd_5<ref(macd_5,1);//红柱缩短

//1分钟 MACD
MACD_1:stkindi(\'\',\'MACD.macd1\',0,1,0);
MACD_DEA1:stkindi(\'\',\'MACD.DEA\',0,1,0);//6.12 加
MACD_DIFF1:stkindi(\'\',\'MACD.DIFF\',0,1,0);//6.12 加
ld:ref(macd_1,1)<macd_1 and macd_1<0;//绿柱缩短
hc:0<ref(macd_1,1) and ref(macd_1,1)<macd_1;//红柱申长
lc:ref(macd_1,1)>macd_1 and ref(macd_1,1)<0;//绿柱申长
hd:0<ref(macd_1,1) and ref(macd_1,1)<macd_1;//红柱缩短


均线MA14、MA20描述:
Sdd5:stkindi(\'\',\'gs.dd\',0,2,-1);//5分MA14大于MA20看多
Skk5:stkindi(\'\',\'gs.kk\',0,2,-1);//5分MA20大于MA14看空

条件开口描述:
tj1:sg1 and zg1 and xg1 and (ld or hc)  and MACD_DEA1>0 and MACD_DEA5>0;  //现在的问题是:1分钟条件符合,5分钟MACD_DEA5<0不符合,1分钟也开口。
tjk1:sg1 and zgx1 and xg1 and (lc or hd)  and MACD_DEA1<0 and MACD_DEA5<0;//现在的问题是:1分钟条件符合,5分钟MACD_DEA5>0不符合,1分钟也开口。

tj5:sg5 and zg5 and xg5 and (ld5 or hc5) and Sdd5 and MACD_DEA5>0 ;   //开多
tjk5:sg5 and zgx5 and xg5 and (lc5 or hd5) and Skk5 and  MACD_DEA5<0 ;//开空

 

 

 


--  作者:IFIF14
--  发布时间:2014/7/1 14:47:26
--  

条件开仓描述:
tj1:sg1 and zg1 and xg1 and (ld or hc)  and MACD_DEA1>0 and MACD_DEA5>0;  //现在的问题是:1分钟条件符合,5分钟MACD_DEA5<0不符合,1分钟也开仓。
tjk1:sg1 and zgx1 and xg1 and (lc or hd)  and MACD_DEA1<0 and MACD_DEA5<0;//现在的问题是:1分钟条件符合,5分钟MACD_DEA5>0不符合,1分钟也开仓。

tj5:sg5 and zg5 and xg5 and (ld5 or hc5) and Sdd5 and MACD_DEA5>0 ;   //开多
tjk5:sg5 and zgx5 and xg5 and (lc5 or hd5) and Skk5 and  MACD_DEA5<0 ;//开空

 

开始:开口更正为“开仓”


--  作者:jinzhe
--  发布时间:2014/7/1 14:48:22
--  

mid_5:stkindi(\'\',\'b.mid\',0,2,-1);
upper_5:stkindi(\'\',\'b.upper\',0,2,-1);
lower_5:stkindi(\'\',\'b.lower\',0,2,-1);
sg5:upper_5>ref(upper_5,1);//上轨向上
zg5:mid_5>ref(mid_5,1);//中轨向上
xg5:lower_5<ref(lower_5,1);//下轨向下
zgx5:mid_5<ref(mid_5,1);//中轨向下

 

ref(mid_5,1)改成stkindi(\'\',\'b.mid\',0,2,-2)

 

其他同理


--  作者:IFIF14
--  发布时间:2014/7/1 15:11:15
--  确定,下面更改? 程序运行不会出现问题?

BOLL开口描述:
//5分 BOLL
mid_5:stkindi(\'\',\'b.mid\',0,2,-1);
mid_5_1:stkindi(\'\',\'b.mid\',0,2,-2);
upper_5:stkindi(\'\',\'b.upper\',0,2,-1);
upper_5_1:stkindi(\'\',\'b.upper\',0,2,-2);
lower_5:stkindi(\'\',\'b.lower\',0,2,-1);
lower_5_1:stkindi(\'\',\'b.lower\',0,2,-2);
sg5:upper_5>upper_5_1;//上轨向上
zg5:mid_5>mid_5_1;//中轨向上      7.1ref(mid_5,1)改成stkindi(\'\',\'b.mid\',0,2,-2)
xg5:lower_5<lower_5_1;//下轨向下
zgx5:mid_5<mid_5_1;//中轨向下

//1分 BOLL
mid_1:stkindi(\'\',\'b.mid\',0,1,0);
mid_1_1:stkindi(\'\',\'b.mid\',0,1,-1);
upper_1:stkindi(\'\',\'b.upper\',0,1,0);
upper_1_1:stkindi(\'\',\'b.upper\',0,1,-1);
lower_1:stkindi(\'\',\'b.lower\',0,1,0);
lower_1_1:stkindi(\'\',\'b.lower\',0,1,-1);
sg1:upper_1>upper_1_1;//上轨向上
zg1:mid_1>mid_1_1;//中轨向上
xg1:lower_1<lower_1_1;//下轨向下
zgx1:mid_1<mid_1_1;//中轨向下

MACD描述:
//5分 MACD
MACD_5:stkindi(\'\',\'MACD.macd1\',0,2,0);//7.1 add -1=>0
MACD_5_1:stkindi(\'\',\'MACD.macd1\',0,2,-1);
MACD_DEA5:stkindi(\'\',\'MACD.DEA\',0,2,0);//7.1 add -1=>0
MACD_DEA5_1:stkindi(\'\',\'MACD.DEA\',0,2,-1);
MACD_DIFF5:stkindi(\'\',\'MACD.DIFF\',0,2,0);//6.12加
MACD_DIFF5_1:stkindi(\'\',\'MACD.DIFF\',0,2,-1);
ld5:MACD_5_1<macd_5 and macd_5<0;//绿柱缩短
hc5:0<MACD_5_1 and MACD_5_1<macd_5;//红柱申长
lc5:macd_5<MACD_5_1 and MACD_5_1<0;//绿柱申长
hd5:0<macd_5 and macd_5<MACD_5_1;//红柱缩短

//1分 MACD
MACD_1:stkindi(\'\',\'MACD.macd1\',0,1,0);
MACD_1_1:stkindi(\'\',\'MACD.macd1\',0,1,-1);
MACD_DEA1:stkindi(\'\',\'MACD.DEA\',0,1,0);//6.12 加
MACD_DEA1_1:stkindi(\'\',\'MACD.DEA\',0,1,-1);//6.12 加
MACD_DIFF1:stkindi(\'\',\'MACD.DIFF\',0,1,0);//6.12 加
MACD_DIFF1_1:stkindi(\'\',\'MACD.DIFF\',0,1,-1);//6.12 加
ld:MACD_1_1<macd_1 and macd_1<0;//绿柱缩短
hc:0<MACD_1_1 and MACD_1_1<macd_1;//红柱申长
lc:MACD_1_1>macd_1 and MACD_1_1<0;//绿柱申长
hd:0<MACD_1_1 and MACD_1_1<macd_1;//红柱缩短

均线MA14、MA20描述:
Sdd5:stkindi(\'\',\'gs.dd\',0,2,-1);//5分MA14大于MA20看多
Skk5:stkindi(\'\',\'gs.kk\',0,2,-1);//5分MA20大于MA14看空

条件开仓描述:
tj1:sg1 and zg1 and xg1 and (ld or hc)  and MACD_DEA1>0 and MACD_DEA5>0; 
tjk1:sg1 and zgx1 and xg1 and (lc or hd)  and MACD_DEA1<0 and MACD_DEA5<0;

tj5:sg5 and zg5 and xg5 and (ld5 or hc5) and Sdd5 and MACD_DEA5>0 ;   //开多
tjk5:sg5 and zgx5 and xg5 and (lc5 or hd5) and Skk5 and  MACD_DEA5<0 ;//开空


--  作者:jinzhe
--  发布时间:2014/7/1 15:14:23
--  
是的,被引用对象的偏移不是ref1,而是直接在stkindi里面进行偏移
--  作者:IFIF14
--  发布时间:2014/7/1 15:22:29
--  
那我上面的修改,请看一些有错的吗?
--  作者:jinzhe
--  发布时间:2014/7/1 15:25:21
--  
可以了,都改了
--  作者:IFIF14
--  发布时间:2014/7/1 15:53:43
--  
明天测试,有问题再找你。谢谢了!
--  作者:IFIF14
--  发布时间:2014/7/1 15:59:29
--  

详细描述:
关于止损:
1、固定1点止损,如:2000点买入开仓,当指数为1999点就止损.
2、如果盈利1点,止盈位就保0.2个点(2000点买入开仓,当指数为2001点就止盈位跳到2000.2)。
3、如果盈利3点,止盈位就保1个点(2000点买入开仓,当指数为2003点就止盈位跳到2001)。

//1、固定1点止损
if tholding>0 and dynainfo(7)<=(tenterprice-1) then tsell(1,0,mkt);
if tholding<0 and dynainfo(7)>=(tenterprice+1) then tsellshort(1,0,mkt);

//2、如果盈利1点,止盈位就保0.2个点
if tholding>0 and dynainfo(7)<=(extgbdata(\'hh\')-0.8) then tsell(1,0,mkt);//6.30
if tholding<0 and dynainfo(7)>=(extgbdata(\'ll\')+0.8) then tsellshort(1,0,mkt);//6.30

//3、如果盈利3点,止盈位就保1个点
if tholding>0 and dynainfo(7)<=(extgbdata(\'hh\')-2) then tsell(1,0,mkt);
if tholding<0 and dynainfo(7)>=(extgbdata(\'ll\')+2) then tsellshort(1,0,mkt);

 

问题是:如果盈利1点,止盈位就保0.2个点,按下面写可以吗?
if tholding>0 and dynainfo(7)<=(extgbdata(\'hh\')-0.8) then tsell(1,0,mkt);//6.30
if tholding<0 and dynainfo(7)>=(extgbdata(\'ll\')+0.8) then tsellshort(1,0,mkt);//6.30


--  作者:jinzhe
--  发布时间:2014/7/1 17:15:24
--  
移动止盈有专门的范例
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看