金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 5184|回复: 14

后台tenterprice数据丢失

[复制链接]

32

主题

104

帖子

104

积分

等级: 免费版

注册:
2022-9-26
曾用名:
发表于 2023-8-29 10:36 | 显示全部楼层 |阅读模式

这两天debugfile tenterprice发现它会自动失效。一分钟k线走完,后台。
比如今天只有一笔9:31成交的,在9:54之前,tenterprice都是正常的,但9:53:59时就变无效了。如下图。于此同时,记录交易次数的kdcs也从1变成了0.
2023-08-29 09:53:01.139    kdcs1.0000
2023-08-29 09:53:01.141    tenterprice   101.2520
2023-08-29 09:53:59.225    kdcs0.0000
2023-08-29 09:53:59.295    tenterprice   -1.#QNB

交易日志如下:09:53-09:54缺了一段。
2023-08-29 09:53:58.377    【后台】运行结束
2023-08-29 09:53:58.380    【后台】 运行结束
2023-08-29 09:54:00.001    【后台】 运行结束
2023-08-29 09:54:00.002    【后台】 运行结束


代码:

globalvariable:kdcs=0;
if date>ref(date,1) then kdcs:=0;
if time=093100 and kdcs=0 then begin
tbuy();
kdcs:=1;
end

DEBUGFILE('D:\880\TEST.TXT','tenterprice   %.4f',tenterprice);

请问


回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-8-29 10:41 | 显示全部楼层
后台程序化交易中间是否意外退出或重启呢。tenterprice函数返回值是依赖于后台交易记录的,一般情况下软件意外退出会导致交易记录丢失的。你可以看下程序化交易明细中是否有记录。另外globalvariable全局变量是在开启后台程序化时会被初始化的,且只会在最新的K线上执行赋值。要看下你程序化交易是否中间重启了。
截图202308291041481659.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

104

帖子

104

积分

等级: 免费版

注册:
2022-9-26
曾用名:
 楼主| 发表于 2023-8-29 10:54 | 显示全部楼层
应该是重启过了。重启过后,交易记录还是只有一条,但tenterprice 就不正常了。有什么办法可以保持重启后的tenterprice和kdcs保持前面数据么?
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-8-29 11:05 | 显示全部楼层
1、在正常重启的情况下,后台交易明细是不会丢失的,那tenterprice也是可以正常读取并输出的,你可以输出时加上品种代码,看输出的开仓价是否是这个品种。例如:DEBUGFILE('D:\880\TEST.TXT',stklabel&'  tenterprice=%.4f',tenterprice);
2、如果要重启不影响全局变量的记录,那就不能使用globalvariable这个全局变量了,可以使用EXTGBDATA() 、EXTGBDATASET()这个全局变量来记录开仓次数了,这个重启是不会被初始化的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

104

帖子

104

积分

等级: 免费版

注册:
2022-9-26
曾用名:
 楼主| 发表于 2023-8-29 15:09 | 显示全部楼层
技术010 发表于 2023-8-29 11:05
1、在正常重启的情况下,后台交易明细是不会丢失的,那tenterprice也是可以正常读取并输出的,你可以输出时 ...

谢谢如上1,2条指导!

刚刚去翻debugfile, 又发现在很多新的时间点自动闪烁,中间没有重启过。
2023-08-29 11:19:00.926    tenterprice   101.2520
2023-08-29 11:19:01.595    tenterprice   -1.#QNB
2023-08-29 11:20:00.975    tenterprice   101.2520
2023-08-29 11:20:01.719    tenterprice   -1.#QNB
...





回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-8-29 15:18 | 显示全部楼层
那你在这段输出语句中加一下品种代码,看是否是在别的品种上进行输出了,导致输出的是个无效值,代码参考4楼的范例。理论上不可能一会儿读取到,一会儿又读取失败的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

104

帖子

104

积分

等级: 免费版

注册:
2022-9-26
曾用名:
 楼主| 发表于 2023-8-29 15:27 | 显示全部楼层
技术010 发表于 2023-8-29 15:18
那你在这段输出语句中加一下品种代码,看是否是在别的品种上进行输出了,导致输出的是个无效值,代码参考4 ...

好的。因为我是每个策略debugfile输出的文件夹不同,所以应该不会两个策略同时debug在同一个text。

如果你们测tenterprice的话,请一起测下tenterbars。昨天有一笔09:25:00下单的,但今日的tenterbars有些不对,但说不上来是不是设置数据刷新值不够。
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-8-29 15:49 | 显示全部楼层
这个我们会测下,输出的时候建议加上品种代码,否则可能你的指标不小心加载到K线图上或别的地方,也导致了运行输出,结果就不好分析了。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

104

帖子

104

积分

等级: 免费版

注册:
2022-9-26
曾用名:
 楼主| 发表于 2023-8-29 16:16 | 显示全部楼层
好的
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2023-8-30 15:27 | 显示全部楼层
本地测试tenterprice和tenterbars返回值未发现问题。如果你设置的K线数据量少于开仓历时,那返回值就按你设置的数据量来计算了。
截图202308301527042979.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-23 09:10 , Processed in 0.128406 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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