金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 238|回复: 1

被引用的交易系统加密不能设置到2038/1/18后,否则无法引用其中的指标

[复制链接]

158

主题

363

帖子

363

积分

等级: 免费版

注册:
2022-1-15
曾用名:
发表于 2024-10-27 22:11 | 显示全部楼层 |阅读模式
之前有个客户问了是否可以引用加密指标中的指标,回答是可以的.但是我在ver7.02中测试的结果是只能将加密截止日期设置到2038/1/18之前.  
用了二种测试方式,一种是被引用的指标是技术指标,一种是被引用的指标是一个交易策略.二种方式都存在同样的问题.

//新建技术指标Formula5Z代码如下(逐k模式):
VARIABLE:vhold=0;
mas:=ma(c,20);
maL:=ma(c,60);

if holding=0 and cross(mas,maL) then
begin
        vhold:=1;
       
END

if holding>0 and cross(maL,maS) then
begin
        vhold:=0;
END
iLcond:vhold>0,NODRAW;



////////////////////////////////////
//新建策略Formula2代码如下(逐k模式):
mas:=ma(c,20);
maL:=ma(c,60);

if holding=0 and cross(mas,maL) then
begin
        buy(1,10,marketr);
       
END

if holding>0 and cross(maL,maS) then
begin
        sell(1,0,marketr);
END
iLcond:holding>1,NODRAW;



新建交易策略mytest中引用的代码如下(逐k模式):
a1:STKINDI('','Formula2.iLcond',0,6,-1),NODRAW;
a2:STKINDI('','Formula5Z.iLcond',0,6,-1),NODRAW;


结论是:
1. 若被引用指标不加密,或加密的截止日期设置到2038/1/18(含)之前,STKINDI输出正常, 若被引用指标加密的截止日期设置到2038/1/18之后,STKINDI输出##.
2. 完全加密输出正常.

另外还发现一个非常隐蔽的使用问题, 比如如果我的策略Formula2打算使用在日线周期上,因此我设置了一个禁用周期,将其他周期都禁止掉,然后策略mytest是5分钟周期上使用,但其中引用了策略Formula2,我知道Formula2只能用于日线,因此是跨周期在日线上引用Formula2,比如 a1:STKINDI('','Formula2.iLcond',0,6,-1),NODRAW;  但是仍然不能正确输出a1.我是过了很久的今天才发现这个非常隐蔽的使用问题.  权当做我的一个备忘,同时也告诉以后的用户.





补充内容 (2024-10-27 22:16):
因为加密截止日期很多时候是随意设置一个未来日期的,因此经常可能设置到一个很远的将来,比如2099年,因此这个2038/1/18的bug还是希望改一下
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2024-10-28 09:00 | 显示全部楼层
本帖最后由 技术010 于 2024-10-28 09:01 编辑

1、现象已看到,这个本身是操作系统的时间问题,我们后续反馈下,看是否能在软件层面上优化下这个问题吧。
     https://www.sohu.com/a/809583849_121798711
2、禁用周期这个问题我们后续也会反馈下,会进行优化下的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-6 20:45 , Processed in 0.211620 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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