金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2957|回复: 9

引用

[复制链接]

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
发表于 2023-4-1 21:11 | 显示全部楼层 |阅读模式
老师你好,我有给全品种参数设置的指标,代码长度100行,输出只有两三个结果。
1:把这个全部指标代码和输出结果加载在总的模型里面一起运行。
2:新建指标,把全品种参数设置的指标和结果放到新建指标里面;在总的运行模型里面用引用的方式把这个输出结果引用过去使用。
我要的结果: 对比下1和2两种做法的性能,我该怎么取舍。
3:如果用引用的方式,我在总的运行模型里面如果加个判断:if(holding<>0,引用全品种参数指标的两个输出指标,无效); 这个判断有没有效,还是说引用不受这个条件的限制,会一直引用 占用资源。
4:pp:"品种参数.p#MIN5"; 我用的这种方式引用,但是这里其实不受周期影响,只需要直接引用  (pp:"品种参数.p#")类似括号里面的意思,但是我这个肯定是错的,要怎么表示;

回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-1 21:15 | 显示全部楼层
#品种参数.P#; 4我用这个好像是可以
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-1 21:50 | 显示全部楼层
1:
PP1:=#品种参数.P#;
PP:IF(HOLDING<>0,PP1,DRAWNULL);

2:PP:#品种参数.P#;

第一种会在持仓以后才输出PP,但是引用已经执行过来了吧,两种会有差别别吗?
我是想持仓以后才执行引用
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-1 22:38 | 显示全部楼层
100020061 发表于 2023-4-1 21:50
1:
PP1:=#品种参数.P#;
PP:IF(HOLDING0,PP1,DRAWNULL);

if HOLDING=0 then pp:=DRAWNULL;
if HOLDING=0 then pp1:=DRAWNULL;
if HOLDING<>0 then pp:=#品种参数.p#;
if HOLDING<>0 then pp1:=#品种参数.p1#;
我用这种限制引用。持仓以后才引用,这样对吗?
这样输出是可以的  应该没有简化空间了
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-3 09:03 | 显示全部楼层
3,4楼这种方式并没有起到优化作用的。


如果是不跨周期的调用,可以采用你二楼的方式进行,那种方式比常规跨周期节约资源。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-3 09:26 | 显示全部楼层
技术009 发表于 2023-4-3 09:03
3,4楼这种方式并没有起到优化作用的。

四楼这种,现在模型输出看到的是受到了限制。持仓以后才引用了数据,没持仓的时候PP无输出,这种优化无效吗?
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-3 09:40 | 显示全部楼层
技术009 发表于 2023-4-3 09:03
3,4楼这种方式并没有起到优化作用的。

另外我前面说的1和2这里不是止盈止损模块,针对其他的东西,比如说我的全品种参数,代码长度100行,输出结果只有两三个结果,我是放到新建模型里面引用过来好,还是放在总模型里面一起运行好?我现在是放到新建指标里面。用4的方式判断引用过来的
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-3 10:08 | 显示全部楼层
你可以用模块化的方式,代码本不复杂情况下 ,影响不是很大。
而且从维护角度看,你现在只需要维护一个被调用指标就行了。

所以在直观上没影响到性能情况下,可以使用指标调用方式。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-3 10:24 | 显示全部楼层
技术009 发表于 2023-4-3 10:08
你可以用模块化的方式,代码本不复杂情况下 ,影响不是很大。
而且从维护角度看,你现在只需要维护一个被 ...

我是这样想的,同样的方式,我可以把各种周期区分出来,后期维护都是单独的模块,除了性能上的我不确定以外,其他各方面都比全部放在一个模型里面好得多。
另外就是上面说的。我这种用条件判断进行引用到底有没有起到限制的作用,(我用输出方式查看是起到了作用)如果有起到作用,这样应该能在性能上有所优化,他不会一直进行计算(我个人的想法)待老师详解一下。(模块化的话会进行大量引用,条件限制引用,是优化模块化的一个方法,就看实际限制是否有效了)
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-3 10:26 | 显示全部楼层
你说的这种方式是可能造成未知的问题的。只是你现在还没遇到。
所以没必要为了这么点优化,强行做优化。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-10 04:28 , Processed in 0.169873 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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