金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 胖虎爱吃鱼

两个策略组合

[复制链接]

37

主题

1万

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-6-21 14:40 | 显示全部楼层
你所谓的下单模块也是这么实现的。策略信号稳定就可以通过这么实现。不稳定那么策略整体结果就可能会飞掉。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2022-6-21 14:43 | 显示全部楼层
技术006 发表于 2022-6-21 14:40
你所谓的下单模块也是这么实现的。策略信号稳定就可以通过这么实现。不稳定那么策略整体结果就可能会飞掉。

上面那个写不下去了,,
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-6-21 14:44 | 显示全部楼层
那就用abholding和ref(abholding,1)比较啊,这里面的逻辑很多啊,你要判断上根K的持仓方向,还要判断当前K的持仓方向,如果只是小了,那就直接检查,如果持仓方向都变了,那还要先平仓,再开相应的仓位。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2022-6-21 14:48 | 显示全部楼层
技术010 发表于 2022-6-21 14:44
那就用abholding和ref(abholding,1)比较啊,这里面的逻辑很多啊,你要判断上根K的持仓方向,还要判断当前K ...

这样也可以,优秀啊
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2022-6-21 15:54 | 显示全部楼层
技术010 发表于 2022-6-21 14:44
那就用abholding和ref(abholding,1)比较啊,这里面的逻辑很多啊,你要判断上根K的持仓方向,还要判断当前K ...

请问老师,这样写可以吗

aholding:stkindi('','策略a.a',0,3,0);  //引用15分钟周期上的策略a的holding值。
bholding:stkindi('','策略b.b',0,3,0);  //引用15分钟周期上的策略b的holding值。

abholding0:=aholding+bholding;
abholding1:=ref(abholding0,1);

平空开多:abholding0>0 and abholding1<0;
开多条件:abholding0>0 and abholding1=0;
加多条件:abholding0>0 and abholding1>0 and abholding0>abholding1;
减多条件:abholding0>0 and abholding1>0 and abholding0<abholding1;
清多条件:abholding0=0 and abholding1>0;

平多开空:abholding0<0 and abholding1>0;
开空条件:abholding0<0 and abholding1=0;
加空条件:abholding0<0 and abholding1<0 and abholding0<abholding1;
减空条件:abholding0<0 and abholding1<0 and abholding0>abholding1;
清空条件:abholding0=0 and abholding1<0;

//多头开平仓

if 平空开多 then begin        
        sellshort (平空开多,abholding1,thisclose);
        buy       (平空开多,abholding0,thisclose);
end

buy(开多条件,abs(abholding0),thisclose);
buy(加多条件,abs(abholding0-abholding1),thisclose);
sell(减多条件,abs(abholding0-abholding1),thisclose);
sell(清多条件,abs(abholding0-abholding1),thisclose);


//空头开平仓

if 平多开空 then begin        
        sell      (平多开空,abholding1,thisclose);
        buyshort  (平多开空,abholding0,thisclose);
end


buyshort(开空条件,abs(abholding0),thisclose);
buyshort(加空条件,abs(abholding0-abholding1),thisclose);
sellshort(减空条件,abs(abholding0-abholding1),thisclose);
sellshort(清空条件,abs(abholding0-abholding1),thisclose);
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-6-21 15:59 | 显示全部楼层
逻辑上是这样的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2022-6-21 16:03 | 显示全部楼层
技术010 发表于 2022-6-21 15:59
逻辑上是这样的。

但是回测的结果交易次数是比直接两个策略组合的要少
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-6-21 16:05 | 显示全部楼层
这个次数也没有比较性啊。这种逻辑方式也不是两个策略的交易次数之和啊。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

227

主题

881

帖子

881

积分

等级: 免费版

注册:
2022-4-2
曾用名:
 楼主| 发表于 2022-6-21 16:22 | 显示全部楼层
技术010 发表于 2022-6-21 16:05
这个次数也没有比较性啊。这种逻辑方式也不是两个策略的交易次数之和啊。

这样写法,正常不应该就是两个交易次数的汇总了吗
回复

使用道具 举报

0

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
gxx978
发表于 2022-6-21 16:26 | 显示全部楼层
当然不是,你这种写法如果一个是开空仓1,一个是开多仓1,两个策略一共是两笔交易,那你这个汇总的策略是不开仓的啊。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-19 13:53 , Processed in 0.098125 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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