金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 3425|回复: 15

对比

[复制链接]

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
发表于 2023-4-27 10:49 | 显示全部楼层 |阅读模式
1:实体比:abs(100*(c-o)/o);  像这样的很多 我放在IF外面进行赋值 ;
IF XXX  then begin
     P:实体比>=5  AND WW>=3;
     end
2:实体比:abs(100*(c-o)/o)>5;  WW>=3;
    IF XXX  then begin
     P:实体比  AND WW;
     end




1,2对比所有的条件都在IF外面计算好了去引用肯定会更好,现在这种1和2之间的 1会不会比2更好  因为这种类似的赋值有很多,
我个人觉得如果只赋值 没计算出结果 是不是计算机的运算量会小很多?所以如果在IF里面才计算结果会不会比在外面计算出来更优化

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-27 10:54 | 显示全部楼层
没这个必要的。

这个问题昨天说过,已经提过2次了。在if里面 限定条件给某个变量赋值是可能导致问题的。

你后面使用P的时候,尽管当前K不满足XXX P也会获取到前面满足时候的值。


所以就是这种理论上是会节省资源,但是引入了存在隐患的问题,不值得。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-27 11:05 | 显示全部楼层
技术009 发表于 2023-4-27 10:54
没这个必要的。

这个问题昨天说过,已经提过2次了。在if里面 限定条件给某个变量赋值是可能导致问题的。 ...

你说的情况我知道了 所以我避免了这种情况,在IF里面的计算不会再外面使用,包括开平仓 所以的情况都在IF里面执行完。每个IF单独进行判断计算。所有的计算都是通过IF 的条件限制以后才参与实际的计算。
你说的这种问题是昨天发现的 但是可以避免,只要不在外面使用IF内部计算结果就好
这种做法 上述的情况是不是更优化。因为如果不这样,我感觉会有大量的计算每个K都参与了所有的计算 这个计算量太大了。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-27 11:08 | 显示全部楼层
这个只能说理论上是有优化效果的,因为的确减少了计算量。但是能减少多少,这个就完全看用户本地代码了。如果本来代码就简单,那其实根本就没啥影响。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-27 11:17 | 显示全部楼层
技术009 发表于 2023-4-27 11:08
这个只能说理论上是有优化效果的,因为的确减少了计算量。但是能减少多少,这个就完全看用户本地代码了。如 ...

我是可能 在本周期里面计算了大量的跨周期的数据  都是一些简单计算 用这些计算结果判断是否参与引用跨周期指标,  测试感觉输出反正就是会在IF满足以后才有输出, 感觉是有效 但不知道运算模式···所以要了解下。
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-27 12:02 | 显示全部楼层
技术009 发表于 2023-4-27 11:08
这个只能说理论上是有优化效果的,因为的确减少了计算量。但是能减少多少,这个就完全看用户本地代码了。如 ...

同时我经过测试,if内部的输出 支持被调用。比如60周期的 if内部的C:XX;
在60周期的IF外部取C ,P:C;这样的结果可能就会像上面说的情况出现问题 好像是一定有问题。

但是在跨周期调用的时候 可以在小周期直接调用60分钟的if内部的C ,不需要把C 拿到IF外面来。经过测试  这样的作法是可行的  求证一下老师对这个做法有没有问题存在。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-27 12:48 | 显示全部楼层
啥意思?跨周期调用放到if内部?
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-27 12:52 | 显示全部楼层
技术009 发表于 2023-4-27 12:48
啥意思?跨周期调用放到if内部?

这样


补充内容 (2023-4-27 12:54):
COND2P是60周期的IF内部的输出   这个输出如果拿到IF外面去  就会出错 但是就这样在IF内部 用跨周期进行调用它 是没发现问题的
截图202304271252352731.png
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-4-27 12:55 | 显示全部楼层
本帖最后由 技术009 于 2023-4-27 12:57 编辑

我本地测试了下 是没问题的。并且其实我之前说的出问题的是这里:
if c>o then
begin
m:1;
end
z:m;//这里出问题

金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

507

主题

2975

帖子

2985

积分

Rank: 2

等级: 标准版

注册:
2023-2-16
曾用名:
 楼主| 发表于 2023-4-27 12:59 | 显示全部楼层
技术009 发表于 2023-4-27 12:55
我本地测试了下 是没问题的。

本周期在IF外部取IF内部的输出会出问题 ,这样不出问题挺好的  所以问下老师这种可不可靠,这样结合我前面做的事情可能有很大的帮助
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-10 14:41 , Processed in 0.175575 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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