金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2817|回复: 11

请老师看一下哪里有问题

[复制链接]

43

主题

162

帖子

172

积分

Rank: 4

等级: 专业版

注册:
2022-8-5
曾用名:
发表于 2023-8-15 09:01 | 显示全部楼层 |阅读模式
DZY:=JXZY OR JXZY1;
KZY:=JXZY2 OR JXZY3;
IF ref(DZY,1)THEN BEGIN
        TSELL(1,0,LMT,C);
END
IF ref(KZY,1) THEN BEGIN
        TSELLSHORT(1,0,LMT,C);
END

DEBUGFILE输出的DZY或KZY条件满足时,但是不触发平仓。

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-8-15 09:02 | 显示全部楼层
你这里条件是 ref(KZY,1) 。

你输出下这个再看下。你这个是需要前面K结束时候满足条件才会触发信号的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

43

主题

162

帖子

172

积分

Rank: 4

等级: 专业版

注册:
2022-8-5
曾用名:
 楼主| 发表于 2023-8-17 22:16 | 显示全部楼层
重新改了一下
15分钟周期运行:
DZY:=ref(JXZY,1) OR ref(JXZY1,1);
IF DZY THEN BEGIN
        TSELL(1,0,LMT,C);
END

前根k满足条件:
2023-08-17 21:59:28.006           JXZY:1
2023-08-17 21:59:28.007           JXZY1:1

当根K还是不满足,
2023-08-17 22:01:57.265           DZY:0
2023-08-17 22:01:57.265           KZY:0

是写法错误吗?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-8-18 08:54 | 显示全部楼层
代码写法上没看出有什么错误地方,你看下21:59 最后时间输出的JXZY值,是否变化了。ref调用结果是K结束时候的值。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

43

主题

162

帖子

172

积分

Rank: 4

等级: 专业版

注册:
2022-8-5
曾用名:
 楼主| 发表于 2023-8-18 09:05 | 显示全部楼层
2023-08-17 21:59:58.576           JXZY:1
2023-08-17 21:59:58.576           JXZY1:1

没有变化,一直满足的
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-8-18 09:09 | 显示全部楼层
你是不是你下单语句 的外部还有if条件呀。是不是这个外部的if条件就没满足呢。

也就是上面那段代码 是嵌套在一个大的if里面的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

43

主题

162

帖子

172

积分

Rank: 4

等级: 专业版

注册:
2022-8-5
曾用名:
 楼主| 发表于 2023-8-18 09:13 | 显示全部楼层
没有嵌套 就是简单的平仓语句,不用ref的都可以平仓,用了ref的就不行

补充内容 (2023-8-18 09:21):
ref在图表上可以,后台不行
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-8-18 09:34 | 显示全部楼层
那这个只能贴完整代码我们本地测试下了。从上面语句是判断不出问题的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

43

主题

162

帖子

172

积分

Rank: 4

等级: 专业版

注册:
2022-8-5
曾用名:
 楼主| 发表于 2023-8-18 09:49 | 显示全部楼层
MA3:=sar(2,2,20);
zg:=hhv(h,tenterbars+2);
JXZY:=(ZG-TAVGENTERPRICEEX2('','',0))/TAVGENTERPRICEEX2('','',0)>=ZY*0.2  AND TBUYHOLDINGEX('','',1)>0 AND L<=MA3 ;
JXZY1:=(ZG-TAVGENTERPRICEEX2('','',0))/TAVGENTERPRICEEX2('','',0)>=ZY*0.3 AND TBUYHOLDINGEX('','',1)>0 AND L<=MA3 ;
DZY:=ref(JXZY,1) OR ref(JXZY1,1);
IF ISLASTBAR THEN BEGIN         
         DEBUGFILE('D:\'&stklabel&'.txt','       DZY:%.0f',DZY);
END       
IF DZY THEN BEGIN
        TSELL(1,0,LMT,C);
END

这是平多语句的全部代码,你们随便弄个开仓条件帮忙测试一下

补充内容 (2023-8-18 09:52):
ZY=0.05,(比例值可随意指定)
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-8-18 10:36 | 显示全部楼层
你这个条件有问题的,JXZY里面有持仓均价和持仓判断。这个在历史K的值是0. 你这样ref是不行的。


JXZY:=(ZG-TAVGENTERPRICEEX2('','',0))/TAVGENTERPRICEEX2('','',0)>=ZY*0.2  AND TBUYHOLDINGEX('','',1)>0 AND L<=MA3 ;


这部分直接拎出来,就判断最新K的就行了。 ref只用来判断后面的 L<=MA3。
JXZY1 同理
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-6-17 05:41 , Processed in 0.090985 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表