金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 906|回复: 9

请教多策略净持仓的开仓写法

[复制链接]

58

主题

282

帖子

292

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
发表于 2024-2-18 14:50 | 显示全部楼层 |阅读模式
请教 我这样写多策略的净持仓开仓哪里出错了?为什么回测没有数据出来?

//引用策略持仓
ho1:=STKINDI('','策略1.ho',0,2,-1),linethick0;
ho2:=STKINDI('','策略2.ho',0,2,-1),linethick0;

jc:=ho1+ho2;
dc:=jc>0;
kc:=jc<0;

if jc>0  then
begin
        sell(holding>0,0,market);
        buy(holding=0,dc,market);
END

if jc<0  then
BEGIN
        sellshort(holding<0,0,market);
        buyshort(holding=0,kc,market);
END


回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-2-18 15:51 | 显示全部楼层
又加载到图表上看下吗?
//引用策略持仓
ho1:STKINDI('','策略1.ho',0,2,-1),linethick0;
ho2:STKINDI('','策略2.ho',0,2,-1),linethick0;

输出ho1和ho2看下值是多少呢,有没有引用到

另外你这里平多开多,持仓小于0就平空开空
这个是为什么呢??不是很明白
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

58

主题

282

帖子

292

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
 楼主| 发表于 2024-2-18 15:56 | 显示全部楼层
我想的是净持仓>0的时候,就开多仓出来,净持仓<0的时候就开空仓出来。
看了你的提醒,平仓逻辑是不对的。  
是不是应该有单独的平仓条件,或者净多头持仓时,出现空头信号了来平多头,或者单独有平仓的条件?
回复

使用道具 举报

58

主题

282

帖子

292

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
 楼主| 发表于 2024-2-18 16:09 | 显示全部楼层
资深技术02 发表于 2024-2-18 15:51
又加载到图表上看下吗?
//引用策略持仓
ho1:STKINDI('','策略1.ho',0,2,-1),linethick0;

不知道为什么  ho1和ho2 输出不到图表上
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-2-18 16:21 | 显示全部楼层
你看下原策略里加载图表上能看到ho的值吗

注意要被引用的话必须写成
ho:5;
这样可以引用
ho:=5;
如果写成:=形式就无法被引用的
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

58

主题

282

帖子

292

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
 楼主| 发表于 2024-2-18 16:25 | 显示全部楼层
资深技术02 发表于 2024-2-18 16:21
你看下原策略里加载图表上能看到ho的值吗

注意要被引用的话必须写成

输出写法我知道的。
原策略ho的值可以输出到图表上的
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-2-18 16:41 | 显示全部楼层
那你把策略1代码发下
或者你用系统自带的策略输出下holding被引用过来能引用到吗
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

58

主题

282

帖子

292

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
 楼主| 发表于 2024-2-18 16:45 | 显示全部楼层
//建立头寸--------------------------------------------------------------------------------------------------------------------
pc:=ref(c,1);
zj:=1.0;
bzj:=MULTIPLIER*pc*0.1,linethick0;
zss:min(max(CEILING(zj*10000/bzj),1),2),linethick0; //向下舍入仓位

ho:holding;

if zf<1 then                          //平多
begin
        平多:sell(holding>0,0,market);
end

if zf>-1 then                         //平空
begin
        平空:sellshort(holding<0,0,market);
end


if zf>2 and adxg=1 and 多头=1  then   //开多
begin
        开多:buy(holding=0,zss,market);
end

if zf<-2 and adxg=1 and 空头=1  then   //开空
begin
         开空:buyshort(holding=0,zss,market);
end
回复

使用道具 举报

58

主题

282

帖子

292

积分

Rank: 4

等级: 专业版

注册:
2022-1-11
曾用名:
 楼主| 发表于 2024-2-18 16:50 | 显示全部楼层
ho3:STKINDI('','14.唐奇安通道 .ho',0,2,-1),linethick0;

引用系统自带的唐奇安通道 ho3也输出不到图表上
回复

使用道具 举报

3

主题

2万

帖子

2万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2024-2-18 17:07 | 显示全部楼层
本地测试正常
加我qq远程看下把
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-22 13:32 , Processed in 0.233610 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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