金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 胖虎爱吃鱼

后台多策略汇总没有执行

[复制链接]

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-4-21 15:00 | 显示全部楼层
胖虎爱吃鱼 发表于 2024-4-19 21:44
请问老师,我那个出问题的子策略开仓代码如下,逐K计算,仅刷新最后一根K线模式有问题吗;
//********** ...

单独这部分代码,只有全局变量opensnum有作用,它控制每天只会开仓1次。并且是一天内有且还会开一个方向上的仓位。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2024-4-22 09:14 | 显示全部楼层
技术006 发表于 2024-4-21 15:00
单独这部分代码,只有全局变量opensnum有作用,它控制每天只会开仓1次。并且是一天内有且还会开一个方向 ...

opensnum全局变量申明去掉影响吗,感觉这里代码删除也还是同样效果
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-4-22 09:31 | 显示全部楼层
本帖最后由 技术006 于 2024-4-22 09:40 编辑
胖虎爱吃鱼 发表于 2024-4-22 09:14
opensnum全局变量申明去掉影响吗,感觉这里代码删除也还是同样效果

这要看你本身的代码诉求,没有它你可能一天会开很多次。除非保留那个if  date<>ref(date,1)条件。这种情况下opensum变量没有初始值等同于全局变量,但是特殊条件控制情况下也会飞掉。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2024-4-22 10:30 | 显示全部楼层
啥样特殊情况会飞,飞掉啥意思?
回复

使用道具 举报

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-4-22 10:40 | 显示全部楼层
你的代码不存在这种变量结果未知的情况。变量没有初始值的问题。可以看这个。(特定情况下,判断体内的变量在起始位置时可能是无效值,所有结果可能会不可控)

https://www.weistock.com/docs/PE ... %E8%BF%9B%E9%98%B6/
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2024-4-22 11:27 | 显示全部楼层
技术006 发表于 2024-4-22 10:40
你的代码不存在这种变量结果未知的情况。变量没有初始值的问题。可以看这个。(特定情况下,判断体内的变量 ...

今天又有一个信号没有开仓,看了调试日志是子策略符合交易条件的情况下  opensnum=1;所以没有开仓cc=0。重启后台预警后cc仓位恢复正常,那请问老师这种需要怎么修改
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2024-4-22 11:33 | 显示全部楼层
sm硅铁今天十点图表有开多信号,日志也是有开多信号,opensunm也等于1了,但是cc=0,重启预警后,cc=15了

补充内容 (2024-4-22 12:16):
代码改成下面这样会不会好些variable:opensnum:=0,addsum:=0;
if date<>ref(date,1) then  opensnum:=0;   
if date<>ref(date,1) then  addsum:=0;
todaykc:enterbars<=todaybar ;
//开平仓
if 开多条件 and op...
截图202404221132114894.png
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2024-4-22 12:17 | 显示全部楼层
代码修改成如下这样会不会好些
variable:opensnum:=0,addsum:=0;
if date<>ref(date,1) then  opensnum:=0;   
if date<>ref(date,1) then  addsum:=0;
todaykc:enterbars<=todaybar ;
//开平仓
if 开多条件 and opensnum<1 then
begin
   sellshort(holding<0,holding,thisclose);
   buy(holding=0,lots,thisclose);
        if holding>0 then opensnum:=1;
end

//   
if 开空条件 and opensnum<1 then
begin
        sell(holding>0,holding,thisclose);
        buyshort(holding=0,lots,thisclose);
    if holding<0 then opensnum:=1;
end


if 加多条件 and addsum<1 then
begin
   sellshort(holding<0,holding,thisclose);
   buy(holding>=0,lots,thisclose);
   if todaykc then  addsum:=1;
end
//   
if 加空条件 and addsum<1 then
begin
   sell(holding>0,holding,thisclose);
   buyshort(holding<=0,lots,thisclose);
   if todaykc then  addsum:=1;
end
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2024-4-22 12:59 | 显示全部楼层
这种建议你最简化代码来排查问题,单独把你的CC指标拿出来运行,看是否重启后发生变化,需要找到发生变化的原因的。单看代码没法跟踪调试问题的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2024-4-22 13:27 | 显示全部楼层
技术010 发表于 2024-4-22 12:59
这种建议你最简化代码来排查问题,单独把你的CC指标拿出来运行,看是否重启后发生变化,需要找到发生变化的 ...

cc就是holding
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-4 00:40 , Processed in 0.094161 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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