金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2082|回复: 4

模拟账户交易中,SELL函数条件为TRUE却不执行

[复制链接]

5

主题

11

帖子

11

积分

Rank: 1

等级: 新手上路

注册:
2024-1-22
曾用名:
发表于 2024-1-23 13:23 | 显示全部楼层 |阅读模式
测试代码如下所示,在模拟账户中交易,固定1秒轮训,调试输出平空条件SellCon为1,但是SELL函数始终不执行,还请老师帮忙看看问题出在哪?
WARNING_DISABLE:9;
GLOBALVARIABLE:BUYBAR:=0;
CurrentBar:BARPOS,NOAXIS,NODRAW;//当前周期计数
IF ISLASTBAR THEN
        BEGIN
                TIME1:time0-timetot0(dynainfo(207)),nodraw;
                TIM:=TIME1<=10 AND TIME1>0;//判断是否是本周期最后10秒
                BuyCon:TBUYHOLDINGEX('','',1)=0 AND TIM=1;
END
BUY(BuyCon,1,MARKETR);
IF BUYCON THEN
        BEGIN
                BUYBAR:=CURRENTBAR;
END
StopLine1:ref(close,1);
IF ISLASTBAR THEN
        BEGIN
                SellCon0:TBUYHOLDINGEX('','',1)>0 AND BUYBAR<CURRENTBAR;
                SellCon1:=CLOSE<StopLine1;
                SellCon:SellCon0 AND SellCon1;
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','日期 %.0f',DATE,0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','时间 %.0f',TIME1,0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','持仓 %.0f',TBUYHOLDINGEX('','',1),0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','买入周期 %.0f',BUYBAR,0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','当前周期 %.0f',CURRENTBAR,0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','止损线 %.0f',StopLine1,0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','收盘价 %.0f',CLOSE,0);
                debugfile2('C:\01-xxdy\00-投资\20240108-期货交易系统\output.txt','卖出条件 %.0f',SellCon,0);
END
SELL(SellCon,100%,MARKETR);

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

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

你这段代码用在图表模型里?

你这里是没有开仓语句,这个平仓语句是无法触发的,因为没有理论持仓。图表模型是基于理论持仓来的,理论持仓来源于历史开仓信号的,你没有开仓语句,就没有理论持仓,即使有实际持仓也没用。


另外你这个代码 后台和图表语句混搭在一起,是非常不合理的做法的,有些后台函数的效果 在图表上是无效或者返回值是无法符合预期的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

5

主题

11

帖子

11

积分

Rank: 1

等级: 新手上路

注册:
2024-1-22
曾用名:
 楼主| 发表于 2024-1-23 13:50 | 显示全部楼层
技术009 发表于 2024-1-23 13:32
你这段代码用在图表模型里?

你这里是没有开仓语句,这个平仓语句是无法触发的,因为没有理论持仓。图表 ...

就是说SELL函数有一个隐藏的条件是模拟持仓HOLDING>0,否则即使实际持仓TBUYHOLDINGEX('','',1)>0也无法触发平仓,可以这样理解吧?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-1-23 13:51 | 显示全部楼层
是这个意思。

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

使用道具 举报

5

主题

11

帖子

11

积分

Rank: 1

等级: 新手上路

注册:
2024-1-22
曾用名:
 楼主| 发表于 2024-1-23 14:09 | 显示全部楼层

好的,谢谢老师解惑
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-4 08:06 , Processed in 0.102093 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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