金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 831|回复: 4

两个问题,发现两个函数失灵 且会导致崩溃

[复制链接]

78

主题

183

帖子

193

积分

Rank: 4

等级: 专业版

注册:
2021-5-20
曾用名:
发表于 2024-9-9 13:57 | 显示全部楼层 |阅读模式
[PEL] 复制代码
 RUNMODE:1;WARNING_DISABLE:4;GLOBALVARIABLE:XD_TICK:=0;IF TACCOUNT(53)=0 OR NOT(ISLASTBAR) THEN EXIT;

	ACCT:='5177';//交易账号
  MKT_ID:= STKLABEL;	//监控品种主连合约

TTL_KD_HOLD: TSUBMITID(1,ACCT,MKT_ID,0,0),NODRAW;
TTL_KK_HOLD: TSUBMITID(3,ACCT,MKT_ID,0,0),NODRAW;
TTL_PD_HOLD: TSUBMITID(2,ACCT,MKT_ID,0,0),NODRAW;
TTL_PK_HOLD: TSUBMITID(4,ACCT,MKT_ID,0,0),NODRAW;

DEBUGOUT('开多未成交%.2f',TTL_KD_HOLD);
DEBUGOUT('开空未成交%.2f',TTL_KK_HOLD);
DEBUGOUT('平多未成交%.2f',TTL_PD_HOLD);
DEBUGOUT('平空未成交%.2f',TTL_PK_HOLD);


第一个问题:上述代码我想提取未成交的委托数量,在图表调试中,这里显示所有变量都是-1,即便有未成交的委托,也不能正常返回数值,但是如果我用老的方法:
TTL_KD2_HOLD: TGLOBALSUBMITEX(1,ACCT,MKT_ID,0),NODRAW;
TTL_KK2_HOLD: TGLOBALSUBMITEX(3,ACCT,MKT_ID,0),NODRAW;
TTL_PD2_HOLD: TGLOBALSUBMITEX(2,ACCT,MKT_ID,0),NODRAW;
TTL_PK2_HOLD: TGLOBALSUBMITEX(4,ACCT,MKT_ID,0),NODRAW;

则没有问题。因此,TSUBMITID这个函数是有问题的。另外,即便在没有值的时候,返回-1也是不科学的,因为如果需要计算的话,我还得把这个负值先变成零,否则会导致总和计算错误。

第二个问题: 上述代码我用后台调试  DEBUGOUT 试图在调试窗口中在线显示后台变量,然而失败了,后台无法在线显示该变量,且在这个情况下 “停止预警” 后再次 “启动预警” 会导致闪退崩溃。

操作截图如下:
后台代码:(使用上面的代码)
预警设置:

后台窗口debugout什么也没有:


此时, “停止预警” 后再次 “启动预警” 会闪退崩溃!!!!!!!!!


回复

使用道具 举报

78

主题

183

帖子

193

积分

Rank: 4

等级: 专业版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2024-9-9 14:02 | 显示全部楼层
截图202409091400598885.png 截图202409091401404974.png
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

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

1、这个新函数只能在后台程序化中使用,图表上是输出不了结果的。
2、新版中,debugout已经不是输出到窗口了,是输出到交易日志的AlarmDebug文件夹中了,本地测试这段代码,是正常输出的,且停止预警,再次开启预警,也未见崩溃,输出的结果也是正常的。如果你那崩溃,那可能需要提供下完整代码看下了。

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

使用道具 举报

78

主题

183

帖子

193

积分

Rank: 4

等级: 专业版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2024-9-9 15:26 | 显示全部楼层
TSUBMITID(1,ACCT,MKT_ID,0,0) 和 TGLOBALSUBMITEX(1,ACCT,MKT_ID,0) 都是读取开多未成交量,后者则可以在图表中显示。这连个函数在运行效率是哪个更高??
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2024-9-9 15:29 | 显示全部楼层
这2个函数在运行效率方面区别不大,根据实际需要来使用就可以了。这个两个函数都是用于后台程序化策略中的,图表策略中用不到的。后台函数的输出调试,一般采用debugout或debugfile来跟踪调试,不太建议在图表上输出来的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-29 00:36 , Processed in 0.159767 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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