金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 7307|回复: 13

后台程序化

[复制链接]

16

主题

50

帖子

60

积分

Rank: 2

等级: 标准版

注册:
2021-5-20
曾用名:
发表于 2022-9-6 16:54 | 显示全部楼层 |阅读模式
后台策略回测时有效,但是无法开仓,请教是什么原因?
回复

使用道具 举报

38

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-9-7 08:12 | 显示全部楼层
请提供下测试代码
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

16

主题

50

帖子

60

积分

Rank: 2

等级: 标准版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-9-7 08:49 | 显示全部楼层
CYC:=BARSLAST(DATE<>REF(DATE,1))+1;
H30:REF(HHV(H,N),1);
L30:REF(LLV(L,N),1);
MID:(H30+L30)/2;
T1:=(TIME>090500 AND TIME <112500) OR (TIME>133500 AND TIME <144000) OR (TIME>210500 AND TIME<225500);
M5:=STKINDI('LU00','MA.MA4',0,17,-1);
M6:=CALLSTOCK('LU00',VTHIGH,17,-1 );
M7:=CALLSTOCK('LU00',VTLOW,17,-1 );
SG:=STKINDI('LU00','箱体.H30',0,17,0);
ZGJ:=CALLSTOCK('LU00',VTHIGH,17,0 );
BUYCOND:= H>H30 AND (H30-MID)/MID<N1 AND CYC>=N2 AND T1 AND M6>M5 AND ZGJ>SG;
IF ISLASTBAR THEN
         DEBUGFILE('D:\TEST.TXT','       BUYCOND:%.0f',BUYCOND);
IF BUYCOND THEN BEGIN
        TBUY(TBUYHOLDINGEX('','',1)=0,20%,MKT),PERTRADER;
        DEBUGFILE('D:\TEST.TXT','       品种:'+STKLABEL,0);
        tstr:=NUMTOSTR(date,0)+'_'+NUMTOSTR(time,0);
        DEBUGFILE('D:\TEST.TXT','       开仓位置:'+tstr,0);

END
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-9-7 09:04 | 显示全部楼层
代码逻辑没有问题,你可以用debugfile输出你的各个开仓条件了,看各个子条件是否都满足了。另外你软件用的是北京时间?看你的time的限制是按北京时间写的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

16

主题

50

帖子

60

积分

Rank: 2

等级: 标准版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-9-7 09:18 | 显示全部楼层
用的是北京时间,也输出了buycond的这个开仓条件了,全部为0,但理论是满足开仓条件的,图表运行时是正常的,你那边能帮我测试一下吗?
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-9-7 09:32 | 显示全部楼层
我这可以协助帮你测试下的,但要你提供下引用策略箱体的代码。另外后台和图表是不建议直接对比的,两者是独立计算的,没有关联,使用的数据量和设置也都不同,那计算出的结果也是不同的,后台只能使用debugfile输出条件进行调试的,你直接输出buycond不好分析原因的,可以把H30,M5,M6等条件变量都分别输出,看是具体哪个条件不满足导致的不开仓。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

3

主题

854

帖子

895

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-10
曾用名:
发表于 2022-9-7 09:35 | 显示全部楼层
你把后台使用的数据量放大看下。
回复

使用道具 举报

16

主题

50

帖子

60

积分

Rank: 2

等级: 标准版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-9-7 09:38 | 显示全部楼层
箱体:INPUT:N(5,5,500,5);
H30:REF(HHV(H,N),1);
L30:REF(LLV(L,N),1);
MID:(H30+L30)/2;
麻烦帮我测试一下,我也按照你的方法输出一下看看。
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-9-7 09:41 | 显示全部楼层
可以,有结果会直接本贴回复的,关注本贴即可。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

16

主题

50

帖子

60

积分

Rank: 2

等级: 标准版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-9-7 09:59 | 显示全部楼层
CYC:=BARSLAST(DATE<>REF(DATE,1))+1;
CYC>=N2;
好像是这个代码的原因

补充内容 (2022-9-7 10:00):
这个条件始终不满足
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-7 11:41 , Processed in 0.122443 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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