金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2793|回复: 5

后台发单有问题

[复制链接]

7

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-18
曾用名:
发表于 2023-10-30 10:50 | 显示全部楼层 |阅读模式
//中间变量
INPUT:M(20,10,100,10),N(2,0.5,4,0.5),SS(1,1,100,1);
VARIABLE:X:=50;

MID :=MA(CLOSE,M);                                  //布林中轨
UPPER:=MID + N*STD(CLOSE,M);                        //布林上轨
LOWER:=MID - N*STD(CLOSE,M);                        //布林下轨
CYC:=TENTERBARS+1,NOAXIS;                            //开仓至今的周期数
ROC:=CLOSE - REF(CLOSE,40);                         //过滤1
ROC2:=ABS((CLOSE - REF(CLOSE,3))/REF(CLOSE,3)*100); //过滤2 防止短期涨幅过大
ROC3:=ABS((CLOSE - REF(CLOSE,7))/REF(CLOSE,7)*100); //过滤3 防止中期涨幅过大

手数:=SS;
EXITMA:=MA(CLOSE,IF(THOLDING<>0,IF(CYC>=40,10,51-CYC),50));

//交易条件
//开多平空条件:=REF(ROC,1)>0 AND REF(ROC2,1)<4 AND REF(ROC3,1)<8 AND H>REF(UPPER,1);//最高价上穿上轨且通过过滤条件
//开空平多条件:=REF(ROC,1)<0 AND REF(ROC2,1)<4 AND REF(ROC3,1)<8 AND L<REF(LOWER,1);//最低价下穿下轨且通过过滤条件
//多头出场条件:=Low<=EXITMA AND EXITMA<UPPER;
//空头出场条件:=HIGH>=EXITMA AND EXITMA>LOWER;

开多平空条件:=REF(ROC,1)>0 AND REF(ROC2,1)<4 AND REF(ROC3,1)<8 AND cross(H,REF(UPPER,1));//最高价上穿上轨且通过过滤条件
开空平多条件:=REF(ROC,1)<0 AND REF(ROC2,1)<4 AND REF(ROC3,1)<8 AND cross(REF(LOWER,1),l);//最低价下穿下轨且通过过滤条件
多头出场条件:=cross(EXITMA,LOW) AND EXITMA<UPPER;
空头出场条件:=cross(HIGH,EXITMA) AND EXITMA>LOWER;

//交易系统
//多头出场:TSELL(多头出场条件 AND THOLDING>0,手数,LMT,MIN(open,EXITMA));
//空头出场:TSELLSHORT(空头出场条件 AND THOLDING<0,手数,LMT,MAX(OPEN,EXITMA));
多头出场:TSELL(多头出场条件 AND THOLDING>0,手数,LMT,c);
空头出场:TSELLSHORT(空头出场条件 AND THOLDING<0,手数,LMT,c);



平空:TSELLSHORT(开多平空条件 AND THOLDING<0,手数,LMT,C);
平多:TSELL(开空平多条件 AND THOLDING>0,手数,LMT,C);
开空:TBUYSHORT(开空平多条件 AND THOLDING=0,手数,LMT,C);
开多:TBUY(开多平空条件 AND THOLDING=0,手数,LMT,C);
//注意先平后开原则


我上面的这段代码是直接根据图表程序化加T改成后台代码的。图表上运行正常,但是后台程序化运行只能开单,不能平仓。

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-10-30 10:59 | 显示全部楼层
是出不了信号,还是出了信号无法执行。代码看了,没看出逻辑上有什么问题。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

7

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-18
曾用名:
 楼主| 发表于 2023-10-30 11:02 | 显示全部楼层
技术009 发表于 2023-10-30 10:59
是出不了信号,还是出了信号无法执行。代码看了,没看出逻辑上有什么问题。

平仓出不了信号。在图表上显示已经平仓了。但是后台根本没有发单。在未成交里面也找不到
回复

使用道具 举报

7

主题

45

帖子

45

积分

Rank: 1

等级: 新手上路

注册:
2023-9-18
曾用名:
 楼主| 发表于 2023-10-30 11:05 | 显示全部楼层



以上是图表的代码,我测试没有问题。  直接贴代码会说不让发相似的,只好截图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号? 微信登录

x
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-10-30 13:42 | 显示全部楼层
测试了下,代码本身没有问题。但是你这个本身信号对数据敏感。你看下是否 图表和后台 数据使用的不一样。比如具体合约和连续合约,除权和未除权。这些都会影响到指标信号的计算结果。

在zn 日线上测试结果,是可正常触发的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号? 微信登录

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

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-11-1 15:33 | 显示全部楼层
本帖最后由 技术009 于 2023-11-1 15:47 编辑

你这个条件:

EXITMA:=MA(CLOSE,IF(THOLDING<>0,IF(CYC>=40,10,51-CYC),50));

之前没留意到你这里还有个THOLDING的判断。

这个值始终只有最新值。 这个和图表完全不是一回事,图表的变量都有历史值,所以你可以做这个均值计算,但是在后台 你这里是不可以这样处理的。或者说应该需要做一些调整,具体要测试下才能确认下怎么调整。

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-1 21:02 , Processed in 0.149637 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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