金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 8259|回复: 31

为什么算错

[复制链接]

52

主题

177

帖子

177

积分

等级: 免费版

注册:
2021-8-13
曾用名:
发表于 2021-12-27 21:44 | 显示全部楼层 |阅读模式
我是用系统自带的布林强盗系统加一个计数器,现在用前一个信号用来计数,即用REF后,发现最后发现前面一根zzc值 为2,平仓当根值为3,平仓后值为4,但是如果不用REF则依次值为,2,3,3。这是为什么,如果变REF值为233

VARIABLE: zz:=0;
.......
pk4:=空头出场条件 AND HOLDING<0 ;
if ref(pk4,1)  THEN
BEGIN
        sellshort(1,holding,LIMITr,cc);
if NUMPROFIT(1)>0 then zz:=1;
if NUMPROFIT(1)<0 then zz:=zz+1;
end
....
ZZC:ZZ;

回复

使用道具 举报

34

主题

9006

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2021-12-28 08:22 | 显示全部楼层
平仓位置不一样,交易盈亏自然会不同。
你可以在图表中,输出NUMPROFIT的结果,对比带和不带的值。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

52

主题

177

帖子

177

积分

等级: 免费版

注册:
2021-8-13
曾用名:
 楼主| 发表于 2021-12-28 09:12 | 显示全部楼层
我是用了限价,就是前面一个收盘C为限价CC值,就是开平仓价与前面一样了
也就是说赢亏值一样了

补充内容 (2021-12-28 09:16):
平仓前面是亏损256,当根平仓是亏损-724,以后也是-724,与没有用REF一样。

补充内容 (2021-12-28 09:22):
虽然平仓位置多进一根K,但是开平仓价格均是一样的,而且亏损的值也是一样的
回复

使用道具 举报

30

主题

7077

帖子

7087

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2021-12-28 09:31 | 显示全部楼层
ref的使用的是前一根k相同位置时候的值,不是前一根k代码最后面的值
这个例子aa的值是1不是2,需要您尽量理解需要
a:=1;
aa:ref(a,1);
a:=2;
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

19

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-12-28 09:35 | 显示全部楼层
你ref获取上一个K的 zz  这个代码是放在什么地方的。

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

使用道具 举报

52

主题

177

帖子

177

积分

等级: 免费版

注册:
2021-8-13
曾用名:
 楼主| 发表于 2021-12-28 09:51 | 显示全部楼层
就是上面第一个问题写代码的位置,另外CC:=ref(c,1);,我知道上面的C是用前面一根收盘价,因为我要用轮询来,所以不得不用REF,但是现在发现计数器出错
回复

使用道具 举报

19

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

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

没看到ref(zzc,1)在什么地方。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

52

主题

177

帖子

177

积分

等级: 免费版

注册:
2021-8-13
曾用名:
 楼主| 发表于 2021-12-28 10:00 | 显示全部楼层
是在程序的最后一行
回复

使用道具 举报

19

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-12-28 10:11 | 显示全部楼层
ref取值是一种切片的方式。就是上个K相同位置的值。注意是相同位置的值,而不是上个K的代码运行完后 最后的值。有差异的。

所以取值时候也要看下中间是否有操作变量并使变量值变化的代码。

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

使用道具 举报

52

主题

177

帖子

177

积分

等级: 免费版

注册:
2021-8-13
曾用名:
 楼主| 发表于 2021-12-28 10:16 | 显示全部楼层
技术009 发表于 2021-12-28 10:11
ref取值是一种切片的方式。就是上个K相同位置的值。注意是相同位置的值,而不是上个K的代码运行完后 最后的 ...

当根和REF均是相同位置C的值,注意一下CC表达,中 间也没有什么值变化,因为回测后我检查过,所有开平价用市价和REF来平的价格均是一样的。现在问题是计数器的值是怎么不一样
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-17 21:53 , Processed in 0.254077 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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