欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 变量的问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有7006人关注过本帖树形打印复制链接

主题:变量的问题

帅哥哟,离线,有人找我吗?
aback
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
变量的问题  发帖心情 Post By:2012/6/17 15:52:43    Post IP:117.81.202.91[显示全部帖子]

变量一直是我头疼的问题,写了个移动止损的例子,请高手看看错在哪里,谢谢!

我的想法是,开多后,每一次调整后的再次金叉,当根K线的开盘价即为止损价。

 

input:ma5(5,1,10,1);
input:ma15(15,1,30,1);
input:ma40(40,1,60,1);


variable:KD=0;
variable:KK=0;

 

//设置变量
IF HOLDING>0 AND CROSS(MA5,MA15) THEN KD:=OPEN;
KKD:KD;
IF HOLDING<0 AND CROSS(MA15,MA5) THEN KK:=OPEN;
KKK:KK;

 

//固定平仓规则
IF HOLDING>0 AND  CROSS(MA(C,30),MA(C,10)) THEN SELL(1,0,MARKET);
IF HOLDING<0 AND  CROSS(MA(C,10),MA(C,30)) THEN SELLSHORT(1,0,MARKET);

 

//移动平仓规则
IF HOLDING>0 AND  CLOSE<=KD THEN
BEGIN
 SELL(1,0,MARKET);
 KD:=0;
 END
 
IF HOLDING<0 AND  CLOSE>=KK THEN
BEGIN
 SELLSHORT(1,0,MARKET);
 KK:=0;
 END

 

//开仓规则
IF HOLDING=0 AND MA5>MA40 AND MA40>REF(MA40,1) THEN BUY(1,1,MARKET);
IF HOLDING=0 AND MA40<MA5 AND MA40<REF(MA40,1) THEN BUYSHORT(1,1,MARKET);

 

 

IF TIME=151500 THEN
BEGIN
KD=0;
KK=0;
END


 回到顶部
帅哥哟,离线,有人找我吗?
aback
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 10:12:12    Post IP:49.72.144.146[显示全部帖子]

还是不对啊,图表显示不出来啊!

 回到顶部
帅哥哟,离线,有人找我吗?
aback
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 10:55:11    Post IP:49.72.144.146[显示全部帖子]

早看过了,呵呵,这是看过后才写出来的。
[此贴子已经被作者于2012-6-18 10:56:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
aback
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 11:28:46    Post IP:49.72.144.146[显示全部帖子]

开仓时记录变量,这个我会,可能这个很好判别。

我不是在开仓的时候记录变量,写的时候总是有冲突,虽然在图表上止损价格都能划线出来,但执行不了,会不会要用第二个变量辅助?

[此贴子已经被作者于2012-6-18 11:37:50编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
aback
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 13:00:30    Post IP:49.72.144.146[显示全部帖子]

修改了下

 

ma5:=MA(C,5);
ma15:=MA(C,15);
ma40:=MA(C,40);


variable:KD=0;
variable:KK=0;

 

//设置变量
IF HOLDING>0 AND CROSS(MA5,MA15) THEN KD:=OPEN;
KKD:KD;
IF HOLDING<0 AND CROSS(MA15,MA5) THEN KK:=OPEN;
KKK:KK;

 

//固定平仓规则
IF HOLDING>0 AND  CROSS(MA(C,40),MA(C,15)) THEN SELL(1,0,MARKET);
IF HOLDING<0 AND  CROSS(MA(C,15),MA(C,40)) THEN SELLSHORT(1,0,MARKET);

 

//移动平仓规则
IF HOLDING>0 AND  CLOSE<=KD THEN
BEGIN
 SELL(1,0,MARKET);
 KD:=0;
 END
 
IF HOLDING<0 AND  CLOSE>=KK THEN
BEGIN
 SELLSHORT(1,0,MARKET);
 KD:=0;
 END
 

//开仓规则
IF HOLDING=0 AND MA5>MA40 AND MA40>REF(MA40,1) THEN
BEGIN
 BUY(1,1,MARKET);
  END
 
IF HOLDING=0 AND MA40<MA5 AND MA40<REF(MA40,1) THEN
BEGIN
 BUYSHORT(1,1,MARKET);
 END

 

IF TIME=151500 THEN

BEGIN
KD=0;
KK=0;
END


 回到顶部
帅哥哟,离线,有人找我吗?
aback
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 13:45:49    Post IP:49.72.144.146[显示全部帖子]

 

移动止损---开多后的每次回调后的均线再次金叉,则记录当根K线的开盘价,此开盘价就是新的止赢价格 。

 

IF HOLDING>0 AND CROSS(MA5,MA15) THEN KD:=OPEN;
KKD:KD;
IF HOLDING<0 AND CROSS(MA15,MA5) THEN KK:=OPEN;
KKK:KK;

 

固定平仓规则----------正常的出场条件
IF HOLDING>0 AND CROSS(MA(C,40),MA(C,15)) THEN SELL(1,0,MARKET);
IF HOLDING<0 AND CROSS(MA(C,15),MA(C,40)) THEN SELLSHORT(1,0,MARKET);


 回到顶部
帅哥哟,离线,有人找我吗?
aback
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 14:12:55    Post IP:49.72.144.146[显示全部帖子]

这个简单点:

 

VARIABLE:DUOZHISUN=0;
VARIABLE:KONGZHISUN=0;


IF 金叉 THEN DUOZHISUN:=OPEN;
DDC:DUOZHISUN;

 
IF 死叉 THEN KONGZHISUN:=OPEN;
DDK:KONGZHISUN;

 

IF HOLDING>0 AND TIME=151200 AND ABB THEN SELL(1,0,MARKET),orderqueue;
IF HOLDING>0 AND 金叉 AND  CLOSE<=DUOZHISUN THEN
BEGIN
 SELL(1,0,MARKET);
 DUOZHISUN:=0;
 END
  
IF HOLDING<0 AND TIME=151200 AND  ABB THEN SELLSHORT(1,0,MARKET);
IF HOLDING<0  AND 死叉 AND CLOSE>=KONGZHISUN THEN
BEGIN
 SELLSHORT(1,0,MARKET);
 KONGZHISUN:=0;
  END

 

IF TIME=151500 THEN
BEGIN
DUOZHISUN=0;
KONGZHISUN=0;
END

 

 


图片点击可在新窗口打开查看此主题相关图片如下:111.jpg
图片点击可在新窗口打开查看

 

止赢价格都显示出来了(蓝线),但就是没有指令!

[此贴子已经被作者于2012-6-18 14:15:19编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
aback
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:426 积分:1074 威望:0 精华:0 注册:2011/10/21 13:03:36
  发帖心情 Post By:2012/6/18 14:49:44    Post IP:49.72.144.146[显示全部帖子]

麻烦看最后那个例子吧,简单明了一点.

我的本意当然不止一次,只要价格不断上扬,并金叉,我的止赢就不断上升 .


 回到顶部