金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2220|回复: 19

后台调用图表持仓输出的持仓不一致

[复制链接]

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-7-1 10:14 | 显示全部楼层 |阅读模式
如图后台调用图表持仓debugfile输出的持仓和图表代码里msgout输出的持仓不一样,

图表代码里使用msgout输出barpos都有几千这么多了,这是为何
2025/07/01 10:08:29  策略一 112000 BARPOS:1600 HOLDING:800
2025/07/01 10:08:29  策略一 112500 BARPOS:1601 HOLDING:801
2025/07/01 10:08:29  策略一 113000 BARPOS:1602 HOLDING:801
2025/07/01 10:08:29  策略一 133500 BARPOS:1603 HOLDING:802
2025/07/01 10:08:29  策略一 134000 BARPOS:1604 HOLDING:802
2025/07/01 10:08:29  策略一 134500 BARPOS:1605 HOLDING:803
2025/07/01 10:08:29  策略一 135000 BARPOS:1606 HOLDING:803
2025/07/01 10:08:29  策略一 135500 BARPOS:1607 HOLDING:804
2025/07/01 10:08:29  策略一 140000 BARPOS:1608 HOLDING:804
2025/07/01 10:08:29  策略一 140500 BARPOS:1609 HOLDING:805
2025/07/01 10:08:29  策略一 141000 BARPOS:1610 HOLDING:805

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

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 10:18 | 显示全部楼层
我是照着培训视频《组合策略的实现》中编写的,

净持仓范例

净持仓范例
回复

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 10:20 | 显示全部楼层
我照着培训视频中的《净持仓范例》编写的

净持仓范例

净持仓范例
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-7-1 10:21 | 显示全部楼层
你后台的下单策略中,stkindiex只引用了10根数据进行计算holding啊,而你图上都用了上千根数据量,数据量不同,计算的结果也不相同的啊。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 10:29 | 显示全部楼层
我这个是后台程序化调用图标程序化的理论持仓,图标程序是每两根K线下一次单;后台程序化我只引用了10根,理论上前台程序化应该最多跑10根才对,你说的“图上都用了上千根数据量”在哪里设置,我是照这个培训视频上代码写的
1751336288956.jpg
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2025-7-1 12:02 | 显示全部楼层
1、培训视频只是简单的示范。在后台上引用图表的指标值,需要在熟悉运行机制的基础的
2、只有数据量使用相同的基础上,后台上引用图表的结果才可能和图表相同的,你stkindiex中指定了10根数据量,那你图上也需要锁定10根数据量啊。任何指标的计算,和数据都有着直接的关系。

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

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 15:21 | 显示全部楼层
技术010 发表于 2025-7-1 12:02
1、培训视频只是简单的示范。在后台上引用图表的指标值,需要在熟悉运行机制的基础的
2、只有数据量使用相 ...

限制图标数据使用量,在“下单”公式在图表中运行确实没有问题,但是在后台程序运行还是有问题

补充内容 (2025-7-1 15:22):
// 策略一代码(策略名为S1)【图表程序】
IF MOD(BARPOS,2)=1 THEN BEGIN
        BUY(1,1,THISCLOSE);
END
ho:HOLDING;
MSGOUT(1,'策略一 '+NUMTOSTR(TIME(),0)+' BARPOS:'+NUMTOSTR(BARPOS,0)+' HOLDING:'+NUMTOSTR(h...
回复

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 15:22 | 显示全部楼层
// 策略一代码(策略名为S1)【图表程序】
IF MOD(BARPOS,2)=1 THEN BEGIN
        BUY(1,1,THISCLOSE);
END
ho:HOLDING;
MSGOUT(1,'策略一 '+NUMTOSTR(TIME(),0)+' BARPOS:'+NUMTOSTR(BARPOS,0)+' HOLDING:'+NUMTOSTR(ho,0));

// 策略二代码(策略名为S2)【图表程序】
IF MOD(BARPOS,2)=1 THEN BEGIN
        BUYSHORT(1,1,THISCLOSE);
END
ho:HOLDING;
MSGOUT(1,'策略二 '+NUMTOSTR(TIME(),0)+' BARPOS:'+NUMTOSTR(BARPOS,0)+' HOLDING:'+NUMTOSTR(ho,0));

// 下单代码(策略名为下单)【后台程序】
持仓1:=STKINDI('','S1.ho',0,2,-1);
持仓2:=STKINDI('','S2.ho',0,2,-1);
持仓:=持仓1+持仓2;
DEBUGFILE('D:\下单.txt', NUMTOSTR(TIME(),0)+'  '+NUMTOSTR(持仓1,0)+'  '+NUMTOSTR(持仓2,0)+' 理论持仓 %.f',持仓);

进行精细化历史测评,单个品种回测了一天时间,STKINDI每调用一次,S1与S2策略会从开始时间运行到结束时间
msgout打印出来的日志一共10644行,下单.txt一共118行,而且精细化历史测评第一分钟拿到的图标程序理论持仓居然是回测时间段的最后一分钟持仓
msgout日志
...
2025/07/01 11:31:17  策略一 144000 BARPOS:41 HOLDING:21
2025/07/01 11:31:17  策略一 144500 BARPOS:42 HOLDING:21
2025/07/01 11:31:17  策略一 145000 BARPOS:43 HOLDING:22
2025/07/01 11:31:17  策略一 145500 BARPOS:44 HOLDING:22
2025/07/01 11:31:17  策略一 150000 BARPOS:45 HOLDING:23
2025/07/01 11:31:17  策略一 90500 BARPOS:1 HOLDING:1
2025/07/01 11:31:17  策略一 91000 BARPOS:2 HOLDING:1
2025/07/01 11:31:17  策略一 91500 BARPOS:3 HOLDING:2
2025/07/01 11:31:17  策略一 92000 BARPOS:4 HOLDING:2
2025/07/01 11:31:17  策略一 92500 BARPOS:5 HOLDING:3
...

下单.txt日志
2025-07-01 11:40:28.527    90100  23  -23 理论持仓 0
2025-07-01 11:40:28.668    90200  23  -23 理论持仓 0
2025-07-01 11:40:28.810    90300  23  -23 理论持仓 0
2025-07-01 11:40:28.959    90400  23  -23 理论持仓 0
2025-07-01 11:40:29.091    90500  23  -23 理论持仓 0
2025-07-01 11:40:29.228    90600  23  -23 理论持仓 0
2025-07-01 11:40:29.368    90700  23  -23 理论持仓 0
2025-07-01 11:40:29.508    90800  23  -23 理论持仓 0
2025-07-01 11:40:29.647    90900  23  -23 理论持仓 0
2025-07-01 11:40:29.769    91000  23  -23 理论持仓 0
2025-07-01 11:40:29.909    91100  24  -24 理论持仓 0
2025-07-01 11:40:30.059    91200  24  -24 理论持仓 0
2025-07-01 11:40:30.214    91300  24  -24 理论持仓 0
2025-07-01 11:40:30.382    91400  24  -24 理论持仓 0
...
回复

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 15:24 | 显示全部楼层
// 策略一代码(策略名为S1)【图表程序】
IF MOD(BARPOS,2)=1 THEN BEGIN
        BUY(1,1,THISCLOSE);
END
ho:HOLDING;
MSGOUT(1,'策略一 '+NUMTOSTR(TIME(),0)+' BARPOS:'+NUMTOSTR(BARPOS,0)+' HOLDING:'+NUMTOSTR(ho,0));

// 策略二代码(策略名为S2)【图表程序】
IF MOD(BARPOS,2)=1 THEN BEGIN
        BUYSHORT(1,1,THISCLOSE);
END
ho:HOLDING;
MSGOUT(1,'策略二 '+NUMTOSTR(TIME(),0)+' BARPOS:'+NUMTOSTR(BARPOS,0)+' HOLDING:'+NUMTOSTR(ho,0));

// 下单代码(策略名为下单)【后台程序】
持仓1:=STKINDI('','S1.ho',0,2,-1);
持仓2:=STKINDI('','S2.ho',0,2,-1);
持仓:=持仓1+持仓2;
DEBUGFILE('D:\下单.txt', NUMTOSTR(TIME(),0)+'  '+NUMTOSTR(持仓1,0)+'  '+NUMTOSTR(持仓2,0)+' 理论持仓 %.f',持仓);

进行精细化历史测评,单个品种回测了一天时间,STKINDI每调用一次,S1与S2策略会从开始时间运行到结束时间
msgout打印出来的日志一共10644行,下单.txt一共118行,而且精细化历史测评第一分钟拿到的图标程序理论持仓居然是回测时间段的最后一分钟持仓
msgout日志
...
2025/07/01 11:31:17  策略一 144000 BARPOS:41 HOLDING:21
2025/07/01 11:31:17  策略一 144500 BARPOS:42 HOLDING:21
2025/07/01 11:31:17  策略一 145000 BARPOS:43 HOLDING:22
2025/07/01 11:31:17  策略一 145500 BARPOS:44 HOLDING:22
2025/07/01 11:31:17  策略一 150000 BARPOS:45 HOLDING:23
2025/07/01 11:31:17  策略一 90500 BARPOS:1 HOLDING:1
2025/07/01 11:31:17  策略一 91000 BARPOS:2 HOLDING:1
2025/07/01 11:31:17  策略一 91500 BARPOS:3 HOLDING:2
2025/07/01 11:31:17  策略一 92000 BARPOS:4 HOLDING:2
2025/07/01 11:31:17  策略一 92500 BARPOS:5 HOLDING:3
...

下单.txt日志
2025-07-01 11:40:28.527    90100  23  -23 理论持仓 0
2025-07-01 11:40:28.668    90200  23  -23 理论持仓 0
2025-07-01 11:40:28.810    90300  23  -23 理论持仓 0
2025-07-01 11:40:28.959    90400  23  -23 理论持仓 0
2025-07-01 11:40:29.091    90500  23  -23 理论持仓 0
2025-07-01 11:40:29.228    90600  23  -23 理论持仓 0
2025-07-01 11:40:29.368    90700  23  -23 理论持仓 0
2025-07-01 11:40:29.508    90800  23  -23 理论持仓 0
2025-07-01 11:40:29.647    90900  23  -23 理论持仓 0
2025-07-01 11:40:29.769    91000  23  -23 理论持仓 0
2025-07-01 11:40:29.909    91100  24  -24 理论持仓 0
2025-07-01 11:40:30.059    91200  24  -24 理论持仓 0
2025-07-01 11:40:30.214    91300  24  -24 理论持仓 0
2025-07-01 11:40:30.382    91400  24  -24 理论持仓 0
...


回复

使用道具 举报

0

主题

20

帖子

20

积分

Rank: 4

等级: 专业版

注册:
2022-7-28
曾用名:
发表于 2025-7-1 15:25 | 显示全部楼层
输入字数好像有限制,我把内容复制到了文件中

后台程序问题.txt

2.43 KB, 下载次数: 642

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-15 01:24 , Processed in 0.144817 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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